多语言展示
当前在线:129今日阅读:2今日分享:38

西门子PLC S7-200通过DTU连接Tlink物联网

西门子PLC S7-200通过拓普瑞 DTU连接物联网
方法/步骤
1

一.本案例中 PLC 和 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 物联网平台通信。

2

二.设置PLC通讯信息  S7-200 通讯的举例程序如下图所示:

3

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.只要设置好程序存储的区域就能成功通信,程序存储区的设定如下图所示:

4

在程序块中,程序储存区分配的为 1050 至 1829.因为 Holdstart 和 Maxhold 规定的区域 是 1000 至 1040(Maxhold 规定的是 VW 的个数,所以变成 VB需要乘以 2)所以程序储存 区分配为 VB1050 至 VB1829.三.编写控制程序  写好通信程序,分配好存储区之后便可以作为从站和主站进行通信了。为了更好的展示 效果,这里编写了一些额外的控制程序,控制程序如下图所示:

5

四:配置DTU   DTU 的配置主要由 PLC 的通讯信息和 tlink 平台来决定:

6

五.配置 tlink 平台读写命令  在 tlink 平台点击设备,在设备列表中选择设置链接,在传感器栏选择批量设置即可出现 如下界面:

7

PLC 各个区域对应的 Modbus 地址如下:   ·0:数字量输出(线圈,可读可写   ·1:数字量输入(触点,只可读)   ·3:输入数据寄存器(通常为模拟量输入,只可读)   ·4:数据保持寄存器(可读写)   上述程序中写入寄存器的值对应的地址为 40001 和 40002,对应平台中的 03 功能码(可 读可写)偏置为 1 和 2 数据格式依据实际情况可填写为 16 位无符号或有符号数。采集周期 可自行设定,建议设定为 10.六.运行 PLC 和 DTU  将 PLC 和 DTU连接上之后即可使 PLC 与 tlink 平台通讯成功,tlink 平台的显示界面如 下图所示:

8

PLC 的状态显示如下图所示:

推荐信息