一條指令控制多個繼電器輸出通道動作時:
1、使用寫多個線圈寄存器功能碼:15功能碼(16進(jìn)制:0F);
2、控制輸出的繼電器通道必須連續(xù),不能間隔;
3、每個繼電器輸出通道狀態(tài)可設(shè)置為不一樣。
指令(16進(jìn)制)詳解:
字段 | 含義 | 詳細(xì)說明 |
FE | 設(shè)備地址 | 16進(jìn)制,代表10進(jìn)制254廣播地址 |
0F | 0F指令 | 寫多個線圈功能碼 |
00 00 | 起始地址 | 從第幾路繼電器開始,00 00代表第一路 |
00 10 | 控制數(shù)量 | 控制的繼電器通道數(shù)量,16通道 |
2 | 字節(jié)長度 | 發(fā)送命令字節(jié)長度(8路為1個字節(jié)) |
FF FF(或00 00) | 全開全關(guān)命令 | 具體的控制指令 |
A6 64(或A7 D4) | CRC16 | 校驗位 |
具體控制指令說明:
線圈寄存器使用2進(jìn)制1和0兩個狀態(tài)表示具體繼電器的輸出狀態(tài),寫1代表繼電器導(dǎo)通,寫0代表繼電器斷開,每8路一個字節(jié)。
舉例:
①、16通道繼電器輸出指令中,1,3,5,8,10,12斷開,其他為導(dǎo)通狀態(tài),則具體的控制指令計算過程如下:
二進(jìn)制:
16進(jìn)制控制指令:56(1-8路) AF(9-16路)
全部控制指令如下:
FE 0F 00 00 00 10 02 56 AF D8 08
②、10通道繼電器輸出指令中,2,4,6,8斷開,其他為導(dǎo)通狀態(tài),則具體的控制指令計算過程如下:
二進(jìn)制:
16進(jìn)制控制指令:AA(1-8路) 03(9-10路)
全部控制指令如下:
FE 0F 00 00 00 0A 02 AA 03 9E 6D