《交通灯控制系统设计》成人高考本科
时间:2022/11/04 编辑:admin 热度: ℃
《交通灯控制系统设计》成人高考本科
1.概 论
1.1研究该系统背景与意义
随着经济的增长和人口的增加,人们生活方式不断变化,人们对交通的需求不断增加。城市中交通拥挤、堵塞现象日趋严重,由此造成巨大的经济与时间损失。 资料显示,在我国北京市,当早晚交通高峰时,交叉路 口处的排队长度竟达1000多米,有的阻车车队从一个交叉路口延伸到另一个交叉路 口,这时一辆车为通过一交叉路口,往往需要半个小时以上,时间损失相当可观。我国是一个历史悠久、人口众多的国家,城市数量随着社会的发展不断增多。 随着城市化进程的大大加快,诱发的交通需求急剧增长,供需矛盾不断激化,严重 的交通问题也随之而来。人、车、路三者关系的协调,已成为交通管理部门需要解决的重要问题之一。城市交通控制系统是用于城市交通数据监测、交通信号灯控制 与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊,这一切要归功于城市交通控制系统中的交通灯控制系统。交通灯控制系统对于疏导交通流量、 提高道路通行能力,减少交通事故有明显效果,使城市交通得以有效管理。交通灯可以采用 PLC、单片机等控制方法。利用单片机实现对交通信号灯的实时控制,只要采用一块单片机,加上简单的接口与驱动放大电路,即可实现,具有成本低,可靠性高的特点
2.系统设计工作原理及总体设计
2.1系统控制原理
交通信号控制原理是按照一定的控制程序,在交叉路口的每个方向上通过红、黄、绿三色灯循环显示,指挥交通流,在时间上实施隔离。交通规则规定:红灯——停止通行,绿灯——放行,黄灯——清尾,即允许已过停车线的车辆继续通行,通过交叉路口。信号相位方案是指交通信号灯轮流给某些方向的车辆或行人分配交通权的一种顺序安排。我们把每一种控制(即对各进口道不同方向所显示的不同色灯的组合)称为一个信号相位。而一个相位又对应多个步伐,每一步伐对应该时刻不同灯色的状态。
路口的交通灯总在进行着一系列的相变以控制车辆的运动,一系列的相就组成了周期,如附表所示。交通灯优化控制问题,就是通过改变这些相的持续时间以及相邻路口交通灯的相的周期,使目标达到最优。
路口的交通灯总在进行着一系列的相变以控制车辆的运动,一系列的相就组成了周期,如附表所示。交通灯优化控制问题,就是通过改变这些相的持续时间以及相邻路口交通灯的相的周期,使目标达到最优。
2.2 系统设计方案
方案一:交通控制系统主要控制东西、南北,车道的交通,整个系统以STC89C516RC单片机为核心芯片,通过控制三色LED的亮灭来控制各车道的通行,上电时通过上电复位电路使系统进入运行状态。总体设计框图如图2.1所示:
方案二:采用标准STC89C516RC单片机为控制器,通行倒计时显示采用3位数码管;车道指示灯采用三色发光二极管,LED显示采用动态扫描,以节省端口。紧急车辆通行采用实时中断完成,识别方法采用手动按钮。按以上系统构架设计,单片机端口资源刚好满足要求。该系统具有电路简单,设计方便,显示亮度高耗电少,可靠性高,但是占用单片机资源太多了,整个框图设计如图2.2所示:
方案三:采用标准STC89C516单片机为控制器,通行倒计时、东西、南北车道通行指示采用单块LCD液晶点阵显示器。这种方案设计占用单片机的端口最少,硬件也最少,耗电也最少,虽然显示图案也精美,但由于亮度太暗,晚上还得开背光灯,所以较少采用。
通过以上综合分析可以看出,方案一具有综合设计优点,因此城市道口交通灯控制系统模型采用方案一设计。
方案二:采用标准STC89C516RC单片机为控制器,通行倒计时显示采用3位数码管;车道指示灯采用三色发光二极管,LED显示采用动态扫描,以节省端口。紧急车辆通行采用实时中断完成,识别方法采用手动按钮。按以上系统构架设计,单片机端口资源刚好满足要求。该系统具有电路简单,设计方便,显示亮度高耗电少,可靠性高,但是占用单片机资源太多了,整个框图设计如图2.2所示:
方案三:采用标准STC89C516单片机为控制器,通行倒计时、东西、南北车道通行指示采用单块LCD液晶点阵显示器。这种方案设计占用单片机的端口最少,硬件也最少,耗电也最少,虽然显示图案也精美,但由于亮度太暗,晚上还得开背光灯,所以较少采用。
通过以上综合分析可以看出,方案一具有综合设计优点,因此城市道口交通灯控制系统模型采用方案一设计。
2.3系统工作原理
采用单片机的I/O口P0口通过上拉电阻和交通灯相连接,P3.0、P3.1口接到数码管控制位上,控制数码管的显示,程序放在STC89C516RC单片机的ROM中,在十字路口的四组红、黄、绿交通灯中,由单片机的P1.0-P1.2 、P1.5-P1.7、P2.0-P2.2、P2.5-P2.7控制,由于交通灯为发光二极管且阳极通过限流电阻和电源正极相连,因此I/O口输出低电平时,与之相连的指示灯会亮,并通过数码管显示时间倒计时。I/O口输出高电平时,相应指示灯会灭。
2.4系统总体设计
整个系统的构成以STC89C516RC单片机为核心,由I/O口扩展,LED数码管显示,还有复位电路、时钟电路等组成。单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。它由单片机、晶振电路、复位电路等组成。
本系统交通灯控制规则如下:
1)系统设置四组红、黄、绿交通指示灯,并配置四队LED显示器。正常情况下两个干线上的红、黄、绿灯进行转换。
2)东西方向和南北方向交替通行,东西方向每次放行30秒,南北方向每次放行30秒。
3)绿灯亮表示可以通行,红灯亮表示禁止通行,每次绿灯变红灯前,黄灯亮5秒钟。
4)十字路口要有倒计时显示,以便人们更方便直观的把握时间,具体要求东西方向、南北方向通行时间及黄灯亮的时间均以秒为单位作减计数。
行车方向指示采用LED发光二极管,可有红、绿两种颜色指示放行与禁止,黄灯作为红绿转换的提示,形象直观。系统采用双数码管倒计时计数功能,最大显示数字99。
本系统交通灯控制规则如下:
1)系统设置四组红、黄、绿交通指示灯,并配置四队LED显示器。正常情况下两个干线上的红、黄、绿灯进行转换。
2)东西方向和南北方向交替通行,东西方向每次放行30秒,南北方向每次放行30秒。
3)绿灯亮表示可以通行,红灯亮表示禁止通行,每次绿灯变红灯前,黄灯亮5秒钟。
4)十字路口要有倒计时显示,以便人们更方便直观的把握时间,具体要求东西方向、南北方向通行时间及黄灯亮的时间均以秒为单位作减计数。
行车方向指示采用LED发光二极管,可有红、绿两种颜色指示放行与禁止,黄灯作为红绿转换的提示,形象直观。系统采用双数码管倒计时计数功能,最大显示数字99。
3.系统硬件设计
3.1交通灯通行模式
按交通灯控制规则,每个道口有红、黄、绿三种指示灯,交道口模型如图3.1所示:
两组LED数码管按照设置的通行时间(各路口默认的通行时间均为30s)进行倒计时,倒计时到5S时,绿灯变成黄灯,并各自进行红、黄、绿灯显示,共有两种通行方式分别为:
图3.2 通行方式一示意图 图3.3 通行方式二示意图
(1)东西向通行:倒计时时间为30s(通行时间),红绿灯状态为:东西通行:绿,南北禁行:红;如图3.2所示。
(2)南北向通行:倒计时时间为30s(通行时间),红绿灯状态为:南北通行:绿;东西禁行:红;如图3.3所示。
通行默认时间为30s,系统设置了任意更改功能,可以根据实际情况进行调整,以提高车辆通过率,缓减交通压力。在通行结束前5秒钟,黄灯亮直至结束。本设计选用LED发光二极管的红绿灯状态用来指示交通指示信息。绿色表示通行,红色则表示禁止通行,黄灯等待。所有指示信息一目了然。
两组LED数码管按照设置的通行时间(各路口默认的通行时间均为30s)进行倒计时,倒计时到5S时,绿灯变成黄灯,并各自进行红、黄、绿灯显示,共有两种通行方式分别为:
图3.2 通行方式一示意图 图3.3 通行方式二示意图
(1)东西向通行:倒计时时间为30s(通行时间),红绿灯状态为:东西通行:绿,南北禁行:红;如图3.2所示。
(2)南北向通行:倒计时时间为30s(通行时间),红绿灯状态为:南北通行:绿;东西禁行:红;如图3.3所示。
通行默认时间为30s,系统设置了任意更改功能,可以根据实际情况进行调整,以提高车辆通过率,缓减交通压力。在通行结束前5秒钟,黄灯亮直至结束。本设计选用LED发光二极管的红绿灯状态用来指示交通指示信息。绿色表示通行,红色则表示禁止通行,黄灯等待。所有指示信息一目了然。
3.2系统各模块说明
3.2.1时钟电路模块
时钟电路由一个晶体振荡器12MHZ和两个30pF的瓷片电容组成。时钟电路用于产生单片机工作所需的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地工作。其电路如图3.4所示:
3.2.2复位电路模块
电容在上接高电平,电阻在下接地,中间为RST。这种复位电路为高电平复位。其工作原理是:通电时,电容两端相当于是短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。其电路如图3.5所示:
3.2.3主控制系统模块
主控制器采用STC89C516RC,STC89C516RC 单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单 片机,指令代码完全兼容传统 8051 单片机,12 时钟/机器周期和 6 时钟/机器周 期可以任意选择。其特点如下:
(1)增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任 意选择,指令代码完全兼容传统 8051。
(2)工作电压:5.5V~3.3V(5V 单片机)/3.8V~2.0V(3V 单片机)。
(3)工作频率范围:0~40MHz,相当于普通 8051 的 0~80MHz,实际工 作频率可达 48MHz 。
(4)用户应用程序空间为 8K 字节,片上集成 512 字节 RAM 。
(5)通用 I/O 口 (32 个) 复位后为: , P1/P2/P3/P4 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。
(6) ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片。
(7)具有 EEPROM 功能、具有看门狗功能。
(8)共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2。
(9)外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒。
(10)通用异步串行口(UART) ,还可用定时器软件实现多个 UART 。
(11)工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)。
(1)增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任 意选择,指令代码完全兼容传统 8051。
(2)工作电压:5.5V~3.3V(5V 单片机)/3.8V~2.0V(3V 单片机)。
(3)工作频率范围:0~40MHz,相当于普通 8051 的 0~80MHz,实际工 作频率可达 48MHz 。
(4)用户应用程序空间为 8K 字节,片上集成 512 字节 RAM 。
(5)通用 I/O 口 (32 个) 复位后为: , P1/P2/P3/P4 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。
(6) ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片。
(7)具有 EEPROM 功能、具有看门狗功能。
(8)共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2。
(9)外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒。
(10)通用异步串行口(UART) ,还可用定时器软件实现多个 UART 。
(11)工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)。
3.2.4交通灯输出控制模块
道口交通灯指示采用红、黄、绿发光二极管进行提示,其图如图3.7所示。
当R=1000欧时,按公式A=(5-1.8)/R计算,电路中的电流大小应为A=3.2mA。由于每个路口的通行双向指示处理相同,因此每个端口应具有6.4mA的吸收电流能力。
当R=1000欧时,按公式A=(5-1.8)/R计算,电路中的电流大小应为A=3.2mA。由于每个路口的通行双向指示处理相同,因此每个端口应具有6.4mA的吸收电流能力。
3.2.5时间显示电路模块
考虑设计需要,我们在各个方向分别用二位数码管用来显示倒计时时间,构成交通提示信息,形象逼真。本系统使用数码管完成倒计时显示功能。以方向东西为为例,数码管显示的数值从绿灯的设置时间最大值往下减,每秒钟减1,一直减到0。然后又从红灯的设置时间最大值往下减,一直减到0。接下来又显示绿灯时间,如此循环。
系统共有1个二位的LED 数码管,分别放置在模拟交通灯控制板上四组交通灯中间。四个方向上都应该显示同样的内容,所以我们可以把它们同样对待,只用了一组数码管来模拟。也就是说各个方向的数码管个位(把数码管第二位定义为个位,第一位定义为十位)用一根信号线控制,十位用另一根信号线控制。
道口通行剩余时间采用红色7段数码管显示,采用共阴数码管,如用单片机P0口加上拉电阻驱动,P3.0/P3.1来控制数码管的位。其显示电路如图3.8所示:
系统共有1个二位的LED 数码管,分别放置在模拟交通灯控制板上四组交通灯中间。四个方向上都应该显示同样的内容,所以我们可以把它们同样对待,只用了一组数码管来模拟。也就是说各个方向的数码管个位(把数码管第二位定义为个位,第一位定义为十位)用一根信号线控制,十位用另一根信号线控制。
道口通行剩余时间采用红色7段数码管显示,采用共阴数码管,如用单片机P0口加上拉电阻驱动,P3.0/P3.1来控制数码管的位。其显示电路如图3.8所示:
3.2.6系统电源模块电路
由于该系统中 51 单片机及三极管工作电压均为 5V 电压,所以要保证系统稳定可靠的工作,需要设计一个可以稳定提供 5V 电压的供电系统。本设计采用外置5V稳压开关电源作为系统的供电电源,系统电源输入接口要加滤波电容以确保工作电压稳定。电源输出接口加上LED 电源指示灯,用来判定电源是否正常工作。该系统电源电路设计如图3.9所示:
3.2.7系统软件设计设计流程
软件总体设计及流程图见图3-1,主要完成各部分的软件控制和协调。本系统主程序模块主要完成的工作是对系统的初始化,发送显示数据,同时对按键进行扫描,等待外部中断,以及根据所需要的功能进行相应的操作。其流程图如图3.10~3.11所示:
图3.10 软件总体流程图 图3.11正常情况下交通灯控制流程
根据实际交通灯的变化情况和规律。假设一个十字路口为东南西北走向。初始状态1东西绿灯通车,南北红灯亮。过30s,转状态2,东西绿灯灭黄灯亮,南北红灯灭黄灯亮,过5s,再转状态3,南北绿灯通车,东西红灯亮。过30s,转状态4,南北绿灯灭黄灯亮,东西红灯灭黄灯亮,过5s,又循环至状态1。对于交通信号灯来说东西南北共四组灯,由于同一道上的两组的信号灯的显示情况是相同的,采用单片机内部的I/O口来控制12个信号灯。
图3.10 软件总体流程图 图3.11正常情况下交通灯控制流程
根据实际交通灯的变化情况和规律。假设一个十字路口为东南西北走向。初始状态1东西绿灯通车,南北红灯亮。过30s,转状态2,东西绿灯灭黄灯亮,南北红灯灭黄灯亮,过5s,再转状态3,南北绿灯通车,东西红灯亮。过30s,转状态4,南北绿灯灭黄灯亮,东西红灯灭黄灯亮,过5s,又循环至状态1。对于交通信号灯来说东西南北共四组灯,由于同一道上的两组的信号灯的显示情况是相同的,采用单片机内部的I/O口来控制12个信号灯。
4.系统调试分析流程
因本设计本身要求有稳定性高、免维护、抗干扰能力强等功能,系统调试除了验证数据处理的精度,确保判断的准确性外,同时必须确认各项功能的正常运行。本电路硬件设计中,用单片机的一个IO口控制各路交通灯的循环点亮。用同一芯片单片机的P0口来控制数码管的显示点亮。因此,在同一芯片中,所要接的线路比较多。在硬件的布局中,各位LED灯和数码管的布局比较固定化,集中分布在所控制的两个路口。因此,若采用双面PCB板的话,这个电路的布线比较容易实现。但是,现实水平中做双面板会出现一些焊点接触不良而导致电路调试过程不易实现。因此,决定使用单面板布线。单片面板的布线需要牺牲本设计电路板一部分实际电路的美观。印制电路板的设计是以电路原理图为根据,实现电路设计者所需要的功能。印刷电路板的设计主要指版图设计,需要考虑外部连接的布局、内部电子元件的优化布局、金属连线和通孔的优化布局、电磁保护、热耗散等各种因素。优秀的版图设计可以节约生产成本,达到良好的电路性能和散热性能。
4.1 系统实物制作
准备工作:采购万能板若干张,实物电路所需的各种元器件,还有其他的基本电子器件和制板工具。
(1)总制板工艺程序
1)先将所有元器件摆放到万能板上,确实各个原件的最有位置,原则是,既美观,又容易焊接。
2)把摆好位置的元器件焊到板子上,最好用焊台来完成。
3)根据原理图,把所有的连线连接起来,连接的导线,尽量用细一点的。
(2)制板心得:我们在制板过程中,
1)首先是PROTEL设计的时候出现的错误导致印制电路板制作错误。
2)其次是由于设计的理论和实际有误差导致无法实现目标。
3)焊接过程中出现了一些问题,比如焊跳线的时候,由于接线太多,而且是手工焊接,并且焊接设备不好,烙铁头高温下容易老化氧化和温度不可控制。因此导致焊盘脱落,原件烫伤等原因导致报废了好几块板子。此外,有些焊盘太小并且有损坏迹象,所以焊接很不方便。但为了不出现虚焊,却花了很长时间去焊,有些焊点并不是很美观。
4)焊接过程中,有时候焊锡会不小心将相邻的两根引线短路。所以,此次做板积累了一些经验,主要是,再次做板的时候一定要注意PCB的引线之间的距离不能设置太近。因为是手工制作,精度和密度都必须有一个自由度和能力所及的范围,并且考虑到手工制板的局限性和线路过细密导致的氧化和短路故障。拥有了这些宝贵的经验,相信今后制板,一定会完美保证电路的实现。
(1)总制板工艺程序
1)先将所有元器件摆放到万能板上,确实各个原件的最有位置,原则是,既美观,又容易焊接。
2)把摆好位置的元器件焊到板子上,最好用焊台来完成。
3)根据原理图,把所有的连线连接起来,连接的导线,尽量用细一点的。
(2)制板心得:我们在制板过程中,
1)首先是PROTEL设计的时候出现的错误导致印制电路板制作错误。
2)其次是由于设计的理论和实际有误差导致无法实现目标。
3)焊接过程中出现了一些问题,比如焊跳线的时候,由于接线太多,而且是手工焊接,并且焊接设备不好,烙铁头高温下容易老化氧化和温度不可控制。因此导致焊盘脱落,原件烫伤等原因导致报废了好几块板子。此外,有些焊盘太小并且有损坏迹象,所以焊接很不方便。但为了不出现虚焊,却花了很长时间去焊,有些焊点并不是很美观。
4)焊接过程中,有时候焊锡会不小心将相邻的两根引线短路。所以,此次做板积累了一些经验,主要是,再次做板的时候一定要注意PCB的引线之间的距离不能设置太近。因为是手工制作,精度和密度都必须有一个自由度和能力所及的范围,并且考虑到手工制板的局限性和线路过细密导致的氧化和短路故障。拥有了这些宝贵的经验,相信今后制板,一定会完美保证电路的实现。
4.2硬件调试
在设计过程中,实物交通灯控制系统的PCB电路板焊接工作量非常大,电路安装完成后,首先进行检查,即确认电路无虚焊,无短路,无断路,集成元件安装是否正确,之后进行电路功能模块的分级调试,根据电路功能逐级进行:通行方式功能调试:包括对两种通行方式控制调试,指示灯亮度和驱动电路调试;倒计时功能调试:数码管亮度调试;复位功能调试。
4.3软件调试
本系统的软件系统很大,选用一般的单片机通信C语言程序进行编写和调试。除了语法差错外,当确认程序没问题时,通过直接下载到单片机来调试。采取的是自下到上的调试方法,即单独调试好每一个模块,然后再连接成一个完整的系统,最后完成一个完整的系统调试。
4.4总体调试
系统做好后,进行系统的完整调试。主要任务是检验实现的功能及其效果并校正误差。
测试一开始,我们就发现了系统出现了一个问题:数码管不工作,没有时间显示。这与设计的要求完全不符。经多方查阅资料,问题可以有两个解决方法。其一,将硬件电路作修改,将数码管换成共阳极的数码管。这样数码管就可以正常进行时间显示了。其二,修改程序,让控制数码管段码的P0输出的是低电平。若采用修改硬件电路的方法的话,硬件电路就得作变动。已经布好的线也必须有相应的变动,操作起来比较麻烦。所以,我们采用了第二种方法。修改了程序电路中的段码代码。再次调试,按照设计要求的指标,系统数码管电路部分基本能按照预先设定的要求来进行倒计时的显示。亮度要求也基本符合预先设想。
测试一开始,我们就发现了系统出现了一个问题:数码管不工作,没有时间显示。这与设计的要求完全不符。经多方查阅资料,问题可以有两个解决方法。其一,将硬件电路作修改,将数码管换成共阳极的数码管。这样数码管就可以正常进行时间显示了。其二,修改程序,让控制数码管段码的P0输出的是低电平。若采用修改硬件电路的方法的话,硬件电路就得作变动。已经布好的线也必须有相应的变动,操作起来比较麻烦。所以,我们采用了第二种方法。修改了程序电路中的段码代码。再次调试,按照设计要求的指标,系统数码管电路部分基本能按照预先设定的要求来进行倒计时的显示。亮度要求也基本符合预先设想。
声明:优质内容创作不易,转载务必注明出处:http://www.nepuzs.com/hzgx/ccdx/1155.html
分享:
① 扫二维码:进行在线报名
② 报考攻略、高校推荐、专业测评
③ 赶紧扫一扫添加吧,学子们~