三菱FX系列PLC编程口通信协议举例
1、DEVICE READ(读出软设备状态值) 计算机向PLC发送: 始 命令 首地址 GROUP ADDRESS 位数 BYTES 终 ETX 和校验 SUM STX CMD 例子:从D123开始读取4个字节数据 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个字节的数据
例子:从指定的存储器单元读到3584这个数据 02h
2、DEVICE WRITE(向PLC软设备写入值)
和校验 33h 35h 38h 34h 03h 44h,36h 始 命令 首地址 位数 数据 终 GROUP 1ST 2ND LAST STX CMD BYTES ...... ETX SUM ADDRESS DATA DATA DATA 例子:向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 02h 命令 CMD 37h 地址 ADDRESS address 终 ETX 03h 和校验 SUM sum FORCE OFF复位
始 STX 02h PLC返回
ACK(06H) 接受正确 NAK(15H) 接受错误
设备强制中的地址公式:Address=Address/8+100h
命令 CMD 38h 地址 ADDRESS address 终 ETX 03h 和校验 SUM sum 说明:
1.帧中的BYTES表示需要读取或者写入的字节数。 2.地址算法上有说明。
3.累加和是从STX后面一个字节开始累加到ETX的和。
三菱FX系列PLC编程口通信协议总览
该协议实际上适用于PLC编程端口以及 FX-232AW 模块的通信。感谢网友visualboy提供。 通讯格式:
命令 DEVICE READ CMD DEVICE WRITE CMD FORCE ON CMD FORCE OFF CMD 命令码 \ \ \ \ 目标设备 X,Y,M,S,T,C,D X,Y,M,S,T,C,D X,Y,M,S,T,C X,Y,M,S,T,C 传输格式: RS232C 波特率: 9600bps 奇偶: even
校验: 累加方式(和校验) 字符: ASCII 16进制代码:
ENQ ACK NAK STX ETX 05H 06H 15H 02H 03H 请求 PLC正确响应 PLC错误响应 报文开始 报文结束 帧格式:
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.