nbj2008
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 35 個(gè)
工控威望: 143 點(diǎn)
下載積分: 645 分
在線時(shí)間: 89(小時(shí))
注冊(cè)時(shí)間: 2011-03-21
最后登錄: 2024-11-11
查看nbj2008的 主題 / 回貼
樓主  發(fā)表于: 2013-10-01 13:07
原來有兩儀表用4-20ma接入200,現(xiàn)在增加了模塊后超過了7個(gè),想通過modbus走485連接倆儀表,去掉一個(gè)AI模塊。看了很多都沒有理解怎么發(fā)送查詢命令,求解?
附件: 通信協(xié)議25073.doc (46 K) 下載次數(shù):154
網(wǎng)站提示: 請(qǐng)不要用迅雷下載附件,容易出錯(cuò)
nbj2008
級(jí)別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 35 個(gè)
工控威望: 143 點(diǎn)
下載積分: 645 分
在線時(shí)間: 89(小時(shí))
注冊(cè)時(shí)間: 2011-03-21
最后登錄: 2024-11-11
查看nbj2008的 主題 / 回貼
1樓  發(fā)表于: 2013-10-01 13:08
串口協(xié)議:
RS485接口總線協(xié)議:波特率 9600bps ; 校驗(yàn)無;數(shù)據(jù)位:8位;停止位:1位

通用協(xié)議:
幀頭    幀長    數(shù)據(jù)類型    命令字    參數(shù)    校驗(yàn)核    幀尾
10 02                        10 03
                        

協(xié)議說明:
幀頭:10 02
幀長:數(shù)據(jù)類型至校驗(yàn)核的所有字節(jié)數(shù)
數(shù)據(jù)類型:功能類型
命令字:同一功能類型的不同命令
參數(shù):命令數(shù)據(jù)內(nèi)容
校驗(yàn)核:數(shù)據(jù)類型至參數(shù)所有數(shù)據(jù)和
幀尾:10 03





序號(hào)    功能    數(shù)據(jù)類型    命令字    參數(shù)    備注
1    設(shè)備地址讀取    F0
    00     無    
    應(yīng)答        FF     Byte1:
00: 設(shè)備地址讀取
Byte2:
01-c8(1-200): 設(shè)備地址    
2    設(shè)備地址設(shè)置    F0
    01     Byte1: 設(shè)備地址
01-c8(1-200):    
    應(yīng)答        FF     Byte1:
    01: 設(shè)備地址設(shè)置
Byte2:
00: 設(shè)置成功
01:設(shè)置失敗    
3    濃度上報(bào)模式查詢    F0
    02    Byte1:
  00: 查詢所有設(shè)備模式
  01-c8(1-200): 該設(shè)備模式    
    應(yīng)答        FF    Byte1:
  02H
Byte2: 設(shè)備地址
01-    c8(1-200):
Byte3: 工作模式
00: 自動(dòng)上報(bào)
01: 命令觸發(fā)上報(bào)    
4    濃度上報(bào)模式設(shè)置    F0    03    Byte1:
  00:設(shè)置所有設(shè)備模式
01-    c8(1-200): 設(shè)置某設(shè)備模式
Byte2:
   00: 自動(dòng)上報(bào)
   01: 命令觸發(fā)上報(bào)    
    應(yīng)答        FF    Byte1:
03H
Byte2: 設(shè)備地址
02-    c8(1-200):
Byte3:
00: 設(shè)置成功
  01:設(shè)置失敗    
5    查詢濃度數(shù)據(jù)    F0    04    Byte1:
  00:查詢所有設(shè)備采集數(shù)據(jù)
  01-c8(1-200): 查詢某設(shè)備采集    數(shù)據(jù)    
    應(yīng)答        FF    Byte1:  04H
Byte2: 設(shè)備地址
01-    c8(1-200)
Byte3- Byte7:氣體濃度值
Byte8:小數(shù)點(diǎn)位數(shù)
30H:無小數(shù)點(diǎn)
31H:1位小數(shù)點(diǎn)
32H:2位小數(shù)點(diǎn)
33H:3位小數(shù)點(diǎn)
Byte9- Byte11:濃度單位    

注:自動(dòng)上報(bào)濃度 10s/次

例如:設(shè)置地址為1
10 02 04 F0 01 01 F2 10 03
應(yīng)答:10 02 05 F0 FF 01 00 F0 10 03  設(shè)置成功
  10 02 05 F0 FF 01 01 F1 10 03  設(shè)置失敗

地址為5
10 02 04 F0 01 05 F6 10 03
應(yīng)答:10 02 05 F0 FF 01 00 F0 10 03  設(shè)置成功
  10 02 05 F0 FF 01 01 F1 10 03  設(shè)置失敗

讀取地址
10 02 03 F0 00 F0 10 03
應(yīng)答:10 02 05 F0 FF 00 01 F0 10 03  返回地址1

1號(hào)設(shè)備濃度觸發(fā)上報(bào)模式設(shè)置:

10 02 05 F0 03 01 01 F5 10 03
應(yīng)答:10 02 06 F0 FF 03 01 00 F3 10 03    

查詢 1 號(hào)探測器的濃度:(現(xiàn)暫時(shí)不能同時(shí)查詢所有設(shè)備的濃度值,同一時(shí)間只能點(diǎn)名采集某一路設(shè)備的值,采集完這路設(shè)備的值,等待應(yīng)答后再點(diǎn)名采集下一設(shè)備的值)

10 02 04 F0 04 01 F5 10 03
應(yīng)答:10 02 0E F0 FF 04 01 30 30 30 30 30 31 4C 45 4C F2 10 03

例如:
1255 ppm  
0x30 0x31 0x32 0x35 0x35 0x30 0x50 0x50 0x4D
125.5 ppm  
0x30 0x31 0x32 0x35 0x35 0x31 0x50 0x50 0x4D
12.55 ppm  
0x30 0x31 0x32 0x35 0x35 0x32 0x50 0x50 0x4D

12.55 ppm 單位為 Vol% :
0x30 0x31 0x32 0x35 0x35 0x32 0x56 0x4F 0x4C

12.55 ppm 單位為:LEL% :
0x30 0x31 0x32 0x35 0x35 0x32 0x4C 0x45 0x4C