基于单片机的智能交通灯毕业设计Word格式文档下载.docx
《基于单片机的智能交通灯毕业设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的智能交通灯毕业设计Word格式文档下载.docx(36页珍藏版)》请在冰豆网上搜索。
4.1交通灯规则方案.........................................................4
4.1.1相位的概念...........................................................4
4.1.2交通灯状态...........................................................4
4.1.3高低峰分时管理机制..................................................6
4.2软件编程..............................................................8
4.3硬件设计部分..........................................................9
4.3.1单片机系统..........................................................9
4.3.2交通灯演示系统......................................................12
4.3.3双电源供电电路......................................................12
4.3.4中断系统............................................................14
5系统调试................................................................14
5.1断电调试..............................................................14
5.2通电调试..............................................................15
5.3基本要求部分的测试与分析..............................................15
6结论................................................................15
致谢..................................................................16
参考文献...............................................................17
英文摘要...............................................................18
附录一系统主板电路.......................................................19
附录二程序清单...........................................................20
附录三系统实物图.........................................................36
成绩评定表
1.前言
1.1交通灯的历史和现状
当今,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有效的手段。
但这一技术在19世纪就已出现了。
1858年,在英国伦敦主要街头安装了以燃煤气为光源的红,蓝两色的机械扳手式信号灯,用以指挥马车通行。
这是世界上最早的交通信号灯。
1868年,英国机械工程师纳伊特在伦敦威斯敏斯特区的议会大厦前的广场上,安装了世界上最早的煤气红绿灯。
它由红绿两色旋转式方形玻璃提灯组成,红色表示“停止”,绿色表示“注意”。
1869年1月2日,煤气灯爆炸,使警察受伤,遂被取消。
电气启动的红绿灯出现在美国,这种红绿灯由红绿黄三色圆形的投光器组成,1914年始安装于纽约市5号大街的一座高塔上。
红灯亮表示“停止”,绿灯亮表示“通行”。
1918年,又出现了带控制的红绿灯和红外线红绿灯。
带控制的红绿灯,一种是把压力探测器安在地下,车辆一接近红灯便变为绿灯;
另一种是用扩音器来启动红绿灯,司机遇红灯时按一下嗽叭,就使红灯变为绿灯。
红外线红绿灯当行人踏上对压力敏感的路面时,它就能察觉到有人要过马路。
红外光束能把信号灯的红灯延长一段时间,推迟汽车放行,以免发生交通事故。
信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
1968年,联合国《道路交通和道路标志信号协定》对各种信号灯的含义作了规定。
绿灯是通行信号,面对绿灯的车辆可以直行,左转弯和右转弯,除非另一种标志禁止某一种转向。
左右转弯车辆都必须让合法地正在路口内行驶的车辆和过人行横道的行人优先通行。
红灯是禁行信号,面对红灯的车辆必须在交叉路口的停车线后停车。
黄灯是警告信号,面对黄灯的车辆不能越过停车线,但车辆已十分接近停车线而不能安全停车时可以进入交叉路口。
本设计的单片机控制交通灯就是基于信号灯。
1.2单片机相关介绍
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:
中央处理器、存储器和I/O接口电路等。
因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。
单片机经过1、2、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引脚的多功能化,以及低电压低功耗。
本设计选用了市面上较为常见的STC89C52单片机,STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在线系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
STC89C52的管脚图如图1所示。
图1STC89C52管脚图
1.3课题意义
使用单片机作为本设计的控制方案主要是考虑到其低廉的成本和易学易用的特性,相较于类似ARM这类性能更为强大的控制方案,单片机的性能并非其优势所在。
但是如何充分利用单片机已有的功能进行最大化的开发才是本设计的重点。
总的来说,本设计意义有如下4个方面:
(a).对单片机这一成熟的解决方案在交通灯领域的应用进行研究和开发;
(b).探究分时管理系统在交通灯系统中的应用,对分时管理系统的C语言算法进行开发。
举一反三,延伸到其他类似领域的应用。
(c).探究全新的交通灯管理系统;
(d).建立不间断电源在实际应用领域的具体模型和电路结构。
2课题内容
本课题的主要内容包括如下几个方面:
(a).设计交通灯状态的管理方案;
(b).设计单片机最小系统和周边电路;
(c).设计交通灯系统、不间断供电系统以及中断系统的电路结构;
(d).设计整个系统的电路分布和接线;
(d).使用C语言编写整个系统运行所需要的程序,重点是分时管理系统和紧急中断系统的程序。
3方案比较、设计和论证
3.1供电方案
为使模块稳定工作,须有可靠电源。
本设计考虑了两种电源方案:
方案一:
采用独立的稳压电源。
此方案的优点是稳定可靠,且有各种成熟电路可供选用;
缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。
方案二:
采用单片机控制模块提供电源。
本方案的优点是系统简明扼要,节约成本;
缺点是输出功率不高。
考虑到实际情况和电路的简洁,本设计采用了第二套方案,同时在考虑到突发断电的情况,还增加了一个后备电源,在打开后备电源的时候,如果主电源断电,后备电源瞬间接通继续供电,这里会利用到二极管的单向导电性。
3.2显示界面方案
本设计涉及到倒计时、状态灯等功能。
基于功能需求,本设计考虑如下三个方案:
完全采用数码管显示。
这种方案只显示有限的符号和数码字符,无法胜任功能需求。
完全采用点阵式LED显示。
这种方案实现复杂,且须完成大量的软件工作;
但功能强大,可方便的显示各种英文字符,汉字,图形等。
方案三:
采用数码管与点阵LED相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。
这种方案既满足系统功能要求,又减少了系统实现的复杂度。
3.3输入方案
考虑到紧急情况和具体现场的情况,本设计考虑两种方案:
采用8155扩展I/O口及键盘,显示等。
该方案的优点是:
使用灵活可编程,并且有RAM,及计数器。
若用该方案,可提供较多I/O口,但操作起来稍显复杂。
直接在I/O口线上接上按键开关。
该方案优点是:
编程更加简洁,使用更加简单,且成本更低。
缺点就是功能有限
综合考虑本设计的实际需要,在使用输入的时候不需要过于复杂的功能,故采用方案二。
4系统设计
4.1交通灯规则方案
本设计的交通灯以十字路口为模型,在实现基本的功能前提下增加了高低峰分时管理机制和人工干预机制。
4.1.1相位的概念
为保证交通系统的严谨性和公平性,本设计规定“相位”概念。
相位的定义如下:
在单个十字路口,整个状态周期每个绿灯亮起的时间为一个固定值。
相位的意义在于在一个循环状态周期内,根据每个路口车流量大小可以分配适时适当的绿灯时间以保证时间的充分利用,保证车流大的干道可以通过足够多的车辆,车流小的干道不用浪费时间。
从总体上提升系统的效率。
4.1.2交通灯状态
为方便说明交通灯状态,交通灯系统的示意图如图2所示。
如图2,交通道路系统是由常见的双车道加人行道组成,由南向北行驶的车辆所看的交通灯是北路口的车行道交通灯,由北向南的车辆所看的交通灯是南路口的车行道交通灯,由西向东行驶的车辆所看的交通灯是东路口的车行道交通灯,由东向西行驶的车辆所看的交通灯是西路口的车行道交通灯。
现规定如下状态:
S1:
南北方向车辆通行,东西方向、南左转到西、北左转到东、西左转北、东左转南禁行,东西方向人行道通行、南北方向人行道禁行。
S1状态如图3所示。
图2交通灯示意图
图3S1状态示意图
S2:
东西方向车辆通行,南北方向、南左转到西、北左转到东、西左转北、东左转南禁行,南北方向人行道通行、东西方向人行道禁行。
S2状态如图4所示。
S3:
南左转西、北左转东车辆通行,南北方向、东西方向、西左转北、东左转南车辆禁行,南北方向、东西方向人行道禁行。
S3状态如图5所示。
S4:
西左转北、东左转南车辆通行,南北方向、东西方向、南左转西、北左转东车辆禁行,南北方向、东西方向人行道禁行。
S4状态如图6所示。
图4S2状态示意图
图5S3状态示意图
S5:
全红灯,紧急事件状态。
S5状态如图7所示。
4.1.3高低峰分时管理机制
本设计为提升交通灯系统效率,设置了高低峰分时管理机制。
高低峰分时定义如下:
高峰时段:
8点到10点,一般为上班上学出行的高峰期,18点到20点,一般为下班放学出行高峰期,此时主干道车流量高于次干道的车流量;
图6S4状态示意图
图7S5状态示意图
低峰时段:
除高峰时段的其他时段。
在高峰时段,采取增加主干道绿灯通行时间,减少次干道绿灯通行时间以最大限度的通过车辆。
在低峰时段,采取减少主干道绿灯通行时间,增加次干道绿灯通行时间以平衡通过车辆。
高低峰时段状态如表1所示。
表1高低峰时段状态表
S1
S2
S3
S4
低峰时段
高峰时段
南北向车行道绿灯时长20s
南北向车行道绿灯时长25s
东西向车行道绿灯时长15s
东西向车行道绿灯时长10s
南左转西,北转东绿灯时长10s
东左转南,西左转北绿灯时长10s
在高低峰两个时段中,全部车行道绿灯的总和都为55秒,即相位都为55s。
在发生突发事件的时候启动紧急状态S5,全部红灯亮。
这种状态主要适用于例如救护车,军车执行任务时候使用。
状态转换图如图8所示。
图8状态转化图
4.2软件设计
在本次设计中,采用了C语言作为程序编程的语言。
相较于C语言,汇编语言的机器代码生成效率很高但可读性却并不强,复杂一点的程序就更是难读懂,而C语言在大多数情况下其机器代码生成效率和汇编语言相当,但可读性和可移植性却远远超过汇编语言,而且C语言还可以嵌入汇编来解决高时效性的代码编写问题。
对于开发周期来说,中大型的软件编写用C语言的开发周期通常要小于汇编语言很多。
综合以上C语言的优点,本设计在编程的时候选择了C语言。
本设计在编程环境上也选择了KeilμVision2.0。
这款软件支持众多不同公司的MCS51架构芯片,它集编辑、编译、仿真为一体,同时还支持PLM、汇编和C语言的程序设计,界面友好、简单易学,在调试程序。
软件仿真方面都有很强大的功能。
在初期的软件调试阶段,KeilμVision会提供非常便利的环境。
在没有突发事件按钮和高低峰切换按钮都没有按下时交通灯的执行预定方案。
预定程序执行方案流程图如图9。
根据本设计交通灯的模型和实现的功能,程序流程图如图10所示。
图9预定程序执行方案流程图
4.3硬件设计部分
根据本设计交通灯的模型和实现的功能,硬件部分可以分为以下两个大的系统:
单片机系统、交通灯演示系统、双电源供电系统、中断系统。
整个系统的硬件架构图如图11。
4.3.1单片机系统
本设计单片机主要是用于控制交通灯的演示系统,故只需要单片机最小系统即可完成。
单片机的最小系统是指能够驱动单片机工作的最小电路。
此电路由单片机、时钟电路、电源、复位电路4个组成部分组成。
图12为单片机最小电路的电路图。
其中,复位电路如图13。
单片机复位电路原理是在单片机的复位引脚rst上外接电阻和电容,实现上电复位,而复位时间是(时钟周期=12×
振荡周期,振荡周期=1/f),这个时间只能大不能小,具体数值可以由rc电路计算出时间常数。
图10主程序流程图
图11系统总架构图
图12STC89C52最小系统图
图13复位电路图
单片机复位后各寄存器的状态:
A=00H,表明累加器已被清零;
PSW=00H,表明选寄存器0组为工作寄存器组;
SP=07H,表明堆栈指针指向片内RAM07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中;
Po-P3=FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出;
IP=×
×
00000B,表明各个中断源处于低优先级;
IE=0×
00000B,表明各个中断均被关断;
时钟电路如图14所示。
时钟电路中最为重要的就是晶振,晶振的作用是为系统提供基本的时钟信号。
晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。
在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。
高级的精度更高。
图14时钟电路图
通常一个系统共用一个晶振,便于各部分保持同步。
晶振结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振的提供的时钟频率越高,那单片机的运行速度也就越快。
4.3.2交通灯演示系统
根据功能,交通灯的演示系统从功能上则分为:
倒计时电路、红绿灯功能电路。
交通灯演示系统电路图如图15所示。
倒计时电路主要是由双位共阴数码管和74HC573N驱动模块组成,控制信号通过单片机的端口P1口进行信号的传输。
倒计时电路负责的是显示红绿灯持续显示的时间。
当绿灯或者红灯持续显示时,数码管显示该状态的持续时间,在黄灯闪烁显示时,起到倒计时秒数的作用。
红绿灯功能电路主要是由各色的发光二极管和74HC573N驱动模块组成,控制信号跟数码管一样都是通过P1口进行传输。
红绿灯电路负责的是各个车行道和人行道通行状态的显示。
4.3.3双电源供电电路
供电电路由主电源和备用电源组成。
主电源主要是由变压器、6A整流桥、2颗1000μF电容以及7805三端稳压管组成。
这个部分为系统提供主要的供电,输出电压为5V直流。
备用电源主要是由4位的5号电池盒组成。
这个部分在主电源断电时能够几乎瞬时的为系统提供电源,输出电压也是6V直流。
该电源直接接到单片机的电源端。
图15交通灯演示系统电路图
备用电源存在的意义就在于,如果主电源一旦断电的话能够及时的提供系统所需要的电力,以保证整个系统在主电源断电的时间内依然能够正常的工作。
在实际的应用过程中,备用电源可以根据需要设置一个合适的容量,本设计出于演示的需要就只提供了4颗5号电池为载体的备用电源。
主电源和备用电源的切换功能电路如图16所示。
该切换电路的原理是根据二极管的单向导电性。
单向导电性是指二极管的PN结加正向电压时,电阻值很小,PN结导通;
加反向电压时,电阻值很大,PN结截止。
当主电源正常工作时,由于二极管处于截止状态,由主电源供电,当主电源突然断开时,二极管导通,由电池组供电。
此处选用双二极管串联工作原因是:
当选用一个时,
图16主电源和备用电源切换功能电路
假设二极管处于截止状态,此时二极管阴极电位为5V,阳极电位为6V,所以电压差为1V,此时二极管一定处于导通状态,所以假设不成立。
当主电源工作时电池组也提供电源,这会造成两个不同电压的电源并联,造成干电池组给主电源充电。
而当选用两个二极管串联时,假设二极管处于截止状态,此时电压差为0.5V,0.5V<
0.7V二极截止,假设成立。
而当主电源断开时,能提供电压为6V减去2个二极管的压降为4.6V,此电压能保证单片机正常工作。
4.3.4中断系统
中断系统主要是负责高低峰方案和紧急方案的切换。
电路图如图17所示。
图17中断系统
5系统调试
5.1断电调试
为安全起见,防止硬件烧坏,首先进行断电调试,用万用表检测系统是否有短路现象,再检查严原理是否正确,各个线路的电平是否正常。
经检测,未出现短路现象以及各个电平都正常。
5.2通电调试
(a).关掉交流电源开关,用万用表直流电压档测量稳压输出电压,测量结果只有4.2V,用12V电源直接接入7805输入端,测量输出电压达到4.99V。
经检查分析为稳压芯片7805输入端电容没有接入,输入电压变化太大,造成7805无法稳压。
经处理问题解决。
(b).检查系统时钟是否正常工作,用万用表直流电压档测量XTAL1与AXTAL2两端间的电压,检测到电压若为2.5V左右,则视为正常工作。
(c).检查复位电路是否正常工作。
(d).检查数码管显示和LED灯是否正常。
5.3基本要求部分的测试与分析
(a).系统上电后,显示交通灯基本状态,按中断按键,中断正常,直接进入S5状态,按复位按键,整个系统复位成功。
(b).按高低峰切换按键,系统即时切换到高峰时段方案,再按下高低峰切换按键,系统即时切换到低峰时段方案,最后按下高低峰按键,系统重新进入预定流程。
(c).在未进行任何的中断和复位操作时,交通灯按照预定流程进行,在高低峰两个设定时段内变化。
6结论
本文探究了单片机在当今智能交通方面的应用。
相对于其他解决方案来说,单片机具有成本低廉,通用性高,维护简单,软件灵活,成熟度高等优势。
但是,单片机发展到现在也有存储空间较小、下游方案较少等局限性。
本设计在实现相应功能的时候主要是考虑到现有的条件,采用成熟度高的STC89C52作为CPU的解决方案,同时用LED灯和双位数码管作为显示模块,软件则使用了移植性好的C语言。
从功能需求上来看,已经能够满足实际需要。
供电