news 2026/2/7 10:02:08

交通灯模拟PLC程序控制(S7 - 1200 博图V15.1)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
交通灯模拟PLC程序控制(S7 - 1200 博图V15.1)

交通灯模拟plc程序控制(s7-1200 博图v15.1 带讲解ppt ) 起动后,南北红灯亮并维持25s。 在南北红灯亮的同时,东西绿灯也亮,1s后,东西车灯即甲亮。 到20s时,东西绿灯闪亮,3s后熄灭,在东西绿灯熄灭后东西黄灯亮,同时甲灭。 黄灯亮2s后灭东西红灯亮。 与此同时,南北红灯灭,南北绿灯亮。 1s后,南北车灯即乙亮。 南北绿灯亮了25s后闪亮,3s后熄灭,同时乙灭,黄灯亮2s后熄灭,南北红灯亮,东西绿灯亮,循环。

最近做了一个交通灯模拟的PLC程序控制项目,基于S7 - 1200和博图V15.1,还做了个带讲解的PPT,今天就在这跟大家分享分享。

整体逻辑梳理

整个交通灯的控制逻辑其实就是按照一定的时间顺序和规则,循环切换各个方向的信号灯状态。启动后,南北红灯先亮25秒,同时东西绿灯亮起,1秒后东西方向的车灯甲亮。到20秒时,东西绿灯开始闪亮,3秒后熄灭,接着黄灯亮2秒,之后东西红灯亮,同时南北红灯灭,南北绿灯亮。南北绿灯亮1秒后,南北方向的车灯乙亮。南北绿灯亮25秒后闪亮,3秒后熄灭,乙也跟着灭,然后黄灯亮2秒,最后南北红灯亮,又回到东西绿灯亮的状态,如此循环。

PLC程序实现

在博图V15.1中,我们先创建一个新项目,选择S7 - 1200系列的PLC。下面看看关键部分的代码实现(这里以LAD语言为例):

定义变量

我们需要定义一些变量来表示各个信号灯以及时间计数等。

// 定义南北方向信号灯变量 Bool SouthNorthRed; Bool SouthNorthGreen; Bool SouthNorthYellow; Bool SouthNorthCarLightY; // 定义东西方向信号灯变量 Bool EastWestRed; Bool EastWestGreen; Bool EastWestYellow; Bool EastWestCarLightX; // 时间计数变量 Int TimerValue;

这里定义了南北和东西方向的红、绿、黄灯以及对应方向的车灯变量,还有一个时间计数变量TimerValue

主程序逻辑

// 启动程序 If StartButton Then // 南北红灯亮 SouthNorthRed := True; // 东西绿灯亮 EastWestGreen := True; // 开启定时器 TimerValue := 0; TimerEnable := True; End_If; // 定时器逻辑 If TimerEnable Then // 每1秒定时器值加1 If Rising_Edge(Clock1s) Then TimerValue := TimerValue + 1; End_If; End_If;

启动按钮按下后,南北红灯和东西绿灯亮起,同时开启定时器,每1秒TimerValue加1 。

// 东西方向绿灯逻辑 If TimerValue >= 0 And TimerValue < 20 Then EastWestCarLightX := True; End_If; If TimerValue >= 20 And TimerValue < 23 Then // 绿灯闪烁逻辑,假设闪烁频率为1Hz If Rising_Edge(Clock1s) Then EastWestGreen := NOT EastWestGreen; End_If; EastWestCarLightX := EastWestGreen; End_If; If TimerValue >= 23 And TimerValue < 25 Then EastWestGreen := False; EastWestYellow := True; EastWestCarLightX := False; End_If; If TimerValue >= 25 Then EastWestRed := True; EastWestYellow := False; EastWestCarLightX := False; SouthNorthRed := False; SouthNorthGreen := True; TimerValue := 0; End_If;

这段代码实现了东西方向信号灯和车灯的逻辑控制。在0 - 20秒,东西绿灯常亮且车灯甲亮;20 - 23秒,绿灯闪烁且车灯跟着闪烁;23 - 25秒,绿灯灭黄灯亮,车灯灭;25秒后,东西红灯亮,南北红灯灭,南北绿灯亮,同时重置定时器。

// 南北方向绿灯逻辑 If TimerValue >= 0 And TimerValue < 25 Then SouthNorthCarLightY := True; End_If; If TimerValue >= 25 And TimerValue < 28 Then // 绿灯闪烁逻辑,假设闪烁频率为1Hz If Rising_Edge(Clock1s) Then SouthNorthGreen := NOT SouthNorthGreen; End_If; SouthNorthCarLightY := SouthNorthGreen; End_If; If TimerValue >= 28 And TimerValue < 30 Then SouthNorthGreen := False; SouthNorthYellow := True; SouthNorthCarLightY := False; End_If; If TimerValue >= 30 Then SouthNorthRed := True; SouthNorthYellow := False; SouthNorthCarLightY := False; EastWestRed := False; EastWestGreen := True; TimerValue := 0; End_If;

这部分是南北方向信号灯和车灯的逻辑,和东西方向类似,按照设定的时间进行状态切换。

总结

通过这样的PLC程序编写,我们就实现了交通灯的模拟控制。这个项目对于理解PLC的时间控制、逻辑判断等基本功能很有帮助。配合PPT讲解,无论是学习PLC编程的新手,还是想要深入了解交通灯控制逻辑的朋友,都能从中获取不少知识。大家要是有兴趣可以自己动手在博图V15.1里实践一下,说不定还能发现一些优化的思路呢。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/5 14:37:28

python工程项目任务分配管理系统_q6ij795l

目录已开发项目效果实现截图开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;已开发项目效果实现截图 同行可拿货,招校园代理 python工程项目任务分配管理系统_q6ij795l 开发技术路线…

作者头像 李华
网站建设 2026/1/29 22:08:31

python教学管理自动化系统设计与实现 大学课程课表管理系统_54r67p9b

目录已开发项目效果实现截图开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01;已开发项目效果实现截图 同行可拿货,招校园代理 python教学管理自动化系统设计与实现 大学课程课表管理系统_5…

作者头像 李华
网站建设 2026/2/6 5:45:05

物联网毕设 stm32的火灾监控与可视化系统(源码+硬件+论文)

文章目录 0 前言1 主要功能2 硬件设计(原理图)3 核心软件设计4 实现效果5 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟学妹告诉…

作者头像 李华
网站建设 2026/2/7 4:50:39

Theano遗产继承者:TensorFlow的历史使命

TensorFlow&#xff1a;从Theano的遗产到AI工业化的引擎 在深度学习刚刚崭露头角的年代&#xff0c;研究者们常常需要手动推导梯度、用C写GPU内核&#xff0c;甚至为每一个矩阵乘法操作分配显存。那时&#xff0c;一个能自动求导、支持符号计算的工具无异于“解放生产力”的钥匙…

作者头像 李华
网站建设 2026/2/1 11:42:22

探索蒙泰卡罗模拟与水晶球:从理论到实践

蒙泰卡罗/蒙太卡洛数值模拟&#xff08;Monte Carlo&#xff09;&#xff0c;水晶球在数据分析和风险评估的领域里&#xff0c;蒙泰卡罗数值模拟&#xff08;Monte Carlo&#xff09;绝对是一个熠熠生辉的存在&#xff0c;而水晶球&#xff08;Crystal Ball&#xff09;则像是为…

作者头像 李华
网站建设 2026/2/5 4:23:27

合规性驱动的测试流程:构筑医疗金融行业的数字信任基石

监管合规的测试范式革命 当医疗AI诊断系统的一次误判可能危及生命&#xff0c;当金融交易系统0.01秒的延迟可能引发市场震荡&#xff0c;强监管行业的软件测试早已超越功能验证范畴。本文通过解析HIPAA、GDPR、PCI-DSS等23项核心合规框架的测试实施路径&#xff0c;为测试团队…

作者头像 李华