分布在不同地方(车间、控制室场所等)的PLC需要与总控中心的组态王软件进行远距离无线通信。
通常情况是采用有线RS485总线敷设电缆,通过MODBUS协议完成此功能。
在这里介绍一种PLC的MODBUS无线组态通信的实现方法。本方案可以作为西门子PLC与组态王通信的实例。
1
组态王实现MODBUS主站
1.1新建组态王工程
打开组态王工程管理器,菜单栏点击 文件→新建工程,弹出新建工程向导对话框,点击下一步,输入工程名称,如MODBUS_ZUTAIWANG。点击下一步完成。新建工程被添加到工程管理中。
如下图所示∇
1.2创建设备
双击工程管理器中新建的工程,进入工程浏览器界面,选择工程浏览器中的 设备→COM1→新建…进入设备配置向导,选择PLC→莫迪康→ModbusRTU→COM
参考如下界面∇
点击下一步,给设备命名,如MODBUS,继续点击下一步,选择计算机串口,如本机串口使用COM1,继续下一步选择Modbus从站站号,如2#,继续下一步,创建设备完成,在设备区显示新建的MODBUS设备。
如下图所示∇
1.3创建数据词典
接下来创建数据库,用于组态王与设备之间进行数据传输。选择工程浏览器中的 数据库→数据词典,创建本工程所需要的I0.0-I0.3输入寄存器变量和Q0.0-Q0.3输出线圈变量。
首先点击新建,弹出定义变量对话框∇
定义变量名,变量类型为I/O离散,连接设备选择MODBUS,选择相应的寄存器,数据类型为Bit,并定义读写属性。I0.0-I0.3输入寄存器变量和Q0.0-Q0.3输出线圈变量
如下图所示∇
1.4创建画面
变量定义完成后创建画面。选择 文件→画面→新建…,
如下图所示∇
变量与画面进行变量映射,组态王工程建立完成。
西门子PLC实现MODBUS从站
西门子PLC作为从站,仅需要使用MODBUS库提供的Modbus库函数对Modbus从站进行配置。
2.1初始化MODBUS从站
2.2启动MODBUS从站
采用无线RS485通信
西门子PLC从站建立完成。
下载S7-200程序
下载这个MODBUS无线通信组态王例程.mwp程序到S7-200中。这个MODBUS从机例程调用了200PLC提供的MODBUS Slave库函数,使用非常方便。注意,原来需要向 PLC中下载对应的初始化程序(KVmodbus.mwp),由亚控公司提供。此程序默认的PLC通讯端口为 port0,地址为 2,波特率 9600,无校验(地址和波特率可由程SBR0 中的 V B8,SMB30 进行修改); 这个驱动例程是采用自由口协议编写的,不适合于工程人员。
设备选择
03
实验设备及其接线
1. 组态软件:组态王6.55
2. S7-200型号:CPU224XP CN,1台
3. 无线数据终端:达泰4系无线数据通讯终端DTD434MB, 2台
4. PC电脑与无线数据终端DTD434M连接
RS-232连线 |
电脑RS232串口 |
DTD434M |
DTD434M设置 |
RXD |
DB9-Pin2 Rx |
DB9-Pin2 Tx |
K1: 1,2,4 OFF K1: 3 ON K2: 1,2,3,4 OFF |
TXD |
DB9-Pin3 TX |
DB9-Pin3 Rx | |
GND |
DB9-Pin5 GND |
DB9-Pin5 GND |
5. S7-200与无线数据终端DTD433M连接
RS-485连线 |
S7-200 Port0 |
DTD434M |
DTD433M设置 |
RS485+ A |
DB9-Pin3 B |
CN2-4 RS485+ A |
K1: 1,2,4 OFF K1: 3 ON K2: 1,2,3,4 OFF |
RS485- B |
DB9-Pin8 A |
CN2-5 RS485- B |