時間:2019-01-08 13:39:08來源: 自動化控制系統交流
遠程IO設備實現Modbus通信時,均作為從機,遵循Modbus通信過程,采用了MODBUS-RTU協議的命令子集,使用讀寄存器命令(03)和單寄存器設置命令(06)。每消息的開頭和結尾至少有3.5個字節時間的間隔。
注:
03命令用于主機讀取遠程IO設備的采集數據或端口狀態;
06命令用于設置設備參數或遠程控制IO設備繼電器動作;
·功能碼03(讀指令)
利用Modbus通信協議的03功能碼,讀取設備的數值。
主機請求數據格式:從機地址、功能碼、起始地址、數據個數及CRC碼
例如:從機地址為01,讀取設備寄存器地址=0000的數值(1個數值)。
從機響應數據格式:從機地址、功能碼、字節數、數據區及CRC碼
寄存器數據為二個字節,高位在前。CRC碼都是二個字節,低位在前。
例如:從機地址為01返回:
010302DATA0HDATA0LCRCLCRCH
·功能碼06(寫指令)
利用Modbus通信協議的06功能碼,設置設備的一個寄存器的數值。
主機請求數據格式:從機地址、功能碼、寄存器地址、設置的數據及CRC碼
常用指令示例
設備串口出廠參數如下:
CRC值的計算可網上搜索CRC在線計算。
以下以設備485地址為1,舉例:
1)讀設備所有寄存器內容:0001至0016,共22個,每個寄存器內容占2個字節,
上位主機發送:01、03、00、01、00、16、95、C4
從機設備返回:01、03、2C、(44字節數據)、CRCL、CRCH
2)讀485地址(03讀指令)
上位主機發送:01、03、00、01、00、01、D5、CA
從機設備返回:01、03、02、00、01、79、84(地址為1)
3)設485地址(06寫指令)
上位主機發送:00、06、00、01、00、01、18、1B(設置地址為1)
從機設備返回:01、06、00、01、00、01、19、CA
聲明:本文為轉載類文章,如涉及版權問題,請及時聯系我們刪除(QQ:2737591964),不便之處,敬請諒解!
標簽:
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.hysjfh.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-04-11
2025-04-08
2025-03-31
2025-03-26
2025-03-20
2025-03-13