198366809 发表于 2025-7-6 14:38:08

傻瓜式PLC程序编写--红绿交通灯控制

【动作描述】如图为一个红绿灯的控制时序图,启动信号导通后,红绿灯程序开始动作,动作要求如下:1)南北红灯和东西绿灯同时点亮,25s后。2)东西绿灯开始闪烁3s之后熄灭;3)东西黄灯点亮2s后熄灭,同时熄灭南北红灯熄灭;4)之后东西红灯和南北绿灯点亮;5)25s后南北绿灯开始闪烁,3s之后熄灭;6)之后南北黄灯点亮2s后熄灭,同时熄灭东西红灯。按照如上动作,不断往复循环。https://p3-sign.toutiaoimg.com/tos-cn-i-6w9my0ksvp/21989a14596a42af8a1d709d043862ad~tplv-tt-shrink:640:0.image?lk3s=06827d14&traceid=20250706143752AFC0162E340749571C18&x-expires=2147483647&x-signature=5d7aSGkQBnQwdCJ3dI%2BN1e4%2Fw2U%3D

I/O分配如表,有1个输入点,6个输出点。https://p3-sign.toutiaoimg.com/tos-cn-i-6w9my0ksvp/41a3ddfd4b9d4ab191ff1b1188732344~tplv-tt-shrink:640:0.image?lk3s=06827d14&traceid=20250706143752AFC0162E340749571C18&x-expires=2147483647&x-signature=JFcSKMeh%2FdWEcPmOLyD4smuD%2BSA%3D

【程序编写及思路】本案例就选择使用定时器的当前值和触点比较指令来编写,当然还有很多不同的方法,这些再后面的章节会再次讲解到。下面我们先把每一个点的输出时间列好,这样就能更加清晰的看出每一个输出点需要控制输出的时间段了,如下表https://p3-sign.toutiaoimg.com/tos-cn-i-6w9my0ksvp/8197345fc342434ea36127da265c1b62~tplv-tt-shrink:640:0.image?lk3s=06827d14&traceid=20250706143752AFC0162E340749571C18&x-expires=2147483647&x-signature=Gs%2FEmfhHTh%2BAAwjGAhn45O1aD%2Fg%3D

当X0按钮按下时,控制M0交替输出,实现启停控制,M0导通则动作启动,控制T0定时器开始定时,时间为60s,时间到了就复位定时器重新开始定时,后面通过触点比较指令判断T0的时间范围,对应控制输出不同控制的Y点,具体控制对照上表,程序如下图。https://p3-sign.toutiaoimg.com/tos-cn-i-6w9my0ksvp/297844b808f644ea9bbc26adb5d35068~tplv-tt-shrink:640:0.image?lk3s=06827d14&traceid=20250706143752AFC0162E340749571C18&x-expires=2147483647&x-signature=Hrcs%2BSCfHj%2F5ml9LR7vS04rdb4Q%3D

只需要按照时间断,通过比较判断指令,即可控制对应的灯动作。

cvlsem 发表于 2025-7-8 16:55:16

这个是比较简单

醉卧云端笑 发表于 2025-11-19 01:28:40

学到干货了,感谢分享,已火速收藏

杨恒 发表于 2025-11-19 20:44:14

来凑个热闹,为楼主增加点人气!

ls231603 发表于 2025-11-26 06:08:56

占个楼慢慢看,先马克一下
楼主辛苦啦,期待下一篇分享
页: [1]
查看完整版本: 傻瓜式PLC程序编写--红绿交通灯控制