Modbus RTU 工具
生成 RTU 報文、解析訊息、校驗 CRC 和轉換暫存器資料。連線序列埠裝置需使用支援 Web Serial 的桌面瀏覽器。
選擇當前任務
報文工具用於生成、解析及 CRC 校驗;序列埠偵錯工具用於裝置通訊;資料轉換器用於數值和位元組序轉換。
工具能力
在瀏覽器中處理報文
常用 Modbus 讀寫功能
整數與浮點數值
報文欄位與校驗結果
相容桌面瀏覽器的序列埠訪問
多種介面語言
複製生成的報文和數值
瀏覽器內計算
常見任務
檢查裝置通訊
比較 PLC、驅動器、儀表或感測器的請求與響應。
示例
- 驗證讀取請求
- 核對暫存器數值
- 分析異常響應
裝置接入開發
按裝置規範核對示例報文與資料格式。
示例
- 檢查報文欄位
- 確認位元組序
- 比較已知數值
排查故障
在已授權的裝置測試中捕獲並比較收發報文。
示例
- 檢查收到的報文
- 觀察數值變化
- 匯出採集結果
RTU 與暫存器基礎
什麼是 Modbus RTU?
Modbus RTU 是序列鏈路上的二進位報文格式,用於傳輸 Modbus 請求和響應,常見於 RS485 或 RS232。
要點
- 二進位報文位元組
- CRC-16/MODBUS 差錯校驗
- 序列鏈路上的裝置地址
- 需匹配通訊時序和序列埠引數
RTU 報文結構
報文由裝置地址、功能碼、資料和 CRC 構成。
[裝置地址][功能碼][資料][CRC]- 裝置地址:1 位元組
- 功能碼:1 位元組
- 資料:欄位由功能碼決定
- CRC:2 位元組,低位元組先傳送
常用功能碼
讀取功能
- 01:讀取線圈
- 02:讀取離散輸入
- 03:讀取保持暫存器
- 04:讀取輸入暫存器
寫入功能(十進位)
- 05:寫單個線圈
- 06:寫單個暫存器
- 15(0x0F):寫多個線圈
- 16(0x10):寫多個暫存器
CRC-16/MODBUS
CRC 校驗裝置地址、功能碼和資料位元組,可檢測多種傳輸錯誤,但不能認證傳送者或證明操作安全。
引數
- 16 位差錯校驗
- 反向多項式:0xA001
- 初始值:0xFFFF
- CRC 低位元組先傳送
資料型別與位元組序
一個暫存器儲存 16 位,如何將一個或多個暫存器解釋為數值,由裝置暫存器表規定。
- 有符號整數使用補碼:FFFF 按 INT16 為 -1,按 UINT16 為 65535。轉換器對短 HEX 左側補零,因此 FF 按 INT16 為 255。
- IEEE 754 FLOAT32 為 32 位,FLOAT64 為 64 位。FLOAT32 在 ABCD 順序下的 3F 80 00 00 表示 1。
- 對於 A B C D 四位元組:ABCD 保持順序,DCBA 全部反轉,BADC 在每個 16 位字內交換位元組,CDAB 交換兩個字。
- 16、32、64 位數值分別佔 1、2、4 個暫存器,位元組和暫存器順序以裝置規範為準。
- 轉換器可精確處理所選範圍內的 64 位整數,UINT64 範圍為 0 至 18446744073709551615。
- HEX 輸入支援十六進位字元、可選的 0x 字首及位元組間空白。非法字元會報錯,不會被靜默刪除。
- 整數必須使用整數字符輸入;FLOAT32、FLOAT64 還支援小數和科學計數法。
- 用已知數值確認型別及位元組序,結果看起來合理並不足以證明設定正確。
用於裝置前,請按裝置手冊核對生成的報文和解析值。