s7-1200的开放式通讯问题

一台1200控制8台机和调度系统做通讯,每台机有2个不同指令,共计16个指令发出,且8台机是相互独立,
1.程序编写要调用8个TSEND_C,TRCV_C吗?
2.调用的每一个TSEND_C都要有自己专用的connection连接数据块吗?

问题补充:
非常感谢,还有个疑问:一个通讯指令TSEND-C可以发送多个命令,假如发送一个字符串,SEND区的ARRAY值可以直接在数据块里设初始值吗?还是要在程序里给发送区ARRAY数组赋值?两者的区别是什么?
接收通讯指令用socket调试助手测试,每次接收的ARRAY数组的值都是变化的,类似循环移动的结果,接收区array的个数设置长度大于LEN也不行,高手帮帮忙,感激不尽。

图片说明:

s7-1200的开放式通讯问题   

最佳答案

1.是的,调用TSEND_C,就可以TRCV了,没必要TRCV_C
2.是的,确保ID不同

补充的答案:LEN=65535,这样可以变长接收
如果LEN=0,发送长度必须等于接收缓冲区的长度
如果0<LEN<=缓冲区长度,发送长度必须等于LEN长度

PS:如果1200 4.1+V13SP1,TRCV会有个引脚Adhoc,设置了就可以变长接收

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc175831.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月18日 下午11:12
下一篇 2017年6月18日 下午11:12

相关推荐