EDA课设交通灯控制器论文_第1页
EDA课设交通灯控制器论文_第2页
EDA课设交通灯控制器论文_第3页
EDA课设交通灯控制器论文_第4页
EDA课设交通灯控制器论文_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘 要 城市道路交叉口是城市道路网络的基本节点,也是网络交通流的瓶颈。目前,大部分无 控制交叉口都存在高峰小时车流混乱、车速缓慢、延误情况严重、事故多发、通行能力和服 务水平低下等问题。特别是随着城市车流量的快速增长,城市无控制道路交叉口的交通压力 越来越大。因此,做好基于 EDA 技术平台的交叉口信号控制设计是缓解交通阻塞、提高城市 道路交叉口车辆通行效率的有效方法。交通信号控制的目的是为城市道路交叉口(或交通网络)提 供安全可靠和有效的交通流,通常最为常用的原则是车辆在交叉口的通过量最大或车辆在交 叉口的延误最小。 交通信号灯控制电路是显示主干道和支干道交替放行时间并用试验箱左上角的彩灯来

2、代 替信号灯的一种实际电路。设计一个基于 FPGA 的红绿灯交通信号控制器。假设某个十字路口 是由一条主干道和一条次干道汇合而成,在每个方向设置红绿黄三种信号灯,红灯亮禁止通 行,绿灯亮允许通行。黄灯亮允许行驶中车辆有时间停靠到禁止线以外。 本课程的基本原理是在合适的时钟信号的控制下,使主干道与支道的红黄绿灯循环显示, 用 VHDL 语言编辑文本程序,按设计要求连接好线以后,进行波形仿真,仿真结果正确后下载 程序并对试验箱进行调试,使其最终的显示结果符合设计要求。 关键字:交通灯 数码管 译码器 目 录 1绪论绪论.4 2EDA 编译软件介绍编译软件介绍.5 2.1QUARTUS II 简介.

3、5 3系统功能设计要求系统功能设计要求.6 4设计原理设计原理.6 4.1交通灯控制器的状态转换.6 4.2设计方案.6 4.3电路符号.7 5模块结构模块结构.8 5.1显示模块.8 5.2倒计时模块.8 5.3控制模块.8 6附录一:原理图与软件仿真附录一:原理图与软件仿真.10 7附录二:完整程序附录二:完整程序.12 1 绪论 伴随着社会的发展以及人类生活水平的提高,汽车的数量在 D 的 DEA 技术的发展和应用领 域的扩大与深入,EDA 技术在电子信息,通信,自动,控制及计算机应用等领域的重要性日 益突出。随着技术市场与人才市场对 DEA 的不断的增加,交通的问题日益突出,单单依靠人

4、力 来指挥交通已经不可行了,所以,设计交通灯来完成这个需求就显的越加迫切了.为了确保十 字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。以下就是 运用数字电子设计出的交通灯:其中红灯亮,表示该条路禁止通行;黄灯亮表示停车;绿灯亮 表示允许通行。 2 EDA 编译软件介绍 2.1Quartus II 简介 Max+plus II 作为 Altera 的上一代 PLD 设计软件,由于其出色的易用性而得到了广泛的 应用。目前 Altera 已经停止了对 Max+plus II 的更新支持。Quartus II 是 Altera 公司继 Max+plus II 之后开发的一种

5、针对其公司生产的系列 CPLD/PGFA 器件的综合性开发软件,它 的版本不断升级,从 4.0 版到 10.0 版,该软件有如下几个显著的特点: 1) Quartus II 的优点 该软件界面友好,使用便捷,功能强大,是一个完全集成化的可编程逻辑设计环境,是 先进的 EDA 工具软件。该软件具有开放性、与结构无关、多平台、完全集成化、丰富的设计 库、模块化工具等特点,支持原理图、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器 以及仿真器,可以完成从设计输入到硬件配置的完整 PLD 设

6、计流程。 Quartus II 可以在 XP、Linux 以及 Unix 上使用,除了可以使用 Tcl 脚本完成设计流程外,提供了完善的用户图 形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。 2) Quartus II 对器件的支持 Quartus II 支持 Altera 公司的 MAX 3000A 系列、MAX 7000 系列、MAX 9000 系列、 ACEX 1K 系列、APEX 20K 系列、APEX II 系列、FLEX 6000 系列、FLEX 10K 系列,支持 MAX7000/MAX3000 等乘积项器件。支持 MAX II CPLD 系列、Cyclon

7、e 系列、 Cyclone II、Stratix II 系列、Stratix GX 系列等。支持 IP 核,包含了 LPM/MegaFunction 宏功能模块库,用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。此 外,Quartus II 通过和 DSP Builder 工具与 Matlab/Simulink 相结合,可以方便地实现各种 DSP 应用系统;支持 Altera 的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开 发、可编程逻辑设计于一体,是一种综合性的开发平台。 3) Quartus II 对第三方 EDA 工具的支持 对第三方 EDA 工具的良好支持

8、也使用户可以在设计流程的各个阶段使用熟悉的第三放 EDA 工具。 Altera 的 Quartus II 可编程逻辑软件属于第四代 PLD 开发平台。该平台支持一个工 作组环境下的设计要求,其中包括支持基于 Internet 的协作设计。Quartus 平台与 Cadence、ExemplarLogic、 MentorGraphics、Synopsys 和 Synplicity 等 EDA 供应商的开发 工具相兼容。改进了软件的 LogicLock 模块设计功能,增添 了 FastFit 编译选项,推进了网 络编辑性能,而且提升了调试能力。 3 系统功能设计要求 设计一个十字路口的交通灯控制器

9、,要求: 1、能显示十字路口东西、南北两个方向的红、黄、绿灯的指示状态。 2、要求两条交叉道路上的车辆交替运行,南北方向通行时间为 30s,东西方向通行时间 为 20s;绿灯向红灯转换时,要求黄灯先亮 5s; 3、可显示通行所剩时间;具有复位功能。 4 设计原理 4.1交通灯控制器的状态转换 (1)开始设置为主路为绿灯、支路为红灯,持续时间为 30 秒; (2)主路由绿灯变为黄灯,支路红灯不变,持续时间为 5 秒; (3)主路由黄灯变为红灯,支路由红灯变为绿灯,持续时间 20 秒; (4)主路红灯不变,支路由绿灯变为黄灯,持续时间为 20 秒; 将红绿灯的状态转换列成如下表: 时间状态南北向(

10、主路)东西向(支路) (A)30s绿灯红灯 (B) 5s黄灯红灯 (C)20s红灯绿灯 (D) 5s红灯黄灯 4.2设计方案 设计方案 显示模块倒计时模块控制模块 1、显示模块由两部分组成,一是由七段数码管组成的倒计时显示器,南北向与东西向各 用两个七段数码管;二是由发光二极管代替的交通灯,每个方向 3 个发光二极管。 2、每个方向有一组 2 位倒计时器模块,用以显示该方向交通灯剩余的点亮时间。 3、控制模块主要控制交通灯的启动与复位,控制倒计时模块工作,每当倒计时回零时, 控制模块接收到一个计时信号,从而控制交通灯进入下一个工作状态。即 A=B=C=D=A 一 直循环。 4、时钟频率设定 C

11、LK 对应的频率为 1hz。 4.3电路符号 交通控制器的电路符号如图所示。其中,CLK 为系统时钟信号输入端, SM 为通行信号控 制输入端,SM=1 交通灯启动,SM=0 即复位,MR、MY、MG 对应主路的红、黄、绿灯输出, BR、BY、BG 对应支路的红、黄、绿灯输出,DOUTM7.0与 DOUTB7.0即是给数码管的输出, DOUTM7.4 输出给主路高位数码管 DOUTM3.0输出给主路低位数码管 ,DOUTB7.4 输 出给支路高位数码管 DOUTB3.0 输出给支路低位数码管。 5 模块结构 5.1显示模块 红黄绿灯 LED 显示 主路 LED 由 MR、MY、MG 输出控制三

12、个灯,支路 LED 由 BR、BY、BG 控制三个灯,根据交通灯 特性可分为 A、B、C、D 四个输出状态: A=MR=0;MY=0;MG=1; BR=1;BY=0;BGMR=0;MY=1;MG=0; BR=1;BY=0;BGMR=1;MY=0;MG=0; BR=0;BY=0;BGMR=1;MY=0;MG=0; BR=0;BY=1;BG=0; 倒计时数码管显示 同样,倒计时数码管显示也分为四个输出状态,并由其对应的 LED 灯信号控制其使能输 出 主路绿灯支路红灯倒计时; 主路黄灯支路红灯倒计时; 主路红灯支路绿灯倒计时; 主路红灯支路黄灯倒计时; MG=1即 EN30=1 MY=1即 EN0

13、5M=1 BG=1即 EN20=1 BYB-C-D 循环 SM=0,CLK=1HZ 的仿真结果(即复位状态下):主路支路都是黄灯亮,数码管输出都是 0 7 附录二:完整程序 JTDKZ.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; ENTITY JTDKZ IS PORT(CLK, SM:IN STD_LOGIC; MR,MY,MG,BR,BY,BG:OUT STD_LOGIC); END ENTITY JTDKZ; ARCHITECTURE ART OF JTDKZ IS TYPE STATE_TYPE IS(A, B, C, D); SIGN

14、AL STATE:STATE_TYPE; BEGIN CNT:PROCESS(CLK) IS VARIABLE S:INTEGER RANGE 0 TO 30; BEGIN IF(CLKEVENT AND CLK=1) THEN S:=S+1; IF(SM=1) THEN CASE STATE IS WHEN A=MR=0;MY=0;MG=1; BR=1;BY=0;BG=0; IF S=30 THEN STATE=B;S:=0; ELSE STATEMR=0;MY=1;MG=0; BR=1;BY=0;BG=0; IF S=5 THEN STATE=C;S:=0; ELSE STATEMR=1;

15、MY=0;MG=0; BR=0;BY=0;BG=1; IF S=20 THEN STATE=D;S:=0; ELSE STATEMR=1;MY=0;MG=0; BR=0;BY=1;BG=0; IF S=5 THEN STATE=A;S:=0; ELSE STATE=D; END IF; END CASE; ELSE MR=0;MY=1;MG=0; BR=0;BY=1;BG=0; S:=0; STATE=A; END IF; END IF; END PROCESS CNT; END ARCHITECTURE ART; CNT05S.VHD LIBRARY IEEE; USE IEEE.STD_L

16、OGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT05S IS PORT(CLK,EN05M,EN05B:IN STD_LOGIC; DOUT5: OUT STD_LOGIC_VECTOR(7 DOWNTO 0); END ENTITY CNT05S; ARCHITECTURE ART OF CNT05S IS SIGNAL CNT3B: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGIN PROCESS(CLK,EN05M,EN05B) IS BEGIN IF(CLKEVENT AND CLK= 1)THE

17、N IF EN05M=1 OR EN05B=1 THEN CNT3B=CNT3B+1; ELSE CNT3BDOUT5DOUT5DOUT5DOUT5DOUT5DOUT5=; END CASE; END PROCESS; END ARCHITECTURE ART; CNT20S.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT20S IS PORT(CLK,EN20:IN STD_LOGIC; DOUT20M,DOUT20B:OUT STD_LOGIC_VECTOR

18、(7 DOWNTO 0); END ENTITY CNT20S; ARCHITECTURE ART OF CNT20S IS SIGNAL CNT5B: STD_LOGIC_VECTOR(4 DOWNTO 0); BEGIN PROCESS(CLK,EN20) IS BEGIN IF(CLKEVENT AND CLK= 1)THEN IF EN20=1 THEN CNT5B=CNT5B+1; ELSIF EN20=0THEN CNT5BDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DO

19、UT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20MDOUT20B=; DOUT20M=; END CASE; END PROCES

20、S; END ARCHITECTURE ART; CNT30S.VHD LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY CNT30S IS PORT(CLK,EN30:IN STD_LOGIC; DOUT30M,DOUT30B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0); END ENTITY CNT30S; ARCHITECTURE ART OF CNT30S IS SIGNAL CNT5B: STD_LOGIC_VECTOR(4 DOWNTO 0);

21、BEGIN PROCESS(CLK,EN30) IS BEGIN IF(CLKEVENT AND CLK= 1)THEN IF EN30=1THEN CNT5B=CNT5B+1; ELSIF EN30=0THEN CNT5BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BD

22、OUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30BDOUT30M=; DOUT30B=; END CASE; END PROCESS; END ARCHITECT

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论