《可编程控制器大作业.pdf》由会员分享,可在线阅读,更多相关《可编程控制器大作业.pdf(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、网络教育学院网络教育学院可编程控制器大作业可编程控制器大作业题题目目:十字路口交通灯设计学习中心:学习中心:江苏扬州江都学院奥鹏学习中心17VIP层层次:次:高中起点专科专专业:业:电力系统自动化技术年年级:级:2013 年 03 春/秋 季学学号:号:131137128507学生姓名:学生姓名:蔡健效1设计背景1.1 背景概述随着汽车进入家庭步伐的加快和城市汽车数量的增多,城市道路交通问题显得越来越重要。马路上经常会看到这种现象:一旦整个路口的交通信号灯出现故障,若没有交警的及时疏导,该路口就会塞得一塌糊涂,甚至造成严重的交通事故。原交通信号控制大都采用继电器或单片机实现,存在着功能少、可靠
2、性差、维护量大等缺点,越来越不能适应城市道路交通高速发展的要求。另外,根据人车流量的多少,可能随时增加路口的交通信号,比如增加转弯或人行道交通信号,原有系统的制约性就更加明显了。为了弥补原交通信号灯系统存在的以上缺点,我们引入了基于PLC 控制的交通信号灯控制系统。本文对十字路口交通信号灯控制系统,运用可编程逻辑器件 PLC 做了软件与硬件的设计,能基本达到控制要求。系统仅实现了小型 PLC 系统的一个雏形,在完善各项功能方面都还需要进一步的分析、研究和调试工作。如果进一步结合工业控制的要求,形成一个较为成型的产品,则需要作更多、更深入的研究。1.2 可编程逻辑控制器简介可编程逻辑控制器(Pr
3、ogrammable Logic Controller,简称 PLC)根据国际电工委员会(IEC)在1987 年的可编程控制器国际标准第三稿中,对其作了如下定义:“可编程控制器是一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用可编程序的存储器,用来在其内部存储执行逻辑运算,顺序控制,定时,计数与算术运算等操作的指令,并通过数字式、模拟式的输入和输出,控制各种类型的机械或生产过程。可编程控制器及其有关外部设备,都应按易于使工业控制系统形成一个整体,易于扩充其功能的原则设计。”可编程控制器作为目前工业自动化的重要基础设备,被称为“工业自动化三大支柱性产业之一”,在各工业生产领域发挥着
4、愈来愈大的作用。2十字路口交通信号灯PLC 控制系统简介2.1 控制对象及要求2.1.1 控制对象本系统的控制对象有八个,分别是:东西方向红灯(REW)两个;南北方向红灯(RSN)两个;东西方向黄灯(YEW)两个;南北方向黄灯(YSN)两个;东西方向绿灯(GEW)两个;南北方向绿灯(GSN)两个;东西方向左转弯绿灯(LEW)两个;南北方向左转弯绿灯(LSN)两个。2.1.2 控制要求1、系统工作受开关控制,起动开关 ON 则系统工作;起动开关 OFF 则系统停止工作;2、交通信号灯按高峰时段、正常时段及晚上时段进行控制,这三个时段的的时序分配如图1 所示;3、在高峰时段,交通信号灯按图2 所示
5、时序控制;4、在正常时段,交通信号灯按图3 所示时序控制;5、晚上时段按提示警告方式运行,规律为:东、南、西、北四个黄灯全部闪亮,其余灯全部熄灭,黄灯闪亮按亮 0.4 秒,暗 0.6 秒的规律反复循环。2.2 系统简介本系统是一个十字路口交通灯的PLC 控制系统,利用西门子公司的 S7-200 可编程逻辑控制器对十字路口的交通灯进行控制。本系统具有一定的智能性,即它可以对交通灯按高峰期、正常期及晚间几个时段进行分段控制。高峰期的控制方案为:(1)南北方向左转弯灯和南北南北方向红灯同时亮10 秒,同时东西方向红灯亮;(2)南北方向绿灯亮 35 秒,东西方向红灯继续亮;(3)南北方向黄灯闪烁5 秒
6、;东西方向红灯继续亮;(4)东西方向左转弯绿灯和南北方向红灯同时亮10 秒,东西方向红灯继续亮;(5)东西方向绿灯亮 25 秒,南北方向红灯继续亮;(6)东西方向黄灯闪烁5 秒,南北方向红灯继续亮,然后跳至第(1)步依次循环。正常期的控制方案为:(1)南北方向左转弯灯和南北南北方向红灯同时亮10 秒,同时东西方向红灯亮;(2)南北方向绿灯亮 30 秒,东西方向红灯继续亮;(3)南北方向黄灯闪烁5 秒;东西方向红灯继续亮;(4)东西方向左转弯绿灯和南北方向红灯同时亮10 秒,东西方向红灯继续亮;(5)东西方向绿灯亮 30 秒,南北方向红灯继续亮;(6)东西方向黄灯闪烁5 秒,南北方向红灯继续亮,
7、然后跳至第(1)步依次循环。晚间的控制方案为:东、南、西、北四个黄灯全部闪亮,其余灯全部熄灭,黄灯闪亮按亮 0.4 秒,暗 0.6 秒的规律反复循环。2.3 硬件选型城市道路交通信号控制是典型的开关量顺序控制,采用 PLC 能充分利用它的优点。在这里我们采用德国西门子公司的 S7-200 可编程控制器,它是积木式结构,安装比较方便,中央处理单元和信号模板有多种类型,另外还具有如位控单元、PD 调节等特殊功能模块。根据本系统输入点数及控制要求,中央处理单元可选用CPU224,该CPU 板上本身具有 10 个数字量输入点,6 个非隔离数字量输出点,最多能够带8 个数字量信号模板。电源模块将交流电源
8、转换成供 CPU,存储器等所有扩展模块使用的直流电源,是整个 PLC系统的能源供给中心,它的好坏直接影响到PLC 的稳定性和可靠。S7-200 属于小型 PLC,电源模块与 CPU 模块封装在一起,通过连接总线为本机和扩展模块提供+5V(DC)电源。同时,还可通过端子向外输出一个+24V(DC)电源,供本机输入点和扩展模块继电器线圈使用。需注意的是,从资料中我们了解到,外部电源不可与S7-200 的传感器电源并联使用。否则,交会导致两个电源的竟争而影响它们各自的输出,缩短其使用寿命,使得一个或两个电源同时失效,使PLC 系统产生不正确的操作。正确的使用方法是S7-200 的传感器电源和外部电源
9、应该在不同的点上提供电源,而两者之间只能有一个会共连接点。由于根据控制要求所确定的输入输出点分别人二个和九个,由于我们是以一个路口信号单独控制为例,考虑到够用为准。所以我们选择了CPU224 这一具有较强控制功能的控制器。另外,在硬件选型时,不要忘记完成现场测试及软件编程时所需的一些设备。综上,得到系统硬件配置如表1 所示:表 1硬件配置表名 称数 量DC24V 电源 1CPU224 1PC/PPI 编程电缆 1STEP7 编程软件1PC 机13系统 I/O 分配分析 PLC 的输入和输出信号,在满足控制要求的前提下,要尽量减少占用 PLC 的 I/O 点。由系统控制要求可见,由控制开关输入的
10、启、停信号是输入信号。由 PLC 的输出信号控制各指示灯的亮、灭。在交通灯布置图中,南北方向的三色灯共六盏,同颜色的灯在同一时间亮、灭;所以,可将同色灯两两并联,用一个输出信号控制。同理,东西方向的三色灯也依次设计。再加上东西方向左转的三色灯共九盏,所以其占9 个输出点。由此可得系统I/O 分配如表 2 所示:表 2 系统 I/O 分配表输入/输出输入设备/器件名称I/O 地址 符号名数据类型校正当前时钟I0.0 SB0 BOOL程序启停按钮I0.1 SB1 BOOLQ0.0Q1 DINT输出东西方向绿灯东西方向黄灯东西方向红灯南北方向绿灯南北方向黄灯南北方向红灯Q0.1Q2 DINTQ0.2
11、Q3 DINTQ0.3Q4 INTQ0.4Q5 INTQ0.5Q6 INTQ0.6Q7 INTQ0.7Q8 INT东西方向左转弯灯南北方向左转弯灯4PLC 端子接线图根据 I/O 表及 PLC 的配置图很容易就可以得到PLC 端子接线图 4 如下所示:5软件设计本控制系统的控制原理是:用一路数字量的不同输入状态来判定是否对时钟进行初始化,用一路数字量的不同输入状态分别用作程序的启动和停止控制,每一方向有红、黄、绿及转弯四种信号灯,分别对应四位数字量输出,两个方向共有 8 位数定量输出;在某一方向用两个延时脉冲定时器分别控制该方向黄灯闪烁的亮、灭时间,根据道路人车流量多少,分别设置各信号灯亮灭时
12、间的长短,通过 6 个定时器依次交替工作,就可实现各方向交通信号灯的顺序工作。本文所设计的软件由一个主程序和四个子程序(时钟初始化子程序,晚间时段交通灯控制子程序,正常时段交通灯控制子程序和高峰时段交通灯控制子程序)组成。主程序主要任务包括:读取两个开关状态,根据开关的不同状态做出相应的处理,当开关 SB0 闭合时则对时钟进行初始化,反之则不对时钟进行初始化;当开关SB1 闭合时,则读取时钟值,并做处理,根据处理后的时钟值的大小判定当前时间是属于哪个时间段,并调用相应的交通灯控制子程序,反之,则停止程序的运行主程序流程图如图5 所示。晚间时段的控制规律为:两个方向的四个黄灯均按亮 0.4 秒灭
13、 0.6 秒的规律闪烁,其余的交通灯全灭程序中将用到两个定时器 T37 和 T38,各定时器的功能如表3 所示。正常时段的控制方案结构图如图6 所示,程序中将用到 8 个定时 T37-T44,各定时器的功能如表4 所示。高峰时段的控制方案结构图如图 7 所示,程序中将用到 8 个定时 T37-T44,各定时器的功能如表5 所示。该程序实现了信号由东西左转、东西直行、南北直行依次循环变化。其优势思路简单,容易理解,对时钟的校正以及各时段的起始时间和终止时间的修改方便。如路口要求在晚上10:00 以后实行各方向黄色信号灯闪烁功能,只需要将实时采集PLC 的时钟信号作为一个子程序的跳转条件,再增加一
14、段闪光程序即可。如果需要将几个路口集中到一台PLC 控制,根据实际需要的 I/O 点数,硬件上再增加相应的数字量输出模板即可。需要指出的是,用 PLC实现城市道路关通信号控制,最好几个路口共用一套PLC,这样可以大大降低工程成本。表 3晚间时段各定时器一个循环中的功能明细表定时器t0t1T2T37定时 0.4 秒开始定时,黄灯亮的定时T38定时 1 秒开始定时继续定时定时到,输出ON,随即复位开始下一次循环的定定时到,输出 ON 且保持;黄灯灭开始下一次循环时,黄灯亮。表 4正常时段各定时器一个循环中的功能明细表定时器t0t1t2t3t4t5t6T37定时 10 秒开始定时,南北转弯灯、南北红
15、灯、东西红灯亮。定时到,输出 ON 且保持;南北转弯灯灭,南北绿灯亮,东西红灯继续亮。ON ON ON ON 开始下一个循环定时T38定时 40 秒开始定时继续定时定时到,输出 ON 且保持;南北绿灯灭,南北黄灯闪烁,东西红灯继续亮。ON ON ON 开始下一个循环定时T39定时 45 秒开始定时继续定时继续定时定时到,输出 ON 且保持;南北黄灯ON ON 开始下一个循环定时灭,东西转弯灯、南北红灯亮,东西红灯继续亮。T40定时 55 秒开始定时继续定时继续定时继续定时定时到,输出 ON 且保持;东西转弯、东西红灯灭,东西绿灯亮,南北红灯继续亮。ON 开始下一个循环定时T41定时 85 秒开
16、始定时继续定时继续定时继续定时继续定时定时到,输出 ON 且保持;东西绿灯灭,东西黄灯闪烁,南北红灯继续亮。开始下一个循环定时T42定时 90 秒开始定时继续定时继续定时继续定时继续定时继 续 定时定时到,输出ON,随即复位开始下一次循环定时;东西黄灯、南北红灯灭,南北转弯灯、南北红灯、东西红灯亮。表 5高峰时段各定时器一个循环中的功能明细表定时器t0t1t2t3t4t5t6T37定时 10 秒开始定时,南北转弯灯、南北红灯、东西红灯亮。定时到,输出 ON 且保持;南北转弯灯灭,南北绿灯亮,东西红灯继续亮。ON ON ON ON 开始下一个循环定时T38定时 45 秒开始定时继续定时定时到,输
17、出 ON 且保持;南北绿灯灭,南北黄灯闪烁,东西红灯继续亮。ON ON ON 开始下一个循环定时T39定时 50 秒开始定时继续定时继续定时定时到,输出 ON 且保持;南北黄灯ON ON 开始下一个循环定时灭,东西转弯灯、南北红灯亮,东西红灯继续亮。T40定时 60 秒T41定时 85 秒开始定时继续定时继续定时开始定时继续定时继续定时继续定时定时到,输出 ON 且保继续定时继续定时定时到,输出 ON 且保持;东西绿灯灭,东西黄灯闪烁,南北红灯继续亮。开始下一个循环定时T42定时 90 秒开始定时继续定时继续定时继续定时继续定时继 续 定时定时到,输出ON,随即复位开始下一次循环定时;东西黄灯
18、、南北红灯灭,南北转弯灯、南北红灯、东西红灯亮。持;东西转弯、东西红灯灭,东西绿灯亮,南北红灯继续亮。6总 结附录 源程序-STL 语句ORGANIZATION_BLOCK 主:OB1TITLE=程序注解VART:BYTE;/时钟值缓冲区H:INT;/小时数存储单元M:INT;/分钟数存储单元SEC:INT;/秒钟数存储单元Tim:WORD;/小时数乘 100 加分钟数乘 10 加秒钟数所得结果存储单元END_VARBEGINNetwork 1/网络标题/网络注解LDI0.0CALLSBR0/开关 SB0 闭合,调用 SBR0(INIT)对时钟进行初始化Network 2LDNI0.1/起动/
19、停止开关 SB1 断开,则停止程序STOPNetwork 3LDI0.1TODRLB0/起动/停止开关 SB1 闭合,则起动程序,读取时钟Network 4LDI0.1INCBLB0Network 5LDI0.1INCBLB0Network 6LDI0.1INCBLB0/T 加 3 指向小时存储单元Network 7LDI0.1BTILB0,LW1/将小时由字节型转换为整型Network 8LDI0.1MOVWLW1,VW16*I+100,VW16/将小时的数值乘以 100Network 9LDI0.1INCBLB0/将 T 指向分钟存储单元Network 10LDI0.1BTILB0,LW3
20、/将分钟由字节型转换为整型Network 11LDI0.1MOVWLW3,VW18*I+10,VW18/将分钟的数值乘以 10Network 12LDI0.1MOVWVW16,VW20+IVW18,VW20/将小时数乘 100 与分钟数乘 10 相加Network 13LDI0.1INCBLB0/将 T 指向秒钟存储单元Network 14LDI0.1BTILB0,LW5/将秒钟由字节型转换为整型Network 15LDI0.1MOVWVW14,LW7+ILW5,LW7/将小时数乘 100 与分钟数乘 10 相加所得的结果与秒钟数相/加得 TimNetwork 16LDW=LW7,630序CA
21、LLSBR1/Tim 小于 630 时,则调用 SBR1(SUBE)子程Network 17LDWLW7,700CALLSBR2/Tim 大于 630 小于 700 时,则调用 SBR2(SUBN)子程序Network 18LDW=LW7,830CALLSBR3/Tim大于 700 小于 830 时,则调用 SBR3(SUBF)子程序Network 19LDWLW7,1630CALLSBR2/Tim大于 830 小于 1630 时,则调用 SBR2(SUBN)子程序Network 20LDW=LW7,1900CALLSBR3/Tim大于 1630 小于 1900 时,则调用 SBR3(SUBF
22、)子程序Network 21LDWLW7,2100CALLSBR2/Tim大于 1900 小于 2100 时,则调用 SBR2(SUBN)子程序Network 22LDW=LW7,2359CALLSBR1/Tim大于 2100 小于 2100 时,则调用 SBR1(SUBE)子程序END_ORGANIZATION_BLOCKSUBROUTINE_BLOCK INIT:SBR0TITLE=子例行程序注解BEGINNetwork 1/时钟初始化子程序LDI0.1INCBVB0Network 2LDI0.1INCBVB0Network 3LDI0.1INCBVB0Network 4LDI0.1MOV
23、B0,VB0/设定时钟小时数Network 5LDI0.1INCBVB0Network 6LDI0.1MOVB0,VB0/设定时钟分钟数Network 7LDI0.1INCBVB0Network 8LDI0.1MOVB0,VB0/设定时钟秒钟数Network 9/网络标题/网络注解LDI0.1TODWVB0END_SUBROUTINE_BLOCKSUBROUTINE_BLOCK SUBE:SBR1/晚间时段交通灯控制子程序TITLE=子例行程序注解BEGINNetwork 1/网络标题/网络注解LDI0.1SS0.1,1Network 2LSCRS0.1/顺序控制Network 3LDNT38
24、TONT37,4TONT38,10Network 4LDNT37=Q0.1=Q0.4/黄灯按亮 0.4 秒灭 0.6 的规律闪烁,其余的交通灯全灭Network 5LDT38RT37,1RT38,1Network 6SCREEND_SUBROUTINE_BLOCKSUBROUTINE_BLOCK SUBN:SBR2/正常时段交通灯控制子程序TITLE=子例行程序注解BEGINNetwork 1/网络标题/网络注解LDI0.1SS0.1,1Network 2LSCRS0.1Network 3LDNT42TONT37,100/T37 定时 10 秒TONT38,400/T38 定时 40 秒TON
25、T39,450/T39 定时 45 秒TONT40,550/T40 定时 550 秒TONT41,850/T41 定时 85 秒TONT42,900/T42 定时 90 秒Network 4LDNT37=Q0.2=Q0.5=Q0.7Network 5LDT37ANT38=Q0.2=Q0.3Network 6LDT38ANT39SS0.2,1Network 7LSCRS0.2Network 8LDNT44TONT43,4TONT44,10Network 9LDNT43=Q0.2=Q0.4Network 10LDT43ANT44=Q0.2Network 11LDNT39SS0.2,1Network
26、 12LDT39ANT40=Q0.2=Q0.5=Q0.6Network 13LDT40ANT41=Q0.3=Q0.5Network 14LDT41ANT42=Q0.1=Q0.5Network 15LDT42RT37,1RT38,1RT39,1RT40,1RT41,1RT42,1RT43,1RT44,1Network 16SCREEND_SUBROUTINE_BLOCKSUBROUTINE_BLOCK SUBF:SBR3/高峰时段交通灯控制子程序TITLE=子例行程序注解BEGINNetwork 1/网络标题/网络注解LDI0.1SS0.1,1Network 2LSCRS0.1Network 3
27、LDNT42TONT37,100/T37定时 10 秒TONT38,450/T38定时 45 秒TONT39,500/T39定时 50 秒TONT40,600/T40定时 60 秒TONT41,850/T41定时 85 秒TONT42,900/T42定时 90 秒Network 4LDNT37=Q0.2=Q0.5=Q0.7Network 5LDT37ANT38=Q0.2=Q0.3Network 6LDT38ANT39SS0.2,1Network 7LSCRS0.2Network 8LDNT44TONT43,4TONT44,10Network 9LDNT43=Q0.2=Q0.4Network 1
28、0LDT43ANT44=Q0.2Network 11LDNT39SS0.2,1Network 12LDT39ANT40=Q0.2=Q0.5=Q0.6Network 13LDT40ANT41=Q0.3=Q0.5Network 14LDT41ANT42=Q0.1=Q0.5Network 15LDT42RT37,1RT38,1RT39,1RT40,1RT41,1RT42,1RT43,1RT44,1Network 16SCRENetwork 17/网络标题/网络注解END_SUBROUTINE_BLOCKINTERRUPT_BLOCK INT_0:INT0TITLE=中断例行程序注解BEGINNetwork 1/网络标题/网络注解END_INTERRUPT_BLOCK