智能交通灯管理系统.docx
《智能交通灯管理系统.docx》由会员分享,可在线阅读,更多相关《智能交通灯管理系统.docx(26页珍藏版)》请在冰豆网上搜索。
![智能交通灯管理系统.docx](https://file1.bdocx.com/fileroot1/2023-6/8/ece83891-4519-4af7-aeca-a10d33f71631/ece83891-4519-4af7-aeca-a10d33f716311.gif)
智能交通灯管理系统
湖北省高等教育自学考试毕业论文
论文题目:
智能交通灯管理系统
主考学校:
武汉大学
专业:
电子信息工程技术
指导教师:
陈小桥
考生姓名:
魏超准考证号:
013510210535工作单位:
武汉职业技术学院
2012年08月31日
摘要
介绍一种基于AT89C51单片机的智能交通灯的设计方法,模拟定周期交通信号灯的工作状态。
该系统通过红外接收器接收信号实现特种车辆自动放行;通过霍尔车辆检测电路采集路况信号,经单片机处理后,分配各车道的绿灯时间,实现车流动态调节;左拐、右拐、直行及行人的通行指示灯采用了发光二极管,此外,还添加了盲人提示声音电路,方便盲人过人行道;最后利用KEIL软件和TKS仿真器对交通灯控制系统进行编程和仿真。
关键词:
交通灯;单片机;KEIL软件;TKS仿真
Abstract
onekindbasedontheAT89C51single-chipmicrocomputerintelligenttrafficlightdesignmethod,simulationofperiodictrafficsignallampworkingstate.ThesystemthroughtheinfraredreceiverforreceivingthesignaltoachievespecialvehicleautomaticreleasebyHolzer;vehicledetectioncircuitcollecttrafficsignal,whichisprocessedbythemicrocontroller,assigningeachlanegreentime,realizethedynamicregulation;turnleft,turnright,gostraightandpedestriantrafficindicatorlampusinglight-emittingdiodes,inaddition,alsoaddedtheblindpromptsoundcircuit,facilitatetheblindsidewalk;finallyusingKEILsoftwareandTKSemulatorfortrafficlightcontrolsystemprogrammingandsimulation。
Keywords:
trafficlights;singlechipmicrocomputer;KEILsoftware;TKSsimulation
引言1
第一章智能交通灯的总体设计.2
1.1智能交通灯的通行方案论证.8
1.2智能交通灯灯系统框图.8
1.3智能交通灯的工作原理.8
第二章智能交通灯硬件系统设计.7
2.1单片机说明8
2.2各模块电路29
2.374LS373和TC4511BP简介8
2.4八段LED数码管显示电路8
第三章智能交通灯软件系统设计9
3.1软件设计思路错误!
未定义书签
3.2程序设计流程错误!
未定义书签
第四章智能交通灯控制系统软件调制26
4.1TKS仿真器26
4.2集成开发环境KEIL错误!
未定义书签
4.3系统软件调试29
小结18
致谢词18
参考文献18
引言
由于我国经济的快速发展从而导致了汽车数量的猛增,大中型城市的城市交通,正面临着严峻的考验,从而导致交通问题日益严重,其主要表现如下:
交通事故频发,对人类生命安全造成极大威胁;交通拥堵严重,导致出行时间增加,能源消耗加大;空气污染和噪声污染程度日益加深等。
日常的交通堵塞成为人们司空见惯而又不得不忍受的问题,在这种条件下,结合我国城市道路交通的实际情况,开发出真正适合我们自身特点的智能信号灯控制系统已经成为当前的主要任务。
随着电子技术的发展,利用单片机技术对交通灯进行智能化管理,已成为目前广泛采用的方法。
本文采用了51系列单片机AT89C51为中心器件设计交通灯控制系统。
第一章智能交通灯的设计原理
1.1智能交通灯的方案论证
图2.1.1是一个典型的十字路口示意图。
从图中可知:
(1)东西方向和南北方向信号灯控制是中心对称的,即无论是主干道还是支干道两侧系统对同方向的信号灯控制是同步的
(2)人行道无论哪个方向,系统对两侧4个信号灯的控制也是同步的,且人行道的红绿灯变化和行车道的红绿灯变化应是一致的。
(3)通过对上面整体思路分析,可以用单片机P2口和P0口,锁存芯片和显示译码芯片的配合来实现控制LED丁和数码管。
通过锁存芯片实现单片机口的分时复用,简单易行,且编程简单,能实现数据的快速交换以及单片机的资源利用。
图2.1.1典型十字路口交通灯示意图
1.2智能交通灯系统框图
该交通灯控制系统有以下几个部分组成:
车辆检测电路、特种车
转换模块、单片机、显示时间电路,信号灯。
系统框图如图1.2所示
图1.2系统框图
1.3智能交通灯的工作原理
本系统运用单片机对交通灯控制系统实施控制,通过直接控制信号灯的状态变化,指挥交通的具体运行,运用了LED数码管显示倒计时以提醒行驶者,更添加了盲人提示音电路,方便视力障碍群体通行,更具人性化。
在此基础上,加入了特种车辆自动通行控制模块和霍尔车流量检测电路,经单片机进行具体处理,及时调整通行方向。
通过P0和P2用做输出显示控制口。
P0口通过锁存器芯片74LS373和显示译码器芯片TC4511BF分时复用控制LED数码管实现行车道上红绿灯规律变化。
P2口当作普通输出口直接控制人行道红绿灯控制规律变。
LED数码管通过静态显示方式实现倒计时读秒。
第二章智能交通灯硬件设计
2.1单片机说明
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
AT89C51单片机是美国ATME公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源:
4KB闪存、128BRAM、32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.25〜5.50V的电压工作范围和0〜24MHz工作频率,使用AT89C51单片机时无须外扩存储器。
因此,交通灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的软件组成的单个单片机。
2.1.1AT89C51单片机硬件结构
AT89C51是8051系列单片机的典型产品,是一种带4K字节闪存可编程可擦除只读存储器(FPERO—FlashProgrammableandErasableReadOnlyMemory)的单片机芯片,它采用静态CMOS工艺制造8位微处理器,最高工作频率位24MHZAT89C5惮片机包含中央处理器,程序存储器(RO)数据存储器(RAM,定时/计算器,并行接口,串行接口和中断系统等几大单元及数据总线,地址总线和控制总线等二大总线,如图2.1.1所示:
图2.1.1总线结构
现在说明如下:
(1)中央处理器(CPU
中央处理器(CPU是单片机芯片中最复杂,最核心的智能部件,是8为数据宽度的处理器,能处理8位二进制数据或代码。
CPU负责控制,指挥和调度整个单元系统协调的工作,用于完成运算和控制功能。
(2)数据存储器(RAM
AT89C51内部有256B的数据存储器RAM其中有128个8位数据存储单元和128个专用寄存器,他们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,不能用于存放用户数据。
(3)存储器(ROM)
AT89C51内部有4KB的制度程序存储器ROM用来存放程序或
程序运行过程中不会改变的原始数据
(4)中断系统
AT89C51共有5个中断源,其中2个用于外部中断,2个用于定时/计时器中断,1个用于串行口中断。
全部中断分为高级和低级2个优先级别。
(5)定时/计时器
AT89C51内部有两个16位的定时/计时器T0和T1,以实现定时或计数产生中断用于控制程序转向。
(6)串行接口
AT89C51内部含有1个全双工串行接口,以实现单片机和其他设备之间的串行数据传送。
(7)I/O口
AT89C51内部有4个8位并行I/O端口(PO,P1,P2和P3),可
以实现数据的并行输入和输出。
(8)时钟振荡电路
AT89C51内置最高频率达12Hz的时钟电路,但石英晶体和微调
电容需外接。
石英电路可为单片机产生时钟脉冲序列。
2.1.2AT89C51单片机的管脚说明
AT89C51单片机内部总线是单总线结构,即数据总线和地址总线
是公用的。
89C51有40条引脚,这40条引脚可分为I/O接口线,电源线,控制线,外接晶体线4部分。
89C51单片机为双列直插式
封装结构,引脚如图3.1.2所示
图3.1.289C51引脚分配图
VCC:
电源电压。
GND接地。
RST:
复位输入端,高电平有效。
P0口:
P0口为一个8位双向I/O口,每脚可吸收8TTL门电流。
P0口即可作地址/数据总线使用,又可以作为通用的I/O口使用。
当CPU访问片外存储器时,P0口分时先作低8位地址总线,后作双向数据总线,此时,P0口就不能再作I/O口使用了。
在访问期
间激活要使用上拉电阻
P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1
口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电
流,这是由于内部上拉的缘故。
P2口:
P2口为一个带有内部上拉电阻的8位双向I/O口,P2
口缓冲器可接收,输出4个TTL门电流,,P2即可作为通用的
I/O口使用,也可以作为片外存储器的高8位地址总线,与P0口配合,组成16位片外存储器单元地址。
P3口:
P3口是一个带有内部上拉电阻的8位准双向I/0口,可接收输出4个TTL门电流。
P3口除了作为通用的I/O口使用之外,每个引脚还具有第二功能,具体分配如表1.
表1具有第二功能的P3口引脚
端口引脚
第二功能:
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
/INTO(外中断0)
P3.3
/INT1(外中断1)
P3.4
T0(定时/计数器0外部输入)
P3.5
T1(定时/计数器1外部输入)
P3.6
/WR(外部数据存储器写选通)
P3.7
/RD外部数据存储器读选通)
ALE/PROG当访问外部程序存储器或数据存储器时,ALE(地
址锁存允许)的输出电平用于锁存地址的低8地位字节。
对F1ash
存储器编程期间,该引脚还用于输入编程脉冲(PRO)在平时,ALE以时钟振荡频率的1/6输出固定的正脉冲信号。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可
在SFR8EH地址上置0。
此时,ALE只有在执行MOVXMOVC旨令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN程序储存允许(PSEN输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
当访问外部数据存储器,没有两次有效的PSEN信号。
EA/VPP:
外部访问允许。
当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式LB1时,EA将内部锁定为RESET当EA端保持高电平时,此间内部程序存储器。
XTAL1和XTAL2反向振荡放大器的输入及内部时钟工作电路的输入。
2.2各模块电路221主控制系统
主控制器采用AT89C51的单片机,AT89C51是美国ATMEL公司生产的低电压、高性能CMOS8位单片机,具有丰富的内部资源:
4KB闪存、128BRAM32根I/O口线、2个16位定时/计数器、5个向量两级中断结构、2个全双工的串行口,具有4.25〜5.50V
的电压工作范围和0〜24MHz工作频率,使用AT89C51单片机时无须外扩存储器。
其P0口用于控制LED数码管实现车道红绿灯状态规律变化,P2口用于控制人行道红绿灯状态规律变化,定时器T0中断来控制交通
灯的正常工作。
定时器T1中断控制特殊车辆的通行时间;外部中断INT1用于紧急情况,流量控制和恢复等,外部中断INT0用于特种车辆通行处理。
图2.2.1主控制系统
2.2.2车检测电路
车检测电路作为智能交通系统的基本组成部分,在智能交通系统
中占有重要的低位。
为了能够根据交通十字路口双车道车流量自动调
节绿灯放行时间,我们可以在每车道等待线的前方都安装一个霍尔车辆检测传感器,当有一辆车通过时就会产生一个脉冲电路,霍尔车辆检测电路如图222所示。
图2.2.2车检测电路
2.2.3信号灯电路
绿一>黄一>红。
信号灯用来显示车辆通行状况,下面以一个十字路口为例,说明一个交通灯
的四种状态见图2.2.3。
每个十字路口的信号灯的的转换顺序为:
交通勾运行状态分析乂
图2.2.3交通信号灯运行状态
2.2.4倒计时显示电路
在交通信号灯的正上方安装一倒计时显示时间,其主要作用是提醒驾驶员灯色发生变化时,帮助驾驶员在“停止”和“通过”两者间作出合适的选择。
然而,采用数码管显示电路是一种显示倒计时电路的很好方法。
由于东往西方向和西往东方向显示的时间相同,南往北方向和北往南方向显示的时间也相同,所以只需要考虑数码管显示电路,数码管连接方法如图124所示。
图1.2.4数码管连接方法
2.2.5紧急转换开关电路
一般情况下交通灯按照车流量大小合理分配通行时间,按一定规律变化,但考虑紧急车通行车况,设计紧急通行开关,。
当按下紧急开关键是,通过外部中断INT1感应,通过P1.7口软件编程控制,系统实现车道和人行道红灯全部亮,禁止一切通行,LED数码管显示“8”。
下面简述单片机的中断原理。
1、Mcs—51的中断源
8051有5个中断源,它们是两个外中断INTO(P3.2)和INT1
(P3.3)、两个片内定时/计数器溢出中断TF0和TF1,—个是片内串行口中断TI或RI,这几个中断源由TCOh和scor两个特殊功能寄存器进行控制,其中5个中断源的程序入口地址如表2所示:
表2中断源程序入口
中断源的服务程序入口地址
中断源
入口地址
外中断0
0003H
定时/计数器0
000BH
外中断1
0013H
定时/计数器0
001BH
串行口中断
0023H
2、中断的处理流程
CPUP向应中断请求后,就立即转入执行中断服务程序。
不同的中
断源、不同的中断要求可能有不同的中断处理方法,但它们的处理流程一般都如下所述:
1)现场保护和现场恢复:
中断是在执行其它任务的过程中转去执行临时的任务,为了在执行完中断服务程序后,回头执行原先的程序时,知道程序原来在何处打断的,各有关寄存器的内容如何,就必须在转入执行中断服务程序前,将这些内容和状态进行备份——即保护现场。
中断开始前需将有关寄存器的内容压入堆栈进行保存,以便在恢复原来程序时使用。
中断服务程序完成后,继续执行原先的程序,就需把保存的现场内容从堆栈中弹出,恢复积存器和存储单元的原有内容,这就是现场恢复。
如果在执行中断服务时不是按上述方法进行现场保护和恢复现场,就会是程序运行紊乱,单片机不能正常工作。
2)中断打开和中断关闭:
在中断处理进行过程中,可能又有新的中断请求到来,这里规定,现场保护和现场恢复的操作是不允许打扰的,否则保护和恢复的过程就可能使数据出错,为此在进行现场保护和现场恢复的过程中,必须关闭总中断,屏蔽其它所有的中断,待这个操作完成后再打开总中断,以便实现中断嵌套。
3)中断服务程序:
既然有中断产生,就必然有其具体的需执行的任务,中断服务程序就是执行中断处理的具体内容,一般以子程序的形式出现,所有的中断都要转去执行中断服务程序,进行中断服务。
4)中断返回:
执行完中断服务程序后,必然要返回,中断返回就是被程序运行从中断服务程序转回到原工作程序上来。
在MCS-51单片机中,中断返回是通过一条专门的指令实现的,自然这条指令是中断服务程序的最后一条指令。
5)交通灯中的中断处理流程:
(1)现场保护和现场恢复:
有特殊车辆要通过时就要进行中断,在中断之前,先将交通灯中断前情况保护好,当中断执行后再恢复现场,包括信号灯和时间显示电路。
(2)中断打开和中断关闭:
为了使特殊车辆通行按一下打开中断开关就可以打开中断,关闭
中断开关就关闭中断。
(3)中断服务程序:
有中断产生,就必然有其具体的需执行的任务,中断服务程序就是执行中断处理的具体内容:
即如果南北方向有特殊车辆要求通过,南北方向转换为绿灯,东西方向为红灯;如果东西方向有特殊车辆要求通过,东西方向转换为绿灯,南北方向为红灯。
(4)中断返回:
执行完中断服务程序后,必然要返回,即回交通灯信号回到中断前状态,显示时间也和中断前一样。
2.2.6特种车辆自动通行电路
一般情况下交通灯都按车流量大小分配通行时间,按固有规律
变化,但有特殊车辆(如119、120)急需通行时,如何控制呢?
本文中设计紧急通行开关,当特种车辆到来时能自动关闭所有绿灯,让特种车辆通过。
设计中特种车辆可采用红外线发生器为发信器,用实
时中断来响应特种车的通行要求。
接收的红外信号通过内部的集成电路来进行放大、解调,由输出端的输出编码脉冲信号经过三极管反相放大送至接收器,解调模块再进行译码。
红外接收器采用的是一体化红外接收器,具有灵敏度高和抗干扰能力强的性质。
红外遥控接收电路原理框图如图226所示。
图2.2.6红外接收原理图
2.2.7盲人提示声音电路
为方便盲人通过行人道,在道口自动控制系统中设计了声音提示
电路,该声音控制电路与人行道控制灯的绿灯是同步的,当绿灯亮时
响一次,在结束通行前10s绿灯闪烁,期间盲人提示音会间隔响5次,每次1s。
盲人提示音采用的是悦耳、柔和的低音。
盲人提示音电路如图2.2.7所示
图227盲人提示音电路
228电源电路
整个系统采用的是+5V电压,因此采用不可调的3端稳压器件,
用LM7850就可以满足系统电源的要求。
LM7850内部是由基准电压回路、恒流源、过流保护、过压保护和短路保护回路等8部分组成的三
端集成稳压电源,且其低功耗,高效率,纹波系数小,输出电压稳定
2.374LS373和TC4511BP简介
2.3.174LS373简介
74LS373是一种带有三态门的8D锁存器,本设计应用74LS373
作为89C51的P0口地址锁存器,器管脚示意图如图3.6.2所示
图2.3.174LS373锁存器
其中:
0D-7D为8个输入端
0Q-7Q为8个输出端
LE为数据输入端:
当LE为“1”时,锁存器输出状态同输入状态;
当LE由“1”变“0”时,数据输入锁存器。
OE为输出允许端:
当OE为1时,三态门打开;当OE为0时,三态门关闭,输出高阻态。
2.3.2TC4511BP简介
TC4511BP是BCD七段LED锁存/译码/驱动器。
其驱动数码管,当使能端LE为低电平时,将加在A、B、C、D端的数据译成段驱动信号,经限流电阻送到数码管的段控制线上。
当使能端LE为高电平时,驱
动信号被锁存在TC4511BP的输出端,实现静态显示。
TC4511BP结构如图2.3.2所示。
D
Di1VM-€ab€de
图232TC4511BP结构图
2.4八段LED数码管显示电路
通常所说的LED显示器由7个发光二极管组成因此也称之为七
段LED显示器,其排列形状如图2.4所示。
此外,显示器中还有一个圆点型发光二极管(在图中以dp表示),用于显示小数点。
通过七个发光二极管亮暗的不同组合,可以显示多种数字、字母以及其他符号。
LED显示器中的发光二极管共有两种连接方法:
(1)共阳极接法
把发光二极管的阳极连在一起构成公共阳极。
使用时公共阳极接+5V。
这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。
(2)共阴极接法
把发光二极管的阴极连在一起构成公共阴极。
使用时公共阴极接地,这样阳极端输入高电平的段发光二极管就导通点亮,而输入低电平的则不点亮。
使用LED显示器时要注意区分这两种不同的接法。
为了显示数字或符号,要为LED显示器提供代码,这些代码是为显示字形的,因此称之为字形代码。
七段发光二极管,再加上一个小数点位,共计八段。
因此提供给LED显示器的字形代码正好一个字节。
各代码位的对应关系如表二
表二代码对应关系表
代码位
D7
D6
D5
D4
D3
D2
D1
DO
显示段
dp
g
f
e
d
c
b
A
第三章智能交通灯软件系统设计
3.1软件设计思路
软件设计应用单片机C语言编程,以其较好的可读性和可移植性很好的完成了本次设计任务。
程序设计上使用定时器0中断来控制交通灯的正常工作。
定时器1中断控制特殊车辆的通行时间;外部中断INT1用于紧急情况,流量控制和恢复等,外部中断INTO用于特种车辆通行处理。
3.2程序设计流程321定时器TO和T1中断程序
定时器TO中断来控制交通灯的正常工作,定时器T1中断控制特
殊车辆的通行时间。
定时器TO和T1中断程序如图3.2.1所示。
进入中断卩
g』
向卸寸器重新置数A
标志数减2
f
退出中断戏
图3.2.1定时器TO和T1中断程序
3.2.2特种车辆自动放行中断服务程序
当有特种车辆经过时,车中就发射红外线信号,其信号将被道口控制板上的红外信号接收器接收,并有一个低电平输出触发外中断。
特种车辆自动放行的中断流程图如图322所示。
图3.2.2特种车辆自动放行的中断流程图
3.2.3车辆检测中断服务程序
车辆检测电路主要是测量由于红灯而导致的滞留车队的长度,
因此在红灯结束时读入的车队长度才是真正的滞留车队长度。
本文选
取红灯还剩2s时读入路况信息。
车辆检测中断流程图如图3.2.3所
示。
图323车辆检测中断流程图
324主程序流程图
主程序主要是