基于FPGA的交通灯控制器.doc
《基于FPGA的交通灯控制器.doc》由会员分享,可在线阅读,更多相关《基于FPGA的交通灯控制器.doc(31页珍藏版)》请在课桌文档上搜索。
1、摘 要交通灯,全名是交通信号指示灯,它被安放在道路的穿插路口,承当着指挥道路交通的重大任务,人们根据交通灯的指示,做出符合交通法规的交通行为,保证了道路交通的有序顺畅和平安通行。基于交通灯的重要作用,本文利用 FPGA 技术,设计了一套交通灯控制器系统。在道路的十字路口,东南西北四个方向,均设置有红黄绿和左转四种交通信号指示灯,并显示有通行和停顿等待的倒计时时间。根据道路实际的流量情况,设置了绿灯 50 秒,红灯 80 秒,黄灯 5 秒,左转灯 20 秒。本系统以 Altera 公司 Cyclone II 系列的EP2C5T144C8N 芯片作为核心最小系统,利用 VHDL 语言在 Quart
2、us II 开发平台上进展软件局部的设计,利用电路设计软件 Protel 进展硬件原理图和 PCB 的设计,通过波形仿真和硬件实现两种方式,验证了交通灯系统的功能。关键字:关键字:FPGAFPGA 最小系统、交通灯、倒计时、最小系统、交通灯、倒计时、VHDLVHDLABSTRACTTraffic lights, full name is traffic signal lights, it was placed at the intersection of roads, undertaking the significant mission mand in road traffic, the p
3、eople according to the traffic lights, traffic behavior ply with traffic regulations, to ensure the smooth and orderly and safe passage of road traffic. Based on the important role of traffic lights, using FPGA technology, design a set of traffic lights control system. At the crossroads, North four
4、directions, are provided with a red yellow green and turn left at the four traffic signal lamp, and display a countdown time pass and stop waiting. According to the actual situation of road traffic, the green light for 50 seconds 80 seconds, the red light, yellow light for 5 seconds, 20 seconds left
5、 lamp. This system to Altera pany Cyclone II series EP2C5T144C8N chip as the core of the minimum system, the software design in the Quartus II development platform using VHDL language, the design of hardware schematic and PCB circuit designed by the software Protel, two ways of realizing the wavefor
6、m simulation and hardware, traffic lights to verify the function of the system.K Ke ey y WWo or rd ds s: :FPGA minimum system,traffic light,countdown,VHDL目录摘要 IABSTRACT.II目录 III第 1 章绪论 11.1 课题任务 11.2 课题要求 11.3 研究意义 1第 2 章设计方案 32.1 硬件局部 32.1.1 电源电路 3复位电路 42.1.3 晶振电路 52.1.4 下载电路 52.1.5 系统外围电路 62.1.6 硬
7、件开发工具 72.2 软件局部 72.2.1 Quartus II 软件 82.2.2 VHDL 语言 8第 3 章系统功能设计 103.2 电路原理图设计 103.2.1 电源电路设计 103.2.2 晶振电路设计 113.2.3 复位电路 113.2.4 下载电路设计 113.2.5 数码管显示电路 123.2.6 LED 指示灯电路 123.2.7 系统的总原理图 133.3.1 PCB 库元件的设计 133.3.2 PCB 图的绘制 163.4 软件设计 193.4.1 时钟分频模块 19功能控制模块 203.4.3 译码模块 233.4.4 系统顶层电路 24第 4 章调试与实现 2
8、54.1 软件仿真调试 254.1.1 时钟分频模块仿真 254.1.2 功能控制模块仿真 254.1.3 译码模块仿真 264.1.4 顶层电路仿真 26第 5 章总结 31参考文献 32致 33附录 34附录 1 系统硬件电路原理图 34附录 2 硬件电路 PCB 图 35附录 3 时钟分频模块完整的 VHDL 程序 36附录 4 功能控制模块完整的 VHDL 程序:37附录 5 译码模块的完整 VHDL 程序 41第 1 章 绪论1.1 课题任务本课题是基于 FPGA 的交通灯控制器的设计,应用 EDA 技术,设计一个十字路口的交通灯来形象指挥行人和车辆的平安通行。十字路口处方向分为东南
9、西北四个方向,东西方向的交通信号灯状态保持一致,南北方向的交通信号灯状态也保持一致。其中每个方向均要求有四盏指示灯,分别是左转灯、红灯、绿灯和黄灯。左转灯亮说明车辆可以左转通行;红灯亮说明制止车辆直行和左转;绿灯亮说明允许车辆直行和右转;黄灯亮说明指示灯即将进展变换,提示车辆减速至停顿或做好启动准备,此时也是制止车辆直行和左转。在每个方向上均设有一个倒计时显示器,以显示制止或允许通行的倒计时间。东西、南北方向的指示灯循环变化,实现交通灯的功能。1.2 课题要求设计基于 FPGA 的交通灯控制器,实现交通灯的根本功能,要求十字路口东西、南北方向的红绿黄灯以及左转灯能够循环变化,并且以倒计时的形式
10、进展指示;各指示灯的持续时间分别为:红灯 80 秒,绿灯 50 秒,黄灯 5 秒,左转灯 20 秒;紧急情况下能够进展特殊处理,紧急情况过后可恢复。要求软件和硬件结合来实现交通灯控制器,其中采用硬件描述 VHDL 语言进展交通灯控制器系统的软件设计,在 EDA 软件 Quartus II 下进展编译以及波形仿真,硬件采用 Altera 公司 Cyclone II 系列的 EP2C5T144C8N 芯片作为核心最小系统,绘制出电路原理图和 PCB 图。1.3 研究意义交通灯最早出现在 19 世纪的英国,在伦敦的主要街头安装了已燃煤气为光源的红蓝两色的机械扳手信号指示灯,用于指挥马车通行。后来在美
11、国出现了电气启动的红绿灯,还有带控制的红绿灯和红外红绿灯。交通信号灯的出现,使交通得以有效控制,对于疏导流量、提高道路通行能力,减少交通事故有明显的效果。如今,交通灯被应用在各个道路分叉口上,已经成为疏导交通车辆的最常见和最有效的方式。随着社会的开展和人们生活水平的提高,汽车的数量迅速增加,交通管制变得越来越重要,交通灯已成为交通管制必不可少的重要工具,它能保证机动车辆的平安运行,维持城市道路的顺畅。以前普通的交通灯控制器只能根据事先给定时间进展通道的通禁控制,但由于如今车辆的迅速增多,所以传统的交通灯控制器已经表现出明显的缺点:红绿灯时间相对固定,不能随车流量调整红绿灯的显示时间,在时间和空
12、间方面造成了交通资源的浪费,加重了道路交通压力。还有一个缺点是没有显示红绿灯的持续时间,不能及时地做出相应的操作,影响了通行的效率。因此,要求寻找一种可以随时针对通道上车辆的密集度来控制和调节此通道的通禁时间,以期到达自动控制的目的,从而减少不合理的堵车现象的发生。交通灯的功能都是通过交通灯控制器实现的,而交通灯控制器的实现大致有几种方法,第一种是采用中小规模集成电路实现的,采用的电路元件多,线路复杂,可靠性低,故障率高,维修难度大。第二种方法是采用单片机方案来实现, 简化了电路,使得性能更加稳定,而且能够实现多种功能,但也存在着缺点,就是在修改电路功能以及调试的时候需要硬件电路的支持,这在很
13、大程度上增加了功能修改以及系统调试的难度。第三种是采用可编程控制器 PLC 来实现,其优点是提高可靠性和稳定性,但由于 PLC 的体系构造是封闭的,各个厂家的 PLC 的硬件体系互不兼容,编程语言和指令系统也有差异,降低了用户的选择性和增加了使用难度。第四种是采用 FPGA 技术,FPGA 是可编程逻辑器件,利用硬件可描述语言对以 FPGA 芯片为核心的系统进展开发,在设计的各个阶段,各个层次都可以用计算机进展仿真验证,编程简单,程序修改容易,不需要硬件电路的支持,而且不受 FPGA 型号的影响,使用更加方便,使得开发周期缩短。基于 FPGA 的众多优点,使其深受广阔设计者的喜爱。采用FPGA
14、 来实现交通灯控制器,迎合了电子技术的开展趋势,使得电子产品性能更加稳定,应用更加简单方便。第 2 章 设计方案2.1 硬件局部一个 FPGA 系统,通常由 FPGA 芯片组成的核心局部和外围应用电路组成。本设计采用 EP2C5T144C8N 芯片作为系统核心,加上电源电路,复位电路,晶振电路,下载电路等,组成 FPGA 最小系统,再加上外围电路的数码管和 LED指示灯,构成了整个交通灯控制器系统的硬件电路。硬件电路框图如下:图 2.1 交通灯控制器系统硬件电路框图电源电路电源电路是系统工作供电的来源。FPGA 系统的电源取决于部电路的要求。FPGA 有三个要配置元素:可配置逻辑块(CLB),
15、I/O 块(IOB)及其相互连接。CLB 提供功能性逻辑元素,IOB 提供封装引脚和部信号线之间的接口,可编程相互连接资源提供布线途径以连接 CLB 和 IOB 的输入和输出至适宜的网络。施加于 CLB(或核心)的电压被称为 VCCINT,VCCO 为 IOB 的供电电压,一些FPGA 有被称为 VCCAU*的另外一个电压输入。VCCINT 的典型的电压为 1.2 V、1.5 V、1.8 V、2.5 V 和 3V,电流达12A。CLB 数越大,电压越小而电流越高。此外,VCCINT 应该单调上升,不允许有下降。最常见的 VCCO 电压为 1.2 V、1.5 V、1.8 V、2.5 V、3.3
16、V,在以前的系统中甚至为 5V,电流围在 120 A 之间。典型的辅助电压 VCCAU*为 3.3 V 或 2.5 V,它对 FPGA 中有严格时间要求的资源进展供电,所以它很容易受电源噪声的影响,除非 VCCO 不产生过大的噪声,VCCAU*可以与 VCCO 共用电源层。FPGA 电源要求包括电压输出在 1.2 V5 V 之间,电流输出大几十毫安到几安培之间,三种可能的解决方案为低漏失(LDO)线性整流电路、开关模式变压器以及开关模式电源模组。图 2.2 LDO 的部连接图LDO 是 low dropout regulator,意为低压差线性稳压器,是相对于传统的线性稳压器来说的。传统的线性
17、稳压器,如 78*系列的芯片都要求输入电压要比输出电压高出 2v3V 以上,否则就不能正常工作。但是在一些情况下,这样的条件显然是太苛刻了,如 5v 转 3.3v,输入与输出的压差只有 1.7v,显然是不满足条件的。针对这种情况,才有了 LDO 类的电源转换芯片。低输出噪声很重要,或者系统要求对输入和瞬态现象快速响应,就应该采用 LDO 整流器。LDO 提供了中低输出电流,输入电容器通常会切断输入至 LDO 的阻抗和噪声。LDO还要求在输出侧有一个电容器,以处理系统瞬态现象并提供稳定性。双输出LDO 还能同时向 VCCINT 和 VCCO 供电。当设计效率非常关键且系统要求大输出电流时,则采用
18、开关模式电源。开关电源提供比 LDO 更高的效率,但其开关特性使其对噪声更敏感。与 LDO 不同,开关模式变压器需要使用电感器,而且可能需要变压器进展 DC-DC 转换。复位电路一个可编程芯片,通常在上电的瞬间需要一个短暂的时间进展部参数的初始,这个时候芯片无法立即进入工作状态。通常称上电初始化为复位,实现这个功能的电路称为复位电路。系统的复位通常采用的是低电平复位,RESET 按键按下后产生低电平,正常工作状态下,复位信号为高电平。图 2.3 系统复位电路 晶振电路晶振是为电路提供频率基准的元器件,通常分为有源晶振和无源晶振两个大类,无源晶振需要芯片部有振荡器,并且晶振的信号电压根据起振电路
19、而定,允许不同的电压,但无源晶振通常信号质量和精度较差,需要准确匹配外围电路电感、电容、电阻等 ,如需更换晶振时需同时更换外围的电路。有源晶振不需要芯片的部振荡器,可以提高高精度的频率基准,信号质量也较无源晶振要好很多。 下载电路FPGA 器件有三类配置下载方式:主动配置方式AS和被动配置方式PS和最常用的(JTAG)配置方式。 AS 由 FPGA 器件引导配置操作过程,它控制着外部存储器和初始化过程,EPCS 系列.如 EPCS1,EPCS4 配置器件专供 AS 模式,目前只支持 Cyclone 系列。使用 Altera 串行配置器件来完成。Cyclone 期间处于主动地位,配置期间处于附属
20、地位。配置数据通过 DATA0 引脚送入 FPGA。配置数据被同步在 DCLK 输入上,1 个时钟周期传送 1 位数据。PS 则由外部计算机或控制器控制配置过程。通过加强型配置器件EPC16,EPC8,EPC4等配置器件来完成,在 PS 配置期间,配置数据从外部储存部件,通过 DATA0 引脚送入 FPGA。配置数据在 DCLK 上升沿锁存,1个时钟周期传送 1 位数据。JTAG 接口是一个业界标准,主要用于芯片测试等功能,使用 IEEE Std 1149.1联合边界扫描接口引脚,支持 JAM STAPL 标准,可以使用 Altera 下载电缆或主控器来完成。FPGA 在正常工作时,它的配置数
21、据存储在 SRAM 中,加电时须重新下载。在实验系统中,通常用计算机或控制器进展调试,因此可以使用 PS。在实用系统中,多数情况下必须由 FPGA 主动引导配置操作过程,这时 FPGA 将主动从外围专用存储芯片中获得配置数据,而此芯片中 fpga 配置信息是用普通编程器将设计所得的 pof 格式的文件烧录进去。三种配置方式的区别:AS 模式: 烧到 FPGA 的配置芯片里保存的,FPGA 器件每次上电时,作为控制器从配置器件 EPCS 主动发出读取数据信号,从而把 EPCS 的数据读入FPGA 中,实现对 FPGA 的编程。下载的是.pof 文件。PS 模式:EPCS 作为控制器件,把 FPG
22、A 当做存储器,把数据写人到 FPGA中,实现对 FPGA 的编程。该模式可以实现对 FPGA 在线可编程。JTAG:直接烧到 FPGA 里面的,由于是 SRAM,断电后要重烧。.sof 文件或者转换的.jic 可以通过 JTAG 方式下载。 系统外围电路电源电路、晶振电路、复位电路、下载电路构成了 FPGA 的最小系统,是FPGA 系统能正常工作所必须的电路,利用 FPGA 实现具体的功能,需要添加外围电路。可根据具体的需求进展添加,包括显示模块电路、按键控制模块电路,LED 指示灯模块电路、实体功能模块电路等等。FPGA 芯片提供了大量的IO 口资源,可满足大规模数字电路系统的使用要求,用
23、户参照芯片资料,选择需要的 IO 引脚进展外部连接。图 2.4 数码管构造图本设计需要的外围电路包括数码管显示电路和 LED 指示灯电路。数码管是用来显示各信号指示灯的持续时间,交通灯的指示灯持续时间根本都在 90 秒,而东南西北四个方向均需要配置一组两个的数码管。LED 指示灯电路是东南西北四个方向的红灯、绿灯、黄灯和左转灯,四种灯为一组,每个方向一组。七段数码管的构造图如图 2.4,用 7 个 LED 组成一个 8 字构成,每一个 LED 称为一段,分别标记为 a、b、c、d、e、f、g,图上也说明了排列的顺序。数码管分为共阳和共阴两种,也有单个和多位之分。共阳是数码管的端接电源 VCC,
24、共阴则是端接地 GND。实际使用时,需要在每一段 LED 上串联一个电阻,阻值根据图 2.4 中的计算公式来选择。 硬件开发工具要制作硬件,首先要绘制出系统电路的原理图和 PCB 图,这就需要运用电路设计软件。本设计采用的是 protel99se 软件,该软件是 ProklTechnology 公司基于Windows 环境下开发的电路板设计软件。功能强大,人机界面友好,易学易用,是业界人士首选的电路板设计工具。Protel 99SE 由两大局部组成:电路原理图 SCH 设计和多层印刷电路板 PCB 设计。常用的局部有电路图编辑器,元件库编辑器,PCB 图编辑器和 PCB 库编辑器。2.2 软件
25、局部本设计采用模块层次化设计方法,运用自顶向下的设计思路,将交通灯控制器系统划分为三个模块,分别是时钟分频模块,功能控制模块和译码器模块。使用硬件描述 VHDL 语言对每个模块进展功能描述编程,并生成相应的原理图模块,最后用原理图输入法做成整个系统设计的顶层文件。同时,借助 Quartus II软件进展模拟仿真,观察每一个模块及整体的仿真波形,确认正确之后,将程序下载到目标 FPGA 芯片上,进展硬件的调试验证,证明所设计的交通灯控制器系统完全可以实现预定的功能。软件的系统框图如下:图 2.5 系统软件框图分频模块的作用是对系统的输入时钟进展分频处理,获得系统工作实际需要的频率;功能控制模块则
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 交通灯 控制器
链接地址:https://www.desk33.com/p-22959.html