通訊協(xié)議:9600 E 8 1
注意:舉例中的空格都是為了增加理解
實際指令不需要輸入任何空格!
Read
以讀取溫度PV值為例:
發(fā)送數(shù)據(jù): < 00 03 0000 0001 >
幀頭 地址 功能碼 功能地址(起始地址) 讀取長度 幀尾
接受到的數(shù)據(jù): < XX 03 0000 00(00/2D) 01 24 >
幀頭 地址 功能碼 功能地址 正負(fù) 具體數(shù)據(jù) 幀尾
Read發(fā)送數(shù)據(jù)中:
1、幀頭幀尾作用分開每條數(shù)據(jù),防止錯位讀取。
2、地址為從機(jī)地址,固定0x00,不用更改。
3、功能碼與協(xié)議地址內(nèi)modbus功能碼相應(yīng)。
4、功能地址下文會詳細(xì)給出。
5、讀取長度為以功能地址為起始,需要讀幾個長度的數(shù)據(jù)。
Read數(shù)據(jù)讀取:
數(shù)據(jù)字節(jié)與讀取長度有關(guān),一個地址內(nèi)容數(shù)據(jù)含2個數(shù)據(jù)字節(jié)。
具體數(shù)據(jù)及為控制器返回的具體內(nèi)容,為16進(jìn)制,需轉(zhuǎn)換。
注:正負(fù)顯示位,低位(后兩位)若為00,則視為具體數(shù)值的正數(shù)值。
若為2D,則視為具體數(shù)值的負(fù)數(shù)值。
Write
以控制程序停止為例:
發(fā)送數(shù)據(jù):
write發(fā)送數(shù)據(jù)中:
1、幀頭幀尾作用分開每條數(shù)據(jù),防止錯位讀取。
2、地址為從機(jī)地址,固定0x00,不用更改。
3、功能碼與協(xié)議地址內(nèi)modbus功能碼相應(yīng)。
4、功能地址下文會詳細(xì)給出。
5、寫下長度為以功能碼地址為起始依次寫進(jìn)多少地址的數(shù)據(jù)。
6、寫下數(shù)據(jù)字節(jié)與寫下長度相應(yīng),每個地址寫下數(shù)據(jù)字節(jié)為02。
7、寫下具體數(shù)據(jù)為寫下的具體內(nèi)容,若長度不為1,則延長內(nèi)容。
8、發(fā)送指令無返回數(shù)據(jù)。
注意:
1、 本協(xié)議非標(biāo)準(zhǔn)MODBUS,幀頭幀尾需要‘<’‘>’標(biāo)識符,切勿遺漏!
2、 COM3所用寄存器地址與說明書給予地址表不相應(yīng)。
3、 不支持多條寫命令。(可用多寫0X10命令寫一條指令)。
實例:寫入啟動定值運行
寫入溫度設(shè)定值 60.0(實際發(fā)送值為600,并轉(zhuǎn)換為16進(jìn)制)
1、寫入啟動程序控制啟動,停止,保持,跳步。
(停止)
(啟動)
(保持)
(跳步)
2、讀取程序運行濕度上升,保持,下降信號
(上升)
(保持)
(下降)
相關(guān)寄存器地址表:
溫度PV: 0x00
濕度PV: 0x10
溫度SV: 0x33
濕度SV: 0x34
溫度上升信號: 0x57
溫度保持信號: 0x58
溫度下降信號: 0x59
濕度上升信號: 0x60
濕度保持信號: 0x61
濕度下降信號: 0x62
程序運行: 0x30 運行:01 停止:00 保持:02 跳步:04
定值運行: 0x29 運行:01 停止:00 保持:02
UMC1300 (讀)
高溫PV : 0x00 低溫pv :0x10 常溫pv : 0x20
高溫SV : 0x33 低溫 sv :0x34 常溫sv : 0x35
(寫) :運行操作: 0x30、0x29均可
0:運行 1:停止 2:保持 3:等待 4:AT 5:跳步 6:除霜
本文由上海林頻儀器股份有限公司-技術(shù)部供稿!
|