自编三菱PLC通讯协议详情.docx
《自编三菱PLC通讯协议详情.docx》由会员分享,可在线阅读,更多相关《自编三菱PLC通讯协议详情.docx(9页珍藏版)》请在冰豆网上搜索。
![自编三菱PLC通讯协议详情.docx](https://file1.bdocx.com/fileroot1/2022-12/18/97aacbfa-0baf-43ac-8633-7628e651dcb3/97aacbfa-0baf-43ac-8633-7628e651dcb31.gif)
自编三菱PLC通讯协议详情
FX系列可编程控制器〔PLC〕通讯常用方法
1、根本通讯方法
§
§
2、通信格式
§
§2.2PLC相关通讯存放器标志
§
§
3、通讯过程
§
§
§
4、附录
ASCII码表
1、根本通讯方法
§
FX系列PLC支持5种通讯方法
1)计算机:
用计算机做主机,通过RS485接口与16台PLC组网,采用专用通讯协议,在计算机与PLC之间交换数据,本资料重点解决计算机问题,包括硬件连接、通讯参数设置、通讯格式等。
2)N网络:
可以将8台PLC构成网络,无需协议,自成网络。
3)并联:
可以将2台PLC并联成网络,也无需协议,自成网络。
4)PLC用RS指令发送、接收数据,与计算机等设备进展无协议通讯交换数据。
5)通过PLC编程接口,与计算机等设备进展数据交换,本厂采用该方式在MCGS工业组态软件根底上,开发出各类锅炉专用的计算机监控系统。
§
RS232CFX-485RC-IFFX1N-485-BD
………
1216
上述结构是一种采用计算机串行口与PLC的最根本方法,最远通讯距离50M,其通讯相关参数见下表:
通讯接口:
FXON-485ADP/FX-485ADP/FX1N-485BD/FX1N-V-BD/FX1N-232BD可选。
通讯距离:
FX1N-485BD50M,选其它某些件,最远500M。
从站连接数:
最大16台
通讯方法:
半双工
数据长度:
7位/8位可选
校验:
不用/奇/偶可选
停止位:
1位/2位可选
波特率:
300/600/1200/2400/4800/9600/19200可选
超始符:
不用/有效可选
协议:
格式1/格式4可选
求和检查:
不用/有效可选
可选PLC类型:
FX2N,FX2NC,FX1N,FX1S,FXON,FX,FX2C
计算机与PLC通讯所需的时间,可通过计算得到。
由PLC→计算机
通讯时间=传送数据字符总量×收发一个字符的时间+PLC的最大扫描时间×3+计算机空等待时间
由计算机→PLC
通讯时间=传送数据字符总量×收发一个字符的时间+PLC的最大扫描时间+计算机空等待时间
例:
当一个字符占10位〔字长7、校验1、停止位1、启动位1〕
选9600波特率,如此收发一个字符需1.04ms。
2、计算机的通讯格式
§2.1根本格式
通讯格式就是确定通讯的参量,例如:
数据的长度、校验位、波特率等等,对PLC通讯格式设置由数据存放器D8120完成,每次对D8120做了修改,即改变PLC的通讯格式,都必须关闭PLC电源,然后重新送电,新的通讯格式才能被确认。
§2.2PLC相关的通讯标志
专用辅助继电器描述
M8126全局标志
M8127通讯请求握手信号
M8128出错标志
M8129通讯请求切换
专用数据存放器描述
D8120通讯格式
D8121从站号〔最多16个〕
D8127交换数据的首地址
D8128交换数据量
D8129网络通讯超时时间确认值
§2.3通讯格式详解〔D8120〕
位号
含义
描述
bo
数据长度
0:
7位1:
8位
b2b1
校验方式
00:
不用01:
奇校验11:
偶校验
b3
停止位
0:
1位1:
2位
b7b6b5b4
波特率
0001:
3000111:
4800
0100:
6001000:
9600
0101:
12001001:
19200
0110:
2400
b8
0:
不用注:
无协议通讯专用
b9
0:
不用同上
b12b11b10
通讯接口
000:
RS485〔RS422〕接口
010:
RS232C接口
b13
求和检查
0:
不加求和码1:
自动加上求和码
b14
协议
0:
无协议通讯1:
专用通讯协议
b15
协议格式
0:
格式11:
格式4
§2.4举例
M8002
[MOVH4086D8120]
D8120=[0100000010000110]
数据长度7
校验偶
停止位1
波特率9600
通讯口RS485
求和检查不用
协议专用协议
协议格式格式1
3、通讯过程
§
通讯控制码:
计算机与PLC之间通讯时,通过通讯控制码识别通讯任务,是计算机与PLC之间交流的语言,常用的通讯控制码如下:
控制码符号
控制码代码
描述
STX
02H
数据开始
ETX
03H
数据完毕
EOT
04H
传送完毕
ENQ
05H
请求通讯联络
ACK
06H
响应通讯联络
LF
0AH
换行
CL
0CH
去除
CR
0DH
回车
NAK
15H
不响应
§
1)计算机从PLC读数据
计算机
PLC
其过程为:
计算机发出请求通讯联络,然后,将希望的任务在数据中描述,传给PLC,相关PLC获得后,根据计算机的要求,回复计算机开始回传数据,并将相关数据送出,计算机获得数据后,告诉相关PLC,已经获得数据,完毕本次通讯。
2)计算机写数据到PLC中
计算机
3)专用通讯协议的根本格式
控制码+呼叫从机的站号+本机的站号+控制命令+等待+发送的数据+〔求和检查〕+〔控制码CR+LF〕
注1:
求和检查是否选用由通讯格式D8120的b13决定
注2:
结尾的控制码CR+LF是否选用由通讯格式D8120的b15决定,格式1表示不用该控制码,格式4表示使用。
4)计算机从PLC读数据的格式《格式1》
5)计算机写数据到PLC中的格式《格式1》
6)通讯协议详解
a)PLC在通讯过程中,一旦收到如下之一控制码,通讯将初始化:
ENQ、ACK、NAK,并响应主机。
b)一旦收到控制码EOT或CL,通讯将初始化,不响应主机
c)从机站号由NO.O至NO.15,PLC设定如下:
M8002
设为15号从站,16个从站并不需要顺序排列,可以自由设定,但不能重号。
d)计算机主站号,使用FFH
e)控制命令是通讯所要完成的相关任务的控制字,其描述详见下一节
f)等待时间:
计算机从发送切换到接收状态所需的延迟时间,PLC从收到计算机的信息后,到开始向计算机发送信息,其最小时间间隔,是计算机必须等待的,该等待时间在0到150ms之间设定,每10ms为一段,用0-FH代表
0代表0ms,1代表10ms,……FH代表150ms
实际使用中,要大于70ms,假如PLC扫描时间超过70ms,如此该等待时间要大于扫描时间
g)求和检查:
请参考相关说明,本文不详述
h〕超时检查
§
本文的主导目的是在锅炉控制系统中,进展计算机,为了确保锅炉的可靠、稳定运行,只允许从PLC中读信息到计算机中,禁止向PLC写数据,以防止发生不可预计的意外。
因此,下面只对局部相关控制命令进展描述,其它详细内容,请参考相关通讯手册。
1〕控制命令
命令1:
批量读PLC位单元
符号:
BR
ASCⅡ码:
42H,52H
描述:
从PLC位单元〔X、Y、M、S、T、C〕读一批数据,最大54位
命令2:
批量读PLC字单元
符号:
WR
ASCⅡ码:
57H,52H
描述:
从PLC位单元组〔X、Y、M、S〕读一批数据,或从PLC字单元〔D、T、C〕读一批数据,最大13字
2〕FX1SPLC可以读取的数据区
位单元
X围
进制
X
X0000-X0017
8进制
Y
Y0000-Y0015
8进制
M
M0000-M0511
10进
S
S0000-S0127
10进
M
M8000-M8254
10进
T
TS000-TS063
10进
C
CS000-CS031
CS235-CS254
10进
字单元
X围
T
TN000-TN063
C
000-031
235-254
D
C0000-D0255
D8000-D8255
3〕命令详解《不用求和码,格式1》
a)批量从PLC中读位单元数据到计算机中
b)批量从PLC中读字单元数据到计算机中
举例:
计算机由从站0中读D11开始的连续2点到主站中。
同上例,如此:
D11:
锅炉的工作状态
0:
等待工作
9:
大火燃烧
1:
强制手动吹扫
10:
燃气压力低,停火
2:
风门打开
11:
燃气压力低停火,后扫
3:
预扫炉
12:
压力自控停火
4:
风门关至点火位
13:
压力自控停火,后扫
5:
准备点火
14:
手动停炉,后扫
6:
开阀,点火
15:
故障停炉
7:
手动强制小火燃烧
16:
故障停炉,后扫
8;程序强制小火燃烧
17:
正在检漏
D12:
锅炉故障码
0:
高水位
14:
风门关闭故障
6:
关阀保护
15:
风门关小故障
7:
风压不足
16:
风门打开故障
10:
低水位
18:
故障见火
11:
蒸汽超高压力
19:
故障熄火
13:
风门控制失效
20:
点火失败
假如D11=0009HD12=0000H,即:
大火燃烧,高水位。
如此相应的通讯命令如下:
4、附录A
ASCII码表如下: