本课程设计以“多时段十字路口交通信号灯PLC控制系统设计”为题目,利用西门子公司的S7-200可编程逻辑控制器对十字路口的交通灯进行控制,同时系统具有一定的智能性,可以对交通灯实现高峰期、正常期及晚间三个时段进行分段控制。它们分别和各自的时序图相对应,从而控制交通灯的信号。
本系统采用主程序调用子程序的设计方案,通过主程序调用当前时间,对时间段的判别而调用相关的子程序,达到设计要求。为了达到时间一致性的目的,时钟的校对是不可缺少的,所以我设计了校对时间的子程序SBR_0。
主程序使用了调用子程序,设定实时时钟指令,读实时时钟指令,移位指令,BCD码与整数转换指令,乘法指令,加法指令,比较指令等等。子程序尽管比较长,但是相对来说指令简单些,它主要使用了定时器,触点和输出线圈等等。
关键词:多时段;交通信号灯;PLC;设定实时时钟
3.1.1主电路设计 7
3.1.2确定I/O点数量及PLC类型 7
3.3.1梯形图(见附录) 10
3.3.2指令表(见附录) 10
结论 14
致谢 16
附录梯形图 17
附录指令表 27
第1章 引言
社会的发展使汽车进入家庭的步伐不断加快,城市汽车的数量越来越多,城市道路交通问题显得异常重要。解决好十字路口交通信号灯控制问题是保障交通安全、有序、快速运行的重要组成部分。由于人们工作、作息的特点,使得城市总是存在早、晚高峰的问题,为了更好地解决交通拥堵问题,我在老师的指导下并查阅了很多资料进行了这次以“多时段十字路口交通信号灯PLC控制系统设计”为题目的课程设计。我的设计方案利用西门子公司的S7-200可编程逻辑控制器对十字路口的交通灯进行控制,同时系统具有一定的智能性,可以对交通灯实现高峰期、正常期及晚间三个时段进行分段控制。它们分别和各自的时序图相对应,从而控制交通灯的信号,能很好的满足控制要求。系统仅实现了小型PLC系统的一个雏形,在完善各项功能方面都还需要进一步的分析、研究和调试工作。如果进一步结合工业控制的要求,形成一个较为成型的产品,则需要作更多、更深入的研究。
可编程逻辑控制器(Programmable Logic Controller,简称 PLC) 根据国际电工委员会(IEC)在1987年的可编程控制器国际标准第三稿中,对其作了如下定义:“可编程控制器是一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用可编程序的存储器,用来在其内部存储执行逻辑运算,顺序控制,定时,计数与算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或生产过程。可编程控制器及其有关外部设备,都应按易于使工业控制系统形成一个整体,易于扩充其功能的原则设计。”可编程控制器作为目前工业自动化的重要基础设备,被称为“工业自动化三大支柱性产业之一”,在各工业生产领域发挥着愈来愈大的作用。
由于这些特点,可编程控制器问世以后很快受到工业控制界的欢迎,并得到迅速的发展。目前,可编程控制器已成为工厂自动化的强有力工具,得到了广泛的应用。
PLC作为一种专用于工业环境的、具有特殊结构的计算机,有其显著的特点。
(1) 可靠性高,抗干扰能力强 。传统的继电器控制系统中使用了大量的中间继电器、时间继电器。由于触点接触不良,容易出现故障。PLC用软件代替大量的中间继电器和时间继电器,仅剩下与输入和输出有关的少量硬件,接线可减少到继电器控制系统的1/10~1/100,因触点接触不良造成的故障大为减少。
高可靠性是电气控制设备的关键性能。PLC由于采用现代大规模集成电路技术,采用严格的生产工艺制造,内部电路采取了先进的抗干扰技术,具有很高的可靠性。例如三菱公司生产的F系列PLC平均无故障时间高达30万小时。一些使用冗余CPU的PLC的平均无故障工作时间则更长。从PLC的机外电路来说,使用PLC构成控制系统,和同等规模的继电接触器系统相比,电气接线及开关接点已减少到数百甚至数千分之一,故障也就大大降低。此外,PLC带有硬件故障自我检测功能,出现故障时可及时发出警报信息。在应用软件中,应用者还可以编入外围器件的故障自诊断程序,使系统中除PLC以外的电路及设备也获得故障自诊断保护。
(2) 硬件配套齐全,功能完善,适用性强。PLC发展到今天,已经形成了大、中、小各种规模的系列化产品,并且已经标准化、系列化、模块化,配备有品种齐全的各种硬件装置供用户选用,用户能灵活方便地进行系统配置,组成不同功能、不同规模的系统。PLC的安装接线也很方便,一般用接线端子连接外部接线。PLC有较强的带负载能力,可直接驱动一般的电磁阀和交流接触器,可以用于各种规模的工业控制场合。除了逻辑处理功能以外,现代PLC大多具有完善的数据运算能力,可用于各种数字控制领域。近年来PLC的功能单元大量涌现,使PLC渗透到了位置控制、温度控制、CNC等各种工业控制中。
(3) 易学易用,深受工程技术人员欢迎。PLC作为通用工业控制计算机,是面向工矿企业的工控设备。它接口容易,编程语言易于为工程技术人员接受。梯形图语言的图形符号与表达方式和继电器电路图相当接近,只用PLC的少量开关量逻辑控制指令就可以方便地实现继电器电路的功能。为不熟悉电子电路、不懂计算机原理和汇编语言的人使用计算机从事工业控制打开了方便之门。
(4) 安装方便,扩展灵活。PLC采用标准的整体式和模块式硬件结构,现场安装简便,接线简单,工作量相对较小;而且能根据应用的要求扩展输入—输出模块或插件,系统集成方便灵活。各种控制功能通过软件编程完成,因而能适应各种复杂情况下的控制系统,也便于控制系统的改进和修正,特别适应各种工艺流程变更较多的场合。
(5) 系统的设计、安装、调试工作量小,维护方便,容易改造。PLC的梯形图程序一般采用顺序控制设计法。这种编程方法很有规律,很容易掌握。对于复杂的控制系统,梯形图的设计时间比设计继电器系统电路图的时间要少得多。
(6) 体积小,重量轻,能耗低。以超小型PLC为例,新近出产的品种底部尺寸小于100mm,仅相当于几个继电器的大小,因此可将开关柜的体积缩小到原来的1/2~1/10。它的重量小于150g,功耗仅数瓦。由于体积小很容易装入机械内部,是实现机电一体化的理想控制设备。
第2章 系统总体方案分析与设计
2.1控制要求
1、系统工作受开关控制,启动开关 “ON” 则系统工作;启动开关“ OFF” 则系统停止工作;
2、控制对象:
东西方向红灯(R—EW)两个,南北方向红灯 (R—SN) 两个,
东西方向黄灯(Y—EW)两个,南北方向黄灯 (Y—SN) 两个,
东西方向绿灯(G—EW)两个,南北方向绿灯 (G—SN) 两个,
东西方向左转弯绿灯(L—EW)两个,南北方向左转弯绿灯(L—SN)两个。
3、控制规律:
(1)高峰时段,交通信号灯按时序图2-2运行;正常时段,交通信号灯按时序图2-3运行;晚上时段按提示警告方式运行,规律为: 东、南、西、北四个黄灯全部闪亮,其余灯全部熄灭,黄灯闪亮按亮 0.4 秒,暗 0.6 秒的规律反复循环。
(2)高峰时段、 正常时段及晚上时段的时序分配按时序图2-1运行。
图2-1 时段分配时序图
图2-2 高峰时段信号灯时序控制图
图2-3 正常时段信号灯时序控制图
2.2方案分析
本系统是一个十字路口交通灯的PLC控制系统,利用西门子公司的S7-200可编程逻辑控制器对十字路口的交通灯进行控制。本系统具有一定的智能性,即它可以对交通灯按高峰期、正常期及晚间几个时段进行分段控制。
高峰期的控制方案为:
(1)南北方向左转弯灯和南北方向红灯同时亮10秒,同时东西方向红灯亮;
(2)南北方向绿灯亮35秒,东西方向红灯继续亮;
(3)南北方向黄灯闪烁5秒;东西方向红灯继续亮;
(4)东西方向左转弯绿灯和南北方向红灯同时亮10秒,东西方向红灯继续亮;
(5)东西方向绿灯亮25秒,南北方向红灯继续亮;
(6)东西方向黄灯闪烁5秒,南北方向红灯继续亮,然后跳至第(1)步依次循环。
正常期的控制方案为:
(1)南北方向左转弯灯和南北方向红灯同时亮10秒,同时东西方向红灯亮;
(2)南北方向绿灯亮30秒,东西方向红灯继续亮;
(3)南北方向黄灯闪烁5秒;东西方向红灯继续亮;
(4)东西方向左转弯绿灯和南北方向红灯同时亮10秒,东西方向红灯继续亮;
(5)东西方向绿灯亮30秒,南北方向红灯继续亮;
(6)东西方向黄灯闪烁5秒,南北方向红灯继续亮,然后跳至第(1)步依次循环。
晚间的控制方案为:
东、南、西、北四个黄灯全部闪亮,其余灯全部熄灭,黄灯闪亮按亮 0.4 秒,暗 0.6 秒的规律反复循环。
2.3 硬件选型
由于根据控制要求所确定的输入点为三个,输出点为八个,控制开关输入的启、停信号和时钟初始化信号是输入信号;在交通灯布置图中,南北方向的三色灯,共六盏,同颜色的灯在同一时间亮、灭;所以,可将同色灯两两并联,用一个输出信号控制。同理,东西方向的三色灯也依此设计。再加上东西方向左转的三色灯,共八盏,所以其占8个输出点。由于我是以一个路口信号单独控制为例,考虑到够用为准。所以我选择了CPU224这一具有较强控制功能的控制器。
在这里我采用德国西门子公司的S7-200可编程控制器,它是积木式结构,安装比较方便,处理单元和信号模板有多种类型。根据本系统输入点数及控制要求,处理单元可选用CPU224,该CPU板上本身具有10个数字量输入点,6个非隔离数字量输出点,最多能够带8个数字量信号模板,使用内部24V直流电源为输入回路供电,输出为晶体管式的硬件连接方式。
电源模块将交流电源转换成供CPU,存储器等所有扩展模块使用的直流电源,是整个PLC系统的能源供给中心,它的好坏直接影响到PLC的稳定性和可靠。S7-200属于小型PLC,电源模块与CPU模块封装在一起,通过连接总线为本机和扩展模块提供+5V(DC)电源。同时,还可通过端子向外输出一个+24V(DC)电源,供本机输入点和扩展模块继电器线圈使用。需注意的是,从资料中我了解到,外部电源不可与S7-200的传感器电源并联使用。否则,将会导致两个电源的竟争而影响它们各自的输出,缩短其使用寿命,使得一个或两个电源同时失效,使PLC系统产生不正确的操作。正确的使用方法是S7-200的传感器电源和外部电源应该在不同的点上提供电源,而两者之间只能有一个会共连接点。
2.4 方案设计
系统采用主程序调用子程序的设计方案,通过主程序读取、计算并比较当前时间,根据对时间段的判断和分析来确定所调用得子程序段。子程序段分别是正常时间段、高峰时间段和晚间时间段,它们分别和各自的时序图相对应,从而控制交通灯的信号。
2.5元器清单
表2-1 多时段十字路口交通信号灯元器件目录表
序号 | 文字符号 | 名 称 | 数 量 |
1 | HL7-1,2 HL7-1,2 | 转弯灯 | 4 |
2 | HL3-1, HL6-1,2 | 红灯 | 4 |
3 | HL2-1,2 HL5-1,2 | 黄灯 | 4 |
4 | HL1-1,2 HL4-1,2 | 绿灯 | 4 |
5 | SB1 | 时钟初始化开关 | 1 |
6 | SB2 | 启动按钮 | 1 |
7 | SB3 | 停止按钮 | 1 |
8 | LPC S7-200 | 可编程序控制器 | 1 |
第3章 PLC控制系统设计
3.1.1主电路设计
主电路主要采用比较指令判断时间的范围,近而调用子程序,从而实现控制要求。
3.1.2确定I/O点数量及PLC类型
分析PLC的输入和输出信号,在满足控制要求的前提下,要尽量减少占用PLC的I/O点。由系统控制要求可见,由控制开关输入的启、停信号是输入信号。由PLC的输出信号控制各指示灯的亮、灭。在交通灯布置图中,南北方向的三色灯共六盏,同颜色的灯在同一时间亮、灭;可将同色灯两两并联,用一个输出信号控制。同理,东西方向的三色灯也依次设计。再加上东西方向左转的灯共16盏,所以其占8个输出点。
选择PLC型号:CPU224DC,内部电源供电,继电器输出形式。
1.I/O点的分配与编号
表3-1 系统I/O地址分配表
控制信号 | 信号/元件名称 | 元件符号 | 地址编码 |
输入信号 | 校正当前始终 | SB1 | I0.0 |
启动信号 | SB2 | I0.1 | |
停止信号 | SB3 | I0.2 | |
输出信号 | 东西方向绿灯 | HL1-1、1-2 | Q0.0 |
东西方向黄灯 | HL2-1、2-2 | Q0.1 | |
东西方向红灯 | HL3-1、3-2 | Q0.2 | |
南北方向绿灯 | HL4-1、4-2 | Q0.3 | |
南北方向黄灯 | HL5-1、5-2 | Q0.4 | |
南北方向红灯 | HL6-1、6-2 | Q0.5 | |
东西方向左转弯绿灯 | HL7-1、7-2 | Q0.6 | |
南北方向左转弯绿灯 | HL8-1、8-2 | Q0.7 |
根据I/O表及PLC的配置图很容易就可以得到PLC外部端子接线图3-1如下所示:
图3-1 PLC外部端子接线
经过仔细分析该课程设计的题目与要求,我决定使用主程序调用子程序的设计方案,将设置实时时钟以及三个时段不同的交通信号灯控制分别放在子程序中,共四个子程序。通过主程序调用SBR-0进行当前时间设置,然后主程序读取实时时钟,进行换算后利用比较指令判断当前处于哪个时段,然后根据判断结果去调用子程序SBR-1(晚间时段),SBR-2(正常时段),SBR-3(高峰时段),进而使交通信号灯实现对高峰期、正常期及晚间三个时段进行分段智能控制。
图3-2 系统控制流程图
3.3 控制程序编制
3.3.1梯形图
梯形图程序设计语言是最常用的一种程序设计语言。它来源于继电器逻辑控制系统的描述。在工业过程控制领域,电气技术人员对继电器逻辑控制技术较为熟悉,因此,由这种逻辑控制技术发展而来的梯形图受到了欢迎,并得到了广泛的应用。梯形图由触点、线圈和应用指令等组成。触点代表逻辑输入条件。CPU运行扫描到触点符号时,便转到触点位指定的存储器位访问(即CPU对存储器的读操作)。在用户程序中常开触点和常闭触点可以使用无数多次。线圈通常代表逻辑输出结果和输出标志位,当线圈左侧接点组成的逻辑运算结果为“1”时,“能流”可以到达线圈,使得线圈得电动作,则CPU将线圈的位地址指定的存储器的位置为“1”,逻辑运算结果为“0”时,线圈断电,存储器的位置为“0”。
STEP7-Micro/WIN32软件是西门子S7-200PLC的开发工具,主要用于开发程序,也可用于实时监控用户程序的执行状态。用STEP7-Micro/WIN32软件编制的该控制系统的程序梯形图见附录。
3.3.2指令表
指令表(语句表)编程语言类似于计算机中的助记符汇编语言,它是可编程控制器最基础的编程语言。所谓指令表编程,是用一个或几个容易记忆的字符来代表可编程控制器的某种操作功能。语句表通常和梯形图配合使用,互为补充。使用STEP7-Micro/WIN32编程软件可以将该控制系统的梯形图转化为语句表见附录。
在使用软件STEP 7-Micro/WIN编辑完程序后,经编译没有任何错误,人后我就把文件执行“导出”操作,步骤是“文件-导出”,在弹出的“导出程序块”对话框中输入文件名“多时段交通信号灯”后,系统生成了以“awl”为后缀的文件。
然后我打开了仿真软件-S7_200,进行程序调试,进入软件后,先把CPU更换成CPU224,然后打开运行监视,执行载入程序操作,把STEP 7-Micro/WIN中生成的文件导入该仿真软件,如图3-3所示。
图3-3 把程序导入-S7_200
导入程序后,点击"RUN",是系统处于运行状态,可以看到梯形图框内会出现蓝色,如图3-4所示。
图3-4 程序处于RUN状态
按下I0.0,系统会设置实时时钟。
按下启动按钮I0.1,系统则读取实时时钟,并将其转化为数值,放入VW14,通过比较时间值来决定调用哪个子程序。本人调试时,系统调用的是子程序SBR_1,也就是晚间时段的程序,效果是Q0.1(东西方向黄灯)和Q0.4(南北方向黄灯)同时闪烁,如图3-5所示。
图3-5 主程序调用SBR_1子程序
系统运行正常,此时按下停止按钮I0.2,灯熄灭,如图3-6所示。
图3-6 程序停止
经调试,程序运行正常,所编程序正确无误。
结论
本系统采用PLC比采用传统的电子线路和继电器具有可靠性高、维护方便、使用简单、通用性强等特点,PLC还可以联成网络,根据实测各十字路口之间的距离,车流量和车速等,合理确定各路口信号灯之间的时差,把N台PLC联网到一台控制电脑上,以方便操作、管理和监控,从而极大的提高城市道路交通管理能力,减少交通事故的发生。
该交通灯所设计的程序采用主程序调用子程序的思想,完成多时段交通灯的智能控制。这一设计是一个创新亮点,可根据时序段划分来设定相应的时钟,进而来调整多时段交通灯控制。本系统适应性和应变能力都强,在应变情况下不需要大改动相关程序,只需要做微小设定和修改。系统兼有手动和自动操作功能,可根据不同的需要,选择不同的工作方式。该系统可用实际生活中,能在指挥交通中发挥重要作用。
本系统同样存在很多不合理的地方,编写程序时前期工作量很大,而且需要用到各种繁琐的指令和相应的寄存器及众多定时器。画梯形图工作量比较大,编写较多指令,理解起来不太容易。程序过多,有点让人不寒而栗。治学者在学习中,追求简单而有效的解决方法是最可取的,是世人所推崇的。那么后续的工作是改进设计思路,简化设计程序。我们要研究的方向就是要用最简单,最有效的程序来控制多时段交通灯,使其在现实生活中体现设计思路的价值。
设计总结
此次课程设计培养了我综合运用所学的基础理论课,技术基础课,专业课的知识和实践技能分析和解决实际工作中的一般工程问题的能力,使我建立了正确的设计思想学会了如何把几年来所学的理论知识运用到实践当中去。掌握了PLC控制系统的原理,并进一步巩固、扩大和深化了我所学的基本理论,基本知识和基础技能,提高了我的逻辑思维能力。
通过对PLC十字路口交通灯自动控制系统的设计,我对所学PLC内容更加熟悉,在设计的过程中遇到了一些自己暂时还无法解决的问题,通过老师的帮助和查阅相关书籍,对遇到的问题进行分析解答,在这个过程中受益匪浅。经过这次设计我学到很多很多的的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正的学到知识,从而提高自己的实际动手能力和思考的能力。
该设计让我充分的意识到PLC在实际生活中有很多的用处,激起了我在今后的生活中继续学习和运用PLC的兴趣,我也希望我能够把它运用的生活当中比如自己改造家里的电器让它拥有更多的功能。
致谢
本次课程设计过程中,困难有很多,但我相信一个人的智慧有限,但大家的智慧是无穷的。设计过程中有很多帮助过我的老师和同学,我首先要感谢我的指导老师王老师,他平日里工作繁忙,但在我们做课程设计的每个阶段都他给予了悉心的指导并且细心的找出我设计中的错误,然后引导我走向正确的设计方向。其次要感谢本次课程设计过程中我们小组成员给予的帮助,我们一起面对困难,解决困难,并教会我一些重要的知识要点,使我能够完成这次课程设计,谢谢你们。在此,谨向帮助过我的老师和同学致以诚挚的谢意和崇高的敬意。老师和同学们所体现出的治学严谨和科学研究的精神也是我学习的榜样将积极的影响我今后的学习和工作。
附录I 梯形图
上接B
上接A
SBR_0
SBR_1
SBR_2
上接D
上接C
上接F
上接E
SBR_3
上接H
上接G
上接I
上接J
附表 指令表
主程序:
子程序SBR_0
子程序SBR_1
子程序SBR_2
子程序SBR_3
参考文献
[1]王宗才.机电传动与控制.北京:电子工业出版社,2011
[2]王永华.现代电气控制及PLC应用技术.北京:北京航空航天大学出版社,2003[3]廖常初.PLC编程及应用.北京: 机械工业出版社,2005[4]郁汉琪.机床机器及可编程控制器实验课程设计指导书.北京:高等教育出版社,2001
[5]弥洪涛.可编程序控制器(PLC)原理及应用.北京:中国水利水电出版社,1999
[6]胡学林.电气控制及PLC.北京:冶金工业出版社,1997
[7]陈忠华.可编程序控制器与工业自动化系统.北京:机械工业出版社,2002
[8]陈在平、赵相宾.可编程序控制器技术及应用系统设计.北京:机械工业出版社,2002