漆 顥,胡 敏,龔晚林
(1.湖北中醫藥大學,湖北 武漢 430065;2.武漢大學,湖北 武漢 430072)
隨著經濟的飛速發展,人們的生活水平日益提高,私家車也成為了家庭的必備品,但汽車數量的爆發式增長,所帶來的交通擁堵問題也日益突顯出來[1],特別是一些城市道路,不同時段不同方向的車流量是處于變化的,而路口交通信號燈通行時長都是預先設置好的,不論這個路口車流量多少,都是按照同一個數值運行。這就必然會導致路口的通行效率很低,特別是在早晚高峰時段,可能會引發連鎖反應,最終影響整個城市的交通網絡。因此,提高交叉路口的通行效率就顯得尤為重要[2]。國內外已有關于智能交通控制系統的設計,在統計車流量時大都是采用紅外技術模塊對路過該測量點的車輛進行統計,然后傳入單片機控制系統中。由于測量點與停止線有一段距離,因此,這種統計車流量方法不能實時地得到真正處于等待的小車數目[3-5]。
本次設計的智能交通系統可依據路口等待紅燈的車輛數目對路口通行時長進行實時控制,優點是結合多個紅外傳感器,利用黃燈閃爍時刻反饋的參數對交通燈進行調節,實現十字路口的實時動態控制,最終提高十字路口的通行效率,緩解城市交通擁堵的問題。
本文系統是基于51單片機進行設計的,主要包括車流量統計模塊、交通燈控制模塊、時間顯示模塊[6-8],如圖1所示。車流量統計模塊將等待紅燈車道上的小車數量傳送到單片機中,利用內部算法程序將等候車輛數目轉換為即將亮起的綠燈通行時長,同時在時間顯示模塊中利用數碼管顯示倒計時時間,以此循環。另外,讀取車輛數目的時機選在由綠燈變為黃燈時,也就是倒計時還剩3 s時,這樣可以保證該車道上車輛的即時數據。

圖1 智能交通系統功能模塊
車流量統計模塊的主要功能是統計等待紅燈的車的數量,其原理是紅外障礙探測技術[9-10],將紅外對管安裝在道路中央,其內部如圖2右邊所示。紅外對管發出紅外光,當道路上停有汽車時,會反射信號并被接收,以此判斷是否有等待汽車[11]。圖2左邊是某個方向的行車道,紅色小球代表紅外對管安裝位置,相鄰兩個紅外對管的距離保持一個車距,保證一輛小車被一個紅外對管探測到,東南西北駛入路口方向的4條道路都按此方法安裝紅外設備。該模塊的工作流程如圖3所示。假設目前十字路口南北方向為紅燈,東西方向綠燈,南北方向道路上的紅外對管實時探測等待紅燈車輛的數目,當東西方向綠燈變成黃燈時,讀取并比較東西方向車輛數目,取2條車道中車輛數目最大的傳入單片機中,經過內部算法處理轉換為下個時段南北方向綠燈的時長,倒計時結束,這時十字路口狀態就變成東西方向紅燈,南北方向綠燈。以此循環,實現路口通行時長隨等待紅燈車輛數目的動態變化[12]。
MCS-51單片機正常工作需要三個必要條件:電源、時鐘電路、復位電路[13]。如圖4所示,利用Proteus軟件畫出單片機最小應用系統,單片機的40管腳VCC和20管腳VSS分別接電源和接地,在此圖中省略。作為單片機的核心部分的時鐘電路,其作用是為單片機內部提供一個高穩定性的時鐘脈沖信號,即為單片機的指令提供基準脈沖信號,該電路由18管腳XTAL2和19管腳XTAL1引出與外接的晶振和電容構成,選取晶振頻率為12 MHz。復位電路作用是使單片機從程序的第一條指令開始運行,也就是使單片機內部各個寄存器的值變為初始狀態,防止單片機在運行中出現混亂情況,其電路由9管腳引出與電容、電源、按鈕和電阻構成,可實現上電復位和手動復位。

圖2 車道紅外對管布局圖

圖3 智能交通系統功能模塊

圖4 單片機最小應用系統
交通燈控制模塊主要由LED燈和電源組成[14],東南西北每個方向分別放置一組紅黃綠來模擬十字路口的信號燈,如圖5所示,水平方向為東西向車道,EW-R代表東西向紅燈引腳標簽,EW-Y代表東西向黃燈引腳標簽,EW-G代表東西向綠燈引腳標簽,同理SN-R,SN-Y和SN-G則表示南北方向引腳標簽,這兩組標簽對應單片機P1口的6個引腳,可實現通過改變單片機P1的數值對LED燈進行實時控制。

圖5 交通燈電路設計
在交通信號燈系統中,倒計時時間的顯示也是十分必要的,其電路如圖6所示,利用數碼管、排阻、數字芯片74LS245構成倒計時顯示電路[15],兩個數碼管分別模擬東西向和南北向信號燈的倒計時顯示屏,數碼管的段控端由系統總線連接,對應的標簽值從a~h,然后通過排阻引腳連接到單片機的P0口,而數碼管的位選端則是通過芯片74LS245的引腳與單片機的P2口連接,從而實現單片機對數碼管的段控和位控。

圖6 倒計時顯示電路
首先對于各個元器件進行初始化,然后編寫程序,其主程序流程如圖7所示。交通信號燈初始狀態位南北向紅燈,東西向綠燈,4個方向倒計時均顯示20 s,當倒計時進入3 s時,南北向紅燈不變,東西向綠燈轉換為黃燈閃爍,提示車輛減速,即將進入紅燈狀態,與此同時單片機讀取南北向等待紅燈的車輛數目,取其最大值N,并與參考值進行比較,當N<6時,T=20 s;當 6≤N<10時,T=20+2(N-6) s;當N≥10時,T=30 s。其中,T表示信號燈下一個狀態即南北向綠燈,東西向紅燈時倒計時的數值,當倒計時T=3時,則立即讀取東西方向兩車道上車輛的最大值,并計算出下一個狀態的T值,以此循環。

圖7 主程序流程
利用Proteus軟件繪制仿真電路圖[16-17],并用Keil軟件編寫程序導入到單片機中進行仿真調試。仿真電路圖如圖8所示,其中等候紅燈的車輛數目用隨機函數rand()進行模擬。通過實際調試,系統可以實現將隨機函數產生的車輛數目實時轉換為路口的通行時長,并運行正常。調試參數對比見表1所列。

圖8 交通燈系統仿真電路
實物制作利用開發板模擬交通信號燈,如圖9所示。取6個流水燈分別表示南北方向和東西方向的紅綠燈,此時流水燈LED1表示南北方向紅燈,LED7表示東西向綠燈,數碼管模擬倒計時模塊。

表1 調試參數對比

圖9 交通燈系統開發板模型
本文介紹一種以單片機為核心的智能交通燈的設計方法。采用紅外對管傳感器采集等待紅燈車輛數目,傳送至單片機中轉換為下一狀態通行時長,并導入到交通燈控制模塊中。通過實踐表明,該系統可以實現以當前路口的車流量來自動調整信號燈的通行時間的功能。