三菱PLC基础案例--3开关与1照明灯控制
发布时间:2025-05-17来源: 点击:284
【控制要求】
3个开关控制一盏照明灯(切换开关),任何一个开关都能控制照明灯的亮与灭。(此案例可以应用与家庭电路的控制,比如走廊有一个开关,入门处有一个开关,房间内部也有一个开关,多个开关都能控制这个照明灯)
【I/O分配】
I/O分配如下,有3个输入点,1个输出点。

【程序编写及思路】
1.使用普通的触点和线圈去编写
1)如下表,列出3个开关的所有情况,打开用1表示,关闭用0表示,最后看各种情况的Y0的输出

2)从上表可以看出,只有4种情况,Y0有输出,这4种情况X0、X1、X2的状态分别是:(1、0、0)(0、1、0)(0、0、1)(1、1、1),根据这个写出来4行能控制Y0输出的程序,完整程序如图1-5-1。


2.使用ALT指令去写
如图1-5-2,这种写法的思维就是,每次操作按钮,无论打开或者关闭操作,都会把Y0当前的状态进行切换,这时我们可以使用3个按钮的所有上升沿与下降沿,去触发ALT Y0指令,让Y点切换当前状态,实现控制。


3.利用程序扫描周期知识
如图1-5-3,这种写法的优点是,开关比较多的情况可以2行程序直接完成控制,详细的控制原理需要学习程序扫描顺序相关知识点(可以学习本书第3章内容)。
程序扫描是从第一行开始的,一开始的D0状态为0,当我们按下或者松开X0到X3之间的任一按钮时K1X0的值就会改变(由于上一个扫描周期时,程序最后一行把K1X0的值传送给了D0了)因此会导致K1X0和D0的值不相等,这时触发ALT指令把Y0的状态改变。
最后程序执行第二行,把K1X0的值传送给D0,,这样两个的数据就相等了,下一个周期第一行程序就无法执行了,除非重新触发某个按钮,状态发生了改变,又开始执行上面描述的控制过程(不等于指令的输入:先按F8,再输入<> D0 K1X0)。

免责声明:本站所提供信息均来源于网友提供或网络搜集,由本站编辑整理,如涉及版权问题,请联系本站管理员予以更改或删除