2022-09-21
两台西门子S7 200 SMART之间用PROFINET通信,最大传输字节是128,实际需要传输的字节数远大于128字节,求教怎么实现分时分批传送
评论5
楼主 2022/9/22 17:52:46
你把数据分成2批采用轮训方式进行接收以及发送,用一个标志位进行区分2组数据,如标志位为0时,某数组接收数据,而标志位为1时,用另一数组接收数据
楼主 2022/9/23 9:55:01
建议plc1请求plc2发送,PLC2发送第一组数据和第一组发送完成标志,PLC1反回接收第一组数据完成,PLC各自处理数据,接着第二组以此类推。
楼主 2022/9/26 13:10:47
类似于做一个轮询不就ok了么
楼主 2022/9/27 9:55:11
可以用开放以太网协议(TCP协议)进行传输,一次可以传好几K的内容。以下供参考:
S7-200 SMART CPU 有两条用来执行连接管理的 OUC 指令:
● TCON 指令,用来建立一个主动连接(客户端)或打开一个被动连接(服务器)
● TDCON 指令,用来强制断开连接(例如,关闭连接)。RUN-to-STOP 转换强制关闭
所有 CPU 创建的开放连接。
CPU 支持两种 OUC 连接类型:
● 主动:连接由本地 CPU 建立并维护。本地 CPU 负责向另一个设备发起连接请求并维
护连接,这样,连接不会由于停滞状态而超时。
● 被动:在被动连接中,本地 CPU 打开一个端口和/或 TSAP,从而接收来自另一个设
备的连接请求。
CPU 支持八个主动连接和八个被动连接。
CPU 根据传送给 TCON 指令的连接表创建被动或主动连接。UDP 连接始终为被动连
接。TCP 和 ISO-on-TCP 连接使用一个组态参数来确定连接类型。