eda课程设计交通灯控制器的设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题目交通灯控制器的设计
摘要
交通灯信号控制器通常要实现自动控制和手动控制其红绿灯的变化,基于FPGA设计的交通灯信号控制器电路简单、可靠性好。本设计可控制2个路口的红、黄、绿三盏灯.让其按特定的规律进行变化。利用QuartusⅡ对设计结果进行仿真,发现系统工作性能良好。据此设计而成的硬件电路,也实现了控制要求。
关键词:交通灯自动控制手动控制
目录
摘要 0
1.概述 (2)
1.1课程设计目的 (2)
1.2 课程设计题目及要求 (2)
1.3 实验环境 (2)
2. 系统总体设计 (2)
2.2系统组成 (3)
3. 系统层次化设计与软件仿真 (3)
3.1 系统时序发生电路 (3)
3.1.2系统时序发生电路clk_gen的仿真输出波形和元件符号 (5)
3.2 红绿灯计数时间选择模块 (5)
3.2.1 VHDL源代码: (6)
3.2.2计数时间选择模块traffic_mux的仿真输出波形和元件符号 (7)
3.3定时控制电路 (7)
3.3.1 VHDL源代码: (7)
3.3.2 定时控制电路count_down的仿真输出波形和元件符号 (9)
3.4 红绿灯信号译码电路 (9)
3.4.1 VHDL源代码 (10)
3.4.2 信号译码电路 (12)
3.5 红绿灯交通控制器顶层电路 (13)
3.5.1 VHDL源代码: (14)
3.5.2 交通控制器顶层电路Traffic_TOP的仿真输出波形和元件符号 (16)
4. 系统硬件仿真 (17)
5.结论与体会 (18)
参考文献 (18)
1.概述
1.1课程设计目的
此次课程设计是根据《VHDL程序设计》这门课程开设的综合设计课程,要求学生利用VHDL编程语言,基于EDA开发平台Quartus 错误!未找到引用源。,设计相应的数字系统,通过对系统进行编程、仿真、调试与实现,体验设计的全过程,进一步加深对所学基础知识的理解,培养学生将理论知识应用于实践的能力、学生自学与创新能力和分析解决实际问题的能力。培养学生设计、绘图、计算机应用、文献查阅、实验研究、报告撰写等基本技能;提高学生独立分析和解决工程实际问题的能力;增强学生的团队协作精神、创新意识、严肃认真的治学态度和严谨求实的工作作风。
1.2 课程设计题目及要求
交通灯控制器的设计:
随着各种交通工具的发展和交通指挥的需要,交通灯的诞生大大改善了城市交通状况。要求设计一个交通灯控制器,假设某个交通十字路口是由一条主干道和一条次干道汇合而成,在每个方向设置红绿黄灯3种信号灯,红灯亮禁止通行,绿灯亮允许通行。黄灯亮允许车辆有时间停靠到禁止线以外。
在自动控制模式时,主干道(东西)每次放行时间为30s,次干道(南北)每次放行时间为20s,主干道红灯、次干道黄灯、主干道黄灯、次干道红灯持续时间为5s。
绿灯转为红灯时,要求黄灯先亮5s,才能变换运行车道。
要求交通灯控制器有复位功能,并要求所有交通灯的状态变化在时钟脉冲上升沿处。1.3 实验环境
软件仿真采用QuartusII 6.0;
硬件仿真采用KFH-1型CPLD/FPGA实验开发系统;
2. 系统总体设计
根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如下述所示的交通信号灯控制器的系统流程图与系统框图。我们选择按照自顶向下的层次化设计方法,整个系统可分为4个模块,系统时序发生电路、红绿灯计数时间选择模块、定时
控制电路、红绿灯信号译码电路。
2.2系统组成
其中系统时序发生电路最主要的功能就是产生一些额外的输出信号,它们是为红绿灯信号译码电路提供的频率39kHz的扫描信号,为定时控制电路提供的使能(enable)控制信号,为红绿灯信号译码电路提供的占空比为50%的秒闪烁信号;红绿灯计数时间选择模块是负责输出显示器需要的值(即倒数的秒数值),作为定时控制电路的倒计时秒数,在该模块中可设置东西路口河南北路口的信号灯维持秒数;定时控制电路功能就是负责接收红绿灯计数时间选择模块输出的值(即倒数的秒数值),然后将其转换成BCD码,利用七段显示器显示出来,让新人能清楚的知道再过多久就会变成红灯;红绿灯信号译码电路除了负责控制路口红绿灯的显示外,最主要的功能就是能够利用开关来切换手动与自动的模式,让交警能够通过外部输入的方式指挥交通的,但为了配合高峰时段,防止交通拥挤,有时还必须使用手动红字,即让交警执行指挥交通。
为了系统正常运作,整个控制器采用同步工作方式,由外接信号发生器(该电路的设计可参见本章)提供1Hz的时钟信号CLK。
3. 系统层次化设计与软件仿真
EDA技术的基本设计方法有电路设计方法和系统设计方法。电路级设计方法已经不能适应新的形势,本系统采用的是系统级层次设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片FPGA芯片实现,首先用VHDL语言编写各个功能模块程序,最后通过综合器和适配器生成最终的目标器件,然后用顶层原理图将各功能模块连接起来。下面给出各模块的VHDL设计过程和仿真结果。
3.1 系统时序发生电路
在红绿灯交通信号控制系统中,大多数的情况是通过自动控制的方式指挥交通的。因此,为了避免意外事件的发生,电路必须有一个稳定的时钟(clock)才能让系统正常工作。但为了配合高峰时段,防止交通拥挤,有时也必须使用手动可能工资,即让交警能够顺利的指挥交通。CLK_gen电路最主要的功能就是产生一些额外的输出信号,并将其用作后续几个电路的使用(enable)控制与同步信号处理。
该电路的核心部分就是分频电路,通过对外接信号发生器提供1Hz的时钟信号进行1000