MODBUS TCP模塊協(xié)議結構是如何設計的?
MODBUS TCP是MODBUS系列中優(yōu)秀的通信協(xié)議的一種,它主要用于監視和控制自動(dòng)化設備,那么MODBUS的協(xié)議結構是怎樣的呢?下面由MODBUS TCP模塊廠(chǎng)家無(wú)錫凌科自動(dòng)化為大家介紹一下MODBUS TCP模塊的協(xié)議結構。
需要特別注意的是,請求和響應主體的結構,從功能代碼到數據部分的末尾,具有與其他MODBUS變體完全相同的布局和含義,例如
MODBUS串口– ASCII編碼
MODBUS串口– RTU(二進(jìn)制)編碼
MODBUS PLUS網(wǎng)絡(luò )–數據路徑
在其他情況下,唯一的區別是任何“成幀”序列,錯誤檢查模式和地址解釋的形式。
所有請求都通過(guò)TCP / IP在注冊端口502上發(fā)送。
通常在給定的連接上以半雙工的方式發(fā)送請求。也就是說(shuō),在響應未完成時(shí),在單個(gè)連接上發(fā)送其他請求沒(méi)有任何好處。相反,鼓勵希望獲得高峰值傳輸速率的設備建立到同一目標的多個(gè)TCP / IP連接。但是,已知一些現有的客戶(hù)端設備嘗試“流水線(xiàn)”請求。
MODBUS“從站地址”字段被單字節“單元標識符”代替,該單元標識符可用于通過(guò)諸如網(wǎng)橋和網(wǎng)關(guān)之類(lèi)的設備進(jìn)行通信,這些設備使用單個(gè)IP地址來(lái)支持多個(gè)獨立的終端單元。
請求和響應的前綴為六個(gè)字節,如下所示
字節0: | 事務(wù)標識符–由服務(wù)器復制–通常為0 |
字節1: | 事務(wù)標識符–由服務(wù)器復制–通常為0 |
字節2: | 協(xié)議標識符= 0 |
字節3: | 協(xié)議標識符= 0 |
字節4: | 長(cháng)度字段(高位字節)= 0(因為所有消息均小于256) |
字節5: | 長(cháng)度字段(低位字節)=跟隨的字節數 |
字節6: | 單元標識符(以前是“從站地址”) |
字節7: | MODBUS功能碼 |
字節8: | 根據需要的數據 |
因此,示例事務(wù)“從UI 9偏移4處讀取1個(gè)寄存器”返回值5
要求: 00 00 00 00 00 06 09 03 00 04 00 01
回應: 00 00 00 00 00 05 09 03 02 00 05
熟悉MODBUS的設計人員應注意,MODBUS中不需要“ CRC-16”或“ LRC”檢查字段。而是使用TCP / IP / IP和鏈路層(例如,以太網(wǎng))校驗和機制來(lái)驗證數據包的準確傳遞。了解更多有關(guān)ETHERCAT模塊、CANOPEN模塊、DEVICENET模塊作用、MODBUS TCP模塊歡迎前往PROFINET模塊廠(chǎng)家無(wú)錫凌科自動(dòng)化公司。