有时候我们需要使用一个自复位按钮来控制指示灯或其他元件的状态切换,例如,按下自复位按钮,指示灯点亮,再按下自复位按钮,指示灯熄灭,如此反复。面试时有些面试官会问及该问题。
程序分别以以台达与西门子为例,可迁移到其他PLC。
1-3段程序利用PLC的扫描时序,输入采样---程序执行---输出刷新的过程,输出刷新后,到下一次输出刷新,该输出结果会保持。
一、使用P指令(上升沿指令)
以台达为例
使用P指令实现M0控制指示灯的启停
M0代表按钮
M100代表指示灯
M20作为亮灯的辅助
二、使用常开常闭的自锁
以台达为例
该段程序利用PLC的扫描时序,输入采样---程序执行---输出刷新的过程,输出刷新后,到下一次输出刷新,该输出结果会保持。
三、使用RS指令
以西门子为例
四、使用触摸屏程序的按钮取反
以台达为例
在PLC变量表中家案例一个关于指示灯的变量例如,Q0.0代表指示灯的输出,然后在HMI程序中添加一个按钮,将该按钮事件单击设置为将Q0.0取反即可,此处不再赘述。请自行尝试。
五、使用CMP比较指令
以台达为例
六、使用循环移位指令
以台达为例
使用循环移位时,最高位和第二位始终保持相同,所以讲最高位与第二位保持一致即可。
赶紧试试,面试时可能会被问到哦。若有更好方法,欢迎交流。