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