找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
STEP7-Micro/WIN SMART 从V2.4 版本开始,软件中直接集成 Modbus TCP 库指令。
你所使用的V2.3版,属于自行添加的库,曾有多个版本,功能各有不同,需要仔细研究。建议升级软件。
建立多个连接,不同连接之间,可以并行操作,因为占用的通信资源不同;但建立一个连接,进行多个操作(读、写),不同操作之间需要进行轮询,同一时刻只能有一个操作在进行。
针对问题补充:
MBC_Connect仅仅用于建立客户端与服务器的连接,不同IP的客户端,必须使用不同的库(MBC_Connect_0、MBC_Connect_1、MBC_Connect_2)建立连接,这并不需要轮询。需要轮询的是MBC_MSG指令,同一时刻只能有一条MBC_MSG指令使能(EN必须一直接通直到该指令的Done位被置1)
而对于V2.4版的软件,Modbus TCP客户端库指令只有MBUS_CLIENT一条指令,多个客户端连接必须具有不同的 IPAddr 或 IP_Port 输入参数。对于同一个连接,读或者写不同参数,则需要改变参数RW、Addr、DataPtr等参数,只调用一次而不是使用多条MBUS_CLIENT轮询。
可以参考:新版S7-200Smart系统手册,第9.4.4节
https://support.industry.siemens.com/cs/cn/zh/view/109745610
出现通信问题,请仔细查看:指定的库指令使用的库存储器区,与你编写程序占用存储器是否有重叠。确保库存储器区避开你编程占用的区域。
链接:https://pan.baidu.com/s/1IQelx8jMwD19p03z9pFavA
提取码:xl7b
复制这段内容后打开百度网盘手机App,操作更方便哦
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!