概述
本例将通过西门子S7-200 SMART的MBUS_SERVER指令配置Modbus TCP服务器并使用一款简易的Modbus测试工具进行测试。本例和上一篇S7-1200的Modbus Server将作为下一篇Modbus Client轮询读写多个设备的服务器。
补充信息:
Modbus涉及到四种寄存器:保持寄存器、线圈寄存器、离散输入寄存器和输入寄存器。保持寄存器单位是2个Byte,相当于数据块,可读写。线圈寄存器单位是1个Bit,相当于开关量输出,可读写。离散输入寄存器单位是1个Bit,相当于开关量输入,只能读,不能写。输入寄存器单位是2个Byte,相当于模拟量输入,只能读,不能写。
第1步:
添加PLC设备,选择西门子S7-200 SMART SR20 CPU,设置IP地址:192.168.18.78,子网掩码:255.255.255.0。
第2步:
在左侧项目树的指令库中找到MBUS_SERVER指令,鼠标拖拽到MAIN程序块中,按照下图配置参数,保持寄存器长度设置为10,其它寄存器的长度选择最大值,在F1帮助文档中有明确的说明。编译时会有以下错误提示,此时应为MBUS_SERVER函数分配实例存储区。
第3步:
在左侧项目树的程序块下的库文件夹上单击鼠标右键,在弹出的快捷菜单中选择库存储器。
第4步:
选择从VB100开始的445个字节作为MBUS_SERVER的实例存储区,要避开保持存储器的定义地址VB0-VB19。再次编译,编译成功后,下载程序到CPU。
第5步:
打开Modbus客户端测试软件,选择Modbus TCP模式,填写Modbus TCP服务器的IP地址和端口号,按下Connect按钮,启动连接。
第6步:
连接成功后,窗口的左下角显示了Modbus TCP服务器的IP地址和端口号,窗口中还显示了设备地址和4种寄存器对应的地址和数据。
第7步:
选择保持寄存器,双击数据单元,在弹出窗口中输入测试数据222,按回车,此时数据并没有写入到Modbus TCP服务器中,然后按下Write to按钮,数据222被成功写入到Modbus TCP服务器的保持寄存器中。
第8步:
切换到线圈寄存器页,双击数据单元,在弹出窗口中输入测试数据TRUE,按回车,此时数据并没有写入到Modbus TCP服务器中,然后按下Write to按钮,数据TRUE被成功写入到Modbus TCP服务器的保持寄存器中,此时观察PLC的输出LED Q0.0被点亮。
- TIA Portal Modbus TCP Server的配置与测试(低版本指令) 2024-11-25
- 通过KEPServer的OPC功能连接WinCC Flexible和S7-1200或S7-1500 2024-11-25
- WinCC Flexible 2008 SP5 下载与安装 2024-11-25
- S7-200SMART实例之斜坡函数 2024-11-25
- S7-200SMART实例之画圆程序设计 2024-11-25
- S7-200SMART实例之跑马灯程序设计 2024-11-25
- 自定义Web网页访问PLC数据 2024-11-25
- 西门子精智面板仿真连接S7200SMART进行交通灯控制 2024-11-25
- S7-200SMART实例之交通灯控制子程序 2024-11-25
- 国产IO德克威尔测试 2024-11-25