资源描述
PLC通信格式为:9600波特率 偶校验 7位数据位 1位
数据格式为:1位起始位 7位数据位 1位奇偶校验位 1位停止位
pc->ENQ 05H
plc->ACK 06H
PC->命令报文 STK CMD 数据段 ETX SUMH SUML
02H 03H (前面相加,溢出不计)
PLC->应答报文 STK 数据段 EXT SUMH SUML
CMD:“0”-30H 读命令
“1”-31H 写命令
“7”-37H 强制通ON
“8”-38H 强制端OFF
例子:读fx系列D123内容
pc------------------------------------------------------------>PLC
ENQ(05H)
ACK(06H)
STX CMD 10F6 04 EXT SUMH SUML
02H 30H 31H 30H 46H 36H 34H 03H
STX 第1字节 第2字节 第3字节 第4字节 EXT SUMH SUML
02H 03H
从串口得知读出的D123内的值为:
3046 3030 3030 3030
0C 00 00 00
12 0 0 0
1、DEVICE READ(读出软设备状态值)
计算机向PLC发送:
例子:从D123开始读取4个字节数据
始
命令
首地址
位数
终
和校验
STX
CMD
GROUP ADDRESS
BYTES
ETX
SUM
地址算法:address=address*2+1000h
再转换成ASCII
31h,30h,46h,36h
PLC返回
02h
30h
31h,30h,46h,36h
30h,34h
03h
37h,34h
注:最多可以读取64个字节的数据
例子:从指定的存储器单元读到3584这个数据
STX
1ST DATA
2ND DATA
.....
LAST DATA
ETX
SUM
2、DEVICE WRITE(向PLC软设备写入值)
02h
33h
35h
38h
34h
03h
44h,36h
例子:向D123开始的两个存储器中写入1234,ABCD
始
命令
首地址
位数
数据
终
和校验
STX
CMD
GROUP ADDRESS
BYTES
1ST DATA
2ND DATA
......
LAST DATA
ETX
SUM
PLC返回
ACK (06H) 接受正确
NAK (15H) 接受错误
3、位设备强制置位/复位
FORCE ON置位
02h
31h
31h,30h,46h,36h
30h,34h
33h,34h,31h,32h,43h,44h,41h,42h
03h
34h,39h
FORCE OFF复位
始
命令
地址
终
和校验
STX
CMD
ADDRESS
ETX
SUM
02h
37h
address
03h
sum
PLC返回
ACK(06H) 接受正确
NAK(15H) 接受错误
设备强制中的地址公式:Address=Address/8+100h
说明:
1.帧中的BYTES表示需要读取或者写入的字节数。
2.地址算法上有说明。
3.累加和是从STX后面一个字节开始累加到ETX的和。
始
命令
地址
终
和校验
STX
CMD
ADDRESS
ETX
SUM
02h
38h
address
03h
sum
三菱FX系列PLC编程口通信协议总览
该协议实际上适用于PLC编程端口以及 FX-232AW 模块的通信。通讯格式:
传输格式: RS232C
波特率: 9600bps
奇偶: even
校验: 累加方式(和校验)
字符: ASCII
16进制代码:
命令
命令码
目标设备
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
帧格式:
ENQ
05H
请求
ACK
06H
PLC正确响应
NAK
15H
PLC错误响应
STX
02H
报文开始
ETX
03H
报文结束
例子:
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;
累加和超过两位取低两位
STX
CMD
DATA
......
DATA
ETX
SUM(upper)
SUM(lower)
展开阅读全文