毕业论文交通灯.doc_第1页
毕业论文交通灯.doc_第2页
毕业论文交通灯.doc_第3页
毕业论文交通灯.doc_第4页
毕业论文交通灯.doc_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.引言 现代社会,红绿灯被安装在各个路口上,已经成为疏导行驶车辆最常见和最有效的方法和手段。据调查显示,这一技术在19世纪就已出现了。信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。1968年,联合国道路交通和道路标志信号协定对各种信号灯的含义作了规定。绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。1.1交通信号灯应用现状随着世界范围内城市化和机动化进程的加快,城市交通越来越成为一个全球化的问题。自改革开放以来,我国的城市规模和经济建设都有了飞速的发展,城市化进程在逐步加快,城市人口在急剧增加,车辆也越来越多,大量流动人口涌进城市,人员出行和物资交流频繁,随之而来的交通事故也发生地更加频繁,使城市交通面临着严峻的局势。当前,全国大中城市普遍存在着道路拥挤、车辆堵塞矛盾,使原来不太突出的交通问题被提上了日程。信号灯的出现,虽然使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有了明显效果。同时随着人民的生活水平日渐提高,越来越多的汽车进入寻常老百姓的家庭,再加上政府大力发展的公交、出租车,车辆越来越多了。这不仅要求道路要越来越宽阔,而且要求有新的交通管理模式的出台。旧有的交通控制系统的弊病和人们越来越高的要求激化了市交通系统的管理机制不适应,使得对交通灯控制要求也就越来越高,交通灯的设计有很多实现的方法。从交通灯的重要性看来,交通灯工作一定要是稳定可靠的。如今红绿交通信号灯作为交管部门管理交通的重要工具之一,如何提供一个高效率的交通控制系统有着明显的必要性。目前设计交通灯的方案有很多,有应用CPLD设计实现交通信号灯控制器方法;有应用PLC实现对交通灯控制系统的设计;有应用单片机实现对交通信号灯设计的方法。国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯。加上一个倒计时的显示计时器来控制行车。本系统就是在现有的基础上外加一些辅助功能,从而使交通信号倒计时系统功能更加完善、使用更加灵活。1.2 本设计完成的工作学习式交通信号倒计时系统主要在实验室完成,参考有关的书籍和资料,个人完成电路的设计、检查、调试,再根据自己的硬件用C语言编写的显示程序,然后进行调试,最终达到准确无误的倒计时显示。在本系统中,采用顺序工作方式,实现时间的倒计时,硬件部分主要分两大块,由AT89C51和多个按键组成的控制模块,包括时钟电路、控制信号电路,时钟采用6MHZ晶振和30pF的电容来组成内部时钟方式,控制信号用手动开关来控制,P1口来控制,P2、P3口产生信号并通过共阳极数码管来显示,软件采用C语言来编写,子程序实现数据的倒计时控制并加以显示。2.系统分析与方案论证2.1设计要求2.1.1设计基本要求 用AT89C51单片机为主芯片控制交通信号灯的整个系统,P1口用以连接七段显示数码管,P1口用以连接LED灯。 合实际情况,确定红绿交通灯的亮灭方案。 用七段显示数码管动态显示各个方向上的剩余时间。 成硬件电路分析及设计。 据交通灯控制系统框图,画出电路图。 件编制并通过测试。2.1.2设计提高要求 没有任何辅助芯片的情况下实现交通信号倒计时,这使设计成本大大降低。 过按键实现各个模拟信号之间的转换、定时器的时间设计和方向选择功能。 特定时间自动进行工作模式的转换。2.2 总体设计思想本毕业设计注重于对单片机最小系统的理论的理解,明白交通信号倒计时系统的工作原理,以便以后单片机领域的开发和研制打下基础,提高自己的设计能力,培养创新能力,丰富自己的知识理论,做到理论和实际结合。我所做的学习式交通信号倒计时系统主要在实验室完成,参考有关的书籍和资料,个人完成电路的设计、检查、调试,再根据自己的硬件用C语言编写的显示程序,然后进行调试,最终达到准确无误的倒计时显示。在这过程中需要选择适当的元件,合理的电路图,基本的故障排除和纠正能力,会使用基本的仪器对硬件进行调试,会熟练的运用C语言编写程序,会用相关的软件对自己的程序进行翻译,要耐心的反复检查、修改和调试,直到达到预期目的。学习式交通信号倒计时系统采用顺序工作方式,实现时间的倒计时,硬件部分主要分两大块,由AT89C51和多个按键组成的控制模块,包括时钟电路、控制信号电路,时钟采用6MHZ晶振和30pF的电容来组成内部时钟方式,控制信号用手动开关来控制,P1口来控制,P2、P3口产生信号并通过共阳极数码管来显示,软件采用C语言来编写,子程序实现数据的倒计时控制并加以显示。2.3 控制系统原理2.3.1红绿灯显示过程交通灯最基本的性能是颜色灯的显示,由于该系统在路口的各个方向上都设有时间倒计时,但为了给予人们充分缓冲的时间,在本系统中设置有黄灯显示。假设东西、南北两干道交于一个单车道的十字路口,各路口有三组红黄绿三色的指示灯,整个系统用到12盏红灯、12盏绿灯,共24盏,指挥车辆和行人安全通行。交通法规定:红灯亮,车辆禁止通行;绿灯亮,车辆允许通行;黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为A、B两干道的公共停车时间。当南北方向车辆可直行时,南北方向的人行道上可以通行;同理,当东西方向车辆可直行时,东西方向的人行道上可以通行。另外还有左拐和右拐两种行驶方向,由于它们的设置和前面提到的设计方案基本相同,在此不再一一设置,只设计其中的两种情况,另外两种方向只需略加改变得到。本课题假设A道比B道的车流量大(A代表南北方向;B代表东西方向),以下分别是车道十字路口交通行驶情况和红绿指示灯燃亮的方案,都遵循上北下南,左西右东的规则。 图a 图b图1 红绿指示灯周期燃亮的方案图a东西方向车辆直走,同时东西方向上人行道可通行。图b南北方向车辆直走,同时南北方向上人行道可通行。表一 周期燃亮方案表520530520A道黄灯亮红灯亮黄灯亮绿灯亮黄灯亮红灯亮B道黄灯亮绿灯亮黄灯亮红灯亮黄灯亮绿灯亮 表一表明: 为黄灯时 A、B两道同时为黄灯;以提示行人或车辆下一个灯色即将到来 时间 5秒。 A到为红灯,A 道车辆禁止通行,A 道行人可通过;B 道为绿灯,B 道车辆通过,行人禁止通行。时间为20秒。 A道绿灯,A 道车辆通行;B 道为红灯,B 道车辆禁止通过,行人通行。时间为30秒。 A道车流大 通行时间长 样如上表的时间和红、绿、黄出现的顺序依次出现这样行人和车辆就能安全畅通的通行。 表可根据车流量动态设定3.电路设计3.1 电路原理 图2 电路原理图3.2 单片机电路AT89C51芯片是本系统设计的核心部件,外加部分晶振电路组成单片机最小系统来实现交通信号倒计时的控制,单片机从P2口接收控制信号,再通过P0或P1口输出各种控制信号用以控制数码管和二极管的正常作并为其提供所需的电压。工 图3 单片机最小系统3.3显示电路倒计时的显示主要用数码管来显示。将数码管与单片机的P1口连接来显示。当定时器定时为1秒,时程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间 ,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后在重新给时间计数器赋初 图4 显示电路值 ,重新进入循环。 3.4控制电路控制电路由13个开关按键来实现控制,按键与AT89C51芯片的P2口相连,按下按键,通过P2口输入到单片机芯片中,从而通过P1口输出,用数码管来显示设置状态 。例如,模拟违章、 图5 按键控制高峰控制,数码管显示时间的重新设计等等。 3.5 电源与取电电路由于数码管和二极管工作电压为220V,而单片机的工作电压只需要5V,因此,在原理图中一个实现二者的相互转换。在本系统中,采用4.软件设计部分 图6 取电电路4.1程序组成本系统主要由三大部分组成,即主函数,中断函数和键盘扫描函数组成,其中,中断函数用于实现数码管的倒计时显示以及交通灯亮的顺序控制;键盘扫描函数用于扫描是否有按键按下,从而转到相应的中断程序予以实现。4.2计数器硬件延时4.2.1 计数器初值计算定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的。他是以加法记数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC 可得到如下计算通式: TC=M-C式中,M为计数器模值,该值和计数器工作方式有关。在方式0时M为213 ;在方式1时M的值为216;在方式2和3为284.2.2 计算公式T=(MTC)T计数或TCMTT计数 T计数是单片机时钟周期T的12倍;TC为定时初值如单片机的主脉冲频率为T12MHZ,经过12分频方式0TMAX213微秒8.192毫秒方式1TMAX216微秒65.536毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题。4.2.3 秒的方法我们采用在主程序中设定一个初值为20的软件计数器和使T0定时50毫秒。这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序。在中断服务子程序中,CPU先使软件计数器减1,然后判断它是否为零。为零表示1秒已到可以返回到输出时间显示程序。4.3软件延时AT89C51的工作频率为2-12MHZ,我们选用的89C51单片机的工作频率为6MHZ。机器周期与主频有关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us。我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。由于软件延时方法简单灵活,本系统采用此种延时。具体的延时程序分析:TR0 = 0;/ 设置Timer0停止计数EA = 0;/关中断TH0 = 0xec;/ 设置Timer0的高八位TL0 = 0x78;/ 设置Timer0的低八位TR0 = 1; / 设置Timer0停止计数EA = 1; /开中断4.4 系统流程图4.4.1 主程序流程图在主函数中对计数器进行初始化,设置数码管的初始状态为南北通行、东西禁止;调用键盘扫描函数来检测是否有按键按下,从而转入相应的中断处理函数执行相应的程序段;执行完毕,再转入主函数的下一条语句接着执行,从而形成一个死循环来控制单片机持续工作。 图 7 主函数流程图4.4.1 键盘扫描程序流程图 键盘扫描函数用于扫描按键是否按下,当有按键按下,延时一段时间转入中断处理函数进行相应的处理;在本系统的设计中有13个按键,所以,在下面的流程图中没有全部体现出来,只列出了其中的一个状态的执行过程,其他12个状态的执行过程与列出的状态的执行过程相似,因此,在此不再一一列出。图8键盘扫描函数流程图 4.4.3 中断程序流程图接收键盘扫描函数输入的状态,判断通行状态,若无键按下,则置状态标志flag为0;若有键按下,则置状态标志flag为1;接着判断是哪种模式,之后根据模式值来执行相应的操作;最后设定时间状态,然后结束。 4.5系统分块设计 断函数初始化对定时器进行中断初始化设:设置Timer0工作于模式1;设置定时器的初值为60535,即低8位(TL0)为0x77,高8位为(TH0)为0xec;设置定时器接受Timer0的中断;启动Timer0;设置 图9中断函数流程图系统接受中断;设置系统的初始工作状态为闲时模式。系统工作每200次中断一次,即每1S中断一次(65335-60535)*200 =1000000 us。显示LED灯的亮灭,七段显示数码管显示时间。void timer0_init(void) /初始化 TMOD = 0x01; /设置模式1TH0 = 0xec; /设置Timer0的高八位TL0 = 0x78; /设置Timer0的低八位TR0 = 1; / 开始Timer0计数EA = 1; /开中断ET0 = 1;/设置接受Timer0的中断 中断函数 从P2口读入数据,从P0口输出数据。将需要输入的数据送给各个临时变量,再将临时变量通过P1口输出,每执行一次先对临时变量清零。void timer0_isr(void) interrupt 1 TR0 = 0; /Timer0停止计数EA = 0; /关中断TH0 = 0xec; /设置Timer0的高八位TL0 = 0x78; /设置Timer0的低八位TR0 = 1;/Timer0开始计数EA = 1; /开中断if(time = 0 & nbrg = 1) time = nbt; /南北红绿灯时间P0 = 0x0a; /南北绿闪转黄,东西红nbrg = 0; /标示不显示南北红绿灯时间倒计时nbyellow = 1;/标示显示南北黄灯时间倒计时dxrg = 0; /标示不显示东西红绿灯时间倒计时dxyellow = 0; /标示不显示东西黄灯时间倒计时 键盘扫描函数键盘扫描用以判断是否有按键按下,利用按键消抖可以有效地防止键抖。主要先判断哪个键盘按下,按下延时一段时间再弹起置状态标志位为1;若按键已弹起且状态标志位为1,则可以判断有触发按键动作,可实现相应按键的功能。由于键盘扫描函数是对13个按键的状态进行处理,因此本程序段只摘取了其中的一个状态进行解释说明。if(peakORnorm = 0) peakORnorm = 1;delay(3000);if(peakORnorm = 0) /高峰控制信号键按下 peakORnorm_down = 1;mode = 1; /模式1为高峰控制5.系统调试本系统调试成功。由于本系统的实物设计需要设计4个电路板,实现复杂,因此本系统只是利用仿真软件进行了仿真,在仿真过程中,三个灯显示的顺序在时间上遇到了一些问题,通过反复调试,最终问题得以顺利解决。另外,利用红外线自动检测车流量从而确定三个灯的显示时间才是最合理的,但红外线实现起来太复杂,所以本系统利用按键来实现,这在一定程度上实现了交通控制器的灵活控制,具有一定的应用价值。 红绿灯显示模块经过调试该模块可以使LED灯周期循环点亮,若某个方向上七段显示数码管在倒计时到0,则该方向上的LED灯变换到下一个显示状态。其中,在红灯和绿灯的转换过程中,黄灯亮5秒,用以提醒人们,下一个状态即将到来,黄灯的设计大大降低了违章行驶行为,在预防车祸方面也发挥了重要作用。另外,还可以根据各个路口车流量的大小,利用按键来调整红绿灯亮的时间,增加了系统的灵活性。图7 红绿灯显示图 按键模块经过调试可以通过触发按键,实现对系统的控制。本系统共设置11个按键,当按下模拟违章的开启按钮,喇叭会发出报警声,再按一次,则声音停止;当按下设定时间按钮,则可对三个灯点亮时间进行设置等等。图8 按键控制图结论本系统就是充分利用了AT89C51单片机系列来设计交通灯控制器,实现了能根据实际车流量通过AT89C51芯片的P3口设置红、绿灯燃亮时间的功能;红绿灯循环点亮,倒计时剩3秒时绿灯闪烁三次之后黄灯亮,倒计时剩5秒时黄灯闪烁警示(交通灯信号通过P0口输出,显示时间直接通过89C51的P3口输入到数码管);车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。系统不足之处不能控制行车的左、右转、以及自动根据车流改变红绿灯时间等。这是由于本身地理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现。通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是C语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。致谢为期一个学期的毕业设计终于接近尾声了,在整个毕业设计的过程当中,得到了老师们的精心指导和帮助,每当遇到问题时,老师们细致而又耐心的讲解,让我对自己更加自信,克服重重困难,最终顺利的完成了整个设计,在这短短的几个月里,不仅仅考察了大学五年自己所学要的东西,更重要的是把自己从课本里所了解的东西应用到实践应用中,检验了自己的能力。虽然有过成功,有过失败,有过欢笑,有过泪水,但是过程其实才是最重要的。通过本次毕业设计,我在陈付贵老师和白林峰指导老师的精心指导和严格要求下,获得了丰富的理论知识,并在设计过程中,翻阅大量的科技文献,针对设计内容的要求,对所学过的专业知识又认真细致的进行巩固和练习,在硬件和软件的组合上认真听取了老师们的意见,在很大程度上使这次设计顺利通过老师的审核和评定.在另一方面极大地提高了实践能力,并对当前电子领域的研究状况和发展方向有了一定的了解,单片机领域这对我今后进一步学习计算机方面的知识有极大的帮助。在此,我忠心感谢陈老师和白老师以及计科

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论