打开一个S7-200SMART项目后,发现 modbus_INIT块无port口管脚,编译、调试都正常,不知什么回事?
图片说明:
最佳答案
你这是以前S7-200编写程序,转换到smart200 上面来可以用这个库,以前的S7-200的从站库和现在smart200的库不一样但是还是可以用,以前S7-200做从站Modbus RTU从站指令库只支持CPU上的通信0口(Port0),所以以前S7-200从站库只能用Port0库,这是默认,不用修改。现在smart200做从站两个口都可以,所以有Port管脚要填写。看下面链接进行对比你就知道。
S7-200 通过以下方式支持 Modbus RTU 通信协议:
S7-200 CPU 上的通信口 0(Port 0)通过指令库支持 Modbus RTU 从站模式
S7-200 CPU 上的通讯口 0 和 1 (Port 0 和 Port 1)通过指令库支持 Modbus RTU 主站模式
在 S7-200 CPU 通信口上实现的是 RS485 半双工通信,使用的是 S7-200 的自由口功能。
通过 S7-200 CPU 通信口的自由口模式实现 Modbus 通信协议,可以通过无线数据电台等慢速通信设备传输。 这为组成 S7-200 之间的简单无线通信网络提供了便利。
Modbus RTU通信:
http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/smartsms/020.html
Modbus RTU 从站:
http://www.ad.siemens.com.cn/productportal/prods/s7-200-smart-portal/200smarttop/communication/serial_port/modbus/Slave/Slave.htm
S7-200 Modbus RTU 通信:
http://www.ad.siemens.com.cn/service/article/S7-200/S7-200modbus/Default.aspx
图片说明: