吳文亮 張靚



摘 要: 采用主單片機采集檢測部分的數據,并對數據進行分析進而控制交通燈的狀態;采用單片機對汽車的速度進行采集,并傳送到主單片機進行分析。對傳統的地磁線圈檢測方法進行了改進,增加了速度的檢測,從而為交通燈的時間調節提供了依據。
關鍵詞: 多單片機; 傳感器; 交通燈
中圖分類號: TP 391.9 文獻標志碼: A 文章編號: 1671-2153(2015)05-0087-04
0 引 言
隨著科學技術的發展,我國對于交通建設方面也更加重視,不僅進行了設備的更新[1],而且還投入了大量的人力物力,并且傳統的交通燈存在問題,如在十字路口時東西方向的車輛少,而南北方向的車輛多,不論南北方向的車有多少,東西方向還是正常的定時,這就使通行更加擁堵,所以有時就會出現交通指揮人員來緩解交通擁堵的情況,這就使交通行業顯得比較被動[2-3]。該項目國內也有很多學者進行研究,并且做出了一定的產品,但是這些產品還帶有一定的滯后性,不能根據交通流實時的調整時間[4]。
智能化城市交通系統是高新技術在城市交通領域的綜合體現,智能化交通充分利用了信息傳輸和處理的技術,在提高現有交通設施的利用率方面發揮著極為重要的作用[5-6]。隨著社會信息化時代的到來,無論是城市發展的模式,還是城市交通發展的觀念和技術,都將受到猛烈的沖擊。智能化交通系統的基礎是交通數據的采集、處理和反饋,使交通有進一步的進步和擴展。
本研究主要是針對交通堵塞時的一些問題進行智能處理,利用傳感器技術進行檢測,單片機為控制核心,對于車流量的多少進行檢測,從而做出判斷,控制紅綠燈時間的長短。利用另一塊單片機來模仿一個傳感器所測得的車輛速度,在該設計中暫時先模擬三個傳感器來測量車速度及車流量來判別車輛是否擁擠,并且還增加了高速、中速、低速的測試,這樣就很方便進行多次試驗,取值更準確。
1 智能控制交通信號燈總體設計
在十字路口中如果東西方向的車輛通行時,南北方向的車輛禁止。根據這一規定,系統總體設計結構如下圖1所示。
本設計主要由多單片機組成,根據功能可以分為主控制CPU,負責對檢測數據進行分析;檢測模塊CPU,對地磁線圈的信號進行處理,轉換成速度信號,傳輸至主CPU;顯示模塊CPU,根據主CPU的結果控制紅綠燈和時間的顯示。
2 硬件設計
2.1 主模塊設計
主控制模塊的核心器件是單片機8051,它主要包括信號判優接口,主CPU模塊,顯示接口,如圖2所示。
信號判優接口主要接收檢測矩陣傳來的數據,根據矩陣數據判斷該道路車流情況,主要由74LS148優先編碼器來進行優先級判別,主CPU模塊主要對所有路口的車流情況進行綜合考慮,決定路口等待時間或者通行時間的合理分配,最終通過顯示接口傳輸至顯示模塊。
2.2 顯示模塊設計
顯示模塊主要由8051單片機、LED發光二極管、數碼顯示器組成,如圖3所示。
顯示模塊中的CPU主要作用是根據主控制模塊傳輸的信號,調出預先設定的倒計時時間,從而控制數碼顯示器的顯示,同時控制紅、綠、黃幾種燈的交替點亮。正常情況下綠燈時間為30 s,黃燈時間為3 s,紅燈時間為35 s;擁堵時段可以把綠燈適當提高至50 s;而當車輛稀少的時候可以把時間適當減少至20 s。
時間顯示主要采用倒計時功能,倒計時顯示功能是為了使駕駛員能清楚的了解自己所處的車道是否允許通行;在倒計時快結束時啟動車子,減少因不了解信號燈變換時間而增加的起動延誤時間,提高綠燈的利用率;穩定駕駛員在等待紅燈時的情緒,減少違章闖紅燈的現象;在某個信號燈出現故障時能替代顯示信號燈指揮交通,保證交通的正常運行。
2.3 檢測模塊設計
檢測模塊主要由地磁線圈和單片機組成,且每個檢測點由一對地磁線圈和一個單片機組成,如圖4所示。
圖4中,當汽車車輪通過地磁線圈時,根據霍爾效應會產生一個脈沖波,當單片機檢測到第一個脈沖波的時候開啟定時器,等到第二個脈沖波到來的時候結束定時,此時的時間差即為某車輪通過的時間。假設埋地磁線圈正確,兩個線圈之間的距離為1m,根據公式(1)可以估算出此時車輛的即時速度,即
V=L/t, (1)
式中:V為車輛的即時速度;L為地磁線圈距離1m;t為兩個脈沖之間的間隔時間。
由于單片機不能進行復雜的數學運算,而且該系統也不需要獲得精確的速度,所以對速度的精度要求不高,只需計算出大概的速度,并將其映射到對應的速度區間即可,最后主CPU模塊根據速度區間的情況調整通行和等待時間。
該檢測器結構簡單,造價也便宜,所以可以根據需求進行埋放。本研究主要考查每條道路上埋放三個的情況,如圖5所示。
由圖5可以看出,在道路上放置三個監測點(可以根據實際情況調整三個檢測點的距離),在檢測的時候分為當前道路是紅燈和綠燈兩種情況。檢測三個點車輛的即時速度,通過三點速度的組合情況可以判斷出該道路汽車車流的情況。
在紅燈情況下,如果V1<5 km/h,說明路口已有車輛在等待,此時如果V2<5 km/h,說明排隊車輛已經到了2點的位置,如果此時V3<5 km/h,說明在3點處也有車輛的等待,綜合考慮認為車輛排隊的時間較長,這時應當在下一個綠燈時增加綠燈的時間;如果V1<5 km/h,但是V2和V3的速度較快,一般V2
在綠燈情況下,一般V1>10 km/h,說明此時路口車輛能正常通行,如果V2>10 km/h,說明該處車輛不會出現積壓現象;如果V2<5 km/h,說明該處車輛已經出現積壓現象;同理V3可以得到相似的結論。此時結合垂直道路紅燈等待的情況,適當調節下次紅燈等待的時間。
3 軟件設計
由于該系統采用多CPU模式,所以應該對不同的CPU根據其功能編制不同的程序。主要分為主控制程序,檢測模塊程序,顯示模塊程序。
3.1 主CPU程序設計
主CPU程序如圖6所示:通過對檢測模塊數據的采集,根據車流的判斷,決定紅綠燈時間的增減,最終將時間數據輸出至顯示模塊。
3.2 檢測模塊程序設計
檢測模塊如圖7所示:當汽車輪胎通過第一個地磁線圈的時候,啟動單片機的定時器,當輪胎通過第二個地磁線圈的時候,關閉定時器,根據此時的時間可以計算出汽車的即時速度。
4 仿真實驗
本文仿真實驗采用Protues軟件平臺進行。 Protues是一款功能強大的EDA工具軟件,可以直接在原理圖中進行單片機和外部連接電路的仿真,與Keil連接,動態的模擬器件的動態,是目前比較常用的單片機仿真軟件。
本實驗主要通過對道路分成三種情況進行模擬實驗:擁堵、正常、通暢。通過實驗表明,該設計能實時根據道路車輛情況對交通燈進行合理的調節,從而達到基本的設計目的,圖8為某一時刻的道路交通燈狀態。
5 結束語
智能交通信號燈控制器的發展與研究對交通運輸行業的有著舉足輕重的作用。本設計主要研究了十字路口交通燈控制和模擬仿真,主要確定了檢測車流量的方案,單片機硬件電路設計,C語言程序設計和Protues仿真調試等。利用Protues仿真,調試硬件和軟件顯示最終結果。
該電路的仿真只是實現了信號燈控制的一部分,其余的具體數據還有待實驗,本設計是以單片機為核心,并且通過單片機模擬車流量,和控制中高速的三個速度來進行實驗。測量的方法如果用到現實中可能會存在很多的干擾問題,會導致測量不準確,因此還需要改進,電路的復雜度還有待于提高,這也是后續研究的方向。
參考文獻:
[1] 程紅舉,黃行波,XIONG Naixue. 不可靠通信環境下無線傳感器網絡最小能耗廣播算法[J]. 軟件學報,2014,25(5):1101-1112.
[2] 郭文忠,余朝龍,陳國龍. 無線傳感器網絡中帶粒子群優化的分簇節點睡眠調度算法[J]. 模式識別與人工智能,2013,26(10):985-992.
[3] 孫玉霞,HARROLD Mary Jean,張成志,等. 一種面向傳感器網絡應用程序的有效測試方法[J]. 計算機學報,2013,36(12):2371-2389.
[4] 楊欣. 51單片機應用從零開始[M]. 北京:清華大學出版社,2008.
[5] 楊庚,李森,陳正宇,等. 傳感器網絡中面向隱私保護的高精確度數據融合算法[J]. 計算機學報,2013,36(1):189-200.
[6] 張希偉,戴海鵬,徐力杰,等. 無線傳感器網絡中移動協助的數據收集策略[J]. 軟件學報,2013,24(2):198-121