本案例中西门子PLC和开云app苹果下载安装 DTU通讯利用的是DTU的透传模式,PLC和平台之间利用的是MODBUS-RTU协议进行通讯。S7-200通过以下两种方式支持MODBUS-RTU通信协议:
(1):S7-200 CPU上的通信口0(port0)通过指令库支持Modbus RTU从站模式。
(2):S7-200 CPU上的通信口0和1(port0和port1)通过指令库支持Modbus RTU主站模式。(注:指令库可在西门子提供的相关网站进行下载)
本案例中用到的是第一种方式,S7-200用作从站和tlink物联网平台通信。
一、选择产品
1.PLC:S7-200CN
2.DTU:GPRS DTU-02
二、设置PLC通讯信息
S7-200通讯的举例程序如下图所示:
图中程序参数意义如下:
·Mode:启动/停止Modbus,1=on;0=off
·Addr: Modbus从站地址,取值1-247
·Baud: 波特率,可选1200,2400,4800,9600,19200,38400,57600,115200
·Parity: 奇偶校验位,0=无校验;1=奇校验;2=偶校验
·Delay: 延时,附加字符间延时,缺省值为0
·MaxIQ: 最大IO点数,一般可设置为128.
·MaxAI: 最大AI通道数,视PLC的具体情况而定,一般可设置为16或32.
·Maxhold: 最大保持寄存器区.
·Holdstart: 保持寄存器起始区,以&VBx指定.
·Done(网络1中):初始化完成标志,成功初始化后置1.
·Error(网络1中):初始化错误代码,0为无错误.
·Done(网络2中):通信时置1,无Modbus通信时为0.
·Error(网络2中):通信错误代码,0为无错误.
Holdstart 和MaxHold规定的是保持寄存器的区域,保持寄存器区域的范围一定不能和程序存储区的范围冲突,否则无法通信。上图中指定的保持寄存器起始区的值为1000,也可以不指定1000.只要设置好程序存储的区域就能成功通信,程序存储区的设定如下图所示:
在程序块中,程序储存区分配的为1050至1829.因为Holdstart和Maxhold规定的区域是1000至1040(Maxhold规定的是VW的个数,所以变成VB需要乘以2)所以程序储存区分配为VB1050至VB1829.
三、编写控制程序
写好通信程序,分配好存储区之后便可以作为从站和主站进行通信了。为了更好的展示效果,这里编写了一些额外的控制程序,控制程序如下图所示:
四、配置DTU
DTU的配置主要由PLC的通讯信息和tlink平台来决定:
五、配置tlink平台读写命令
在tlink平台点击设备,在设备列表中选择设置链接,在传感器栏选择批量设置即可出现如下界面:
PLC各个区域对应的Modbus地址如下:
·00001-09999:数字量输出(线圈,可读可写)
·10001-19999:数字量输入(触点,只可读)
·30001-39999:输入数据寄存器(通常为模拟量输入,只可读)
·40001-49999:数据保持寄存器(可读写)
上述程序中写入寄存器的值对应的地址为40001和40002,对应平台中的03功能码(可读可写)偏置为1和2数据格式依据实际情况可填写为16位无符号或有符号数。采集周期可自行设定,建议设定为10.
六、运行PLC和DTU
将PLC和DTU连接上之后即可使PLC与tlink平台通讯成功,即可在tlink物联网平台上实现远距离监控,tlink平台的显示界面如下图所示:
PLC的状态显示如下图所示:
相关产品
Copyright © 2005 - 2020 开云足球app 粤ICP备17092331号 网站地图 粤公网安备 44030602001413号