FPGA下的交通路口红绿灯控制系统探讨

2014-04-18 10:10高竟全
山东工业技术 2014年23期

高竟全

(广东古田智能科技有限公司,广东 佛山 528200)

FPGA下的交通路口红绿灯控制系统探讨

高竟全

(广东古田智能科技有限公司,广东 佛山 528200)

摘要:随着我国经济的快速发展,人们生活水平不断提高,各种私家车数量大幅度增长,汽车已经成为人们日常生活中不可缺少的交通工具。但是汽车在给我们带来极大便利的同时,也带来了交通事故频发、城市污染、能源紧缺、交通堵塞等问题,因此FPGA下的交通路口红绿灯控制系统的研究和开发,对于改善城市交通状况有着重要的现实意义。本文简要介绍了FPGA系统,分析了FPGA下的交通路口红绿灯控制系统仿真设计。

关键词:FPGA;交通路口;红绿灯控制系统

FPGA是一种重要的现场可编程门阵列,用户在对FPGA系统升级或者改造时,只需要通过计算机直接更换和修改程序,有效缩短了系统设计和开发周期,提高了硬件设计的可靠性和灵活性。FPGA下的交通路口红绿灯控制系统克服了传统可编程器件控制系统的缺点,系统运行更加稳定可靠。

1 FPGA系统概述

现场可编程门阵列FPGA,其是一种基于CPLD、GAL、PAL等可编程器件的新兴发展产物。FPGA是ASIC集成电路领域中一种重要的半定制电路,不仅克服了传统可编程器件门电路数量的限制,而且提高了电路设计的灵活性。FPGA具有无需测试、质量稳定、开发周期短、设计成本低、设计规模大、速度快、可靠性高等优点。FPGA主要由嵌入功能单元、嵌入式随机存储器RAM、可编程输入输出单元、内嵌式专用硬核、可编程逻辑单元和布局布线资源等组成[1]。FPGA的硬件结构具有灵活的重构性,设计人员可采用Verilog HDL、VHDL等描述语言进行编程,对FPGA内部结构进行重组配置,组成不同硬件结构的电子系统,实现设计功能。

2 FPGA下的交通路口红绿灯控制系统仿真设计

FPGA的交通路口红绿灯控制系统采用VHDL编程语言,主要包括直行方向控制模块和左转方向控制模块。岔路口车辆通行方

向示意图如图所示。基于FPGA的交通路口红绿灯控制系统的顺序为:先直行方向a—b—c—d,后左转方向aa—bb—cc—dd,如此反复循环。直行方向a、b、c、d方向和左转方向aa、bb、cc、dd信号相位分别对应一致。FPGA的交通路口红绿灯控制系统包含48路输出信号和8路输入信号,以1Hz时钟脉冲为控制系统的时钟。

图1 岔路口车辆通行方向示意图

2.1控制信号设计

(1)直行方向控制系统的信号相位。当a方向路口有行驶车辆,a方向信号灯变为绿色,a方向累加器开始计数,这时监测c方向是否有行驶车辆,如果有车辆,c方向信号灯变为绿色,c方向累加器开始计数,当c累加器计数到6时,信号灯变为黄色,4s后再变为红色,并且判断dd方向路口是否有行驶车辆,如果有车辆,dd方向信号灯变为绿色,dd累加器开始计数,当dd累加器计数到6时,信号灯变为黄色,4s后再变为红色,再判断aa路口是否有行驶车辆,如果有车辆,aa信号灯变为绿色,aa器开始计数,当aa器计数到6时,信号灯变为黄色,4s后再变为红色。如此反复循环,当a累加器计数到26时,aa、dd、c、a方向信号灯为黄色,4s后变为红色,再开始b相位运行[2]。

(2)左转方向控制系统的信号相位。当aa方向路口有行驶车辆,cc方向和aa方向信号灯同时变为绿色,aa累加器开始计数,如果aa方向行驶车辆结束,或者aa累加器计数到6时,cc方向和aa方向信号灯同时变为黄色,4s后再变为红色。再检测bb方向是否有行驶车辆,如果有车辆,dd方向和bb方向信号灯同时变为绿色,bb累加器开始计数,如果bb方向行驶车辆结束,或者bb累加器计数到6时,dd方向和bb方向信号灯同时变为黄色,4s后再变为红色。如上所述,cc方向和dd方向信号相位也是如此变化。

2.2车辆检测模块设计

FPGA下的交通路口红绿灯控制系统中的车辆检测模块主要用于检测通行车辆,通过采集图像传感器信号,进行数据处理,判决信号阀值,一旦有车辆通过检测区域,及时发出响应脉冲信号。车辆检测模块采用matlab算法进行系统仿真设计,并且将每一帧像素信息存储在数据矩阵中,以二进制数据文件作为FPGA控制系统的输入激励,实时检测像素点。假设像素点个数为37,在接收响应脉冲信号后,计数器进行控制技术,计数到37后,启动下一个响应脉冲。累加器持续技术后,逐位累加处理每一帧信号,累加到37后,将结果输入减法器,在时序控制计数状态下,减法器将寄存器的灰度累加值和当前帧累加值做差,然后输出到比较器,比较器通过比较门限值和差值,如果差值超过门限值,输出高脉冲信号,说明有车辆经过[3]。

2.3车流量统计模块设计

车流量统计模块主要是对经过车辆脉冲信号进行计数,计算一定时间段内车辆通过数量,输出采样脉冲。基于FPGA的交通路口红绿灯控制系统的车流量统计模块可采用0~65535计数器,进行时钟计数,当到达65535计数值时,输出高脉冲,脉冲信号周期为1ms。车流量统计模块的计数器接收到检测信号时,计算车辆检测脉冲数,每个有效脉冲,计数器加1,并且将采样脉冲和车辆量计数值输出到控制系统,当检测信号由有效转变为无效时,高电平脉冲信号变为低电平,这时检测脉冲信号的下降沿。当接收到有效的清零脉冲时,计数器立刻清零。

3 结束语

近年来,现代化城市建设快速发展,城市交通压力日益增大。交通路口红绿灯控制系统是城市交通系统设计的重要内容,基于FPGA系统,可有效提高交通路口红绿灯控制系统设计的可靠性和灵活性,在未来的发展过程中,积极应用先进的科学技术,进一步完善和优化FPGA下的交通路口红绿灯控制系统,使其发挥更加重要的作用。

参考文献:

[1]王维松.基于FPGA的交通路口红绿灯控制系统[D].合肥工业大学,2012.

[2]高瑜.基于FPGA的交通信号灯的智能控制系统[D].河北工业大学,2012.

[3]王振华.多路口交通信号逻辑规则控制系统研究与实现[D].武汉理工大学,2010.