展开查看
以下是引用link_wxm在2014-10-28 14:33:26的发言 >4楼:要认真找原因,前一段时间我用3个1211进行以太网通讯开始跟你描述的一样不管怎么搞只有任意两个能够通讯;
“1号到2号之间收发数据正常,1号到2号发送数据正常,但是2号到1号的就不正常了”应该是
“1号到2号之间收发数据正常,1号到3号发送数据正常,但是3号到1号的就不正常了“吧?
一对多机通信的时候要注意发送及接收的频率配合,尤其是发送的频率不能高于接收的频率(主站通信能力远高于从站的除外,例如1500与多台1200,400与多台300PLC),否则就会使对方接收缓存甚至本方发送缓存数据区无“空闲”空间,使网络堆栈区堆满数据甚至互相覆盖,“发送块”无法发送或接收方CPU“忙”无法及时接收缓冲区数据,从而造成1#和3#间PLC通信不正常。
要使数据流量控制好,编程时可以引入定时并且引入DONE/BUSY等信号作为条件,DONE完成并且无BUSY信号时才能发送新数据。
(另外S7-1200基本以太网通信使用指南实例中给定的程序仅仅是指令介绍,多台通信时不能简单套用。)