S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

内容分享1小时前发布
0 3 0

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

一、ModScan32(S7 200 SMART 做服务器)

1. 打开ModScan32软件

2. 点击“Setup”—“Display Definition”—设定“Point Type”(本例程以保持型寄存器为例)—“Length”为6,设置完成后点击OK

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

3. 点击“Connection”—-“Connect”

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

注意:① Connect选择Remote TCP/IP Server;
② 设置IP Address和端口号与cpu中设置的保持一致。

二、S7-200 SMART编程

1.打开STEP 7 Micro/WIN SMART>项目树>指令树>库>Modbus TCP Server(v1.0),调用MBUS_SERVER

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

2.鼠标选中程序块文件夹,单击右键,下拉菜单中选择库存储器

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

3.在库存储区分配对话框中手动输入存储区的起始地址。此实例为VB5000开始,以使指令库可以正常工作。确保库存储区与程序中其他已使用的地址不冲突。使用提议地址无法确定是否有地址重叠,所以推荐手动输入正确的库存储区首地址

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

4.编译项目,下载程序。

通信结果如下:

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

三、Modbus Slave(S7 200 SMART 做客户端)

1. 打开Modbus Slave软件

2. 点击”Setup”—“Slave Definition”—设定Function”(本例程以保持型寄存器为例)—“Quantity”为6—“Display”为Signed,设置完成后点击OK

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

3. 点击”Connection”—-“Connect”

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

注意:① Connect选择 TCP/IP;
② 设置TCP/IP Port为502与cpu中设置的保持一致,勾选Ignore Unit ID。

五、S7-200 SMART编程

1.打开STEP 7 Micro/WIN SMART>项目树>指令树>库>Modbus TCP Client(v1.4),调用MBUS_CLIENT

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

2.鼠标选中程序块文件夹,单击右键,下拉菜单中选择库存储器,如图13所示。

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

3.在库存储区分配对话框中手动输入存储区的起始地址。此实例为VB5000开始,以使指令库可以正常工作。确保库存储区与程序中其他已使用的地址不冲突。使用提议地址无法确定是否有地址重叠,所以推荐手动输入正确的库存储区首地址。如图14所示。

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

4.编译项目,下载程序。

六、通信测试结果

在状态图表中创建变量,VW20-VW30 共6个字,赋值后,将M0.0置位为1

S7-200 SMART 与Modbus Slave进行Modbus TCP 通信

© 版权声明

相关文章

3 条评论

  • 头像
    得意的日本熊 投稿者

    收藏了,感谢分享

    无记录
    回复
  • 头像
    闪对 读者

    连接其实不麻烦,麻烦的是当读、写地址不连续时需要进行轮询,如果设备的读写地址切换过于频繁轮询程序会非常长,这种情况建议考虑用modbus 网管的地址融合功能,先由网管采数据,plc再和网管进行通讯

    无记录
    回复
  • 头像
    Li-hahaha 读者

    嗯嗯,通常控制用硬接线,数据读取,用通讯方式,一是省点,二是方便

    无记录
    回复