|
三菱FX系列PLC編程口通信協(xié)議舉例
三菱FX系列PLC編程口通信協(xié)議舉例 | 1、DEVICE READ(讀出軟設(shè)備狀態(tài)值) 計(jì)算機(jī)向PLC發(fā)送: 始 | 命令 | 首地址 | 位數(shù) | 終 | 和校驗(yàn) | STX | CMD | GROUP ADDRESS | BYTES | ETX | SUM |
例子:從D123開始讀取4個(gè)字節(jié)數(shù)據(jù) 02h | 30h | 31h,30h,46h,36h | 30h,34h | 03h | 37h,34h |
地址算法:address=address*2+1000h 再轉(zhuǎn)換成ASCII 31h,30h,46h,36h PLC返回 STX | 1ST DATA | 2ND DATA | ..... | LAST DATA | ETX | SUM |
注:最多可以讀取64個(gè)字節(jié)的數(shù)據(jù) 例子:從指定的存儲(chǔ)器單元讀到3584這個(gè)數(shù)據(jù) 02h | 33h | 35h | 38h | 34h | 03h | 44h,36h |
2、DEVICE WRITE(向PLC軟設(shè)備寫入值) 始 | 命令 | 首地址 | 位數(shù) | 數(shù)據(jù) | 終 | 和校驗(yàn) | STX | CMD | GROUP ADDRESS | BYTES | 1ST DATA | 2ND DATA | ...... | LAST DATA | ETX | SUM |
例子:向D123開始的兩個(gè)存儲(chǔ)器中寫入1234,ABCD 02h | 31h | 31h,30h,46h,36h | 30h,34h | 33h,34h,31h,32h,43h,44h,41h,42h | 03h | 34h,39h |
PLC返回 ACK (06H) 接受正確 NAK (15H) 接受錯(cuò)誤 3、位設(shè)備強(qiáng)制置位/復(fù)位 FORCE ON置位 始 | 命令 | 地址 | 終 | 和校驗(yàn) | STX | CMD | ADDRESS | ETX | SUM | 02h | 37h | address | 03h | sum |
FORCE OFF復(fù)位 始 | 命令 | 地址 | 終 | 和校驗(yàn) | STX | CMD | ADDRESS | ETX | SUM | 02h | 38h | address | 03h | sum |
PLC返回 ACK(06H) 接受正確 NAK(15H) 接受錯(cuò)誤 設(shè)備強(qiáng)制中的地址公式:Address=Address/8+100h 說(shuō)明: 1.幀中的BYTES表示需要讀取或者寫入的字節(jié)數(shù)。 2.地址算法上有說(shuō)明。 3.累加和是從STX后面一個(gè)字節(jié)開始累加到ETX的和。 | 三菱FX系列PLC編程口通信協(xié)議總覽 | 該協(xié)議實(shí)際上適用于PLC編程端口以及 FX-232AW 模塊的通信。感謝網(wǎng)友visualboy提供。 通訊格式: 命令 | 命令碼 | 目標(biāo)設(shè)備 | DEVICE READ CMD | "0" | X,Y,M,S,T,C,D | DEVICE WRITE CMD | "1" | X,Y,M,S,T,C,D | FORCE ON CMD | " 7" | X,Y,M,S,T,C | FORCE OFF CMD | "8" | X,Y,M,S,T,C |
傳輸格式: RS232C 波特率: 9600bps 奇偶: even 校驗(yàn): 累加方式(和校驗(yàn)) 字符: ASCII 16進(jìn)制代碼: ENQ | 05H | 請(qǐng)求 | ACK | 06H | PLC正確響應(yīng) | NAK | 15H | PLC錯(cuò)誤響應(yīng) | STX | 02H | 報(bào)文開始 | ETX | 03H | 報(bào)文結(jié)束 |
幀格式:
STX | CMD | DATA | ...... | DATA | ETX | SUM(upper) | SUM(lower) |
例子: STX ,CMD ,ADDRESS, BYTES, ETX, SUM 02H, 30H, 31H,30H,46H,36H, 30H,34H, 03H, 37H,34H SUM=CMD+......+ETX; 30h+31h+30h+46h+36h+30h+34h+03h=74h; 累加和超過(guò)兩位取低兩位 |
|