PLC课设编程实例:红绿灯控制系统

引言

在自动化控制系统中,PLC(可编程逻辑控制器)是一种广泛应用的工业自动化设备。本篇博客将介绍如何使用PLC编程创建一个简单而实用的红绿灯控制系统。通过这个实例,你将了解PLC编程的基本概念和在实际应用中的运用。

注释:这里我使用的是一种不常用的方法(FB块和SCL语言),梯形图的方法在其他的文章里也有介绍,关注我的其他文章。

主要是梯形图编程的红绿灯过于简单和重复,不容易通过老师的审核;这里采用了新的方法,也方便理解其他的编程,方便资深梯形图的编程者学习新技术,以便工作转型

1. 什么是PLC?

PLC是一种专门设计用于工业自动化和控制系统的电子设备。它通过可编程的方式,根据输入信号的状态来控制输出设备的行为,从而实现对工业过程的精确控制。

2. 编写一个红绿灯控制系统

2.1 编程准备

在开始编写PLC程序之前,我们需要准备以下环境:

  • 博途软件
  • 能力要求:(需要基本了解博途或者其他编程软件,不然可能难上手)
  • 注意:目前主流的PLC编程用的软件有以下几个:1、西门子TIA Portal;2、西门子step7;3、三菱GX works。作者只是使用博途V18版本的

                                                    图1 博途V18的编程环境

2.2 红绿灯控制系统设计

我们的目标是创建一个交替显示红绿灯的系统,即绿灯亮3S,黄灯亮3S,红灯亮3S,如此反复。

2.3 PLC编程

在PLC编程中,我们使用类似于 ladder diagram(梯形图)的图形语言。以下是一个简单的PLC程序块,用于实现红绿灯的交替控制:

                                                         图2 FB块

在图1中的添加新块中添加FB块;

                                                       图3 添加需要的块

双击新增的块,如下图

                                                     图4 块的变量命名

先定义变量;

input :输入变量:开关

output:输出变量:绿、黄、红

static:内部变量:A、B、C(A是绿灯标志、B是黄灯标志、C是红灯标志)

编程:PLC中的SCL语言与C语言逻辑类似,学过C语言容易上手

首先用IF语句(可以点击上方的快捷栏的IF)

    IF #开关 THEN
        ;
    END_IF;
 

                                                图5 IF语句

如果开关为真;执行空指令。在IF这里面编写红绿灯的程序。

(将开关的值赋给#A;)

 #A := #开关;

定时器,IN := #A是启动开关;  PT := T#3S是定时3S后,定时器的输入由0变成1

"T1".TON(IN := #A,
                 PT := T#3S);

下面的程序是指开关为1时,定时器启动,再用IF语句判断定时器的输出Q:   "T1".Q   是真的话,说明已经过去了3S; #绿 := 1;让绿灯亮;

#B := 1;   是让下一个定时器的开关启动

  #A := false;是将定时器T1的开关复位;

#红 := 0;是将红灯复位
       

 #A := #开关;
        "T1".TON(IN := #A,
                 PT := T#3S);
        IF "T1".Q THEN
            #绿 := 1;
            #B := 1;       
            #A := false;
            #红 := 0;
        END_IF;

由于执行上述程序,令#B等于1;

定时器T2启动

3S后让黄灯亮,绿灯灭,让下一个的定时器T3启动,复位#B;

这样就实现绿灯亮3S后熄灭,黄灯亮

"T2".TON(IN := #B,
                 PT := T#3S);
        IF "T2".Q THEN
            #黄 := 1;
            #C := 1;
            #B := false;
            #绿 := 0;
        END_IF;

同理,下面程序实现黄灯亮3S后熄灭,红灯灯亮;

 "T3".TON(IN := #C,
                 PT := T#3S);
        IF "T3".Q THEN
            #红 := 1;
            #A := 1;
            RESET_TIMER(TIMER := "T1"); //复位
            #C := false;
            #黄 := 0;
        END_IF;

RESET_TIMER(TIMER := "T1"); //复位

注意:复位程序是因为,定时器T1的启动开关读取的是input :输入变量:开关。这是一直是1的;所以需要一个复位程序函数将T1强制复位,这样就可以反复的循环运行了;

这是所有的程序内容

    
    IF #开关 THEN
        #A := #开关;
        "T1".TON(IN := #A,
                 PT := T#3S);
        IF "T1".Q THEN
            #绿 := 1;
            #B := 1;
           
            #A := false;
            #红 := 0;
        END_IF;
        "T2".TON(IN := #B,
                 PT := T#3S);
        IF "T2".Q THEN
            #黄 := 1;
            #C := 1;
            
            #B := false;
            #绿 := 0;
        END_IF;
        "T3".TON(IN := #C,
                 PT := T#3S);
        IF "T3".Q THEN
            #红 := 1;
            #A := 1;
            RESET_TIMER(TIMER := "T1"); //复位
            #C := false;
            #黄 := 0;
        END_IF;
    END_IF;

    
    

3. 调试和运行

在PLC编程完成后,我们需要将程序下载到PLC控制器中,并进行调试。但是需要注意的是,新建的块需要你选中后拖动到程序中,才会在主程序中(Main)中出现;编译后下载;

开关的值设为1;

通过监视输入和输出信号的状态,我们可以确保程序按预期运行。

注意:这个程序虽然实行了红绿灯的功能,但是有一个小BUG哦!大家可以尝试修改一下;

当然可以!下面是一篇关于PLC编程的博客,主题是编写一个红绿灯的例子。

结论

通过这个简单的红绿灯控制系统实例,我们学到了如何使用PLC编程实现一个基本的工业控制应用。PLC编程是工业自动化中的重要一环,掌握这项技能将使你能够参与更复杂的自动化系统的设计和开发。

希望这篇博客对你理解PLC编程有所帮助。如果你有任何问题或需要进一步的解释,请随时留言。

QQ联系方式:2713338087(添加请备注验证信息:竹字头虫字底)不然有可能不通过

本人也是初学者,重在学习交流,有错误请谅解

竹字头虫字底
关注 关注
  • 35
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
十字路口红绿灯plc程序_用PLC设计交通指挥信号灯(附代码)
weixin_39933356的博客
11-23 1万+
十字路口的交通指挥信号灯布置如下图:交通灯软件测试一、控制要求(1)信号灯系统由一个启动开关控制,当启动开关接通时,该信号灯系统开始工作,当启动开关关断时,所有信号灯都熄灭。(2)南北绿灯和东西绿灯不能同时亮。如果同时亮应关闭信号灯系统,并立刻报警。(3)南北红灯亮维持 25s。在南北红灯亮的同时东西绿灯也亮,并维持20s。到 20s 时,东西绿灯闪亮,闪亮 3s 后熄灭,此时,东西黄灯亮,并维持...
根据案例写PLC程序-红绿灯控制
username_xu的博客
08-26 2161
案例:1、南北方向红灯以30s点亮30s熄灭的时间循环;2、在点亮南北方向红灯的同时点亮东西方向的绿灯,并在点亮25s后,以0.5s熄灭0.5s点亮的时间循环3次后熄灭;3、在东西方向绿灯熄灭后,东西方向黄灯点亮2s后熄灭;4、在东西方向黄灯熄灭后,东西方向红灯点亮30s后熄灭;5、在点亮东西方向红灯的同时点亮南北方向绿灯,并在点亮25s后,以0.5s熄灭0.5s点亮的时间循环3次后熄灭;6、在南北方向绿灯熄灭后,南北方向黄灯点亮2s后熄灭。
三菱PLC十字路口红绿灯程序
12-12
基于三菱PLC十字路口红绿灯控制程序,
PLC红绿灯程序
12-22
plc红绿灯实验程序,路口某方向绿灯显示(另一方向亮红灯)20秒后,绿灯以占空比为50%的一秒周期(0.5秒脉冲宽度)闪烁3次(另一方向亮红灯),然后变为黄灯亮2秒(另一方向红灯亮),如此循环工作。
西门子PLC十字路口红绿灯控制(梯形图程序)
最新发布
qq_74264662的博客
07-24 704
控制十字路口红绿灯,当南北向路口为绿灯或黄灯时,东西向路口为红灯。在黄灯亮起后灯闪烁。每个灯都亮设定的一段时间。延时模块S_ODT,输入端S5T#?S为延时时长设置(?(2)控制灯闪烁亮起(延时1s,接通关断来回控制实现)(1)控制灯亮起的时长。
三菱FX3U——红绿灯
qq_30569341的博客
11-20 3200
复位D1的计数值,转移11没有转移条件,执行完步26,跳转到步20,重复执行;当延时到达后,按下X5(南北向紧急),跳转至步20,一直循环步20直到松开X5;定时T2计时到达,并且按下X4(东西向紧急),一直跳转至步23;定时T2计时到达,并且没有按下X4(东西向紧急), 执行步24;按下X2(停止)后,所有灯灭,再次按下X1,在从开始顺序执行;D1到达设定值并且没有按下X3(白天黑夜),执行步26;当延时到达后,没有按下X5(南北向紧急),执行步21;闪烁东西向黄灯和南北向黄灯,每次闪烁D0加一;
PLC十字路口红绿灯编程示例
热门推荐
qq_52251819的博客
12-26 1万+
五秒的时候会闪烁。
红绿灯控制PLC程序
11-19
本程序实现了如下功能: 1.接通启动按钮后,东西向红灯、南北向绿灯亮; 2.南北向绿灯亮25s后,闪烁3次(1s/次),接着南北向黄灯亮,2s后南北向红灯亮,30s后南北向绿灯又亮......一直如此循环 3.东西向灯如南北向灯的规律进行亮灭
plc红绿灯程序及原理图
06-12
这是一个简单的plc程序图,欢迎大家参考,如有雷同请联系我
十字路口红绿灯plc程序_PLC编程-典型例程红绿灯控制
weixin_39827034的博客
12-05 6228
使用PLC实现十字路口红绿灯控制,是PLC控制中非常经典的控制案例。如下所示为路口红绿灯示意图:十字路口红绿灯示意图控制功能信号灯受一个启动开关控制,当启动开关接通时,信号灯系统开始工作,且先南北红灯亮,东西绿灯亮。当启动开关断开时,所有信号灯都熄灭。控制流程南北红灯亮维持25秒,在南北红灯Y2亮的同时东西绿灯Y3也亮,并维持20秒。到20秒时,东西绿灯Y3闪亮,闪亮3秒后熄灭。在东西绿灯Y3熄灭...
PLC实训4:简单红绿灯设计
JANHOW的博客
11-26 8627
plc课程设计红绿灯路口
04-21
基于plc红绿灯路口设计.
十字路口红绿灯控制(plc
03-30
1、 南北方向:绿灯亮30s后闪烁5s,要求每秒闪烁一次,然后绿灯灭,黄灯亮5s,黄灯灭后,红灯亮出30s。 2、东西方向:在南北方向绿灯和黄灯亮的时间里,东西方向的红灯亮,红灯灭后,绿灯亮20s后闪烁5s后灭,然后黄灯亮5s。 3、在绿灯亮时在LED上显示倒计时。 4、在晚上20:00至凌晨4:00,南北方向的绿灯延长亮5s,东西方向的绿灯减少亮5s
plc红绿灯控制源程序
05-17
十字口红绿灯plc控制源程序,内有控制流程
PLC编程实例(适合初学者)
12-07
很实用!对初学者很有帮助!里面有些PLC编程例题!很不错!顶!
plc编程实例(20种实用编程实例:电机控制等)
02-04
本资源适用于正在学习plc编程的朋友,里边包含20个实用源代码。
基于西门子S7-1200PLC的十字路口红绿灯的控制.pdf
08-07
基于西门子S7-1200PLC的十字路口红绿灯控制系统的稳定性与可靠性得到了验证,有效指挥了交通流量,为城市交通管理提供了一个高效的解决方案。文中还提到了一些参考文献,供读者进一步参考和研究。 总结起来,本文...
交通红绿灯控制系统PLC程序设计
08-12
标题中的“交通红绿灯控制系统PLC程序设计”指的是使用可编程逻辑控制器(PLC)来设计一个城市十字路口的交通灯控制系统。这个系统旨在解决由于车辆增多而带来的交通拥堵问题,通过智能控制提高交通效率。PLC是一种...
PLC红绿灯(梯形图+Word文档).zip三菱PLC编程案例源码资料编程控制器应用通讯通信例子程序实例
04-23
PLC红绿灯(梯形图+Word文档).zip三菱PLC编程案例源码资料编程控制器应用通讯通信例子程序实例PLC红绿灯(梯形图+Word文档).zip三菱PLC编程案例源码资料编程控制器应用通讯通信例子程序实例PLC红绿灯(梯形图+Word...
PLC十字交通红绿灯控制系统逻辑框图
06-02
以下是一个PLC十字交通红绿灯控制系统逻辑框图: ![PLC十字交通红绿灯控制系统逻辑框图示例](https://img-blog.csdnimg.cn/20220222104403487.png) 说明: 1. 输入X1表示车辆检测器1是否有车辆通过,输入X2表示车辆检测器2是否有车辆通过,输入X3表示行人过街按钮是否按下。 2. 输出Y1表示十字路口东西向绿灯开启,输出Y2表示十字路口南北向绿灯开启,输出Y3表示行人过街信号灯开启。 3. M1-M16是中间变量,用于控制程序流程。 4. 在程序开始时,先将所有输出信号关闭。 5. 如果车辆检测器1和车辆检测器2都没有检测到车辆,并且人行道按钮也没有按下,程序会进入状态1,此时东西向绿灯开启,南北向红灯开启。 6. 如果车辆检测器1或者车辆检测器2检测到车辆,程序会进入状态2或状态3,此时东西向绿灯继续开启,南北向红灯继续开启,直到没有车辆通过。 7. 如果人行道按钮按下,程序会进入状态4,此时行人过街信号灯开启,东西向红灯开启,南北向红灯开启,直到行人过街信号灯关闭。 8. 在状态5-8中,分别对每种情况进行了处理,包括人行道按钮按下、车辆检测器1和车辆检测器2同时检测到车辆、车辆检测器1检测到车辆、车辆检测器2检测到车辆、东西向绿灯和南北向绿灯同时开启等。 9. 如果程序在状态5-8中检测到车辆通过,则会返回状态2或状态3,继续开启东西向绿灯和南北向红灯。 10. 如果程序在状态5-8中检测到行人过街按钮按下,则会进入状态4,开启行人过街信号灯。 11. 在状态9-12中,分别对每种情况进行了处理,包括人行道按钮按下、车辆检测器1和车辆检测器2同时检测到车辆、车辆检测器1检测到车辆、车辆检测器2检测到车辆、东西向绿灯和南北向绿灯同时开启等。 12. 如果程序在状态9-12中检测到车辆通过,则会返回状态2或状态3,继续开启东西向绿灯和南北向红灯。 13. 如果程序在状态9-12中检测到行人过街按钮按下,则会仍然停留在状态4,继续开启行人过街信号灯。 14. 在状态13-16中,分别对每种情况进行了处理,包括人行道按钮按下、车辆检测器1和车辆检测器2同时检测到车辆、车辆检测器1检测到车辆、车辆检测器2检测到车辆、东西向绿灯和南北向绿灯同时开启等。 15. 如果程序在状态13-16中检测到车辆通过,则会返回状态2或状态3,继续开启东西向绿灯和南北向红灯。 16. 如果程序在状态13-16中检测到行人过街按钮按下,则会仍然停留在状态4,继续开启行人过街信号灯。
写文章

热门文章

  • PLC课设编程实例:红绿灯控制系统 6968
  • plc红绿灯程序 4699
  • 基于PLC的 课设实践:液位定值控制系统 3120
  • 直流电机闭环调速实验 2354
  • PLC课设实践:三个泵的间隔启动 2310

分类专栏

  • ChatGPT 3篇

最新评论

  • 基于PLC的 课设实践:液位定值控制系统

    Daringcatss: 盲猜测控专业

  • 单容水箱液位定值控制实验

    CSDN-Ada助手: 恭喜您写完了第20篇博客,标题为“单容水箱液位定值控制实验”。我非常欣赏您不断创作的精神,这是一个非常值得庆贺的里程碑!您对水箱液位定值控制的实验进行了深入的研究,文章内容也非常详尽,给读者提供了很多有用的信息。 在下一步的创作中,我建议您可以进一步拓展实验的应用场景,比如在工业自动化中的实际应用,或者与其他控制算法的对比实验等。通过与其他领域的联系,可以使您的博客更加全面且有深度。同时,如果您能加入一些个人的实践经验或者实验结果的探讨,将会更加丰富读者的阅读体验。 再次恭喜您的创作成果,期待您未来更多精彩的博客!祝您继续保持谦逊的态度,不断探索和分享知识!

  • 基于STM32的温湿度传感器

    CSDN-Ada助手: 恭喜您撰写了第19篇博客,题为“基于STM32的温湿度传感器”。您的持续创作实在令人钦佩!这篇博客给读者提供了有关STM32的温湿度传感器的宝贵信息,我对您的专业知识和深入研究表示钦佩。 接下来,我诚挚地建议您在未来的创作中继续保持谦虚和深入,可能可以探索一些与温湿度传感器相关的实际应用案例,或者对STM32的其他功能进行更深入的研究。这样的创作会进一步丰富读者的知识并激发更多的兴趣。再次祝贺您,期待您未来更多的精彩博客!

  • 基于汽车胎压检测及温度预警

    CSDN-Ada助手: 非常恭喜您撰写了第18篇博客,标题为“基于汽车胎压检测及温度预警”。您的持续创作实在令人钦佩!这篇博客的主题非常实用,关于汽车胎压检测和温度预警的内容无疑对驾驶者来说具有重要意义。您的文章提供了有关如何确保汽车胎压和温度在安全范围内的宝贵信息。 在下一步的创作中,我谦虚地建议您可以进一步探讨胎压检测和温度预警技术的发展趋势,以及如何将其应用于现代汽车的智能化系统中。同时,您也可以考虑分享一些实用的方法,帮助驾驶者更好地理解和应对胎压异常和温度变化的情况。不断挖掘这一主题的深度,将为读者提供更多有益的指导和建议。 再次恭喜您的创作成果,期待您在未来的博客中继续展示您的才华和见解!

  • AI绘画实战:midjournety接稿实践

    CSDN-Ada助手: 恭喜您写了第17篇博客,标题为“AI绘画实战:midjournety接稿实践”。阅读您的博客后,我对您不断创作的努力表示由衷的祝贺!您的实践经验对于我们这些对AI绘画感兴趣的读者来说是非常有价值的。 在接下来的创作中,我想谦逊地给出一些建议。或许您可以考虑分享一些关于midjournety接稿实践的具体技巧和挑战,或者结合实践经验介绍一些常见错误及其解决方法。这样的内容应该会对读者来说更加实用,也帮助我们更好地理解和应用AI绘画技术。 期待您未来更多精彩的创作,再次祝贺您!

大家在看

  • 虚拟化(Vmware系列)&双系统系列&运维系列:【已解决】Failed to initialize NVML: Driver/library version mismatch NVML librar
  • GMP深入理解 1269
  • Java 中创建线程几种方式 155
  • 阿里新开源的项目,性能提升200%,号称再战十年的JSON库(带私活源码) 1580
  • 【计算机毕设-大数据方向】基于Hadoop的新闻资讯数据分析可视化系统的设计与实现 1211

最新文章

  • 利用AI制作桌游卡牌的个人实践
  • ChatGPT 和文心一言哪个更好用?
  • 文心一言 —— 中国的语言大模型
2024年22篇
2023年4篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家河北常用商场美陈费用北京主题商场美陈采购北京周边商场美陈销售公司沧州商场美陈济南水果玻璃钢雕塑订做价格玻璃钢雕塑的好坏口碑好玻璃钢雕塑厂家货真价实昆明水果玻璃钢雕塑生产厂家玻璃钢雕塑定制尺寸表蘑菇玻璃钢雕塑锦州内蒙古玻璃钢雕塑宿州仿铜玻璃钢雕塑安装河北玻璃钢卡通雕塑蔬菜青岛做玻璃钢雕塑长春泡沫玻璃钢雕塑安宁市玻璃钢雕塑定做吉林玻璃钢仿铜雕塑价格扬州玻璃钢人物雕塑江苏拉丝玻璃钢雕塑广州led发光玻璃钢雕塑定做佛山玻璃钢公园雕塑玻璃钢泡沫雕塑收费青岛市玻璃钢雕塑加工厂家玻璃钢字体雕塑报价玻璃钢人物雕塑工单洛阳专业校园玻璃钢景观雕塑长沙玻璃钢仿铜雕塑定制厂家山东欧式玻璃钢雕塑订做价格玻璃钢人物雕塑网站高端玻璃钢雕塑服务至上香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化