300PLC里有这么一个逻辑,请教各位大大该如何完成。
在DB1里储存了很多word;在MW4里输入一个数值,比如5;当按下下一步按钮(M0.0有一个上升沿)时,把DB1.DBW0传送给MW2;再点击下一步M0.0,把DB1.DBW2传送给MW2;再点击下一步M0.0,把DB1.DBW4传送给MW2;当点击数达到MW4里存的数值5时,这时是把DB1.DBW8传送给MW2。再点击下一步M0.0时,把0传送给MW2,并让M0.1置零。请问这要这么做啊
最佳答案
一、首先把你需要的一些参数初始化一下,如图一NW1;
二、根据要求做计数的程序,我用的是加,当然你也可以用计数的方式,如图一NW2;
三、当计数的次数和设定的次数相等的时候取出特定存储区的值写入到MW2,如图一NW3;
四、取每次按下一次的值有两种方案,方案一就是直接取就可以了,如图二;
五、方案二我是建了一个FC1,把DB块编号、计数的次数、取出的值做成了接口,如图三;然后在程序中直接调用FC1,如图四;这样会比较灵活一些,不管取多少次都可以。但是要注意DB块中数据的长度要足够。
六、在程序最后加上复位M0.1和给MW2清零的程序,如图五。
图片说明:
提问者对于答案的评价:
谢谢,大大的程序写的很有用
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc173580.html