石俊杰 張雪峰 崔寶華
摘 要:本文針對(duì)現(xiàn)有交通管理系統(tǒng)已逐漸滿足不了交通量增長需要的問題,特別是十字交叉路段,它處于道路交通的瓶頸部位,能否合理的設(shè)置該路段關(guān)系到整個(gè)系統(tǒng)的交通功能。本文專門設(shè)計(jì)了一種在十字交叉路口使用的智能交通控制系統(tǒng),在不改變現(xiàn)有道路條件下,根據(jù)不同相位車流量的不同調(diào)整交通信號(hào)燈的啟亮?xí)r間。
關(guān)鍵詞: FPGA ,交通控制,車流量,EDA技術(shù)
一、前言
自我國改革開放以來,國民經(jīng)濟(jì)持續(xù)快速增長與城市化進(jìn)程的不斷提速,汽車保有量也急劇增長,我國城市的[]交通建設(shè)卻嚴(yán)重滯后,極大影響了人們的正常出行。如何治理城市交通的諸多問題,成為我們當(dāng)下必須予以優(yōu)先解決的議題。
傳統(tǒng)的交通控制系統(tǒng)多數(shù)由單片機(jī)或PLC實(shí)現(xiàn),系統(tǒng)是預(yù)先設(shè)置好固定的配時(shí),無法根據(jù)實(shí)時(shí)交通的具體情況做出適時(shí)調(diào)整,不利于交通的高效運(yùn)行。由于傳統(tǒng)電路設(shè)計(jì)存在以上不足,經(jīng)過研究分析后,本文通過學(xué)習(xí)研究系統(tǒng)硬件設(shè)計(jì)、FPGA的開發(fā)、QuartusⅡ和Modelsim的軟件環(huán)境等,確立設(shè)計(jì)方案。利用FPGA系統(tǒng)開發(fā)平臺(tái),應(yīng)用Verilog DHL硬件描述語言,通過QuartusⅡ13.1和Modelsim10.0軟件綜合仿真,設(shè)計(jì)出可以根據(jù)實(shí)時(shí)交通車流量的改變,適時(shí)調(diào)整交通信號(hào)燈的時(shí)間的智能交通控制系統(tǒng),彌補(bǔ)了現(xiàn)行交通信號(hào)控制系統(tǒng)的不足,有效的緩解了交通秩序問題,提升交通的運(yùn)行能力,節(jié)約能源損耗,提高交通效益,舒緩城市交通擁堵。
二、交通控制系統(tǒng)的硬件設(shè)計(jì)
為了解決以上問題,本文設(shè)計(jì)了一種能夠根據(jù)實(shí)時(shí)交通的車流量調(diào)整各相位交通信號(hào)燈啟亮?xí)r間的智能交通控制系統(tǒng),該系統(tǒng)能夠有效緩解實(shí)時(shí)交通擁堵現(xiàn)象,提升交叉路口車輛的通行率,達(dá)到控制交通的目的。
(一)硬件系統(tǒng)的總體設(shè)計(jì)
交通系統(tǒng)控制系統(tǒng)由主控模塊、計(jì)時(shí)模塊、顯示模塊、輸入模塊等組成,每個(gè)不同的模塊在中央控制器的統(tǒng)一協(xié)調(diào)下工作實(shí)現(xiàn)預(yù)期效果。
系統(tǒng)大體工作過程為:電源電路為這個(gè)系統(tǒng)供電后,由時(shí)鐘電路為FPGA系統(tǒng)提供恒定的時(shí)鐘信號(hào),再由傳感器將十字路口的實(shí)時(shí)交通車流量數(shù)據(jù)傳送到上位機(jī),使用Verilog硬件描述語言編寫代碼,利用Quartus II 13.1Modelsim SE-64 10.0軟件對(duì)代碼編譯、仿真后下載到FPGA芯片上,按鍵輸入是通過交通管理控制人員根據(jù)工作經(jīng)驗(yàn)得出的合理的控制策略調(diào)整交通信號(hào)燈的啟亮?xí)r間和倒計(jì)時(shí)顯示,通過以上步驟實(shí)現(xiàn)了基于FPGA的交通控制系統(tǒng)的整體設(shè)計(jì)。
本系統(tǒng)的核心器件是Altera公司生產(chǎn)的Cyclone Ⅳ四代FPGA,四代的FPGA在密度、速度、功耗等多方面明顯優(yōu)化于CycloneⅠ/Ⅱ/Ⅲ系列,屬于高容量、低成本的核心器件,開發(fā)板外設(shè)有SDRAM、串行FLASH、1602、12864、LED、串口、擴(kuò)展口等,Storm Ⅳ E6有15408個(gè)邏輯單元,504KB的嵌入式存儲(chǔ)器,4個(gè)PLL,20個(gè)時(shí)鐘網(wǎng)絡(luò),8個(gè)I/O組,40個(gè)定制IP軟核等專門的功能模塊。硬件資源配置:核心器件EPS4配置芯片,4M bit容量 Flash;USB 接口提供電源,50MHZ有源晶振,8個(gè)LED發(fā)光二極管,4個(gè)通用按鍵,容量為64Mbit的SDRAM,MAX485 接口,RS232 UART 串口,專用時(shí)鐘輸入、輸出接口,40 腳擴(kuò)展接口,16PIN 擴(kuò)展口,JTAG和 AS 接口等。
(二)交通燈顯示電路及倒計(jì)時(shí)顯示
在設(shè)計(jì)過程中采用單個(gè)對(duì)應(yīng)顏色的的發(fā)光二極管模擬實(shí)時(shí)交通道路上的紅黃綠燈,時(shí)間倒計(jì)時(shí)顯示在共陽極七段數(shù)碼管上。數(shù)碼管由七個(gè)LED和一個(gè)小數(shù)點(diǎn)LED構(gòu)成顯示設(shè)備,能顯現(xiàn)出0-9十個(gè)數(shù)字和小數(shù)點(diǎn),在實(shí)際生活中應(yīng)用廣泛。
本文設(shè)計(jì)中的交通信號(hào)燈的顯示電路和倒計(jì)時(shí)電路如圖1所示,分別在東、西、南、北四個(gè)方向顯示交通現(xiàn)況,電路通過控制端口連接在FPGA開發(fā)板上。設(shè)置周期為72秒。
(三)車輛檢測器的設(shè)計(jì)
結(jié)合實(shí)時(shí)交通的不同情況采取不同方案,選用不同車輛檢測器,當(dāng)路面處于建設(shè)初級(jí)階段或道路翻修期,該種情況下采用環(huán)形線圈車輛檢測器。對(duì)于不方便重修的市政工程、不方便施工的公路路面和不適宜封鎖的交通路段選用紅外線車輛檢測器。本文中根據(jù)不同需要選擇兩種車輛檢測器。
1、環(huán)形線圈檢測電路設(shè)計(jì)
環(huán)形線圈檢測器(如圖2)可以根據(jù)時(shí)間間隔的數(shù)據(jù)推算出時(shí)間周期內(nèi)車流量的多少,將金屬線圈L1A和L1B連接在變壓器T輸入兩端,通過四個(gè)二極管D1-D4使電壓值保持穩(wěn)定值。振蕩電路經(jīng)過三極管Q2Q3構(gòu)成的負(fù)反饋電路產(chǎn)生了具有恒定值的正弦波形,經(jīng)過以上環(huán)節(jié),金屬線圈的L轉(zhuǎn)換成了LC電路的頻率,通過LM393和74HC14等元件將正弦波整形、放大、濾波,使輸出波形組成整形濾波電路,最后輸出具有穩(wěn)定值邊沿波形。最后通過設(shè)置NE567外圍電路的相關(guān)參數(shù),使檢測頻率檢測不到道路上無車通過的頻率,當(dāng)交通中有車駛過,檢測到頻率,芯片引腳8發(fā)生電平變化,此時(shí)輸出信號(hào)為數(shù)字信號(hào),將數(shù)字信號(hào)接入在FPGA的芯片上,通過檢測近似方波信號(hào)下降沿的數(shù)量來檢測交通流。
論文中設(shè)計(jì)的環(huán)線線圈車輛檢測器應(yīng)用在同一條車道一定距離內(nèi)放置兩個(gè)金屬線圈,通過計(jì)算車輛進(jìn)入第一個(gè)線圈時(shí)脈沖的上升沿和進(jìn)入第二個(gè)線圈時(shí)的脈沖上升沿的時(shí)間差和放置的兩個(gè)金屬線圈的實(shí)際距離,就可以計(jì)算出經(jīng)過線圈的車流量。設(shè)置位置如圖3。
2、紅外線檢測電路設(shè)計(jì)
紅外車輛檢測器是通過微處理器的數(shù)字化處理,可以應(yīng)用到檢測車流量和交通使用者的方向。紅外車輛檢測器對(duì)車流量檢測,成為城市交通安全重要的監(jiān)控系統(tǒng),它在智能交通管理系統(tǒng)中占有一定的地位,是難以割舍的一部分。紅外線檢測電路的傳感器含有一對(duì)紅外線反射管和接收管,發(fā)射管發(fā)射出特定頻率的紅外線,當(dāng)被檢方向遇到反射面時(shí),反射回來的紅外線被接收管接收,因比較器LM393具有抗干擾性強(qiáng)、穩(wěn)定性強(qiáng)等優(yōu)點(diǎn),電路設(shè)計(jì)中采用比較器LM393對(duì)電路進(jìn)行處理之后,實(shí)驗(yàn)板上綠燈點(diǎn)亮,信號(hào)輸出接口輸出數(shù)字信號(hào)為0,該傳感器的探測距離可以通過電位器調(diào)節(jié)閾值比較電壓,其具有干擾小、便于設(shè)置、安裝、維護(hù)等特點(diǎn),非常廣泛地應(yīng)用在車輛檢測、計(jì)數(shù)、循跡等場所。電路如圖4。
三、 交通控制系統(tǒng)的軟件設(shè)計(jì)、仿真及驗(yàn)證
本文選用了Verilog硬件描述語言,使用QuartusⅡ13.1和 modelsim10.0對(duì)電路進(jìn)行開發(fā)、仿真工作,最后用USB Blaster下載線下載到FPGA開發(fā)板中驗(yàn)證是否實(shí)現(xiàn)預(yù)期功能。
(一)軟件設(shè)計(jì)
通過綜合比較、分析幾種設(shè)計(jì)方法的特點(diǎn),決定此次電路設(shè)計(jì)方案,運(yùn)用自頂向下設(shè)計(jì)方法,整個(gè)電路設(shè)計(jì)大體上可將模塊劃分為頂層模塊、車輛檢測模塊、車流量統(tǒng)計(jì)模塊、交通燈控制模塊。
頂層模塊的主要工作是連接外部電路的信號(hào),包括了時(shí)鐘的輸入、車輛檢測器的輸入等,負(fù)責(zé)聯(lián)系各個(gè)子模塊之間工作。車輛檢測模塊的工作是利用車輛檢測器對(duì)交通道路上的過往車輛進(jìn)行檢測,判斷該段交通路段是否有車輛經(jīng)過,并把檢測結(jié)果傳輸?shù)较乱粋€(gè)模塊進(jìn)行處理。車流量統(tǒng)計(jì)模塊是根據(jù)上一模塊傳送的實(shí)時(shí)交通車量信號(hào)進(jìn)行綜合計(jì)數(shù),從而得出車流總量,并將得出的數(shù)據(jù)信號(hào)送到后續(xù)模塊進(jìn)行比對(duì)分析處理。交通燈控制模塊接收上一模塊的數(shù)據(jù)信號(hào),對(duì)數(shù)據(jù)信號(hào)進(jìn)行綜合處理得出交通燈的相位相應(yīng)顏色信號(hào)燈起亮?xí)r間及人行橫道上行人通過的情況。為增加電路的隨機(jī)性加入了串口流量模塊和串口流量統(tǒng)計(jì)模塊。
(二)模塊仿真
1、車輛檢測模塊
檢測模塊是利用紅外線車輛檢測器對(duì)實(shí)時(shí)交通路段過往車輛進(jìn)行檢測,將檢測結(jié)果,傳送到下一個(gè)模塊進(jìn)行綜合處理。sensor_south為南北傳感器輸入, sensor_east為東西方向傳感器輸入。
2、車流量統(tǒng)計(jì)模塊
車流量統(tǒng)計(jì)模塊就是將上一模塊傳送的檢測數(shù)據(jù)結(jié)果進(jìn)行統(tǒng)計(jì)+1計(jì)數(shù)操作,再將綜合處理的數(shù)據(jù)傳送到下一個(gè)模塊進(jìn)行比對(duì)分析處理。此模塊主要是對(duì)傳感器和串口設(shè)置的流量進(jìn)行監(jiān)測,一方面將當(dāng)前的流量值送到下一個(gè)顯示模塊進(jìn)行顯示,另外一個(gè)方面是根據(jù)兩個(gè)方向的差值,確定當(dāng)前的狀態(tài),送到交通燈的主模塊,進(jìn)行燈的控制及時(shí)間的顯示。
3、交通燈控制顯示模塊
因主模塊的控制電路和倒計(jì)時(shí)顯示電路需要的是1KHZ的脈沖信號(hào),而輸入的信號(hào)為50MHZ,所以利用時(shí)鐘模塊轉(zhuǎn)換為所需脈沖信號(hào)。
(1)時(shí)鐘模塊
FPGA時(shí)鐘引腳接入有源晶振的輸出信號(hào)為50MHZ,倒計(jì)時(shí)顯示電路需要的是1KHZ的脈沖信號(hào),為了得到電路所需的1HZ穩(wěn)態(tài)的計(jì)時(shí)信號(hào),本設(shè)計(jì)中采用時(shí)鐘電路模塊對(duì)有源晶振電路50MHZ進(jìn)行分頻。
時(shí)鐘分頻器分為偶分頻和奇分頻,偶分頻的設(shè)計(jì)原理:設(shè)定參考時(shí)鐘CLK為觸發(fā)條件來做計(jì)數(shù)器,每當(dāng)計(jì)數(shù)器為(n/2-1)時(shí),輸出時(shí)鐘發(fā)生高低平轉(zhuǎn)換。奇分頻的原理是:把兩個(gè)計(jì)數(shù)器設(shè)置成相同的最大值(n-1),但是觸發(fā)條件是相反的,分別設(shè)置條件為上升沿和下降沿,
在時(shí)鐘分頻設(shè)計(jì)中,首先設(shè)定一個(gè)計(jì)數(shù)器為counter、時(shí)鐘使能信號(hào)為clk_1khz,工作時(shí)檢測到波形的上升沿操作加1,如此循環(huán),當(dāng)counter=49999999時(shí),counter清零,counter清零后開始工作有效,產(chǎn)生了1KHZ的脈沖信號(hào)。
(2)顯示模塊
程序中需要對(duì)紅綠燈進(jìn)行顯示控制和各個(gè)方向的車流量進(jìn)行顯示,其中這個(gè)模塊主要完成是當(dāng)前流量的顯示,其實(shí)就是一個(gè)動(dòng)態(tài)掃描的過程。
(三)系統(tǒng)驗(yàn)證
利用USB Blaster 下載線把已完成設(shè)計(jì)、仿真環(huán)節(jié)的交通信號(hào)控制系統(tǒng)模塊下載固化到 FPGA 芯片中,用于完成整個(gè)系統(tǒng)交通信號(hào)模塊的功能驗(yàn)證。在完成智能交通系統(tǒng)的驗(yàn)證中,用到了FPGA開發(fā)板的按鍵、數(shù)碼管、時(shí)鐘分頻、串口、JTAG&AS接口等資源。
利用USB Blaster 下載線把設(shè)計(jì)好的交通信號(hào)控制系統(tǒng)模塊下載固化 FPGA 芯片中,接通USB接口,連接已設(shè)計(jì)的交通燈電路,通過調(diào)試得出周期為72秒,其中紅燈36秒,綠燈為33秒,南北相位及相應(yīng)人行橫道綠燈,東西相位及相應(yīng)人行橫道紅燈,如下圖7。
通過紅外線車輛檢測器檢測車輛數(shù)量或由串口輸入數(shù)量時(shí),當(dāng)一相位的車流量大于15時(shí),該相位的綠燈時(shí)間增長,紅燈時(shí)間減少。周期更改為75秒,紅燈時(shí)間為30秒,綠燈時(shí)間為42秒,黃燈時(shí)間固定不變3秒,如圖8。
經(jīng)過上文的驗(yàn)證結(jié)論表明,本論文中設(shè)計(jì)的智能交通控制系統(tǒng)可以在硬件中運(yùn)行,能達(dá)到預(yù)期設(shè)計(jì)效果。
四、結(jié)語
運(yùn)用自頂而下的設(shè)計(jì)方法,應(yīng)用Verilog硬件描述語言對(duì)各個(gè)模塊編寫代碼,通過QuartusⅡ13.1和Modelsim10.0進(jìn)行綜合仿真,驗(yàn)證其設(shè)計(jì)的可靠性和實(shí)用性。最后進(jìn)行電路驗(yàn)證,該設(shè)計(jì)應(yīng)用Altera公司生產(chǎn)Cyclone Ⅳ四代型號(hào)為EP4CE6E22C8N 的FPGA芯片驗(yàn)證,利用USB Blaster 下載線把設(shè)計(jì)好的交通信號(hào)控制系統(tǒng)模塊下載、固化到FPGA 芯片中,連接已設(shè)計(jì)的交通燈電路,觀察、調(diào)試、驗(yàn)證整個(gè)電路的運(yùn)行情況,得出結(jié)論:該設(shè)計(jì)電路可以在硬件上實(shí)現(xiàn),達(dá)到預(yù)期設(shè)計(jì)效果。
【參考文獻(xiàn)】
[1]張國伍,彭宏勤.智能交通系統(tǒng)工程導(dǎo)論.北京:電子工業(yè)出版社,2003:4-10
[2] 祁駿.智能交通視頻事件流監(jiān)控系統(tǒng)關(guān)鍵技術(shù)研究.碩士論文.東南大學(xué),2014
[3]吳曉華.城市平面交叉口交通信號(hào)的智能控制技術(shù)研究.碩士論文.武漢理工大學(xué),2006
[4]陳傳明.城市道路交通智能控制方法的研究.碩士論文.安徽大學(xué),2005
[5]王瑤.智能交通自適應(yīng)控制系統(tǒng)的研究與實(shí)現(xiàn).碩士論文.華北電力大學(xué),2005