3*8共24盏霓虹灯的程序
郑志武
发布于2013-03-06 18:09
2
0
标签:
现有3*8共24盏霓虹灯,排列为3行8列,要求按下启动按钮,以第八列显示3秒开始,后改为第七列显示3秒,依次类推,移动到列后变为常亮。第二次也从第八列开始,移动到第二列后常亮,直至八列全亮,闪烁3秒后,重新开始,按下停止按钮后,显示按下时显示的状态,再次按启动按钮后继续以上的动作。
谁有好的编程方法,求助。谢谢!用s7-200来编程
问题补充:
顺序动作这程序没问题,关键是在盏等亮了后的保持怎么处理
佳答案
q0.0接第八列三盏灯,q0.1接第七列,...q0.7接列三盏灯。
启动按钮按下,mov1给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就行了。