1、安徽三联学院学年论文安徽三联学院学年论文十字路口交通灯控制系统Crossroads traffic lights control system 专 业: 电气工程及其自动化 姓 名: 学 号: 指导老师: 2010年 12 月 15 日信息与通信技术系10安徽三联学院学年论文【摘要】根据8051单片机的特点及交通灯在实际控制中的特点,本文提出一种用单片机自动控制交通灯及时间显示的方法。同时给出了软硬件设计方法,设计过程包括硬件电路设计和程序设计两大步骤,对在单片机应用中可能遇到的重要技术问题都有涉足。本文对十字路口状态预设为两种,一种是正常状态,另一种是故障或紧急状态,通过按键来实现。通过按键
2、可以调节时间的显示;以及红绿灯亮的时间;还可以设置交通忙碌时间;当时间达到忙碌的时间,程序则进入忙碌时间。在此设计中用LCD1602来作为人机相联的显示屏,数码管作倒计时,双色LED作为红绿黄三种交通控制灯,四个按键当为设置和急停用。【关键词】单片机;交通灯;时间显示器;数码管。 【Abstract】8051 features and characteristics of traffic lights in the actual control, this paper proposes a single-chip automatic control of traffic lights and
3、time display. Given hardware and software design methods, the two steps of the design process including the hardware circuit design and programming have to get involved on important technical issues that may be encountered in the SCM application. Crossroads state default two, one is the normal state
4、, another is a failure or emergency button. Button can adjust the time display; and traffic lights bright; can also set the traffic busy time; time to reach a busy time, the program is to enter a busy time. In this design, using LCD1602 as a display of human-computer linked digital tube to make coun
5、tdown, the two-color LED as red, green and yellow three traffic control lights, four buttons to use for the set and emergency stop.【Key words】SCM; traffic lights; time display; digital tube.一 引言1.1交通灯发展史及背景、意义当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。但这一技术在19世纪就已出现了。1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号
6、灯,用以指挥马车通行。这是世界上最早的交通信号灯。1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。它由红绿两以旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。红灯亮表示“停止”,绿灯亮表示“通行”。1918年,又出现了带控制的红绿灯和红外线红绿灯。带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;另一种是用扩音器来启动红绿灯,司机遇红灯时按一下
7、嗽叭,就使红灯变为绿灯。红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。信号灯的出现,提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。交通的发达,标志着
8、城市的发达,相对交通的管理则显得越来越重要。对于复杂的城市交通系统,为了确保安全,保证正常的交通秩序,十字路口的信号控制必需按照一定的规律变化,以便于车辆行人能顺利地通过十字路口。交通灯在安全行车过程中起着十分重要的作用, 现在交通灯一般设在十字路口, 在醒目位置用红、绿、黄三种颜色的指示灯, 加上一个倒计时的显示计时器来控制行车。1.2.国内外交通灯发展动态随着社会的发展,交通事业也跟着发展,交通流量年年增长,大、中、小城市的汽车、摩托车等各种车辆与日俱增,道路交通繁忙,经常有严重堵车现象,特别是在交叉口,交通来往非常混乱,为了在叉口的各条干道实现合理的科学分流。传统的交通灯控制系统, 采用
9、的基本上是三种控制方式。手按: 交警在岗亭值守,人为进行红绿灯改变; 黄闪:夜间无人值守时, 用每秒1次的黄灯闪亮, 提醒司机安全驾驶; 程控: 以60s 作为一个时间单位。某一方面(例南北方向) 红黄绿三灯的工作程序分别是: 红灯先亮30s, 然后绿灯亮28s, 再绿灯闪亮3s (每秒1次) , 最后黄灯亮2s。此时, 另一方向(东西方向) 红黄绿三灯的工作顺序相应为: 绿灯亮25s, 绿灯闪亮3s (每秒1次) , 黄灯亮2s, 最后红灯亮30s。此后以60s 作为时间单位进行上述的反复循环。但红绿灯的工作顺序及时间都是固定的, 缺乏灵活性。目前国内和国外都开始设计一种可以根据车流量而改变
10、交通灯的亮灭时间,也就是智能化交通控制。1.3.设计目的对于一般情况下的安全行车、车辆分流发挥着作用, 但根据实际行车过程中出现的情况, 主要有如下几个缺点: 一、两车道让车轮流放行时间相同且固定, 在十字路口, 经常一个车道为主干道,车辆较多, 放行时间应该长些; 另一车道为副干道, 车辆较少,放行时间短些。二、 没有考虑紧急车通过时, 两车道应采取的措施, 譬如, 有消防车通过执行紧急任务时, 两车道的车都应停止, 让紧急车通过。根据行车过程中出现的实际情况,本人尝试用单片机来控制交通灯, 在软、硬件方面采取一些改进措施, 使交通灯在控制中灵活而有效。但是目前的交通灯时间控制都是固定的,不
11、能适应不同情况的时间控制,因此能够设计一种能够随时调节循环控制时间的交通控制器是比较符合社会发展需要的。本设计目的就是要设计出这样一种可以调节控制时间的交通灯控制系统。1.4.设计研究内容考虑到单片机具有物美价廉、功能强、使用方便灵活、可靠性高等特点,本人提出了一种用STC89C54RD+单片机作为主控来实现十字路口交通信号灯的控制。正常情况下,十字路口的红绿灯应交替变换,紧急情况下,如有救护车或警车到来时,应优先让其通过。 在本文中,用双色发光二极管来模拟交通信号灯,救护车的优先通过请求信号由外部中断技术来模拟。要求使用定时器/计数器0作为定时器,假设南北和东西的通车时间都为30s,外部中断
12、的延时为10s,通行时间进行倒计时,从P0口输出,在数码管上显示并进行递减。以此来实现十字路口交通灯的指示功能。设计出一种红绿黄灯可以调节控制时间的交通控制系统,控制时间调整后要能在设定后的时间下运行,有一个人机界面,交通灯的控制时间可以在此界面进行查看。此人机界面还可以显示当前时间,时间可调节。二 相关硬件设计2.1 控制要求(1)开机后初始状态为东西红灯,数码为30秒;南北绿灯,数码为20秒;(2)绿灯亮时表示可以通行,红灯亮时表示禁止通行;(3)每次绿灯变红灯时,黄灯先亮5秒(此时另一干道上的红灯不变);(4)十字路口要求有数字显示,作为时间提示,以便人们更直观地把握时间,具体要求主、支
13、干道通行时间及黄灯亮的时间均以秒为单位做减数器;在黄灯亮时,原红灯按1HZ的频率闪烁;(5)当有急救车到达时,路口的信号灯全部变红,让急救车通过。假定急救车通过时间为10s,急救车通过后,交通灯恢复先前状态。2.2 交通信号灯的工作原理:一般情况下,红绿灯设在十字路口,或在多干道的叉口上,目的是为了调整叉口的交通秩序使各干道来往车辆能够有条不紊地行驶,否则将造成意想不到的严重后果。当然在叉口设置合理的红绿灯后,也可大大减少交通管理部门的人力、物力。叉口交通信号等的基本作用:红灯亮表示车辆、行人禁止通行,绿灯亮表示车辆、行人可以通行,绿灯转换成红灯前几秒,可用黄灯亮来暗示驾驶员或行人即将禁止通行
14、。该系统的屏幕时间显示用倒计时方式表示红绿灯的切换时间,时间显示器的作用是协助红绿灯工作,跟随红、绿灯反复地进行切换。目的是为了使驾驶员和行人能够看见红绿等亮的时间还剩几秒以便停车线以内的驾驶员和行人能够更清楚地知道此时该继续通行或减速,才不会使驾驶员盲目地加速或减速停车而阻碍另一干道车辆或行人的通行,从而可以提高叉口车辆及行人的流通率,当然也可以减少事故的发生,为交通安全提供保障。交通信号灯的工作原理:当东西组红灯亮绿灯灭;则南北组绿灯亮红灯灭。对东西组或南北组而言,每当绿灯亮转换成红灯亮前几秒(具体多长时间视实际情况而定)黄灯亮,当绿灯灭时黄灯也灭。采用单片机的I/O中P1口加上一个上拉电
15、阻后直接和交通灯连接,而P3口中的P30P33接开关控制,P0口中接数码管和LCD1602的数据口,P2口作为数码管的位选择口以及LCD1602的控制入口,其中P20,P21,P22作为74HC138的输入端,P24,P25,P26作为LCD1602的读写控制端口,LCD1602用作人机交流界面。控制程序放在STC89C54RD+单片机的ROM中, 在十字路口的四组红、黄、绿交通灯, 受单片机P1.0P1.7 控制, 由于交通灯为双色共阳发光二极管且阳极直接和电源正极连接, 因此I/O口输出低电平时, 与之相连的相应指示灯会亮, I/O口输出高电平时, 相应指示灯会灭。紧急车请求通过的信号由人
16、工控制, 以中断方式输入单片机, 无紧急车通过时, 中断引脚INT0 通过电阻和电源正极连接为高电平, 不产生中断请求,单片机执行主程序, 有紧急车通过时, 中断引脚采用人工方法接地为低电平, 产生中断请求, 单片机执行中断服务程序, 让紧急车通过, 紧急车通过后, 中断引脚变为高电平, 返回主程序。由于倒计时显示装置已普遍采用, 因此本文未引入探讨,也是使用倒计时的方法,进行时间显示。2.2.1 单片机STC89C54RD+单片机是一种带16K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压
17、,高性能CMOS8位微处理器,超低功耗(掉电模式0.1uA,正常模式:4Ma-7mA)。该单片机有1280个字节的RAM数据存储器,16K的EEPROM,工作频率为0到80M,它的P0口是开漏输出,作为总线扩展用时不用加上拉电阻,作为I/O用时要加上拉电阻。其有2个数据指针,8个中断源,3个十六位定时器,其中定时器0还可作为两个定时器用,还内置了高速A/D和看门狗。其引脚原理图如下图3.1所示。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,STC的89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,擦写次数达十万次以上。因此选择了这个性介比比较高的单片机。对
18、于一个典型的单片机系统而言,主要由单片机、晶振和复位电路、输入控制电路、输出显示电路以及外围功能器件5个部分组成,本设计硬件也是由这五部分组成的。2.2.2 LCD1602液晶显示屏LCD1602液晶显示屏是以若干个性5*8或5*11点阵块组成的显示字符群,每个点阵块为一个字符位,字符间距都为一个点的宽度,它具有64个字节的自定义RAM,可一次性单行显示16个字符,双行显示32个字符,可以选择4位的数据口或8位数据口读写。在本此的设计当中,LCD1602选择4位的数据口读写,它是作为一个人机交流的界面,通过它,我们能看到红绿灯设定好的显示时间,还可以对当前的时间进行设定,以及忙碌时间段的设定显
19、示。2.2.3 数码管数码管是由七段发光二极管显示字段组成的显示器件,通常的七段显示器(也有人称为七节显示屏)是由八个发光二极管所组成的,因此也被叫做八段显示器。其中包括七个细长条形的LED及小数点行的LED,显示器的每一段或没一划都有其名称,分别是英文小写的a到f,以及小数点dp(DECIMAL POINT)。七段显示器可以显示包括小数点的0到9数字与部分的英文字母。这种显示块有共阴极与共阳极两种,在此我用的是两位的共阴数码管,如图3.3所示。共阴极LED显示块的发光级管阴极共地,当公共端为低电平,非公共端为高电平时数码管被点亮。七段显示块与单片机接口非常容易,只要将一个8位并行输出门与数码
20、管的引脚相连,另外给公共端低电平即可。用单片机驱动LED数码管有很多种方法,按显示方式分,有静态显示和动态显示。首先介绍静态显示方法。静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不再控制LED,直到下一次显示时再传送一次新的显示数据。静态显示的数据稳定,占用的CUP时间少。静态显示中,没一个显示器都要占用单独的具有锁存功能的I/O接口,该接口用于笔划段字形代码。这样单片机只要把显示的字形代码发送到接口电路,该字段就可以显示发送的字形。要显示新的数据时,单片机再发送新的字形码。另一种方法是动态扫描显示。动态扫描的方法是用其接口电路把所有显示器的8个笔划段a-h同名端连
21、在一起,而没一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字形码时,所有显示器接口接收到相同的字形码,但究竟是哪个显示器亮,则取决于COM端,而这一端是有I/O控制的,由单片机决定何时显示哪一位了。动态扫描用分时的方法轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,没位显示器的点亮时间极为短暂,但由于人的视觉暂留现象及发光二极管的余辉效应,给人的印象就是一组稳定的显示数据。静态显示和动态显示的比较:这两种显示方式各有利弊:静态显示虽然数据显示稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的电路硬件较多;动态显示需要C
22、PU时刻对显示器进行数据刷新,显示数据有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。在一般较为简单的系统中,为了降低成本,动态显示方案具备一定的实用性,也是目前单片机数码管显示中较为常用的一种显示方法。动态显示法是目前各种单片计算机采用的流行方法。其优点是简单,“动态”由软件实现。2.4 双色LED双色LED其实就是一种发光二极管,其内部其实是两个管芯; 一般是三个引出线,有共阴和共阳两种封装; 还有正反向并联的封装,只有两个引出线,在此用的是三个引出线的双色共阳发光二极管,原理图如图,当1号脚给低电平,L1亮,假设此时亮的是红色;那么当1号脚不给低电平,而是给2号脚低电平,
23、此时亮的是绿灯;如果1号与2号脚同时给低电平,此时红灯与绿灯同时亮,根据三基色原理(红色+绿色=黄色),此时我们人眼所看到的就是黄色。因此通过这种方法每组交通信号灯就可以比用单色LED灯少用一个I/O口了,在四个方向交通灯中仅用了8个单片机的I/O口。2.4.1 电参数参发光二极管的电参数主要有下列几项。 正向电压Vf。它是指:在给发光二极管加入规定的正向电流时,发光二极管正极与负极引脚之间的电压降。发向耐压Vr。它是指:保证发光二极管不出现反向击穿时所允许给发光二极管加的最大反向电压。反向漏电流Ir。它是指:在给发光二极管加上规定的反向偏置电压时,流过发光二极管的反向电流,即从负极流向正极的
24、电流。结电容Co。它是指:发光二极管PN结的结电容,一般为小于100PF,此结电容愈小愈好。2.4.2 极限参数发光二极管的极限参数关系到发光二极管的安全使用,在使用过程中若超过极限参数,发光二极管将会损坏。发光二极管的极限参数主要有两项:一是极限功率Pm;二是极限工作电流Im。在小电流发光二极管中,极限电流一般小于5MA。发光二极管的三种参数中,除光参数是它特有的外,其他两项参数的含义与普通二极管相同。三 安装与调试3.1 硬件安装调试:利用PROTELL99SE软件来进行电路原理图的制作,再把做好的原理图用PCB板打印出来,做成电路板,进行腐蚀,打洞。把准备好的元件按照原理图焊接上去,焊好
25、了之后,要仔细检查,看看有没有虚焊,脱焊。再根据硬件检查一下电路的走线,看是否与电路原理图相符合,如果一切都符合,再给该作品加上对应的电源,看看电源指示灯是否亮,然后再测量单片机的电源电压,再分析其它的硬件电路,看是否有断路,以及错路问题。若没有则硬件没问题了,那么在硬件的调试上就完成。3.2 Keil uVision3软件和STC单片机下载器软件Keil uVision3软件是众多单片机应用开发的优秀软件之一, KeilSoftware公司推出的uVision3是一款可用于多种8051MCU的集成开发环境(IDE),该IDE同时也是PK51及其它开发套件的一个重要组件。除增加了源代码、功能导
26、航器、模板编辑以及改进的搜索功能外,uVision3还提供了一个配置向导功能,加速了启动代码和配置文件的生成。此外其内置的仿真器可模拟目标MCU,包括指令集、片上外围设备及外部信号等。uVision3提供逻辑分析器,可监控基于MCUI/O引脚和外设状态变化下的程序变量。uVision3提供对多种最新的8051类微处理器的支持,包括AnalogDevices的ADuC83x和ADuC84x,以及Infineon的XC866等。Keil uVision3软件的使用方法在这里就不做过多的介绍,可以参阅有关书籍。3.3软件调试:在硬件调试好的前提下进行软件调试,首先把一些最小程序烧写进单片机中(如:让
27、P10产生一个连续相隔一秒钟的信号),接上电源后,再用一个LED去测试一下,看是否会一亮一灭,若有则这个系统正常,反之不正常,那么就要再一次检查硬件,直到这个系统能正常运行。最后把用于显示时钟界面的程序烧写进单片机中,插好LCD1602再给制作的作品加上电源,调节LCD1602的背光,如果能够显示字符,那么软件的调试在这也就可以说结束了,若没有则再检测电路,如数据的传输线路以及读写控制线路是否有断开现象。分别检测每一个部件的电路,直到全都所有的硬件能够安全地按设计要求达到正常显示。 3.4 性能测试在软硬件都调试完毕之后,在把所烧写显示时钟的程序烧入单片机之后,我们开始进行性能的测试,在按下调
28、节按钮后,能够进入调节状态,再按下按键进行其它相应调节,比如说:时间调节,忙碌时间调节,交通灯时间调节,若一切设置后能够按照重新设定的值运行了,那么此设计完成。该设计具有这样的优点:改变红绿灯亮的时间,使交通运行时间更具优化,也更具人性化,在保证交通畅通的情况下减少等待时间。3.5 此设计的优缺点与目前的交通控制系统进行比较:缺点:1.众所周知,国内外的交通控制系统已经向智能化发展了,此设计却没有智能化功能,这就是它的一个缺点。2.国外的还有远程控制系统,而这设计没有,因此不能远程控制也是本设计的缺点。优点:1.此控制系统可以通过手动的方式来进行控制时间的调节。2.此控制芯片功耗比较低。 3.
29、此设计有一个可控的人机交流界面。比较人性化。四 结论本系统的硬件控制电路图简单,可降低生产成本,采用单片机可提高系统的可靠性和稳定性,缩小系统的体积,调试和维护方便,并可根据具体情况修改程序中的参数。用汇编语言编程时,位操作指令用的较多,但遇到了很多困难,最后还是采用C语言编写。本软、硬件系统在单片机开发装置上调试运行取得较好的效果,对灵活有效地利用交通灯控制行车安全,车辆分流有一定的实际意义,而且解决了紧急车的通行问题。从本交通信号灯自动控制系统的设计与实验中可以看出,涉及到数据输出程序的设计方法;模拟交通灯控制的方法;信号灯及数码管的使用.在此基础上我们可对其进行改进,加入中断的要求,从而
30、涉及外部中断技术的基本使用方法和编程方法.8051内部定时/计数器的使用和编程方法;而且还可以在外部中断中增加用继电器的开合模拟急救车通过的声音等要求.在整个设计与制作过程中,从一开始拿到题目,经过查阅有关方面的书籍,到分析与设计,采用所学的单片机的知识,运用单片机最小应用系统,设计出硬件电路,以P1口作为输出,通过按键来控制道路的畅通。用EDA软件-Protel99完成原理图的制作,通过腐蚀、打孔、插件、焊接完成硬件电路板。然后在此基础上,用C语言和Keil uVision3软件来编写程序,来实现对硬件电路的控制。对于程序的调试,通过多次调试,得到完整正确的程序。继而,将程序烧录到单片机芯片
31、中,最后,加入电源,各部分电路显示正常达到本次设计的目的。完成了适当的硬件电路的设计和软件的编程与调试、控制。 参考文献1单片机交通灯控制(太原城市职业技术学院毕业设计说明书-2010年5月30日);2基于MCS-51单片机的多功能交通灯控制系统设计(福建信息技术学院软件工程系赵湘纹2005年11月);3基于单片机的交通灯控制系统设计与实现(大庆石油学院电气信息工程学院王冬梅等2009年1月);4用自顶向下法设计交通灯控制系统(南京邮电大学光电工程学院杨恒新2006年8月);5基于模糊控制的十字路口交通灯控制系统(内蒙古科技大学信息工程学院赵宇明等2008年第四期自动化与信息工程);6利用单片机改进交通灯控制系统杨汉祥 刘良福 邬喜辉(江西);7交通控制理论与关键技术影响分析于勇(重庆)。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100