三菱FX系列PLC編程口通信協(xié)議總覽
該協(xié)議實際上適用于PLC編程端口以及 FX-232AW 模塊的通信。
通訊格式:
命令 命令碼 目標(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
校驗: 累加方式(和校驗)
字符: ASCII
16進(jìn)制代碼:
ENQ 05H 請求
ACK 06H PLC正確響應(yīng)
NAK 15H PLC錯誤響應(yīng)
STX 02H 報文開始
ETX 03H 報文結(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;
累加和超過兩位取低兩位
1、DEVICE READ(讀出軟設(shè)備狀態(tài)值)
計算機(jī)向PLC發(fā)送:
始 命令 首地址 位數(shù) 終 和校驗
STX CMD GROUP ADDRESS BYTES ETX SUM
例子:從D123開始讀取4個字節(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個字節(jié)的數(shù)據(jù)
例子:從指定的存儲器單元讀到3584這個數(shù)據(jù)
02h 33h 35h 38h 34h 03h 44h,36h
2、DEVICE WRITE(向PLC軟設(shè)備寫入值)
始 命令 首地址 位數(shù) 數(shù)據(jù) 終 和校驗
STX CMD GROUP ADDRESS BYTES 1ST DATA 2ND DATA ...... LAST DATA ETX SUM
例子:向D123開始的兩個存儲器中寫入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) 接受錯誤
3、位設(shè)備強(qiáng)制置位/復(fù)位
FORCE ON置位
始 命令 地址 終 和校驗
STX CMD ADDRESS ETX SUM
02h 37h address 03h sum
FORCE OFF復(fù)位
始 命令 地址 終 和校驗
STX CMD ADDRESS ETX SUM
02h 38h address 03h sum
PLC返回
ACK(06H) 接受正確
NAK(15H) 接受錯誤
設(shè)備強(qiáng)制中的地址公式:Address=Address/8+100h
說明:
1.幀中的BYTES表示需要讀取或者寫入的字節(jié)數(shù)。
2.地址算法上有說明。
3.累加和是從STX后面一個字節(jié)開始累加到ETX的和。