基于STC單片機的機場車輛超速報警系統(tǒng)
隨著民航業(yè)的發(fā)展,航空器的數(shù)量不斷增多,地面保障車輛隨之增加,加之機場車輛行駛速度過快,導致刮碰飛機的不安全事件時有發(fā)生,直接影響了飛機的持續(xù)適航,嚴重危及航空公司的運行安全,同時也造成了一定的經(jīng)濟損失。為了減少此類不安全事件的發(fā)生,本設(shè)計利用單片機實現(xiàn)車輛的超速報警來提醒司機減速行駛,并將超速情況實時記錄下來作為評價車輛駕駛員的依據(jù)之一,以便于對員工進行管理。
1 系統(tǒng)的硬件設(shè)計
1.1 系統(tǒng)功能
系統(tǒng)實現(xiàn)的主要功能如下:
(1)按鍵調(diào)整時間以及實時顯示時間;
(2)實時顯示車輛行駛的速度;
(3)當車輛超過規(guī)定的速度值時,違規(guī)情況以數(shù)據(jù)形式保存在串行存儲器中,并發(fā)出聲音警報,同時警報燈閃爍;
(4)管理人員使用IC卡讀取車輛的違規(guī)情況并取消報警。
1.2 系統(tǒng)硬件的總體設(shè)計
系統(tǒng)的總體結(jié)構(gòu)如圖1所示。它采用STC89C52單片機為主控芯片,主要有電源模塊、信號采集模塊、時鐘模塊、LED顯示模塊、按鍵模塊、報警模塊、AT24C64串行存儲器模塊和接觸式IC卡存儲模塊。其中STC89C52主要完成對外圍硬件的控制以及信息處理功能;電源模塊將12 V車載電源降壓至5 V單片機工作電源;信號采集模塊使用TLP521光電耦合器將采集到的高電平脈沖信號轉(zhuǎn)換為5 V脈沖信號;時鐘模塊提供LED顯示的實時時間;LED顯示模塊使用74HC595驅(qū)動數(shù)碼管實現(xiàn)時間和速度的顯示;按鍵模塊主要用來調(diào)整時間;報警模塊實現(xiàn)超速后的聲音報警和閃燈警示;AT24C64串行存儲器對超速信息進行存儲;接觸式IC卡存儲器可讀取AT24C64中的數(shù)據(jù),讀取完數(shù)據(jù)即可取消報警。
1.2.1 主控模塊
主控模塊主要采用STC89C52單片機[1-2],該單片機有4個并行I/O端口,每個端口有8條端口線,其中P0端口在沒有外存儲器時可作為8位準雙向I/O端口使用,外接存儲器時可作為地址線/數(shù)據(jù)線使用;P1、P2和P3端口均可作為8位準雙向I/O端口使用,P3口和其他I/O端口有很大區(qū)別,除作為一般I/O口外,每個引腳還有專門的功能。所有的外部芯片都可以通過這些端口進行擴展。
1.2.2 電源模塊
電源模塊使用LM2596開關(guān)電壓調(diào)節(jié)器,該調(diào)節(jié)器是降壓型電源管理單片集成電路,能夠輸出3 A的驅(qū)動電流,同時具有很好的線性和負載調(diào)節(jié)特性。該系統(tǒng)中選擇固定輸出5 V版本,即調(diào)節(jié)器型號為LM2595-5.0。該器件內(nèi)部集成頻率補償和固定頻率發(fā)生器,開關(guān)頻率為150 kHz,與低頻開關(guān)調(diào)節(jié)器相比較,可以使用更小規(guī)格的濾波元件。由于該器件只需4個外接元件,極大地簡化了開關(guān)電源電路的設(shè)計。原理圖如圖2所示。
1.2.3 信號采集模塊
目前機場車輛轉(zhuǎn)速傳感器大多使用霍爾傳感器,其輸出信號為脈沖信號,脈沖信號的高電平值基本與車載電源電壓值相同,需要通過光電耦合器將其轉(zhuǎn)換為單片機可采集的5 V脈沖信號[3]。如圖3所示,Signal為轉(zhuǎn)速傳感器實際輸出的信號,轉(zhuǎn)換后的信號與單片機INT1/P3.3引腳連接,通過外部中斷功能記錄脈沖數(shù)并通過計算轉(zhuǎn)換為速度值。
[next]
1.2.4 時鐘模塊
時鐘模塊使用DS1302浚流充電時鐘芯片,該芯片包含一個RTC/日歷和31 B的靜態(tài)RAM。它通過簡單的串行接口與微處理器通信。RTC/日歷提供秒、分、小時、天、日期、月和年。如果當月天數(shù)小于31天將自動進行調(diào)整,包含閏年校正。時鐘可以工作在24小時制和12小時制,12小時制下用AM/PM來指示,該系統(tǒng)中選擇使用24小時制。
在DS1302和微處理器之間使用同步串行方式進行通信。只需要3條線就可以通信,分別為RST(reset)、I/O(數(shù)據(jù)線)和SCLK(串行時鐘),Vcc1連接至3 V備用電源,在主電源Vcc2供應失效時,備用電源以保持時間和數(shù)據(jù),原理圖如圖4所示。
1.2.5 LED顯示模塊
LED顯示模塊使用2片74HC595級聯(lián)驅(qū)動8位LED數(shù)碼管[4],前6位數(shù)碼管顯示實時時間,后2位顯示速度值。
74HC595芯片是美國國家半導體公司生產(chǎn)的通用移位寄存器芯片。并行輸出端具有輸出鎖存功能,與單片機連接簡單方便,只需3個I/O口即可。本系統(tǒng)采用2片74HC595芯片級聯(lián),一片用于段碼的傳輸,另外一片用于數(shù)碼管位選。原理圖如圖5所示。
1.2.6 按鍵模塊
按鍵模塊采用三個獨立按鍵,實現(xiàn)時間的調(diào)整。S2為功能鍵,通過此鍵來選取要調(diào)整的小時、分鐘和秒,調(diào)整完畢后此鍵還有確定功能;S3為增加鍵,當功能鍵選定后,按此鍵來增加選定項值;S4鍵用以減小選定項的值。各項功能均通過軟件實現(xiàn),原理電路較簡單,如圖6所示。
1.2.7 報警模塊
報警模塊采用三極管驅(qū)動蜂鳴器,三極管驅(qū)動繼電器并通過繼電器控制12 V的LED警示燈,原理圖如圖7所示。
1.2.8 AT24C64串行存儲器模塊和接觸式IC卡存儲模塊
單片機在工作時,因某種原因造成突然掉電,將會丟失數(shù)據(jù)存儲器(RAM)里的數(shù)據(jù)。雖然單片機主電源里有大容量濾波電容器,當?shù)綦姇r,單片機靠貯存在電容器里的能量,一般能維持工作10 ms 左右。為此,要求一旦系統(tǒng)發(fā)生瞬間斷電時,必須要在小于10 ms的時間內(nèi)將RAM中的數(shù)據(jù)及時地轉(zhuǎn)存到EEPROM數(shù)據(jù)寄存器中,以確保車輛超速信息的完整度。在本系統(tǒng)中,采用AT24C64存儲器對數(shù)據(jù)進行存儲。
IC卡存儲模塊中使用24C64 IC卡對數(shù)據(jù)進行讀取。AT24C64存儲器及IC卡均通過I2C總線接口進行操作,由于IC卡器件地址只能為默認的000,所以通過將AT24C64的A0接VCC改變其器件地址為001,IC卡座的10管腳與單片機P3.2引腳連接,使用外部中斷0執(zhí)行插卡后的數(shù)據(jù)讀取操作,LED0為插卡指示燈。原理圖如圖8所示。
[next]
2 系統(tǒng)的軟件設(shè)計
整個系統(tǒng)的軟件采用結(jié)構(gòu)化和模塊化設(shè)計方法。整個軟件系統(tǒng)采用C語言編程,包括一個主模塊和3個子模塊,3個子模塊分別是鍵盤掃描、時鐘程序模塊和I2C協(xié)議程序。總體軟件流程圖如圖9所示。
主模塊包括單片機初始化、信號采集、速度顯示、超速報警程序以及插卡判斷與執(zhí)行程序;鍵盤掃描程序?qū)崿F(xiàn)對時間的調(diào)整,為了安全起見只允許在車輛靜止時對時間進行調(diào)整;時鐘程序模塊主要包括時鐘芯片的初始化、時間數(shù)據(jù)的讀取與寫入程序以及實時顯示;74HC595驅(qū)動顯示程序是將顯示緩沖區(qū)的BCD碼經(jīng)查表譯碼后送數(shù)碼管顯示;I2C協(xié)議程序主要是實現(xiàn)存儲器與單片機之間數(shù)據(jù)的正確通信。
本文介紹了一種基于STC單片機的車輛超速報警系統(tǒng)。經(jīng)過多次實驗,論證了該方法的可行性和實用性,實驗中各項功能正常,運行可靠,使用方便,效果好,達到了設(shè)計要求。
霍爾傳感器相關(guān)文章:霍爾傳感器工作原理
蜂鳴器相關(guān)文章:蜂鳴器原理 霍爾傳感器相關(guān)文章:霍爾傳感器原理
評論