基于FPGA的智能交通灯的设计Word格式文档下载.docx

上传人:b****5 文档编号:20885884 上传时间:2023-01-26 格式:DOCX 页数:15 大小:311.77KB
下载 相关 举报
基于FPGA的智能交通灯的设计Word格式文档下载.docx_第1页
第1页 / 共15页
基于FPGA的智能交通灯的设计Word格式文档下载.docx_第2页
第2页 / 共15页
基于FPGA的智能交通灯的设计Word格式文档下载.docx_第3页
第3页 / 共15页
基于FPGA的智能交通灯的设计Word格式文档下载.docx_第4页
第4页 / 共15页
基于FPGA的智能交通灯的设计Word格式文档下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

基于FPGA的智能交通灯的设计Word格式文档下载.docx

《基于FPGA的智能交通灯的设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于FPGA的智能交通灯的设计Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。

基于FPGA的智能交通灯的设计Word格式文档下载.docx

附录:

18

基于FPGA的十字路口交通信号灯

摘要

本文主要介绍十字路口交通灯控制器的设计。

首先,介绍交通控制系统以及交通红绿灯控制电路的发展现状;

然后采用硬件描述语言进行的交通灯控制器设计。

重点介绍了控制系统各部分的设计,以及各个模块之间的同步处理。

为了克服交通信号灯控制系统传统设计方法的弊端,更加适应城镇交通现状,利用VHDL语言、采用层次化混合输入方式,设计了具有3种信号灯和倒计时显示器的交通信号灯控制系统,在QuartusⅡ下进行仿真,并下载到FPGA中制作成实际的硬件电路进行了模拟运行.使用该方法设计的交通灯控制系统电路简单、运行可靠、易于实现,可实现对交通信号的控制和显示功能。

关键词

FPGA;

QUARTUSii;

HDPLD;

十字路口交通灯控制器;

BasedonFPGAintersectiontrafficlights

Abstract

Thispaperdescribesthedesignofintersectiontrafficsignalcontroller.First,theintroductionoftrafficcontrolsystemsandtrafficlightcontrolcircuitofthedevelopmentstatus;

thenusinghardwaredescriptionlanguagedesignedforthetrafficlightcontroller.Focusonvariouspartsofthecontrolsystemdesign,andsynchronizationbetweenvariousmodules.Inordertoovercomethetrafficsignalcontrolsystemoftraditionaldesigndrawbacks,moreresponsivetourbantrafficsituation,theuseofVHDLlanguage,theuseofhierarchicalhybridapproach,designedwiththreekindsoflightsandcountdowndisplaytrafficlightcontrolsystem,intheQuartusⅡundersimulatedanddownloadedtotheFPGA,madeintotheactualhardwaretorunthesimulationcircuit.usethismethodoftrafficlightcontrolsystemdesignofthecircuitissimple,reliable,easytoimplement,canberealizedonthetrafficsignalcontrolanddisplayfunctions.

Keywords

HDPLD;

Crossingtrafficlights;

Controller;

Vehiclepedestriansafety

1前言

城市交通是一个集经济性与社会公益性于一体的领域,包括管理体制、城市规划布局、投融资体制、交通方式选择、公共交通运营组织、交通需求管理、交通流量控制与管理等等方面的内容,涉及到管理、法规、规划、工程、TRANBBS技术、财政、教育、环境、能源、信息以及人文等社会经济诸多学科领域。

这些方面集成在一起形成一个错综复杂的城市交通大系统。

系统问题就必须通过系统方法来解决,解决系统问题的基本方法是建立有效的信息传导、控制和反馈机制,实现各子系统联动从而提高整体系统有效运行并实现其目标。

从这个意义上讲,城市交通问题的核心就是如何建立一个有效的管理机制,保证各子系统及系统要素有机衔接与互动,从而实现城市交通系统的良性运转。

随着社会经济发展和城市人口的膨胀,中国大中城市交通均面临着诸多问题,其中特别突出的是交通拥堵。

拥堵的频繁发生和严重程度已经严重影响了城市的正常运转,给城市居民带来生活不便,衍生交通事故,加剧了城市环境污染。

引起拥堵的原因为交叉口运行不畅;

路网布局不合理;

交通结构不合理;

交通秩序不佳。

交通拥堵的发生使汽车被迫减速和加速,甚至停车,导致了汽车行驶油料消耗和废气排放增加,根据国外有关资料和国内环境专家研究成果表明,机动车在怠速状态下所排放的一氧化碳、氮氧化物是正常行驶状态下的3~5倍。

因此拥堵加大了对城市环境的污染。

通过采取有效措施的实行和实施交通新技术,将有利于缓解交通拥堵状况,从而节约城市能源和降低环境污染。

2交通红绿灯控制电路的发展与技术现状

2.1交通控制系统以及交通红绿灯控制电路的发展现状

随着社会经济的发展,城市交通问题越来越引起人们的关注。

出行交通的协调,已成为交通管理部门需要解决的重要问题之一。

城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。

随着城市机动车量的不断增加,许多城市出现了交通超负荷运行的情况,因此,自80年代后期,这些城市纷纷修建城市高速道路,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。

然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。

而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。

所以,如何采用合适的控制方法,最大限度利用好耗费巨资修建的城市高速道路,缓解主干道与匝道、城区同周边地区的交通拥堵状况,越来越成为交通运输管理和城市规划部门亟待解决的主要问题。

车辆的数量持续增加,不断新建道路已不能很好地解决交通拥堵的现状,这还需要好的交通疏导,但交通的问题日益突出,单单依靠人力来指挥交通已经不可行了,所以,设计交通灯来完成这个需求就显的越加迫切了.为了确保十字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。

智能交通红绿灯控制电路是用于城市交通疏导的管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。

智能的交通信号灯指挥着人和各种车辆的安全运行,实现红、黄、绿灯的自动指挥是城乡交通管理现代化的重要课题.在城乡街道的十字交叉路口,为了保证交通秩序和行人安全,一般在每条道路上各有一组红、黄、绿交通信号灯.交通灯控制电路自动控制十字路口两组红、黄、绿交通灯的状态转换,指挥各种车辆和行人安全通行,实现十字路口城乡交通管理自动化.

2.2智能交通红绿灯控制电路技术的现状

通信号控制系统大体上分为三种类型:

定周期的信号机、多时段且具有无电缆协调功能的微电脑型信号机以及联网式自适应多相位智能型信号机。

具体采用哪种类型,应根据其应用场合及特点加以确定。

其中,第一种类型以其成本低,设计简单,安装及维护方便等特点得到了广泛应用。

本文讨论的城乡交通灯控制系统就属于该种类型。

而随着各种控制器件的推出,交通灯控制电路得以更易实现并趋向智能化。

交通灯控制系统主要由时间发生器电路、光电检测电路、控制电路等几个部分组成。

目前设计交通灯的方案有很多,有应用CPLD设计实现交通信号灯控制器方法;

有应用PLC实现对交通灯控制系统的设计;

有应用单片机实现对交通信号灯设计的方法。

目前,国内的交通灯一般设在十字路门,在醒目位置用红、绿、黄三种颜色的指示灯。

加上一个倒计时的显示计时器来控制行车。

对于一般情况下的安全行车,车辆分流尚能发挥作用,但根据实际行车过程中出现的情况,还存在以下缺点:

1.两车道的车辆轮流放行时间相同且固定,在十字路口,经常一个车道为主干道,车辆较多,放行时间应该长些;

另一车道为副干道,车辆较少,放行时间应该短些。

2.没有考虑紧急车通过时,两车道应采取的措施,臂如,消防车执行紧急任务通过时,两车道的车都应停止,让紧急车通过。

这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。

3VHDL、FPGA、Quartusii简介

3.1VHDL简介

3.1.1VHDL简介

VHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。

1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。

  

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。

3.1.2VHDL语言的特点

VHDL语言能够成为标准化的硬件描述语言并获得广泛应用,它自身必然具有很多其他硬件描述语言所不具备的优点。

归纳起来,VHDL语言主要具有以下优点:

(1)VHDL语言功能强大,设计方式多样  

VHDL语言具有强大的语言结构,只需采用简单明确的VHDL语言程序就可以描述十分复杂的硬件电路。

同时,它还具有多层次的电路设计描述功能。

此外,VHDL语言能够同时支持同步电路、异步电路和随机电路的设计实现,这是其他硬件描述语言所不能比拟的。

VHDL语言设计方法灵活多样,既支持自顶向下的设计方式,也支持自底向上的设计方法;

既支持模块化设计方法,也支持层次化设计方法。

(2)VHDL语言具有强大的硬件描述能力.VHDL语言具有多层次的电路设计描述功能,既可描述系统级电路,也可以描述门级电路;

描述方式既可以采用行为描述、寄存器传输描述或者结构描述,也可以采用三者的混合描述方式。

同时,VHDL语言也支持惯性延迟和传输延迟,这样可以准确地建立硬件电路的模型。

VHDL语言的强大描述能力还体现在它具有丰富的数据类型。

VHDL语言既支持标准定义的数据类型,也支持用户定义的数据类型,这样便会给硬件描述带来较大的自由度。

(3)VHDL语言具有很强的移植能力  VHDL语言很强的移植能力主要体现在:

对于同一个硬件电路的VHDL语言描述,它可以从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或者从一个工作平台移植到另一个工作平台上去执行。

(4)VHDL语言的设计描述与器件无关  采用VHDL语言描述硬件电路时,设计人员并不需要首先考虑选择进行设计的器件。

这样做的好处是可以使设计人员集中精力进行电路设计的优化,而不需要考虑其他的问题。

当硬件电路的设计描述完成以后,VHDL语言允许采用多种不同的器件结构来实现。

(5)VHDL语言程序易于共享和复用  VHDL语言采用基于库(library)的设计方法。

在设计过程中,设计人员可以建立各种可再次利用的模块,一个大规模的硬件电路的设计不可能从门级电路开始一步步地进行设计,而是一些模块的累加。

这些模块可以预先设计或者使用以前设计中的存档模块,将这些模块存放在库中,就可以在以后的设计中进行复用。

(6)由于VHDL语言是一种描述、模拟、综合、优化和布线的标准硬件描述语言,因此它可以使设计成果在设计人员之间方便地进行交流和共享,从而减小硬件电路设计的工作量,缩短开发周期。

3.2FPGA简介

3.2.1PLD器件的设计特点

EDA技术出现以前,数字逻辑电路设计通常采用传统方法,即自下而上设计法。

其主要思路是:

根据系统对硬件的要求编制技术规格书,画出系统流程图;

然后对系统功能进行分析,划分出多个功能模块,画出系统功能框图;

进行各功能模块的细化和电路设计;

各模块设计调试完毕以后,再连接起来,进行调试,最后完成整个系统的硬件设计。

这种自下而上设计法的仿真和调试工作要在系统的硬件开发完成以后才能进行,因此存在的问题只有在后期才能发现,一旦考虑不周,就要重新设计,使得设计费用和设计周期大大增加。

此外,由于设计输入文件是电原理图,当系统比较复杂时,大量的原理图文件会给存档、阅读和修改带来不便。

为了提高开发效率和增加已有开发成果的可继承性,缩短开发周期,各种新兴的EDA开发工具开始涌现,特别是硬件描述语言(HDL)的出现,使得传统的硬件电路设计方法发生了巨大的变革。

基于PLD器件,采用HDL进行系统设计的思路是从系统总体的要求出发,自上而下地逐步将设计内容细化,最后完成系统的详细设计。

这种设计方法的主要特点为:

(1)电路设计更趋合理

硬件设计人员在设计硬件电路时使用PLD器件,就可以自行设计所需的专用功能模块,而无需受通用元器件的限制,从而使电路设计更趋合理,其体积和功耗也大为减小。

(2)采用系统早期仿真

在自上而下的设计过程中,每级都进行仿真,从而可以在系统设计的早期发现设计中存在的问题,从而大大缩短系统设计周期,降低费用。

(3)降低了硬件电路设计难度

PLD使用HDL编程,避免编写逻辑表达式或真值表,使设计难度大幅度下降,从而也缩短了设计周期。

(4)主要设计文件使用HDL编写

采用HDL编写的源程序作为归档文件有多种好处。

HDL程序资料量小,便于保存;

其可继承性好,而且阅读方便。

可编程逻辑器件的设计流程一般为设计准备、设计输入、功能仿真、设计处理、时序仿真、器件编程和测试等七个步骤。

3.2.2FPGA的基本结构

FPGA是目前最为常用的复杂PLD器件。

FPGA的发展非常迅速,形成了各种不同的结构。

按逻辑功能块的大小,FPGA可分为细粒度FPGA和粗粒度FPGA。

细粒度FPGA的逻辑功能块较小,资源可以充分利用,但连线和开关多,速度慢;

粗粒度FPGA的逻辑功能块规模大,功能强,但资源不能充分利用。

从逻辑功能块的结构上分类,可分为查找表结构、多路开关结构和多级与非门结构。

根据FPGA内部连线的结构不同,可分为分段互联型和连续互联型。

根据编程方式,FPGA可分为一次编程和可重复编程两种。

FPGA一般可由三种可编程电路和一个用于存放编程数据的SRAM组成,这三种可编程电路是:

可编程逻辑块CLB、输入/输出模块IOB和互联资源IR。

CLB是FPGA的主要组成部分,是实现逻辑功能的基本单元。

它主要是由逻辑函数发生器、触发器、数据选择器等电路组成。

IOB提供了器件引脚和内部逻辑阵列之间的连接,通常排列在芯片的四周。

其主要是由输入触发器、输入缓冲器、输出触发/锁存器和输出缓冲器组成。

每一个IOB控制一个引脚,可被配置为输入、输出激活双向I/O功能。

可编程互联资源IR包括各种长度的金属连线和一些可编程连接开关,它们将各个CLB之间和IOB之间互相连接起来,构成各种复杂功能的系统。

FPGA的基本结构如图1所示。

3.2.3采用FPGA设计逻辑电路的优点

相对于传统数字电路设计方法,采用FPGA进行电路设计具有如下优点:

(1)简化设计

由于FPGA的可编程性和灵活性,电路设计结束后,可随意进行修改或删除,无需重新布线和生产印刷电路板,大大缩短了系统的设计周期。

(2)高性能

现在市场上提供的FPGA器件的性能超过了最快的标准分立逻辑器件的性能,而且一片FPGA芯片的功耗比分立器件组合而成的电路功耗要小得多。

(3)可靠性高

采用FPGA器件将使所用器件的数目减少,也使印刷电路板面积减少,密度下降,这些都大大提高了电路的可靠性,同时也将减少干扰和噪声,使系统的运行更可靠。

(4)成本下降

采用FPGA设计数字系统,由于所用器件少,用于器件测试及装配的工作量也少,所以系统的成本将下降。

(5)硬件加密

使用FPGA器件构成的数字系统,其内部结构是由设计者通过编程实现的。

有些器件还提供一个能被编程的保密单元,可用来防止检验和读出芯片中的程序,这对于保持芯片设计的专利、防止他人抄袭具有很大好处。

3.3QuartusII的简介

QuartusII是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。

QuartusII可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。

具有运行速度快,界面统一,功能集中,易学易用等特点。

  QuartusII支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。

对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。

  此外,QuartusII通过和DSPBuilder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;

支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。

MaxplusII作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。

目前Altera已经停止了对MaxplusII的更新支持,QuartusII与之相比不仅仅是支持器件类型的丰富和图形界面的改变。

Altera在QuartusII中包含了许多诸如SignalTapII、ChipEditor和RTLViewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了MaxplusII友好的图形界面及简便的使用方法。

 

 AlteraQuartusII作为一种可编程逻辑的设计环境,由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。

4具体方案论证与设计

4.1具体方案论证

试用一片HDPLD和若干外围电路实现十字路口交通管理器。

该管理器控制甲、乙两道的红、黄、绿三色灯,指挥车辆和行人安全通行。

交通管理器示意图如图所示。

途中r1、y1、g1是甲道红、黄、绿灯;

R2、Y2、G2是已道红、黄、绿灯。

 

十字路口交通管理器示意图

该交通管理器由控制器和受其控制的三个定时器及六个交通灯组成。

图中三个定时器分别确定甲道和乙道通行时间t3、t1以及共同的停车(黄灯燃亮)时间t2.这三个定时器采用以秒信号为时钟的计数器来实现,C1、C2和C3分别是这些定时计数器的工作使能信号,即当C1、C2和C3为1时,相应的定时器计数的指示信号,计数器在计数过程中,相应的指示信号为0,计数结束时为1.

4.2系统算法设计

十字路口交通管理器是一个控制类型的数字系统,其数据处理单元比较简单。

在此直接按照功能要求,即常规的十字路口交通管理规则,给出交通管理器工作流程图,同时也可以看做系统控制器的ASM图,如图4.1所示

S000R1=1C1=1G2=1

N

S101R1=1C2=1Y2=1

S211G1=1C3=1R2=1

S310Y1=1C2=1R2=1

N

Y

交通管理器工作流程图(控制器的ASM图)

4.3具体电路原理图

4.4电路仿真图

5实验结果

将程序下载到试验板后,将R置于高电平后,可以看见LED灯的显示情况为主干道绿灯亮,支干道红灯亮。

主干道数码管倒计时显示为30s,支干道数码管倒计时显示为25s。

在支干道数码管倒计时显示为0s后,可以看见LED灯的显示情况变为主干道黄灯亮,支干道红灯亮。

此时主、支两干道的数码管倒计时显示均为5S。

在支干道数码管倒计时显示为0s后,LED灯的显示情况变为主干道红灯亮,支干道绿灯亮,主干道数码管倒计时显示为19s,支干道数码管倒计时显示为25s。

在主干道数码管倒计时显示为0s后,可以看见LED灯的显示情况变为主干道红灯亮,支干道黄灯亮,此时主、支两干道的数码管倒计时显示均为5S。

5S钟之后,交通灯重新进入主干道绿灯亮、支干道红灯亮的状态(即S0状态)。

总结

之前对FPGA和VHDL的了解仅局限于课本上的些许知识,而没有深入体会,缺乏实践经验。

通过这次设计,我对FPGA和VHDL有了更深入的理解,熟悉了QuartusII基本的使用方法。

并且现在我对VHDL语言产生了浓厚的兴趣。

在选择毕设题目之后,我意识到自己对VHDL语言的掌握程度远远不够,开始查阅VHDL教程。

我依据交通灯控制器的要求划分模块,之后开始的是单元模块的设计。

我在做这个设计之前对QuartusII的了解甚少,编写的程序也是到处有错,只有边编译边改程序。

将每个单元模块完成之后再进行仿真,仿真过程也是困难重重。

有时候设置的时钟频率过高,违反了setup/hold时间;

有时候设置的ENDTIME过高,出现了仿真时间太长的问题。

诸如此类的问题很多,通过自己查找资料和反复摸索,最终解决了问题。

各个模块仿真成功之后,我开始编写顶层文件。

在编写顶层文件时我也遇到了不少困难,各个模块的连接以及信号的定义老是出现错误,经过反复修改才成功。

本设计基于VHDL硬件描述语言编程,在确立总体预期控制功能的前提下,分模块进行描述,其中所用到的数据均可依实际情况而设置,修改方便灵活。

目标器件为FPGA芯片,运用层次化设计方法,完成各个模块的连接,实现了十字路口车辆的自动控制。

VHDL程序在QuartusII环境下编译通过,功能仿真正确,将编程文件下载到FPGA芯片后实现了自动控制功能。

本设计具有设计过程简化,设计周期短,工作稳定、性能可靠等优点,打破了传统的自下而上的设计方法,体现了基于FPGA技术和VHDL语言进行数字系统设计的优越性和广阔的前景。

城市交通路口情况较为复杂,除十字路口之外,还有“T”型路口和圆形路口等类型的路口,本文仅简单分析了十字路口。

且由于实验板上的LED数码管和逻辑状态指示

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1