您的当前位置:首页2021年度基于FPGA的智能交通灯的设计

2021年度基于FPGA的智能交通灯的设计

来源:小侦探旅游网



目 录

摘要...............................................................I
1 序言.............................................................1
2 交通红绿灯控制电路发展和技术现实状况.............................2
2.1 交通控制系统和交通红绿灯控制电路发展现实状况................2
2.2 智能交通红绿灯控制电路技术现实状况..........................3
3 VHDLFPGAQuartus ii介绍......................................4
3.1VHDL介绍....................................................4
3.1.1 VHDL介绍..............................................4
3.1.2 VHDL语言特点..........................................5
3.2FPGA介绍....................................................6
3.2.1 PLD器件设计特点.......................................7
3.2.2 FPGA基础结构.........................................8
4.1 具体方案论证...............................................11
4.2系统算法设计................................................13
4.3 具体电路原理图.............................................14
4.4 电路仿真图.................................................14
5试验结果.........................................................15
总 结...........................................................15
参考文件...........................................................16
附录:.............................................................18





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

摘要

本文关键介绍十字路口交通灯控制器设计。首先,介绍交通控制系统和交通红绿灯控制电路发展现实状况;然后采取硬件描述语言进行交通灯控制器设计。

关键介绍了控制系统各部分设计,和各个模块之间同时处理。

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

FPGA;QUARTUSii;HDPLD;十字路口交通灯控制器;

Basedon FPGA intersection traffic lights

Abstract
This paper describes the design of intersectiontraffic signal controller.First, the introduction of traffic controlsystems and traffic light control circuit of the development status;then using hardware description language designed for the trafficlight controller.Focus on various parts of the control system design,and synchronization between various modules.In order to overcomethe traffic signal



controlsystem of traditional design drawbacks, more responsive to urbantraffic situation, the use of VHDL language, the use of hierarchicalhybrid approach, designed with three kinds of lights and countdowndisplay traffic light control system, in the Quartus Ⅱ undersimulatedand downloaded to the FPGA, made into the actual hardware torun the simulation circuit. use this method of traffic light controlsystem design of the circuit is simple, reliable, easy to implement,can be realized on the traffic signal control and display functions.

Keywords

HDPLD; Crossing traffic lights; Controller; Vehicle pedestrian safety






1 序言

城市交通是一个集经济性和社会公益性于一体领域,

包含管理体制、城市计划布局、 投融资体制、 交通方法选择、

公共交通运行组织、交通需求管理、

交通流量控制和管理等等方面内容,包含到管理、法规、 计划、

工程、TRANBBS技术、财政、 教育、 环境、 能源、

信息和人文等社会经济很多学科领域。

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

经过系统 来处理,

处理系统问题基础方法是建立有效信息传导、控制和反馈机制,

实现各子系统联动从而提升整体系统有效运行并实现其目标。

确保各子系统及系统要素有机衔接和互动,

现城 通系 统良 运转

伴随 ,

中国大中城市交通均面临着很多问题,其中尤其突出是交通拥堵。

拥堵频繁发生和严重程度已经严重影响了城市正常运转,

给城市居民带来生活不便,衍生交通事故,加剧了城市环境污染。

引发拥堵原因为交叉口运行不畅;路网布局不合理;

交通 构不 ; 交通秩


交通拥堵发生使汽车被迫减速和加速,甚至停车,




造成了汽车行驶油料消耗和废气排放增加,

依据国外相关资料和中国环境教授研究结果表明,

机动车在怠速状态下所排放一氧化碳、

3~5

经过采取有效方法实施和实施交通新技术,

将有利于缓解交通拥堵情况,从而节省城市能源和降低环境污染。

2 交通红绿灯控制电路发展和技术现实状况

2.1交通控制系统和交通红绿灯控制电路发展现实状况

伴随社会经济发展,城市交通问题越来越引发大家关注。

出行交通协调,已成为交通管理部门需要处理关键问题之一。


它是现代城市交通监控指挥系统中最关键组成部分。

市机动车量 ,

很多城市出现了交通超负荷运行情况,所以,80年代后期,

这些城市纷纷修建城市高速道路,在高速道路建设完成早期,

它们也曾有效地改善了交通情况。然而,

伴随交通量快速增加和缺乏对高速道路系统研究和控制,

路没有充足发

城市 道路在 ,


也决定了城市高速道路交通情况肯定受高速道路和一般道路耦合处




交通情况制约。所以,怎样采取适宜控制方法,最大程度利用好花费巨款修建城市高速道路,缓解主干道和匝道、

,

越来越成为交通运输管理和城市计划部门亟待处理关键问题。

,

不停新建道路已不能很好地处理交通拥堵现实状况,
这还需要好交通疏导,但交通问题日益突出,
单单依靠人力来指挥交通已经不可行了,所以,
设计交通灯来完成这个需求就显越加迫切了.为了确保十字路口行人
顺利
通畅地经过,往往采取电子控制交通信号来进行指挥。
智能交通信号灯指挥着人和多种车辆安全运行,实现红、黄、
绿灯自动指挥是城镇交通管理现代化关键课题.在城镇街道十字交叉
路口,为了确保交通秩序和行人安全,通常在每条道路上各有一组红
、黄、 绿交通信号灯.交通灯控制电路自动控制十字路口两组红、

绿交通灯状态转换,指挥多种车辆和行人安全通行,实现十字路口城
镇交通管理自动化.

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




通信号控制系统大致上分为三种类型:定周期信号机、多时段且含有没有电缆协调功效微电脑型信号机和联网式自适应多相位智能型信号机。具体采取哪种类型,应依据其应用场所及特点加以确定。其中,

,

,

安装及维护方便等特点得到了广泛应用。本文讨论城镇交通灯控制系统就属于该种类型。

,

交通灯控制电路得以更易实现并趋向智能化。

交通灯控制系统关键由时间发生器电路、光电检测电路、
控制电路等多个部分组成。 现在设计交通灯方案有很多,
中国交通灯通常设在十字路门,在醒目位置用红、 绿、
黄三种颜色指示灯。加上一个倒计时显示计时器来控制行车。

对于通常情况下安全行车,车辆分流尚能发挥作用,但依据实际行车过程中出现情况,还存在以下缺点:1.两车道车辆轮番放行时间相同且固定, 在十字路口,常常一个车道为主干道,车辆较多,放行时间应该长些;另一车道为副干道,车辆较少,放行时间应该短些。

2.没有考虑紧急车经过时,两车道应采取方法, 臂如, 消防车实施紧急任务经过时,两车道车全部应停止,



这些控制方法功效修改及调试全部需要硬件电路支持,

在一定程度上增加了功效修改及系统调试困难。

3VHDLFPGAQuartusii介绍

3.1VHDL介绍

3.1.1VHDL介绍

VHDL英文全名是Very-High-SpeedIntegrated Circuit

HardwareDescription Language, 诞生于1982年。1987年底,

VHDLIEEE和美国国防部确定为标准硬件描述语言。

除了
VHDL关键用于描述数字系统结构,行为,功效和接口。

含有 很多含 件特 ,

VHDL程序结构特点是将一项工程设计,

称设 一个 ,

一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内

部(或称不可视部分),既包含实体内部功效和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其内部开发完成后,

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





3.1.2VHDL语言特点
VHDL语言能够成为标准化硬件描述语言并取得广泛应用,它本身肯定含有很多其它硬件描述语言所不含有优点。归纳起来 ,VHDL语言关键含有以下优点:
(1)VHDL 语言功效强大,设计方法多样

VHDL

,

只需采取简单明确VHDL语言程序就能够描述十分复杂硬件电路。

同时, 它还含有多层次电路设计描述功效。另外 ,VHDL
语言能够同时支持同时电路、异步电路和随机电路设计实现,
这是其它硬件描述语言所不能比拟。VHDL 语言设计方法灵活多样
, 既支持自顶向下设计方法,也支持自底向上设计方法;
语言含有多层次电路设计描述功效,既可描述系统级电路 ,
也能够描述门级电路;描述方法既能够采取行为描述、
寄存器传输描述或结构描述,也能够采取三者混合描述方法。

同时,VHDL 语言也支持惯性延迟和传输延迟,这么能够正确地建立硬件电路模型。VHDL语言强大描述能力还表现在它含有丰富数据类型。VHDL语言既支持标准定义数据类型,也支持用户定义数据类型,

这么便会给硬件描述带来较大自由度。




(3)VHDL

VHDL

语言很强移植能力关键表现在:对于同一个硬件电路VHDL语言描述,它能够从一个模拟器移植到另一个模拟器上、从一个综合器移植到另一个综合器上或从一个工作平台移植到另一个工作平台上去实施。

(4)VHDL 语言设计描述和器件无关 采取 VHDL

,

设计人员并不需要首先考虑选择进行设计器件。这么做好处是能够使设计人员集中精力进行电路设计优化,而不需要考虑其它问题。当硬件电路设计描述完成以后 ,VHDL语言许可采取多个不一样器件结构来实现。

library) 设计人员能够建立多种可再次利用模块,
一个大规模硬件电路设计不可能从门级电路开始一步步地进行设计

,

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

(6)因为VHDL语言是一个描述、模拟、 综合、

线

,

所以它能够使设计结果在设计人员之间方便地进行交流和共享, 从而减小硬件电路设计工作量,缩短开发周期。




3.2FPGA介绍
3.2.1PLD器件设计特点
EDA技术出现以前,数字逻辑电路设计通常采取传统方法,即自下而上设计法。

其关键思绪是:依据系统对硬件要求编制技术规格书,画出系统步骤
;然后对系统功效进行分析,划分出多个功效模块,画出系统功效框
;进行各功效模块细化和电路设计;各模块设计调试完成以后,再连
能进行,所以存在问题只有在后期才能发觉,一旦考虑不周,就要重新
设计,使得设计费用和设计周期大大增加。

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

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

基于PLD器件,采取HDL进行系统设计思绪是从系统总体要求出发,



上而下地逐步将设计内容细化,最终完成系统具体设计。

这种设计方法关键特点为:
(1)电路设计更趋合理
硬件设计人员在设计硬件电路时使用PLD器件,就能够自行设计所需专用功效模块,而无需受通用元器件限制,从而使电路设计更趋合理,其体积和功耗也大为减小。

(2)采取系统早期仿真
在自上而下设计过程中,每级全部进行仿真,从而能够在系统设计早期发觉设计中存在问题,从而大大缩短系统设计周期,降低费用。

(3)降低了硬件电路设计难度
PLD使用HDL编程,避免编写逻辑表示式或真值表,使设计难度大幅
采取HDL编写源程序作为归档文件有多个好处。

HDL程序资料量小,便于保留;其可继承性好,而且阅读方便。

可编程逻辑器件设计步骤通常为设计准备、设计输入、
功效仿真、设计处理、 时序仿真、 器件编程和测试等七个步骤。

3.2.2 FPGA基础结构
FPGA是现在最为常见复杂PLD器件。

FPGA发展很快速,形成了多种不一样结构。

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

细粒度FPGA逻辑功效块较小,资源能够充足利用,但连线和开关多,



度慢;粗粒度FPGA逻辑功效块规模大,功效强,但资源不能充足利用。

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

依据FPGA内部连线结构不一样,可分为分段互联型和连续互联型。

依据编程方法,FPGA可分为一次编程和可反复编程两种。

FPGA通常可由三种可编程电路和一个用于存放编程数据SRAM组成,这三种可编程电路是:可编程逻辑块CLB
输入/输出模块IOB和互联资源IR

CLBFPGA关键组成部分,是实现逻辑功效基础单元。

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

IOB提供了器件引脚和内部逻辑阵列之间连接,通常排列在芯片四面
每一个IOB控制一个引脚,可被配置为输入、
输出激活双向I/O功效。

可编程互联资源IR包含多种长度金属连线和部分可编程连接开关,它们将各个CLB之间和IOB之间相互连接起来,组成多种复杂功效系统。FPGA基础结构图1所表示。

3.2.3采取FPGA设计逻辑电路优点
相对于传统数字电路设计方法,采取FPGA进行电路设计含有以下

优点:
(1) 简化设计





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

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

(3)可靠性高
采取FPGA器件将使所用器件数目降低,也使印刷电路板面积降低,密度下降,这些全部大大提升了电路可靠性,同时也将降低干扰和噪声,使系统运行更可靠。

(4) 成本下降
采取FPGA设计数字系统,因为所用器件少,用于器件测试及装配工

使用FPGA器件组成数字系统,其内部结构是由设计者经过编程实现。有些器件还提供一个能被编程保密单元,可用来预防检验和读出芯片中程序,这对于保持芯片设计专利、预防她人剽窃含有很大好处。

3.3Quartus II 介绍
Quartus II Altera企业综合性PLD开发软件,支持原理图、VHDLVerilogHDLAHDLAlteraHardware

Description

Language

输入

,




仿

,

能够完成从设计输入到硬件配置完整PLD设计步骤。

QuartusII能够在XPLinuxUnix上使用,

使

Tcl

,

提供了完善用户图形界面设计方法。含有运行速度快,界面统一,

功效集中,易学易用等特点。 QuartusII支持AlteraIP,

LPM/MegaFunction

,

使用户能够充足利用成熟模块,简化了设计复杂性、

紧了设计

对第三方EDA工具良好支持也使用户能够在设计步骤各个阶段使用熟

悉第三方EDA工具。 另外, Quartus II 经过和DSP

Builder

支持Altera片上可编程系统(SOPC)开发,集系统级设计、

嵌入式软件开发、可编程逻辑设计于一体,

是一个综合性开发平台。

MaxplusII 作为Altera上一代PLD设计软件,

因为其出色易用性而得到了广泛应用。

现在Altera已经停止了对MaxplusII 更新支持,Quartus II

和之相比不仅仅是支持器件类型丰富和图形界面改变。

AlteraQuartusII 中包含了很多诸如SignalTapIIChip


EditorRTL Viewer 计辅 ,




集成了SOPCHardCopy设计步骤,而且继承了MaxplusII 友好图形界面及简便使用方法。

AlteraQuartus II 作为一个可编程逻辑设计环境,

,

越来越受到数字系统设计者欢迎。

4具体方案论证和设计
4.1具体方案论证
试用一片HDPLD和若干外围电路实现十字路口交通管理器。

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

途中r1y1g1是甲道红、黄、 绿灯; R2Y2






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

t1和共同停车(黄灯燃亮)时间t2.这三个定时器采取以秒信号为时

,

C1

C2C3分别是这些定时计数器工作使能信号,即当C1C2C31,对应定时器计数指示信号,计数器在计数过程中,对应指示信号为0,计数结束时为1.

4.2系统算法设计
十字路口交通管理器是一个控制类型数字系统,其数据处理单元比较简单。在此直接根据功效要求,



即常规十字路口交通管理规则,给出交通管理器工作步骤图,

同时也能够看做系统控制器ASM,4.1所表示

S0 00 R1=1 C1=1 G2=1 甲道严禁乙道通行

N
W1 =1

S1 01 R1=1 C2=1 Y2=1

甲道严禁乙道停车

W2=1

S211G1=1 C3=1 R2=1
甲道通行乙道严禁


N
W4 =1

Y

交通管理器工作步骤图(控制器ASM图)

4.3 具体电路原理图





4.4电路仿真图



5试验结果

将程序下载到试验板后,R置于高电平后,




能够看见LED灯显示情况为主干道绿灯亮,支干道红灯亮。

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

0s

,

能够看见LED灯显示情况变为主干道黄灯亮,支干道红灯亮。

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

0s

,

LED灯显示情况变为主干道红灯亮,支干道绿灯亮,

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

主干 显示 0s,

能够看见LED灯显示情况变为主干道红灯亮,支干道黄灯亮,

此时主、 支两干道数码管倒计时显示均为5S5S钟以后,


之前对FPGAVHDL了解仅局限于书本上些许知识,

而没有深入体会,缺乏实践经验。经过这次设计,

我对FPGAVHDL有了更深入了解,熟悉了Quartus

II基础使用方法。而且现在我对VHDL语言产生了浓厚爱好。

,

我意识到自己对VHDL语言掌握程度远远不够,开始查阅VHDL教程。

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

我在做这个设计之前对QuartusII了解甚少,


编写程序也是四处有错,只有边编译边改程序。




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

有时候设置时钟频率过高,违反了setup/hold时间;有时候设置ENDTIME过高,出现了仿真时间太长问题。诸如这类问题很多,经过自己查找资料和反复探索,最终处理了问题。

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

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

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

目标器件为FPGA芯片,利用层次化设计方法,完成各个模块连接,
将编程文件下载到FPGA芯片后实现了自动控制功效。

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

城市交通路口情况较为复杂,除十字路口之外, 还有“T” 型路口和圆形路口等类型路口, 。本 简单分析
且因为试验板上LED数码管和逻辑状态指示管数目有限,



在设计十字路口交通灯控制器时,没有考虑左拐弯功效。

该功效可经过在十字路口每个方向各放置一个左拐信号灯和一组LED

数码管(2个)来实现。

参考文件
[1]易铭.PLC控制交通信号灯控制系统设计[J].工业控制计算机,, 16(12): 43—45

[2]刘焕成,刘智勇.多单片机系统及分组式交通信号灯控制器[J].电子技术,(8): 1519

[3]蒋璇,臧春华.数字系统设计和PLD技术[M].北京:电子电子工业出版社,

19.赵艳华, 曹丙霞,张睿.基于QuartusIIFPGACPLD设计和应用.北京:
[4] 徐志军,王金明, 伊廷辉等.EDA技术和VHDL设计[M].北京: 电子工业出版社,:

[6] 邢建平,曾繁泰.VHDL程序设计教程.3版.北京:清华大学出版社, :45—46

[7]徐春娇.基于VHDL状态机设计智能交通控制灯[J].国外电子元器(2):31—35[8]张顺兴.数字电路和系统设计[M].南京:东南大学出版社,: 30—45.

[9] 杨晖,张风言.大规模可编程逻辑器件和数字系统设计[M].北京: 北京航空航天大学出版社,1998: 173—188

[10]蔡军,曹慧英.智能交通灯控制系统设计和实现[J].重庆:邮电学院学报,, 16(3): 129—132

[11] 田瑞利,
陈海滨.基于VHDL有限状态机交通信号灯控制系统设计[J].广州航海高等专科学校学报,, 15(3)31—33




[12]刘欲晓,方强,黄宛宁等.EDA技术和VHDL电路开发应用实践[M].北京: 电子电子工业出版社,:127—131

[13]曹昕燕,周凤臣,聂春燕.EDA技术试验和课程设计[M].北京:清华大学出版社, :108—115.谭会生等.EDA技术基础[M].长沙:湖南大学出版社,: 113—116.

[14]Altera Corporation. . Altera Digital Library. Altera

MarkZwolinski. Digital System Design with VHDL [M]. 北京:电子工业出版社,:11—18







附录:
ibrary ieee;
useieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity count5 is
port(
clk : instd_logic;
enable: in std_logic;
c : outstd_logic;
q :out std_logic_vector(2 downto 0));
endcount5;
signal fp:std_logic_vector(24 downto 0);
signal f:std_logic;
signal data: std_logic_vector(2 downto 0):="101";
begin
process(clk)
begin
if(clk'event andclk='1') then

if fp="0" then
fp<="0";





f<=not f;
else
fp<=fp+1;
end if;
end if;
end process;
process(f)

begin
if(f'event and f='1') then
if enable='1'and data>0 then
data<="101";
end if;
end if;
if data=0 then
c<='1';
else
c<='0';

end if;
end process;





q<=data;
end a;





显示全文