智能交通灯控制系统 毕业设计说明书Word文档下载推荐.docx
《智能交通灯控制系统 毕业设计说明书Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《智能交通灯控制系统 毕业设计说明书Word文档下载推荐.docx(36页珍藏版)》请在冰豆网上搜索。
颜色也有活动(activity)的含意,要表达热或剧烈的话,最强是红色,其次是黄色。
绿色则有较冷及平静的含意。
因此,人们常以红色代表危险,黄色代表警觉,绿色代表安全。
而且,由于红光的穿透力最强,其他颜色的光很容易被散射,在雾天里就不容易看见,而红光最不容易被散射,即使空气能见度比较低,也容易被看见,不会发生事故。
所以我们用红色表示禁止。
黄色信号灯的发明者是我国的胡汝鼎,他怀着“科学救国”的抱负到美国深造,在大发明家爱迪生为董事长的美国通用电器公司任职员。
一天,他站在繁华的十字路口等待绿灯信号,当他看到红灯而正要过去时,一辆转弯的汽车呼地一声擦身而过,吓了他一身冷汗。
回到宿舍,他反复琢磨,终于想到在红、绿灯中间再加上一个黄色信号灯,提醒人们注意危险。
他的建议立即得到有关方面的肯定。
于是红、黄、绿三色信号灯即以一个完整的指挥信号家族,遍及全世界陆、海、空交通领域了。
中国最早的马路红绿灯,是于1928年出现在上海的英租界。
从最早的手牵皮带到20世纪50年代的电气控制,从采用计算机控制到现代化的电子定时监控,交通信号灯在科学化、自动化上不断地更新、发展和完善。
交通指挥灯是非裔美国人加莱特摩根在1923年发明的。
此前,铁路交通已经使用自动转换的灯光信号有一段时间了。
但是由于火车是按固定的时刻表以单列方式运行的,而且火车要停下来不是很容易,因此铁路上使用的信号只有一种命令:
通行。
公路交通的红绿灯则不一样,它的职责在很大程度上是要告诉汽车司机把车辆停下来。
开车的人谁也不愿意看到停车信号。
美国夏威夷大学心理学家詹姆斯指出,人有一种将刹车和油门与自尊相互联系的倾向。
他说:
驾车者看到黄灯亮时,心里便暗暗作好加速的准备。
如果此时红灯亮了,马上就会产生一种失望的感觉。
他把交叉路口称作“心理动力区”。
如果他的理论成立的话,这个区域在佛罗伊德心理学理论中应该是属于超我而非本能的范畴。
新式的红绿灯能将闯红灯的人拍照下来。
犯事的司机不久就会收到罚款单。
有的红绿灯还具备监测车辆行驶速度的功能。
最早的交通灯出现于一八六八年英国伦敦。
那时的交通灯只有红、绿两色,经改良后,再增加一盏黄色的灯,红灯表示停止,黄灯表示准备,绿灯则表示通行。
随着经济的发展,交通运输中出现了一些传统方法难以解决的问题。
道路拥挤现象日趋严重,造成的经济损失越来越大,并一直保持大比例的增长。
现在交通系统已不能满足经济发展的需求。
由于生活水平的提高,人们对交通运输的安全性及服务水平提出了更高的要求。
在交通中管理引入单片机交通灯控制代替交管人员在交叉路口服务,有助于提高交通运输的安全性、提高交通管理的服务质量。
并在一定程度上尽可能的降低由道路拥挤造成的经济损失,同时也减小了工作人员的劳动强度。
中国车辆数量不断增加,交通管制的工作量越来越大,利用计算机代替人进行高效交通管理是必然的发展趋势,而让计算机控制的交通灯拥有类似人类的感知智能,具有很强的现实意义,比如通过摄像机让交通灯控制系统获得视觉感知功能,就可以代替人类的眼睛,使系统根据所“看到”交通情况自适应改变管制策略,提高了交通管理的自动化水平,使得交通更高效、更顺畅。
289C51单片机的介绍
2.1MCS-51单片机的逻辑结构及信号引脚
图1MCS-51单片机的结构框图
2.2MCS-51单片机的逻辑结构
(1)中央处理器(CPU)
中央处理器简称CPU,是单片机的核心,完成运算和控制操作。
按其功能,中央处理器包括运算器和控制器两部分电路。
(2)运算器电路
功能:
单片机的运算部件,用于实现算术和逻辑运算。
(3)控制器电路
单片机的指挥控制部件,保证单片机各部分能自动而协调地工作。
(4)内部数据存储器
组成:
RAM(128×
8)和RAM地址寄存器等。
用于存放可读写的数据。
(5)内部程序存储器
ROM(4K×
8))和程序地址寄存器等。
用于存放程序和原始数据。
(6)定时器/计数器
80C51共有两个16位的定时器/计数器。
实现定时或计数功能,并以其定时或计数结果对单片机进行控制,以满足控制应用的需要。
(7)并行I/O口
MCS-51共有4个8位的I/O口(P0、P1、P2、P3)
实现数据的并行输入输出。
(8)串行口
MCS-51单片机有一个全双工的串行口。
功能;
以实现单片机和其它数据设备之间的串行数据传送。
(9)中断控制系统
80C51共有5个中断源,即外中断2个,定时/计数中断2个,串行中断1个。
全部中断分为高级和低级共两个优先级别。
(10)时钟电路
MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。
时钟电路为单片机产生时钟脉冲序列。
典型的晶振频率:
6MHz、11.0592MHz、12MHz。
(11)位处理器
位处理器称为布尔处理器。
以状态寄存器中的进位标志位C为累加位,可进行各种位操作。
(12)总线
总线:
连接计算机各部件的一组公共信号线。
分类:
地址总线、数据总线和控制总线。
作用:
减少了单片机的连线和引脚,提高了集成度和可靠性。
2.3MCS-51的信号引脚
80C51是标准的40引脚双列直插式集成电路芯片,引脚排列如图所示。
(1)信号引脚介绍
图280C51芯片引脚排列图
输入/输出口线
P0.0~P0.7P0口8位双向口线
P1.0~P1.7P1口8位双向口线
P2.0~P2.7P2口8位双向口线
P3.0~P3.7P3口8位双向口线
ALE地址锁存控制信号
a)在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。
如图所示。
图3单片机程序存储器扩展连接图
b)ALE是以六分之一晶振频率的固定频率输出的正脉冲,可作为外部时钟或外部定时脉冲使用。
·
/PSEN外部程序存储器读选通信号
在读外部ROM时/PSEN有效(低电平),以实观外部ROM单元的读操作。
/EA访问程序存储器控制信号
当/EA信号为低电平时,对ROM的读操作限定在外部程序存储器;
当/EA信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器。
RST复位信号
当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位操作。
XTAL1和XTAL2外接晶体引线端
当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;
当使用外部时钟时,用于接外部时钟脉冲信号。
VSS地线
Vcc+5V电源
(2)信号引脚的第二功能
“复用”即给一些信号引脚赋予双重功能。
第二功能信号定义主要集中在P3口线中,另外再加上几个其它信号线。
常见的第二功能信号
P3口线的第二功能
P3口8条口线都定义有第二功能,如表所示。
图4P3口的第二功能
EPROM存储器程序固化所需要的信号
编程脉冲:
30脚(ALE/PROG)
编程电压(25V):
31脚(/EA/Vpp)
备用电源引入
备用电源是通过9脚(RST/VPD)引入的。
当电源发生故障,电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。
说明:
a)第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾。
b)P3口线先按需要优先选用它的第二功能,剩下不用的才作为I/O口线使用。
(3)89C51的复位电路
8051的复位方式可以是上电复位,也可以是上电按键复位,见下图。
此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。
图5复位电路
2.48255芯片简介
8255可编程并行接口芯片简介:
8255可编程并行接口芯片有三个输入输出端口,即A口、B口和C口,对应于引脚PA7~PA0、PB7~PB0和PC7~PC0。
其内部还有一个控制寄存器,即控制口。
通常A口、B口作为输入输出的数据端口。
C口作为控制或状态信息的端口,它在方式字的控制下,可以分成4位的端口,每个端口包含一个4位锁存器。
它们分别与端口A/B配合使用,可以用作控制信号输出或作为状态信号输入。
8255可编程并行接口芯片方式控制字格式说明:
8255有两种控制命令字;
一个是方式选择控制字;
另一个是C口按位置位/复位控制字。
其中C口按位置位/复位控制字方式使用较为繁难,说明也较冗长,故在此不作叙述,需要时用户可自行查找有关资料方式控制字格式说明如表1:
D7
D6
D5
D4
D3
D2
D1
D0
图6
D7:
设定工作方式标志,1有效。
D6、D5:
A口方式选择
00—方式0
01—方式1
1×
—方式2
D4:
A口功能(1=输入,0=输出)
D3:
C口高4位功能(1=输入,0=输出)
D2:
B口方式选择(0=方式0,1=方式1)
D1:
B口功能(1=输入,0=输出)
D0:
C口低4位功能(1=输入,0=输出)
8255可编程并行接口芯片工作方式说明:
方式0:
基本输入/输出方式。
适用于三个端口中的任何一个。
每一个端口都可以用作输入或输出。
输出可被锁存,输入不能锁存。
方式1:
选通输入/输出方式。
这时A口或B口的8位外设线用作输入或输出,C口的4条线中三条用作数据传输的联络信号和中断请求信号。
方式2:
双向总线方式。
只有A口具备双向总线方式,8位外设线用作输入或输出,此时C口的5条线用作通讯联络信号和中断请求信号。
2.5串口电平转换芯片MAX232
MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电。
内部结构基本可分三个部分:
第一部分是电荷泵电路。
由1、2、3、4、5、6脚和4只电容构成。
功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。
第二部分是数据转换通道。
由7、8、9、10、11、12、13、14脚构成两个数据通道。
其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。
8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。
TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DP9插头;
DP9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。
第三部分是供电。
15脚DNG、16脚VCC(+5v)。
图7MAX232芯片各管脚解法图
3方案设计与论证
此交通灯方案实现了基本的交通工作原理,并且加入了禁左行车时间,有两种工作模式,白天的时候车流量比较大启动模式1,当到了晚上车流量相对少了启动模式2,这样就避免了晚上没车时候等候时间过长的因素。
3.1电源提供方案
为使模块稳定工作,须有可靠电源。
我们考虑了两种电源方案
方案一:
采用独立的稳压电源。
此方案的优点是稳定可靠,且有各种成熟电路可供选用;
缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。
方案二:
采用单片机控制模块提供电源。
改方案的优点是系统简明扼要,节约成本;
缺点是输出功率不高。
综上所述,我们选择第二种方案。
3.2显示界面方案
该系统要求完成倒计时、状态灯等功能。
基于上述原因,我们考虑了三种方案:
完全采用数码管显示。
这种方案只显示有限的符号和数码字苻,无法胜任题目要求。
完全采用点阵式LED显示。
这种方案实现复杂,且须完成大量的软件工作;
但功能强大,可方便的显示各种英文字符,汉字,图形等。
方案三:
采用数码管与点阵LED相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。
这种方案既满足系统功能要求,又减少了系统实现的复杂度。
权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。
3.3输入方案
题目要求系统能手动设灯亮时间、夜间模式处理,我们讨论了两种方案:
采用8155扩展I/O口及键盘,显示等。
该方案的优点是:
使用灵活可编程,并且有RAM,及计数器。
若用该方案,可提供较多I/O口,但操作起来稍显复杂。
直接在IO口线上接上按键开关。
因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用两个按键,分别是K1、K2
由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O口就可实现,且本身的计数器及RAM已经够用,故选择方案二。
4系统硬件设计
硬件设计是整个设计的基础,要考虑的方方面面很多,除了实现交通灯的基本功能外,主要还要考虑如下几个因素:
系统稳定度;
器件的通用性或易选购性;
软件编程的易实现性;
系统其他功能及性能指标;
因此硬件设计至关重要。
先从各功能模块的实现之歌进行分析探讨。
4.1总体设计
本设计一单片机为控制核心,采用单MCU结构,模块化设计,共分为以下几个功能模块:
单片机控制系统、键盘及状态显示、行车方向显示、和倒计时模块等。
单片机作为整个硬件系统的核心,他既是谐调整机工作的控制器,又是数据处理器。
它由单片机、时钟电路、复位电路等组成。
行车方向指示灯采用三种颜色的LED发光管,分别为红、黄、绿,红和绿指示禁止与放行,形象直观。
键盘采用按键。
分别控制模式1和模式2。
系统采用单数码管倒计时功能,最大显示数字为99。
有好的人机界面、灵活的控制方式、优化的物理结构以及丰富的功能是本设计的亮点。
图8系统总体设计框图
4.2各功能模块硬件设计及实现
4.2.1交通灯四种通行模式及行车方向指示
按交通灯控制规则,每个街口有左拐、直行、等待、三种指示灯。
交道口模型图:
图9交道口模型图
4个LED灯按照设置的通行时间变化,LED显示南北、和东西方向的等待时间开始南北方向为60秒,而东西方向为40秒就行倒计时,共有四种通行方式,分别为
图10a通行方式一图10b通行方式二
图10c通行方式三图10d通行方式四
图11a模式一下的通行方式一图11b模式一下的通行方式二
图11c模式一下的通行方式三图11d模式一下的通行方式四
当处于模式1时:
通行方式一:
倒计时时间为60秒(等待时间),红绿灯状态:
只限东西方向左拐,所以南北方向为红,东西方向左拐LED灯亮,持续10秒钟。
如图9b和图10b。
通行方式二:
倒计时时间为50秒(等待时间),红绿灯状态:
东西方向直行,南北方向禁行,所以南北方向为红灯,东西方向直行LED灯亮,持续50秒。
如图9a和10a。
通行方式三:
倒计时时间为40秒(等待时间),红绿灯状态:
只限南北方向左拐,所以东西方向为红灯,南北方向左拐LED灯亮,持续10秒钟。
如图9d和图10d。
通行方式四:
倒计时时间为30秒(等待时间),红绿灯状态:
南北方限制性,东西方向禁行,所以东西方向为红灯,南北方向直行LED灯亮,持续30秒。
如图9c和10c。
通行方式二和四,在通行还剩五秒的时候,这是黄灯开始工作,绿灯在倒计时还剩5秒的时候灭,然后黄灯开始闪烁,提醒司机快红灯了。
当处于模式2时:
通行方式五:
如图9b。
通行方式六:
如图9a。
通行方式七:
倒计时时间为20秒(等待时间),红绿灯状态:
如图9d。
通行方式八:
倒计时时间为10秒(等待时间),红绿灯状态:
如图9c。
通行方式六和八,在通行还剩五秒的时候,这是黄灯开始工作,绿灯在倒计时还剩5秒的时候灭,然后黄灯开始闪烁,提醒司机快红灯了。
4.2.2键盘与状态显示及其实现
键盘在本设计中用于更换红绿灯工作模式的手动控制装置,以及复位时间,起到了不可或缺的重要作用。
我们选用两个按钮来作为控制装置,分别为K1,K2,当按下K1启动模式1,当按下K2启动模式2。
独立式是一组相互独立的按健,这些按健可直接与单片机的1/O口连接,即每个按健独占一条口线,接口简单。
独立式键盘因占用单片机的硬件资源较多,只适合按键较少的场合。
图12键盘
4.2.3数码管显示电路
数码管在其中要加相应大小的上拉电阻,上拉电阻的作用就是增大电流,是数码管更亮,在此设计中,由于I/O接口数量足够,所以采用数码管静态显示方法,这样虽然浪费I/O接口,但是本设计条件允许,并且使软件设计更简单,更容易。
采用的数码管为共阴极,所用公共端接地。
数码管是一种半导体发光器件,其基本单元是发光二极管。
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);
按能显示多少个“8”可分为1位、2位、4位等等数码管;
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。
共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
图13数码管显示电路
图中的电阻为上拉电阻。
LED显示器中的发光二极管共有两种连接方法:
共阳极接法
把发光二极管的阳极连在一起构成公共阳极。
使用时公共阳极接+5V。
阴极端输入低电平的段发光二极管导通点亮,输入高电平的则不点亮。
共阴极接法
把发光二极管的阴极连在一起构成公共阴极。
使用时会共阴极接地,阳极端输入高电平的段发光二极管导通点亮,输入低电平的则不点亮。
图14LED显示器
用LED显示器显示十六进制数的字型代码如下表所示:
显示数值
dopgfedcba
驱动代码(16进制)
00111111
3FH
1
00000110
06H
2
01011011
5BH
3
01001111
4FH
4
01100110
66H
5
01101100
6DH
6
01111100
7DH
7
00000111
07H
8
01111111
7FH
图15数码管驱动代码表
4.2.4交通灯系统硬件电路图(见附一)
5系统软件设计
硬件平台结构一旦确定,大的功能框架即形成。
软件在硬件平台上构筑,完成各部分硬件的控制和协调。
系统功能是由软硬件共同实现的,由于软件的可伸缩性,最终实现的系统功能可强可弱,差别可能很大。
因此,如那件事本系统的灵魂。
软件采用C语言,不仅易于编程和调试,也可减少软件故障率和提高软件的可靠性。
同时,对软件进行全面测试也是检验错误排除故障的重要手段。
由于变成多涉及到数值运算,比较复杂,这里我们选择移植性好、结构清晰、能进行复杂运算的C语言来实现编程。
5.1软件总体流程图
软件总体设计及流程图见图16,主要完成各部分的软件控制和协调。
本系统主程序模块主要完成的工作是对系统的初始化,包括发送显示数据,LED的初始值设定,等待外部中断,以及根据所需要的功能进行相应的操作。
其流程图如图15所示。
图16系统流程图
主程序比