郝建峰 任国凤 李洋 梁小瑞
【摘 要】 为解决交通堵塞问题,基于Quartus Ⅱ软件,利用以EP4CE6E22C8N 为核心芯片的FPGA系统板,设计了一款交通信号灯控制系统,为智能交通信号灯的实现提供理论参考。
【关键词】 智能交通;交通信号灯控制系统;VHDL语言;QuartusⅡ仿真
Design of Smart Traffic Signal Light Control System Based on FPGA
Hao Jianfeng Ren Guofeng2 Li Yang Liang Xiaorui
(1.Xinzhou Public Security Bureau, Xinzhou 034000, China; 2.Xinzhou Normal University, Xinzhou 034000, China; 3.Fire and Rescue Detachment of Xinzhou City,Xinzhou 034000, China)
【Abstract】 In order to solve the traffic jam problem, based on Quartus Ⅱ software, this paper uses EP4CE6E22C8N as the core chip FPGA system board and designs a traffic signal light control system, providing a theoretical reference for the realization of intelligent traffic signal light.
【Key words】 intelligent transportation system; traffic signal light control system; VHDL language; Quartus Ⅱ simulation
〔中图分类号〕 TN99 〔文献标识码〕 A 〔文章编号〕 1674 - 3229(2022)02- 0031 - 04
0 引言
在交通控制过程中最重要的三个因素就是行人、道路和车辆,如何让它们之间的关系变得更加协调,是交通管理部门急需解决的问题。然而,十字路口的车流量具有一定的不确定性,当其中一条路的车流量较少或是空车道时,交通信号灯显示的是绿灯,而另外一条路车流量很大却显示的是红灯,就会产生多等少的尴尬现象[1]。因此,采用有效的方法来灵活控制交通信号灯是特别重要的。本文利用VHDL语言设计了可随时调整东西方向或者南北方向绿灯时长的交通信号灯控制系统的算法,对智能交通信号灯控制系统的研究具有一定的意义。
国外很早便出现了智能化的城市交通控制系统,比如加拿大的交通灯控制系统、[日]本的TYOSAN系统、英国的SCOOT系统、澳大利亚的SCATS系统(世界上的很多的城市都在应用)、美国的UTCS-3GC系统[2]。
在国内,上世纪70年代末,单点交通信号控制器开始得到广泛的应用[3]。2008年,杜仁兵指出城市道路人性化交通设计就是要以交通参与者为中心,使交通参与者在出行过程中更加便捷[4]。
1 智能交通信号灯控制系统设计的关键技术
1.1 FPGA开发板
本文用到的FPGA开发板采用 5伏直流电供电,可以输出5伏、3.3伏电压。开发板配置了EPCS4 配置管理芯片和JTAG下载服务端口[5]。设有4个矩形按键、4个LED(主要的作用是用于简单的输出)、8个矩形数码管,FPGA 的引脚都由2.54mm的矩形排针引出。FPGA核心控制板集成电路设计的电路框图如图1所示。
本开发板的核心芯片是Altera公司的Cyclone Ⅳ 型EP4CE6E22C8N芯片。
1.2 QuartusⅡ软件
QuartusⅡ是为综合性FPGA/CPLD的开发而配套的一个专门软件[6-7],QuartusⅡ提供了与结构无关的设计环境,易学易用,支持文本输入、原理图输入等输入模式,且支持这些模式之间的混合性设计。同时还内嵌门级仿真器,可以根据需要对模型进行时序仿真和功能仿真,系统会自动生成EDIF和VHDL网表文件。由于QuartusⅡ软件使用操作起来的便捷和对人类交互界面的友好,被认为业界最便捷的EDA集成开发环境。
1.3 ModelSim集成开发环境
ModelSim是一个独立的编译型仿真工具,可以实现功能仿真、数字仿真、时序仿真和模拟仿真,可以与QuartusⅡ无缝衔接,从而完成各种电路的仿真。本设计运用ModelSim来完成各功能模块的仿真工作。
2 智能交通信号灯控制系统的软件设计
本文研究的智能交通信号灯控制系统软件结构如图2所示[8-9]。
2.1 分频模块
该模块主要實现对系统输入时钟,按照系统设计要求分频时钟和输出系统复位信号。仿真波形如图3所示。从图中可以看出,时钟频率被分为原来的一半,高电平复位。0865259D-DB0E-4F59-A525-A8F0F9F2C9A2
2.2 按键去抖模块
该模块输入时钟信号、4个按键信号(其中本设计中用到了4个按键,需要对4个按键分别去抖)和复位信号,输出为去抖后的4个按键信号。具体工作过程为:对按键进行去抖,当按键按下去以后是低电平,也就是“0000”,当计数器记到一定的时间以后,送给高脉冲,从而形成去抖的过程。由于本文需要用到4个按键,因此要例化4个按键去抖模块。仿真结果如图4所示。
2.3 时间控制模块
本模块输入为时钟、复位和按键信号,输出为绿灯亮的时长。
当按下第1个按键时,对应的时间就会增加1s;按下第2个按键时,对应的时间就会减少1s。开始时将时间控制在30s,相加的按键最大可以控制在40s,相减的按键最少可以控制在20s。而前两个按键控制的是东西方向的绿灯亮的时长,同理后两个按键控制的是南北方向的绿灯亮的时长。由图5所示的时间控制模块仿真波形图中可以看出,按键按了两次以后,时间从30秒加到31秒再加到32秒。
2.4 交通灯中心控制模块的设计及仿真
本模块的输入信号为时钟信号、复位信号和绿灯时长信号,输出为东西及南北方向的绿、黄、红灯和4个数码管信号。图6是交通信号灯控制模块的仿真波形图,由此得到红绿灯的状态转换表如表1所示。
2.5 数码管显示模块的设计及仿真
本模块的输入信号为时钟信号、复位信号和数码管信号,输出信号为对应的数码管。具体工作过程为:当扫描对象地址为“0”时,对应的数码管就会亮起来。图7为数码管显示模块的仿真波形图,从图中可以看出,当输出为“7”时对应数码管是“01111000”,即数码管显示的数字为“7”。
3 交通信号灯控制系统的下载及实现
3.1 FPGA的配置下载
交通信号灯控制系统需要在QuartusⅡ仿真软件平台上完成逻辑描述和仿真测试,达到了设计要求以后,利用USB Blaster下载器下载开发板,最后通过验证。表2是引脚绑定表[10-13]。
下载成功以后,选择相应的模式,将FPGA系统板与电脑相连,打开FPGA开发板的开关,[系]统就可以工作。FPGA上的芯片[为]EP4CE6E22C8N。进入交通信号灯的工作流程以后,首先东西方向的绿灯亮起来,即第一个数码管亮;南北方向的红灯亮起来,即第四个数码管亮;之后东西方向的黄灯亮起来,即第一个和第二个数码管亮,此时南北方向的红灯依然是亮的,即第四个数码管亮;实现的功能为:按下第一个按键时,控制的是东西方向绿灯亮的时长,每按一次按键绿灯亮的时长增加一秒,而第二个按键每按一次绿灯亮的时长减少一秒。检验发现,检验的结果与设计要求是一致的。
3.2 下载结果
表3为FPGA开发板上电后的六种工作状态。
4 结语
本设计主要利用VHDL、QuartusⅡ仿真软件,简明、有效地实现智能交通信号灯控制系统的功能。采用该方法,在实现对交通灯灵活控制的基础上还可以对控制系统高度集成,在一定程度上降低了生产成本。
[参考文献]
[1] 孙辉.基于FPGA的实时交通灯控制系统的设计与实现[D].武汉:华中科技大学,2011.
[2] 毛锚滋.基于FPGA的实时交通信号控制系统的设计[D].长沙:湖南大学,2014.
[3] 尹礼博,宫强. 基于数字电路的自助式红绿灯设计[J]. 廊坊师范学院学报(自然科学版), 2015,15(4):5.
[4] 杜仁兵.城市道路人性化交通设计方法研究[D]. 哈尔滨:哈尔滨工业大学,2008.
[5] 杨国庆.基于FPGA和NiosⅡ的嵌入式SOPC系统设计与应用研究[D].天津:天津大学,2013.
[6] 于新颖.基于QuartusⅡ的温度报警电路的设计[J].山西电子技术,2019 (3):8-10.
[7] 余波, 熊力维. 基于FPGA的m序列发生器的设计[J]. 廊坊师范学院学报(自然科学版), 2015, 15(3):3.
[8] 刘静.基于FPGA技术的交通灯的设计与实现[J].电子元器件与信息技术, 2021, 5(1):125-126+132.
[9] 袁海林,刘思颂,黄薇.基于FPGA的交通灯的设计与实现[J].电子质量,2013(3):15-19.
[10] 涂文元.基于VHDL的交通灯控制系统设计[J].科技视界, 2017(20):73-74.
[11] 余丽红,龙诺春,林春景,等.基于VHDL的交通灯控制器的程序设计[J].无线互联科技,2020,17(17):98-100.
[12] 林建华.基于VHDL语言的交通灯控制系统设计[J].仪器仪表用户,2011, 18(3):31-33.
[13] 黃览小.基于QuartusⅡ的十字路口交通灯控制电路设计与仿真实现[J].电子世界, 2018(20):181+183.0865259D-DB0E-4F59-A525-A8F0F9F2C9A2