找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
1. CPU发现有两个硬件标识符,应该用64,即 16#40
2. 连接CONNECT引脚的DB块里,参数设置正确
3、可以用同一个连接ID,这种情况下,每个CLIENT的引脚 connect 必须使用同一个 TCON_IP_V4 结构,是可以复制粘贴用同一个DB块中的 TCON_IP_V4 参数,但必须做成轮循的方式触发,使得在同一个时刻只有一个 CLIENT 指令被激活。不能用时钟位触发的方式。轮循的方法请参考
《S7-1200 MODBUS TCP通信多请求处理》
https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/11-Comm/01-Ethernet/04-Modbus_TCP/03-Modbus_TCP_Multi_Request.htm
补充问题回复:
不是一回事。
CLNNECT 块的CONNECT脚指向的那个 TCON_IP_v4 结构中的的 ID 是以太网连接号。
MB_Unit_ID 的作用描述如下:
S7-1200 CPU 作为 Modbus TCP 客户端与 Modbus TCP 服务器通信,当尝试访问比 Modbus TCP 服务器更低端的串行子网中的设备,会有报错 "无法建立连接"。
这种情况下, Modbus TCP 服务器作为 Modbus RTU 协议中的网关,"MB_Unit_ID" 参数相当于 Modbus RTU 协议中的从站地址。
Modbus TCP 客户端直接向 Modbus TCP 服务器发送请求,Modbus TCP 服务器通过识别 "MB_UNIT_ID" 参数,将请求转发到从站设备。
在 S7-1200 项目中,选择系统块,双击打开 MB_CLIENT 指令的背景数据块“MB_CLIENT_DB”, 在静态变量Static下可以找到 MB_Unit_ID,改动其初始值。也可以在线修改当前值。
请参考这个链接中的下面部分,对这个参数的解释
https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/11-Comm/01-Ethernet/04-Modbus_TCP/01-Modbus_TCP_V4/01-Client.html
《Modbus 块 "MB_CLIENT" 的背景数据块中的 "MB_UNIT_ID" 有什么功能?》
https://support.industry.siemens.com/cs/cn/zh/view/102420337
Modbus TCP 通信:
https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/smartsms/024.html
S7-1200 作 MODBUS TCP客户端:
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!