基于原理图的交通灯控制器的设计
更新时间:2024-06-03 23:26:01 阅读量: 综合文库 文档下载
基于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 由上述控制器状态变量与信号灯关系编出译码器的原理图如下:
从设计原理图创建模块,默任模块的名称为YMQ。
交通灯控制器设计完后,还要设计定时器的译码显示电路,再进行顶层电路的VHDL描述。
4、8位数码管动态扫描译码显示接口程序 --DISPLAY.VHD library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity display is
port(clkdsp:in std_logic;
D0,D1,D2,D3,D4,D5,D6,D7:in std_logic_vector(3 downto 0); SEL:out std_logic_vector(2 downto 0); led7s:out std_logic_vector(6 downto 0)); end display;
architecture behav of display is
signal s:std_logic_vector(2 downto 0); signal num:std_logic_vector(3 downto 0); begin
process(clkdsp) begin
if(clkdsp'event and clkdsp ='1')then if(S=\ S<=\ else
S<=S+'1'; end if; end if; end process;
process(D0,D1,D2,D3,D4,D5,D6,D7,clkdsp)
begin
if(clkdsp'event and clkdsp ='1')then if s=\ num<=D0; sel<=\
elsif s=\ num<=D1; sel<=\
elsif s=\ num<=D2; sel<=\
elsif s=\ num<=D3; sel<=\
elsif s=\ num<=D4; sel<=\
elsif s=\ num<=D5; sel<=\
elsif s=\ num<=D6; sel<=\ else
num<=D7; sel<=\ end if; end if; end process;
led7s<=\ \ \ \ \ \ \ \ \ \ \ \
\ \ \ \ \end behav;
从设计的VHDL语言创建模块,默任模块的名称为display。 七、顶层电路图的VHDL描述
八、芯片引脚说明
芯片系列:ACEX1K
芯片型号:EP1K100QC208-3 引脚锁定: 输入:
CLK----78,秒脉冲,接CLK5
CLKDSP---79,扫描时钟,接CLK1 RESET---7,复位,接d0;
SB---8,次要车道传感器来的信号,1表示有车,0表示无车,接d1 SA---9,主要车道传感器来的信号,1表示有车,0表示无车,接d2 输出:
SEL[2..0]---44~46,位选信号输出,接SEL2,SEL1,SEL0
LED[6..0]---90,92~97,7段译码输出,接a~g 90-a 91-b 92-c 95- d 96-e 97-f 98-g AG、AY、AR---60、61、62,主要车道信号灯,接LED2、LED1、LED0 BG、BY、BR---60、61、62,次要车道信号灯,接LED10、LED9、LED8 九、系统的下载与测试
一个设计全部完成后,要在MAX+plusII开发系统中选择Programmer,即可打开编程器窗口,在该窗口下将器件编译生成的编程文件编程到选定的器件中去,这通常称为下载(Down Load)。下载完成后,原来无特定功能的PLD器件便成为了具有某个确定功能的芯片,然后要对该芯片进行测试。测试的所得的结果与实验设计要求完全符合,说明设计的程序完全正确,实验成功。
十、实验过程中出现的问题及解决办法
在控制器原理图设计时将两片74153的A、B端直接连接,编译时出现两片74153的A、B端信号没定义。分析了编译出错原因将两片74153的A端与第二块DFF芯片的Q端连接,B端与第一块DFF芯片的Q端连接,再次编译出现正确结论。将顶层的原理图画好并锁定引脚再次编译,在EDA实验开发系统进行硬件测试。经测试实验结果完全正确。
正在阅读:
基于原理图的交通灯控制器的设计06-03
大学入党流程09-08
2017-2022年中国汽车检测行业市场需求调研及投资价值评估报告(04-13
口语表达05-13
长方体与正方体培优提升分类练习12-03
西南交大 建筑施工技术A 第1~4次作业12-03
JEM-210003-19
苏洵《心术》原文及翻译02-08
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 交通灯
- 控制器
- 原理
- 基于
- 设计
- 2020中国 全面建设小康社会课程的考试及答案 88分
- 朱苏力 《秋菊打官司》的官司、邱氏鼠药案和言论自由
- 《电子电路设计实践》内容剖析
- 高级英语词汇
- 煤炭行业上市公司社会责任信息披露的开题报告
- 特种货物一般操作流程
- 美味素食菜1 - 图文
- 各种类对联集锦
- 2001年控制船舶有害防污底系统国际公约
- 唐诗1--9
- 试题库管理系统的设计与实现需求分析报告+开发+设计+测试报告 -
- 2016高考语文二轮专题复习保温练19语言文字运用+名句默写+文学类
- 教学秘书复习资料
- (整理完)流体力学网上作业题20150626
- 2018年高中政治必修二《2.2 民主决策:作出最佳的选择》教学设计
- 定积分的概念学案(北师大)
- 河北大学2007年计算机体系结构B
- 企业员工工号如何编排
- 讲话稿:市委书记在全市重点项目集中观摩推进会上的讲话
- 小学语文教案--作文专题改写篇