我们这有2个400的PLC主站,通过以太网通讯,之前建立好了一个调用SFB15的单向通讯FC块,运行正常。后来想扩展通讯的数据长度,就把ADDR_1和SD_1的数据长度由86改为90字节,下装,发现对方主站无法接受到数据,双方PLC的CPU未报错。后来监视SFB15的背景数据块,发现接收方PLC地址ID的@实际值为5,实际值为0,于是修改实际值为5,保存下装后问题解决了。求解,@实际值明明已经读取了正确地址5,为什么要把实际值也改成5才能运行呢?实际值不是离线值吗,不是应该以@实际值为准吗?(注:附图一、图二以说明,图二是我自己用仿真器运行截图的,ERROR与STATUS报错请忽略。)
图片说明:
最佳答案
SFB15中的ID是寻址参数,用于寻址远程通信伙伴,由STEP 7连接组态定义。根据NetPro中的对象属性块参数本地ID(十六进制)的数值来决定。如果将SFB15块中ADDR_1和SD_1的数据长度由86改为90字节,应该将网络组态和程序块都重新下载,再监视是否接收到数据。我认为和在监视状态下修改ID的实际值没有关系,你再试试看吧。
提问者对于答案的评价:
谢谢
专家置评
已阅,最佳答案正确。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc242092.html