恭喜,你发布的帖子
发布于 2017-11-26 15:35:18
8楼
如果服务器端把读写分开的,是不是就可以同时读写了?
例如1200与1200之间的Mdbus TCP 在客户端调用两次 MB_CLIENT (分别使用来读写服务器)在服务器端的1200调用两次MB_SERVER(一个MB_SERVER用来接收客户机的数据一个MB_SERVER用来准备给客户机读取的数据)
是不是这样就可以读写同时操作?
嘿嘿,问题不在这里呀。
主要是看连接数!在线看看你使用的开放式连接数!如果对远程一台是使用两个连接,一个读,一个写;两边各有自己的功能块(就是有自己的数据缓冲区),当然是可以同时工作啦!这种状况,总是REQ,我都不看BUSY,只要是DONE,就更新数据区。反正断了连接,重新建立后都是自行恢复发送/接受的。
要是就用一个连接,也是可以的,你写程序就要分时段读或写啦。完全要按顺序,完成一个任务,再下一个任务。
如果多个客户端(多个PLC)只是对远程一个服务器(功能块)去读写,也是可以的,服务器端使用不同的连接号!各干各的。
如果你一个PLC使用多个客户端功能块去读写同一个服务器,就看你使用的是不同的连接号,还是共用的,共用就要“排队”了。就要查看服务器BUSY状态。
其实就是服务器端的对方IP地址设成0,那就是接受任意IP地址的访问。不排队才怪呢。
请填写推广理由:
分享
只看
楼主