恭喜,你发布的帖子
发布于 2022-09-26 18:57:03
3楼
你的理解有误。这是Modbus_TCP通讯
不同的连接ID代表了占用的不同连接资源。
REQ在这里是启动连接,当状态字为7002时,建立连接完成。
然后它将连续地将你定义的缓冲区数据向服务器 读/写操作。你只需要在Done=1时,完成报文数据移动、修改。即便物理链路断开,(网线插拔),它也会自动再连接。(不用重新REQ)
对一个服务器同时读/写,用两个客户端,分别使用两个连接(固定)ID。分别REQ后,它会一直维持这两个连接;直到DISCONNECT。(当断开DONE之后,释放这个连接ID)
对一个服务器分时读/写,用一个客户端,使用一个连接ID;每次只能读或写。
你可以使用多个客户端,分别连接不同的服务器IP。直到连接资源用光。
若连接资源不够用、或网络负载太大。那么就需要使用DISCONNECT,通讯完成,断开(释放)连接。更换服务器(或暂停)数据。让别的客户端使用这个连接ID。
请填写推广理由:
分享
只看
楼主