備注:
①:modbus設(shè)備指令支持下列modbus地址:
00001至09999是離散輸出(線圈)
10001至19999是離散輸入(觸點(diǎn))
30001至39999是輸入寄存器(通常是模擬量輸入) 40001至49999是保持寄存器(通常存儲(chǔ)設(shè)備配置信息)
采用5位碼格式,第一個(gè)字符決定寄存器類(lèi)型,其余4個(gè)字符代表地址。地址1從0開(kāi)始,如00001對(duì)應(yīng)0000。
②:波特率數(shù)值對(duì)應(yīng)表
③:繼電器狀態(tài),通過(guò)30002地址可以查詢,也可以通過(guò)2地址來(lái)查詢,但控制只能使用00001---00002地址。
30002地址數(shù)據(jù)長(zhǎng)度為16bit。最多可表示16個(gè)繼電器。
對(duì)應(yīng)結(jié)果如下:
即 寄存器30009數(shù)據(jù) 的bit8 與寄存器00001的數(shù)據(jù)一樣。
同理:光耦輸入也是如此。寄存器30003的bit8、bit9 與寄存器10001、10002都對(duì)應(yīng)到指定的硬件上。
寄存器地址按照plc命名規(guī)則,真實(shí)地址為去掉最高位,然后減一。
指令生成說(shuō)明
應(yīng)用舉例及其說(shuō)明:本機(jī)地址除了撥碼開(kāi)關(guān)地址之外,還有默認(rèn)的254為廣播地址。當(dāng)總線上只有一個(gè)設(shè)備時(shí),無(wú)需關(guān)心撥碼開(kāi)關(guān)地址,直接使用254地址即可,當(dāng)總線上有多個(gè)設(shè)備時(shí)通過(guò)撥碼開(kāi)關(guān)選擇為不同地址,發(fā)送控制指令時(shí)通過(guò)地址區(qū)別。
注意:rs485總線可以掛載多個(gè)設(shè)備。
指令可通過(guò)“聚英翱翔dam系列配置軟件”,的調(diào)試信息來(lái)獲取。
指令生成說(shuō)明:對(duì)于下表中沒(méi)有的指令,用戶可以自己根據(jù)modbus協(xié)議生成,對(duì)于繼電器線圈的讀寫(xiě),實(shí)際就是對(duì)modbus寄存器中的線圈寄存器的讀寫(xiě),上文中已經(jīng)說(shuō)明了繼電器寄存器的地址,用戶只需生成對(duì)寄存器操作的讀寫(xiě)指令即可。例如讀或者寫(xiě)繼電器1的狀態(tài),實(shí)際上是對(duì)繼電器1對(duì)應(yīng)的線圈寄存器0001的讀寫(xiě)操作。
詳解:
控制1路繼電器(以第一路開(kāi)為例,其他通道參照本例)
發(fā)送碼:fe 05 00 00 ff 00 98 35
繼電器卡返回信息:
返回碼:fe 05 00 00 ff 00 98 35
1:繼電器查詢
查詢2路繼電器
fe 01 00 00 00 02 a9 c4
繼電器卡返回信息:
fe 01 01 00 61 9c
2、查詢光耦(4路光耦)
發(fā)送指令碼:fe 02 00 00 00 04 ed c4
光耦返回信息:
返回碼:fe 02 01 00 91 9c
3.查詢模擬量數(shù)據(jù)(2路4~20ma)
發(fā)送指令碼:fe 04 00 00 00 02 65 c4
返回信息:
返回碼:fe 04 04 00 00 00 00 f4 8b
4.閃開(kāi)發(fā)送碼:fe 10 00 03 00 02 04 00 04 00 0a 00 d8
閃斷發(fā)送碼:fe 10 00 03 00 02 04 00 02 00 14 21 62
返回碼:fe 10 00 03 00 02 a5 c7
4. 全開(kāi)全關(guān)指令解析
全開(kāi)發(fā)送碼:fe 0f 00 00 00 02 01 ff d1 d3
全斷發(fā)送碼:fe 0f 00 00 00 02 01 00 91 93
全斷全開(kāi)返回碼:fe 0f 00 00 00 02 c0 05
常見(jiàn)問(wèn)題與解決方法
1.繼電器板卡供電后使用232接口無(wú)法建立通信,無(wú)法控制
首先測(cè)試不同波特率是否可以控制,485接口注意a+、b-線以及屏蔽線,屏蔽線不是必須,但在通信誤碼率大的情況下必須接上,即便距離很近也可能出現(xiàn)此類(lèi)情況。
2.485總線,掛載了大于1個(gè)的設(shè)備,我以廣播地址255發(fā)送繼電器1吸和,但并不是所有模塊的繼電器1吸和。
廣播地址在總線上只有一個(gè)設(shè)備時(shí)可以使用,大于1個(gè)設(shè)備時(shí)請(qǐng)以撥碼開(kāi)關(guān)區(qū)分地址來(lái)控制,否則會(huì)因?yàn)槟K在通信數(shù)據(jù)的判斷不同步上導(dǎo)致指令無(wú)法正確執(zhí)行。
3、西門(mén)子plc與設(shè)備不能正常通訊
西門(mén)子485總線ab定義與設(shè)備相反