人人范文网 范文大全

实训交通信号灯控制系统

发布时间:2020-03-02 15:26:51 来源:范文大全 收藏本文 下载本文 手机版

交通信号灯控制系统

重点内容:

 LED显示的驱动电路设计和LED显示输出扫描程序  按键输入电路和按键扫描程序  时间中断的使用。

一、实例说明

有如图所示的街区十字路口,需要为十字路口设计一个交通灯控制系统,该系统的要求如下:东南西北每个方向各有一个红绿灯组,每个红绿灯组包含红黄绿三种颜色的信号灯。

 每天的23:00~次日凌晨的6:00,由于车流量较小,为了节省电能各个方向的红绿灯出于休息状态(只亮黄灯)。

 每天的6:00~23:00,红绿灯出于工作状态,两个互相垂直方向的绿灯交替点亮来控制交通。交通灯工作状态过程如后所示,在某一个时间段东南方向红灯亮,西北方向绿灯亮;经过一定的时间后,西北方向该为黄灯闪烁,此时东南方向保持红灯;西北方向红灯闪烁5秒后转为红灯,此时东南方向变为绿灯。依此东南方向的红绿灯和西北方向的红绿灯循环往复。

 交通信号灯控制系统提供了一个控制面板,交警可以通过该面板可以调整红灯和绿灯亮的时间间隔、控制交通信号灯控制系统的开关等,从而达到控制交通流量的目的。交通信号灯控制系统的控制面板如下图所示,该面板共有6个LED,每3个LED为一组,用于显示交通信号灯的点亮时长(单位为秒);面板上共有5个按键,用于控制交通灯控制系统的点亮时长和系统的开关。

二、硬件电路设计

1、LED输出电路

 本案例中共有6个LED,为了充分利用ARM微处理器的IO资源,我们采用扫描的方式。

 LED的输出电路如上图所示,为了使电路比较清晰,这里只画出了其中两个LED。每个七段码LED的a~g端口是并联,分别连接LPC2131的P1.

19、P1.20、P1.

21、P1.

22、P1.

23、P1.24和P1.25。而gnd端口各由一个管脚控制,6个七段码LED的gnd端分别连接LPC2131的P0.0、P0.1、P0.

2、P0.3、P0.4和P0.5。当需要点亮其中某一个七段码LED时,将对应的gnd端口电平拉低,a~g端口根据需要显示的数字给不同的电平。这种连接方式在某一特定时刻只能点亮其中一个七段码LED,而其他的七段码LED处于熄灭状态。

 为了让他们看上去是同时点亮并且能够显示不同的数值,我们利用人眼的视觉暂留对他们进行扫描,在一个比较短的始终周期内(0.01s左右)轮流点亮6个七段码LED。

2、按键电路

 本案例中的共有5个按键,如下图的控制面板所示,其中一个按键用来控制交通灯控制系统的开关,而其他四个按键用来调整红灯和绿灯的持续时间  按键电路如下图 所示,当没有任何按键被按下时,所有与按键连接的管脚为高电平;

当任意一个按键被按下时,相应按键连接的管脚上为低电平。通过判断那个按键连接的管脚为低电平,就可以判断哪个按键被按下。

3、信号灯显示控制电路

本案例中ARM微处理器驱动信号灯的原理图如图 所示,ARM微处理器管脚的电流驱动能力通常在几个uA左右,不能直接用来驱动继电器,因此首先要通过电流驱动电路进行电流放大,然后采用放大后的电流来驱动继电器。

各个ARM微处理器管脚控制的信号灯如图 8-7所示。每个管脚控制一个信号灯,当某管脚为低电平时,其所控制的信号灯熄灭;当某一管脚为高电平时,其所控制的信号灯亮。ARM微处理器程序通过控制这些管脚的电平就可以控制信号灯的亮灭。

三、软件设计

1、LED输出程序

LED显示函数的作用是将整型变量gtime和rtime的值显示在LED上,其中gtime和rtime都保证在0~999范围内,可以用3个LED来显示。LED显示函数的代码如下图所示。变量segid的值用来表示当前应该点亮6个七段码LED中的哪一个,segid每隔(1/120)秒变化一次,变化一个周期(0~5)需要0.05秒。

switch (segid){ case 0:IO0SET=SEGS_GND; IO0CLR=(int)(1

接下来程序根据digi的值计算七段码LED的a~g端的电平值,例如当dig=0时,表示当前显示的LED需要显示的数值为0,则应该点亮下中LED的b和c端。因此g~a对应的电平值为0000110,对应的十六进制值为0x06。

2、按键扫描程序

按键扫描函数主要作用是扫描控制面板上5个按键的状态,根据各个按键的不同功能做出相应的处理。

3、时间中断处理函数

本案例中时间中断处理函数有两个作用:

 产生LED扫描需要的间隔时间,由于控制LED显示输出的全局变量segid在每次时间中断发生时加1,当其值达到5时变回0重新循环。由于时间中断的周期为1/120秒,因此segid每0.05秒循环一个周期,也就是LED刷新的周期为0.05秒。

 控制交通灯亮的时间,变量time_cnt在0~11之间变化,循环周期为0.1秒。因此变量curtime每0.1秒变化一次。变量curtime在主函数中将用来与phase中的值比较,从而确定各个交通灯的状态。

4、主函数

主函数的作用是完成交通灯控制系统的整个任务循环,函数反复对输入按键进行扫描,如果有按键请求则进行处理。于此同时函数反复检测当前时间交通灯应该所处的状态,控制交通灯的输出,并更新LED的显示。

交通信号灯控制系统

交通信号灯控制系统

交通信号灯控制系统

交通信号灯模拟控制系统的设计

信号灯控制系统技术指标

微机原理交通信号灯控制系统设计报告

十字路口交通信号灯控制系统设计文献综述

基于单片机的交通信号灯模拟控制系统

交通信号灯英文翻译

交通信号灯论文

实训交通信号灯控制系统
《实训交通信号灯控制系统.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档