基于A(yíng)T89S51的智能交通燈控制系統設計與仿真
摘要:針對城市交通控制問(wèn)題,提出以AT89S51作為系統的控制核心,實(shí)現正常情況下各個(gè)方向信號燈的輪流指示及倒計時(shí)顯示。系統能根據各方向車(chē)輛的實(shí)際通行情況及時(shí)切換通行方向,并保證緊急情況下特殊車(chē)輛的及時(shí)通行。最后利用Proteus仿真調試驗證了系統設計的正確性。
本文引用地址:http://dyxdggzs.com/article/201610/306812.htm隨著(zhù)經(jīng)濟與社會(huì )的快速發(fā)展,城市交通壓力越來(lái)越大,如何通過(guò)有效的交通管理,實(shí)現人、車(chē)、路三者之間的協(xié)調,已經(jīng)成為交管部門(mén)亟待解決的主要問(wèn)題之一。除了通過(guò)多種交通出行方式緩解交通壓力以外,在路面交通控制中,對交通信號燈的靈活有效控制,已經(jīng)成為城市交通控制系統中重要組成部分。
傳統的十字路口交通控制系統中,一般只采用紅綠黃燈分方向輪流控制形式,沒(méi)有考慮到實(shí)時(shí)的各方向路面車(chē)流輛情況,緊急突發(fā)事件的應急處理等,這樣的控制顯得不夠靈活,無(wú)法達到最優(yōu)的交通指揮目的。本文提出的智能交通燈控制系統,可通過(guò)對通行方向實(shí)際路面車(chē)輛有無(wú)的檢測,及時(shí)切換通行方向,并針對緊急情況,保證特殊車(chē)輛的優(yōu)先通行。此外,還可實(shí)現對各方向時(shí)間的倒計時(shí)顯示,使交通指揮高效靈活。
1 系統設計要求
1)設東西道為A道,南北道為B道;A道放行60 s;B道放行30 s;綠燈放行,紅燈停止;綠燈轉紅燈時(shí),黃燈亮3 s。
2)當一道有車(chē)而另一道無(wú)車(chē)時(shí),交通燈控制系統立即讓有車(chē)的車(chē)道放行。
3)遇到特殊情況,可撥動(dòng)應急開(kāi)關(guān),使各方向均為紅燈,特殊車(chē)輛不受紅燈限制,保證其順利通過(guò)后將開(kāi)關(guān)撥回原位,系統恢復原狀態(tài)進(jìn)行。
4)具有遞減時(shí)間顯示功能。
2 系統設計方案
系統的控制方案有多種,可采用PLC、CPLD、單片機或純電路設計等設計方案。從控制的靈活性、實(shí)現的方便程度以及性?xún)r(jià)比等方面綜合考慮,本設計采用AT89S51單片機作為控制核心器件。采用紅、綠、黃燈各4個(gè)作為交通指示,采用霍爾傳感器分別檢測兩個(gè)方向有無(wú)車(chē)輛通行。處理緊急車(chē)輛的開(kāi)關(guān)接到外部中斷引腳INT0。使用兩位數碼管進(jìn)行遞減時(shí)間顯示,并采用動(dòng)態(tài)掃描的顯示方式。此外,單片機系統工作需要時(shí)鐘電路和復位電路構成最小系統。
整個(gè)系統的組成框圖如圖1所示。

3 硬件電路設計
1)單片機最小系統:原理圖如圖2所示。AT89S51作為控制核心,加上時(shí)鐘電路及復位電路組成單片機最小系統如圖2所示。其中時(shí)鐘電路的晶振頻率為12 MHz,為單片機工作提供基本的工作時(shí)序。采用按鍵復位電路,在系統上電以及非正常工作時(shí)實(shí)現復位。

2)信號燈顯示電路:采用12個(gè)交通燈模型來(lái)模擬實(shí)際交通信號燈,其中P1.0~P1.2輸出控制A道的紅、綠、黃燈,即P1口的1個(gè)輸出引腳同時(shí)控制同一道上不同方向的兩個(gè)信號燈,若驅動(dòng)能力不夠時(shí)可增加驅動(dòng)電路以達到功率匹配。同理,P1.3~P1.5輸出控制B道的紅、綠、黃燈,交通燈模型在單片機輸出引腳為高電平時(shí)點(diǎn)亮。原理圖如圖3所示。(注:為描述方便,單片機引腳表示方法如:P1.0引腳用P10符號表示。)

3)車(chē)輛檢測輸入:采用霍爾傳感器進(jìn)行車(chē)輛有無(wú)的檢測,在每個(gè)方向車(chē)道的入口處安裝一個(gè)霍爾傳感器。當該方向車(chē)輛入口處有車(chē)輛時(shí),霍爾傳感器會(huì )發(fā)出一個(gè)脈沖,得到車(chē)輛的有無(wú)信號。本設計只在A(yíng)、B道上各放置一個(gè)霍爾傳感器(實(shí)際應是兩個(gè))。由于在Proteus仿真中沒(méi)有霍爾傳感器的模型,但是考慮到霍爾傳感器發(fā)出的是單脈沖,此處可采用一個(gè)開(kāi)關(guān)替代來(lái)進(jìn)行仿真。車(chē)輛檢測輸入部分如圖4所示。
4)緊急開(kāi)關(guān)輸入:當出現緊急情況需要特殊車(chē)輛優(yōu)先通行時(shí),可撥通緊急開(kāi)關(guān),緊急開(kāi)關(guān)可接至外部中斷0,此時(shí)各方向交通燈全紅,等待特殊車(chē)輛通行后在關(guān)掉緊急開(kāi)關(guān),恢復信號燈的正常顯示。緊急開(kāi)關(guān)輸入部分如圖4所示。
5)倒計時(shí)顯示電路:采用共陽(yáng)極2位數碼管進(jìn)行60 s或30s遞減時(shí)間顯示,使用P0口輸出LED顯示器的段碼,P2口輸出LED顯示器的位碼??紤]到采用動(dòng)態(tài)掃描方式,需增加驅動(dòng)電路,故在P0口輸出段碼時(shí)先接至74HC573鎖存器進(jìn)行驅動(dòng),再接至LED數碼管的段控端。通過(guò)P2口輸出4個(gè)位碼時(shí)經(jīng)由74HC04反相驅動(dòng)后再接到數碼管的位控端。電路原理圖如圖5所示。

4 系統軟件設計
根據系統控制要求及硬件原理圖,軟件采用匯編語(yǔ)言進(jìn)行程序設計,主程序流程如圖6所示。將A、B車(chē)道的傳感器接至P3.6和P3.7,當P3.6=0表示A道有車(chē)輛通過(guò);P3.6=1表示A道無(wú)車(chē)輛通過(guò)。同理,可判斷B道車(chē)輛通行情況。

對緊急車(chē)輛的處理,采用外部中斷的方式,由外部中斷0服務(wù)程序處理。LED數碼管顯示采用動(dòng)態(tài)掃描方式實(shí)現倒計時(shí)的顯示,通過(guò)定時(shí)器T0進(jìn)行20ms的定時(shí),在定時(shí)器T0服務(wù)程序中實(shí)現十位和個(gè)位時(shí)間的輪流顯示。由于篇幅限制,外部中斷0服務(wù)程序和定時(shí)器0中斷服務(wù)程序流程此處略。
5 Proteus仿真調試
軟件采用匯編語(yǔ)言設計,在Keil C51集成開(kāi)發(fā)環(huán)境下將編寫(xiě)的程序進(jìn)行編譯、調試,并生成目標文件(.hex)。此外,利用EDA仿真軟件Proteus繪制出電路仿真原理圖,CPU選擇AT89S51。雙擊AT89S51,在出現的對話(huà)框中的“Program file”加入已生成的.hex文件,并進(jìn)行仿真調試。調試成功后,正常情況下A、B道的紅綠黃信號燈輪流亮并具有倒計時(shí)顯示,按下緊急開(kāi)關(guān)則A、B通道紅燈一直亮直至松開(kāi)緊急開(kāi)關(guān);若檢測到當前通行道上無(wú)車(chē)而哦、另一道上有車(chē)時(shí),能正確切換通行方向。正常情況下的仿真效果圖如圖7所示仿真顯示當前A道紅燈,B道路燈通行,倒計時(shí)時(shí)間為16 s。

6 結論
該設計以AT89S51單片機作為控制核心,能實(shí)現正常情況的通行指示,各方向車(chē)流情況不同的及時(shí)通行切換,以及緊急情況下的特殊通行,并通過(guò)Proteus軟件的仿真調試驗證了系統設計的正確性。與傳統交通燈控制系統相比,該系統具有硬件結構簡(jiǎn)潔、控制靈活、維護方便等優(yōu)點(diǎn),在交通控制領(lǐng)域中具有較好的實(shí)用價(jià)值。
評論