今天小编又找到一个有意思的题目,里面的题小编想了好久才做出来,不知道聪明的你怎么样呢?
1.用一个开关控制三个照明灯,要求开关闭合时灯亮,开关断开时灯灭。
2.如果3S之内每闭合一次开关,亮的灯数按1个—2个—3个—2个—1个—0个循环。
3.如果开关断开时间超过3S,在合上开关时,重复上述过程。
分析题意:1.很明显这个开关是一个转换开关,能自行保持当前状态。
2.在3S之内闭合一次,灯的状态就变换一次。
3.灯由1个—2个—3个—2个—1个—0个循环,那么一个周期就是6次。
4.在3S之外闭合,重置电路。
老规矩,输入、输出表的干活:
这个电路一个周期为6次,而且只是要求了亮的灯的个数,并没有要求到底是哪个灯亮,那么可以使用计数器C0来对着6次开关闭合来进行区分,这个想通了这个这一题就OK了。
开关闭合一次,C0计数1,此时Q0.0亮
开关闭合二次,C0计数2,此时Q0.0、Q0.1亮
开关闭合三次,C0计数3,此时Q0.0、Q0.1、Q0.2亮
开关闭合四次,C0计数4,此时Q0.0、Q0.1亮也可以Q0.1、Q0.2或者Q0.0、Q0.2亮,这里我做的是第一种。
开关闭合五次,C0计数5,此时Q0.0或者Q0.1亮,我选的Q0.0亮
开关闭合六次,C0计数6,此时计数器复位。
具体程序如下:
网络1:主要是利用I0.0输入的信号为计数器C0计数,那个P一样的叫上升沿触发,也就是说当I0.0由0变1时才导通,C0向上计数。当C0到6时,C0位由0置1,将计数器C0复位。
网络2:这就是把C0的各个情况用M0.0到M0.4记录
网络3,这里是利用网络2的记录,一一对应输出,根据题意,当I0.0断开时,灯要灭,所以输出与I0.0串联。
下一步,加3S的时间条件:
这里加了T37复位C0
最后网络4加上定时器T37。
至此,程序就算完成。小伙伴们,你们有收获吗?
PS:小编想问小伙伴们一个问题:按照这个程序,最后I0.0按第六下时没有任何灯亮(题目要求),但是你们办法把这一步去掉嘛?
PPS:接线及演示视频以上传
閱讀更多 電氣知識 的文章