FX PLC编程口通信协议分析

阅读: 评论:0

FX PLC编程口通信协议分析
摘要:通过监视串口数据的收发,分析FX2N PLC编程口的通信协议,从而获得PLC底层通信的方法。该协议可用于PLC与上位机的直接通信。
关键词:FX2N PLC,通信协议,编程口
1 前言
    三菱FX2N系列PLC的通信方式有多种:(1NN网络;(2)并行连接;(3)计算机链连接(使用专用协议);(4)无协议通信(使用RS485RS指令);(5)编程口通信。这几种通信方式各有特点,前4种协议需要对PLC进行设置或采用专用指令,编程口通信协议无需对PLC进行编程就可以直接读写PLC。通过对三菱自带编程软件与PLC通信的监控与分析,可以得到PLC编程口通信的底层通信协议,从而获得PLC底层通信的方法,实现对PLC内部资源的访问。
2 分析思路
防盗手机套
图1 通信协议监控分析
Fig.1 protocol monitor and analysis
    三菱FXGP编程软件是FX PLC的编程开发软件,PCRS232通过 FX-232AW 模块与编程口直接通信。为了分析FXGPPLC的通信协议,在PCPLC之间插入一个检测器,实时截获PC机串口上的收发数据。根据编程手册,有关通信参数为:96007E1ASCII码方式。检测线路见图1 
3 通信协议分析
FX PLC的内部数据主要包括:D寄存器(每个寄存器二字节长)、M(位地址)、S(位地址)、T(位地址)、C(位地址)、X(位地址)、Y(位地址)。
数据帧基本格式
1 FX2N PLC 数据帧基本格式
Tab.1 FX2N PLC basic protocol format
起始
数据
数据
终止
和校验高字节
和校验低字节
STX
CMD
DATA
编程演示DATA
ETX
SUM(高)
SUM(低)
16进制控制码: 
2 FX2N PLC 控制码
Tab.2 FX2N PLC control code
控制码助记符
16进制码
含义
ENQ
05
请求
ACK
06
PLC正确响应
NAK
15
刘廷析PLC错误响应
STX
02
报文开始
ETX
03
报文结束
3D寄存器
PLC软设备的状态值。读命令码30h, 读命令数据帧格式:
3 FX2N PLC 读命令数据帧格式
Tab.3 FX2N PLC protocol format of read data
起始
命令
首地址
字节数
终止
和校验高字节
和校验低字节
STX
CMD
DATA
Bytes
ETX
SUM(高)
SUM(低)
例:D123开始读取4个字节数据。计算首地址:123×2+1000h=104Fh
PC机向PLC发出下列命令数据串:
4 FX2N PLC 读命令数据帧格式示例
Tab.4 A sample of read data from FX2N PLC
起始
命令
首地址
节数
终止
和校验高字节
和校验低字节
02h
30h
31h 30h 34h 46h
30h 34h
03h
37h
34h
和校验:cmd++ETX=31h+30h+34h+46h+30h+34H+03h=74h,高位‘7’,低位‘4
PLC返回值:
假设从D123读回3584这个数据,返回数据帧格式:
5 FX2N PLC 读命令返回数据帧格式示例
Tab.5 A sample of retuned data from FX2N PLC
起始
数据
终止
和校验高字节
和校验低字节
02h
33h 35h 38h 34h
03h
44h
36h
和校验:33h+35h+38h+34h+03h=D6h, 高位‘D’,低位‘水银蒸发令6
3D寄存器
PLC软设备的写入值。
写命令码31h, 写命令数据帧格式:
6 FX2N PLC 写命令数据帧格式
Tab.6  FX2N PLC protocol format of write data
起始
命令
首地址
字节数
写入的数据
终止
和校验高字节
和校验低字节
STX
CMD
DATA
Bytes
1字节
1字节
N字节
ETX
SUM(高)
SUM(低)
例:向D123开始的存储器中写入1234ABCD
计算首地址:123×2+1000h=104Fh
PC机向PLC发出下列命令数据串:
7 FX2N PLC 写命令数据帧格式示例
Tab.7 A sample of write data to FX2N PLC
起始
命令
首地址
节数
数据
终止
和校验高字节
和校验低字节
02h
30h
31h 30h 34h 46h
30h 34h
33h 34h 31h 32h 43h 44h 41h 42h
03h
34h
39h
和校验:cmd++ETX=31h+30h+34h+46h+30h+34H+33h+34h+31h+32h+43h+44h+41h+42h +03h=49h,高位‘4’,低位‘9
每个D寄存器占2个字节,低8位在前高8位在后。
PLC返回值:
  若成功写入,返回06h;若写入失败,返回15h
3位设备置位
FX PLC2N的位设备主要有:MSTCXY
位设备置位命令码:37h,命令数据帧格式:
8 FX2N PLC 位设备置位数据帧格式
Tab.8 Force on bit device of FX2N PLC
起始
命令
地址
终止
和校验高字节
和校验低字节
STX
CMD
Address
ETX
SUM(高)
SUM(低)
例:M1置位
计算地址:1×100h+8=0108h(四位地址),地址码:30h 31h 30h 38h
命令串:
9 FX2N PLC 位设备置位数据帧示例
Tab.9 A sample of Forcing on bit device of FX2N PLC
起始
命令
地址
终止
和校验高字节
和校验低字节
02h
37h
30h 31h 30h 38h
03h
30
33
和校验:cmd++ETX=37h+30h+31h+30h+38H+03h=03h,高位‘0’,低位‘3
PLC返回值:
  若成功写入,返回06h;若写入失败,返回15h
3位设备复位
位设备复位命令码:38h,命令数据帧格式:
10 FX2N PLC 位设备复位数据帧格式
Tab.10 Force off bit device of FX2N PLC
起始
命令
地址
终止
和校验高字节
和校验低字节
STX
CMD
DATA
ETX
SUM(高)
陈利丹SUM(低)
例:M1复位
计算地址:1×100h+8=0108h(四位地址),地址码:30h 31h 30h 38h
命令串:
11 FX2N PLC 位设备复位数据帧格式示例
Tab.11 A sample of Forcing off bit device of FX2N PLC
中国投资环境
起始
命令
地址
终止
和校验高字节
和校验低字节
02h
38h
30h 31h 30h 38h
03h
30
34
和校验:cmd++ETX=38h+30h+31h+30h+38H+03h=04h,高位‘0’,低位‘4
PLC返回值:
  若成功写入,返回06h;若写入失败,返回15h
4 应用
41 PCPLC直接通信
2 为采用PLC编程口通信协议设计的上位机监控系统,编程设计语言采用VBVC等软件。其优点是:无需购买组态软件,监控系统具有自主知识产权,PLC方无需编写通信指令。
图2 PC与PLC的直接通信
Fig.2 Linking PC and PC directly
42 单片机系统与PLC通信
图3  单片机应用系统与PLC的直接通信
Fig.3 Linking microprocessor system and PLC directly
3 为采用PLC编程口通信协议设计的单片机应用系统。若以PLC为主机,单片机系统可以是PLC的人机界面(显示/键盘/触摸屏等)或是功能扩展(I/ODA/AD等)。若以单片机系统为主机,PLC实现应用系统中的强电控制,是一种经济、有效的设计方法。
参考文献:
1、 User’ manual of FX Communication (RS232C,RS485),  MITSUBISHI ELECTRIC
Protocol analysis of FX PLC programming port
Ge Huimin
(Zhejiang Institute of Mechanical & Electrical Engineering,

本文发布于:2023-06-27 13:13:55,感谢您对本站的认可!

本文链接:https://patent.en369.cn/xueshu/136983.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据   编程   系统   格式   命令   监控   协议
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图