基于VHDL的交通灯控制器的设计
一 、设计目的
1、 掌握计数器、分频器、译码器的工作原理和设计方法; 2、 掌握数码管的动态扫描译码显示的工作原理和设计方法; 3、 掌握交通灯控制器的设计方法;
4、 掌握在EDA开发软件QuartusII环境下基于FPGA/CPLD的数字系统设计方法,掌握该环
境下系统的功能仿真、时序仿真、管脚锁定和芯片下载的方法。 二 、概述
在城市的的十字路口处都设置有交通信号灯控制系统,这个系统由绿、黄、红信号灯指挥十字路口车辆和行人的正常通行。其示意图如下所示:
次 要 支 道
主要干道
S 主要干道 次要支道 三 、设计任务与要求
设计一个主要干道和次要支道交叉路口处的交通信号灯控制器,其技术要求如下: 1、要求主要干道和次要支道上各具有绿、黄、红三色信号灯,用来指示车辆的允许通行或禁止通行,同时设有计时、译码及显示电路,显示定时器的定时状态。
2、如果只有一个方向有车时,则保持该方向畅通;当两个方向都有车时, 主要干道和次要支道交替通行, 但主要干道通行的时间要比次要支道长一些。设主要干道每次通行的时间为60秒,即主要干道每次绿灯亮的时间为60秒;次要支道上每次通行时间为30秒,即次要支道上绿灯亮的时间为30秒。
3、要求主要干道或是次要支道上绿灯亮足规定的时间后,要求黄灯先亮5秒钟后红灯才能亮,然后才能交换通行车道。 四、系统框图及组成
系统主要由控制器和处理器两部分组成,控制器接受外部系统时钟信号。处理器由定时器和译码显示器组成。定时器能向控制器发出5秒、30秒和60秒的定时信号,译码器在控制器的控制下,改变交通灯的信号。根据上述要求画出系统框图如下:
AG AY AR BG BY BR
图中:
R:主要干道传感器来的信号,高电平表示有车,低电平表示设车。 S:次要支道传感器来的信号,高电平表示有车,低电平表示设车。 TL:主要干道绿灯亮的时间间隔为60秒,即主要干道车辆通行的时间为60秒,定时时间到时,TL=1,否则,TL=0。 TS:次要支道绿灯亮的时间间隔为30秒,即次要支道车辆通行的时间为30秒,定时时间到时,Ts=1,否则,TS=0。
TY:主要干道或次要支道黄灯亮的时间间隔为5秒,定时时间到时,TY=1,否则,TY=0。 ST:控制器发出的状态转换信号,也是定时器的清零信号。 因此,TL、TS、Ty、S是控制器的输入信号;ST是控制器的输出信号。 五、画出交通灯控制器的ASM图
在画出ASM图前,先作一些规定:
AG、AY、AR分别表示主要车道绿、黄、红灯。 BG、BY、BR分别表示次要车道绿、黄、红灯。 且规定:
AG=1:主要车道绿灯亮;BG=1:次要车道绿灯亮; AY=1:主要车道黄灯亮;BY=1:次要车道黄灯亮; AR=1:主要车道红灯亮;BR=1:次要车道红灯亮;
然后分析一下交通灯控制系统的工作过程。工作过程分为4个阶段,对应的控制器输出有4个状态,分别用S0,S1,S3和S2表示:
S0状态:AG=1,BR=1。表示主要车道上的车辆允许通行,次要车道禁止通行。绿灯亮足规定的时间间隔TL,且次要车道有车时,控制器发出状态转换信号ST,转到下一个工作状态S1。
S1状态:AY=1,BY=1。表示主要车道上未过停车线的车辆停止通行,已过停车线的车辆继续通行,次要车道禁止通行。黄灯亮足规定时间间隔Ty时,控制器发出状态转换信号ST,转到下一个工作状态S3。
S3状态:AR=1,BG=1。表示主要车道上的车辆禁止通行,次要车道允许通行。绿灯亮足规定的时间间隔TS或者次要车道没有车时,控制器发出状态转换信号ST,转到下一个工作状态
S2。
S2状态:AR=1,BY=1。表示主要车道禁止通行,次要车道上未过停车线的车辆停止通行,已过停车线的车辆继续通行。黄灯亮足规定时间间隔Ty时,控制器发出状态转换信号ST,转到下一个工作状态S0。
交通灯以上S0,S1,S3和S2 4种工作状态的转换是由控制器进行控制的。设控制器的S0,S1,S3和S2四种状态的编码分别为00,01,11和10,则控制器的工作状态及其功能如下表所示。
控制器工作状态及其功能 控制器状态 信号灯状态 车道运行状态 S0(0 0) AG=1,BR=1 主要车道通行,次要车道禁止 S1(0 1) AY=1,BR=1 主要车道缓行,次要车道禁止 S3(1 1) AR=1,BG=1 主要车道禁行,次要车道通止 S2(1 0) AR=1,BY=1 主要车道禁行,次要车道缓止
由以上的分析可以画出交通灯控制系统的ASM图。设控制器的初始状态为S0。
S0 AG=1 BR=1 00 S3 ST=1 AR=1 BY=1 10 0 TL.S 1 ST=1 1 Ty 0 ST=1 S2 11 S1 01 ST=1 AY=1 BR=1 AR=1 BG=1 0 Ty 1 TS+S’ 1 0
六、算法状态机得VHDL设计
首先对系统进行划分,得到系统结构图,然后把系统看成一个FSM,再对FSM进行VHDL的描述。
BG BY BR AG AY AR clk reset AG AY AR BG BY BY 译 码 器 SA SB
控 制 器 ST clk reset 定 时 器 CNT
其中,CNT是定时值,ST是状态转换信号,Reset是复位,SA是主要车道传感器信号,SB是次要车道传感器信号。
1、 定时器的原理图描述
从设计原理图创建模块,默任模块的名称为DSQ。 2、 控制器的原理图描述
从设计原理图创建模块,默任模块的名称为KZQ。 3、 译码器
译码器的主要任务是将控制器输出的4种工作状态,翻译成A、B车道上6个信号灯的工作状态。控制器的状态变量S与6个信号灯控制信号AG、AY、AR、BG、BY、BR之间的关系由下表所示:
控制器状态变量与信号灯关系表 S AG AY AR S0 1 0 0 S1 0 1 0 S2 0 0 1 S3 0 0 1 BG BY BR 0 0 1 0 0 1 1 0 0 0 1 0 由上述控制器状态变量与信号灯关系编出译码器的原理图如下:
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于原理图的交通灯控制器的设计在线全文阅读。
相关推荐: