现有3*8共24盏霓虹灯,排列为3行8列,要求按下启动按钮,以第八列显示3秒开始,后改为第七列显示3秒,依次类推,移动到第一列后变为常亮。第二次也从第八列开始,移动到第二列后常亮,直至八列全亮,闪烁3秒后,重新开始,按下停止按钮后,显示按下时显示的状态,再次按启动按钮后继续以上的动作。
谁有好的编程方法,求助。谢谢!用S7-200来编程
问题补充:
顺序动作这程序没问题,关键是在第一盏等亮了后的保持怎么处理
最佳答案
Q0.0接第八列三盏灯,Q0.1接第七列,...Q0.7接第一列三盏灯。
启动按钮按下,MOV 1给QB0,
第一次,隔3秒,上升沿触发 QB0=QB0*2;
第二次,隔3秒,上升沿触发 QB0=QB0*2+1;
QB0>=128时,置位中间位M0.0,
你的闪烁3秒不知道频率是多少,如果是亮0.5灭0.5,
正好用SM0.5来控制,上升沿赋值(128或255),下降沿赋值0;
3秒后复位M0.0,给QB0赋值1,开始下一轮。
按下停止按钮后,显示按下时显示的状态,再次按启动按钮后继续以上的动作。
不知道你这表述的意思,应该是要停止时,灯保持当前状态吧。
还是说保持按下启动时灯的状态,也就是全灭?
如果是前面一种,停止后停止计算就可以了,如果需要断电后还继续从这开始,可以把QB0
的值给VB0,启动时再传回去;
第二种赋值0就行了。
提问者对于答案的评价:
不是很满意,还是谢谢各位!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc301616.html