我用226做modbus多从站轮询。从站有15个。都是仪表。每个仪表读写的数据数量也不相同。
这个贴子http://www.ad.siemens.com.cn/club/bbs/post.aspx?b_id=3&a_id=971326&s_id=0&num=4
的3楼有一个方法,但是我看不懂,请高手讲解一下。
如何只调用一次MBUS_MSG,用指针怎么实现轮询。
最佳答案
方法有很多,我这里介绍一种:slave用变量存储器,把15个从站1-15可以用字元件的15个字节表示,循环移位就可以实现。
提问者对于答案的评价:
搞出来是这么一个东西:
LD FIRST:M0.1
O SECOND:M0.4
= L60.0
LD FIRST:M0.1
EU
LD SECOND:M0.4
EU
OLD
= L63.7
LD L60.0
CALL MBUS_MSG:SBR2, L63.7, *P_Slave:*VD4, *P_RW:*VD14, *P_ADDR:*VD54, *P_COUNT:*VD70, *P_DATEPTR:*VD74, DONE:M0.2, *P_ERR:*VD78
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc301934.html