基于信號校驗技術(shù)的單片機交通燈控制終端
摘要:根據區域協(xié)調型智能交通系統的要求,設計了基于單片機控制的交通燈控制終端。交通燈控制終端與智能協(xié)調中樞控制系統進(jìn)行通信,反饋車(chē)流量信息,并按照中樞系統的要求來(lái)控制紅綠燈的工作。本終端采用雙單片機信號校驗的方式,配合看門(mén)狗的使用,糾正終端運行過(guò)程中可能發(fā)生的錯誤,并加入警報和自投入備用模塊,在運行出錯情況下發(fā)出警報,在設備故障情況下自投入備用控制器,保證路口交通安全穩定。
本文引用地址:http://dyxdggzs.com/article/201610/307243.htm關(guān)鍵詞:信號校驗;單片機;看門(mén)狗;備用模塊
智能交通系統一直是交通系統研究的一個(gè)重要方向,智能交通系統研究中一個(gè)重要的分支是統籌各路段的車(chē)流量信息,統一規劃調控各路口的紅綠燈時(shí)間來(lái)控制車(chē)輛通行,達到智能交通所需要的目的。
現階段的交通燈控制終端一般采用PLC作為控制器,PLC穩定性好,編程和操作簡(jiǎn)單,在信號燈亮燈時(shí)長(cháng)不變的交通燈控制中得到廣泛應用。但是PLC通信復雜,參數更改不方便,靈活性差,并不能很好的滿(mǎn)足智能交通系統對于交通燈控制終端的要求。
基于智能交通系統對于交通燈控制終端的特殊要求,提出了以單片機為控制核心的交通燈控制終端。單片機可編程性強,靈活性好,而且價(jià)格便宜,可以隨時(shí)與智能協(xié)調中樞控制系統進(jìn)行通信,并能在極短的時(shí)間內響應智能協(xié)調中樞控制系統的控制要求,實(shí)現交通燈控制時(shí)長(cháng)的變化。
1 系統總體概況
智能交通系統的結構如圖1所示,智能協(xié)調中樞控制系統(以下簡(jiǎn)稱(chēng)“智能控制系統”)與交通燈控制終端進(jìn)行實(shí)時(shí)通信,交換紅綠燈時(shí)長(cháng)和車(chē)流量信息等數據,交通燈控制終端根據智能控制系統的要求來(lái)控制紅綠燈工作。

本文設計的以單片機為控制核心的交通燈控制終端能夠實(shí)時(shí)響應智能控制系統發(fā)出的信號,隨時(shí)調整紅綠燈時(shí)間,并能將車(chē)流量統計信息實(shí)時(shí)反饋給智能控制系統。智能控制系統發(fā)送給單片機的時(shí)間信號以及單片機輸出的交通燈顯示信號都會(huì )經(jīng)過(guò)合理性校驗,確保信息的合理性,保證交通路口通行安全。如控制單片機出現運行錯誤,系統可自復位并發(fā)出警報;如系統發(fā)生永久性故障,系統可自動(dòng)切換備用控制器。
1.1 運行要求
十字路口交通燈系統中,每個(gè)路口有4個(gè)信號燈,分別為紅、黃、直行、左行。十字路口的交通放行方式會(huì )隨路口要求不同而不同,一般情況下,對側路口紅綠燈信號相同,整個(gè)路口紅綠燈按照既定的工作順序周期循環(huán)工作。
本系統采用最為典型的工作方式,其它情況只需要改變對應控制的燈即可。
1)每個(gè)方向的交通燈按智能控制系統設定的方式周期循環(huán)工作。
2)東西(南北)信號燈為黃燈或綠燈時(shí),南北(東西)方向必須是紅燈。
3)黃燈固定的工作時(shí)長(cháng)為3 s;綠燈的工作時(shí)長(cháng)由智能控制系統控制,單片機根據智能控制系統發(fā)送的綠燈時(shí)長(cháng)來(lái)實(shí)時(shí)更改綠燈時(shí)長(cháng),在兩組信號發(fā)送的間隔時(shí)間內按照上一組時(shí)間信號工作;每組紅燈時(shí)長(cháng)為另一只的綠燈時(shí)長(cháng)加黃燈時(shí)長(cháng)。
1.2 安全性要求
考慮到交通系統中,安全穩定是第一位,所以對于交通燈控制系統需滿(mǎn)足安全要求;
1)如果智能控制系統遭到入侵或者癱瘓,交通燈控制系統必須保證交通燈能正常工作,不出現錯誤。
2)信號燈顯示必須確保不會(huì )出現錯誤,如兩個(gè)方向同時(shí)綠燈的情況。
3)如果單片機出現故障,必須保證交通燈信號不出現紊亂,并在短時(shí)間內投入備用控制終端,同時(shí)發(fā)出警報通知相關(guān)值班人員。
2 設計方案
雖然現在技術(shù)成熟,單片機抗干擾能力較強,但是單片機在實(shí)際工作中還是有一定幾率出錯,如程序跑飛,還有曾經(jīng)遇到過(guò)的I/O口輸出紊亂等問(wèn)題。為了系統的安全穩定性,調用看門(mén)狗寄存器來(lái)糾正程序跑飛,同時(shí)加入一片單片機作為信號校驗單片機來(lái)糾正I/O輸出紊亂問(wèn)題。故本系統采用兩片AT89C51單片機作為核心器件,其中一片負責控制交通燈信號顯示,另一片負責對顯示信號進(jìn)行校驗。
控制單片機(U1)負責接收輸入的綠燈時(shí)長(cháng)信號和車(chē)流量計數信號,對綠燈時(shí)長(cháng)進(jìn)行合理性判斷,進(jìn)行車(chē)流量脈沖計數,輸出控制信號燈的電平,并在收到智能控制系統請求車(chē)流量數據的信號后,將車(chē)流量數據反饋給智能控制系統。信號校驗單片機(U2)負責對控制信號燈的顯示信號進(jìn)行合理性校驗,包括校驗兩個(gè)路口的紅綠燈是否矛盾以及綠燈時(shí)長(cháng)是否合理,校驗無(wú)誤后允許信號燈接收電平信號做出改變;如果校驗不通過(guò),則保持之前信號燈信號不變,復位控制單片機,同時(shí)發(fā)出警報,如多次校驗不通過(guò),則斷開(kāi)當前整個(gè)系統(包括控制和校驗),投入備用信號燈控制器。
3 硬件設計
整個(gè)控制終端要和智能控制系統進(jìn)行有線(xiàn)或無(wú)線(xiàn)通信,然后將數據發(fā)送給信號燈,信號校驗單片機對信號進(jìn)行校驗后判斷是否讓信號燈變化,警報系統需要在收到警報信號后發(fā)出警報并持續一段時(shí)間,而且在重復收到警報信號后要啟動(dòng)備用控制器。
3.1 核心模塊
核心模塊包含兩片單片機,其中單片機U1為主控制單片機,單片機U2為信號校驗單片機,主控制單片機負責通信、顯示等功能,信號校驗單片機負責校驗主控制單片機的信號是否合理(詳見(jiàn)本文5軟件設計一節)。U1的信號燈顯示信號通過(guò)P2口輸出,輸出的信號同時(shí)接入鎖存器74HC573的輸入端和U2的P2口中,U2的P2口作為輸入口,讀取U1輸出的交通燈顯示信號,對其進(jìn)行合理性校驗。鎖存器74HC573的鎖存控制端LE接U2的P1.0口,如果U2校驗了U1輸出的信號沒(méi)有問(wèn)題后,P1.0會(huì )輸出高電平并延時(shí)一段時(shí)間以打開(kāi)74HC5 73鎖存端,讓顯示信號輸入鎖存器。同時(shí),U2的P1.1口經(jīng)非門(mén)接U1的復位引腳,如信號校驗不通過(guò),則在P1.1口輸出低電平復位U1,如U2復位則不會(huì )造成U1誤復位。鎖存器的輸出端接信號燈,這里用16個(gè)發(fā)光二極管模擬信號燈,對側信號燈分為一組,兩組信號燈八個(gè)引腳分別接入鎖存器的八個(gè)輸出端。鎖存器的輸出端同時(shí)又接U1的P0口,如果U1因為運行的問(wèn)題復位后,在程序初始化后通過(guò)讀取P0口狀態(tài)獲取當前信號燈顯示的狀態(tài),然后從當前狀態(tài)開(kāi)始循環(huán)運行,不至于造成信號燈顯示混亂。U1的串口通信引腳P3.0和P3.1可根據實(shí)際運用接外部通信模塊,包括串口通信模塊或藍牙通信模塊,實(shí)現通信功能。核心模塊電路圖如圖2所示。

3.2 警報模塊
為保證系統的穩定性,警報模塊運用最簡(jiǎn)單的RC延時(shí)電路,以實(shí)現在收到持續時(shí)間很短的單片機警報信號后,能夠保持發(fā)出警報。模塊設計延時(shí)為5 s,此處用LED代替警報燈及時(shí)間繼電器等警報器件。若警報模塊收到警報信號,則會(huì )持續報警5 s;如單片機出現故障持續輸出警報信號,兩次信號的時(shí)間間隔小于5 s,則模塊持續報警,報警持續設定時(shí)間后時(shí)間繼電器動(dòng)作,跳開(kāi)當前系統,切換備用交通燈控制器。警報模塊電路圖如圖3所示。

4 軟件設計
根據方案設計要求和硬件電路,單片機1中為控制程序,單片機2為信號校驗程序,采用C語(yǔ)言為單片機編寫(xiě)程序。
4.1 控制程序
為了防止程序跑飛,啟用單片機的看門(mén)狗寄存器,單片機在初始化或復位后,會(huì )向智能控制系統發(fā)送信號來(lái)獲取當前的綠燈時(shí)長(cháng)信號。單片機通過(guò)讀取P0口的狀態(tài),確定當前信號燈運行的狀態(tài)系數a,然后跳轉到相應狀態(tài)開(kāi)始循環(huán)運行,如果信號燈處于初始狀態(tài)時(shí),則順序運行,這樣可保證單片機復位后立刻返回當前狀態(tài)繼續循環(huán)運行。流程圖如圖4。

在一個(gè)周期內交通燈信號變化6次,每種狀態(tài)根據相應時(shí)長(cháng)用嵌套延時(shí)語(yǔ)句進(jìn)行延時(shí),同時(shí),在每秒的嵌套語(yǔ)句開(kāi)始都對看門(mén)狗計時(shí)器清0(喂狗)。
單片機和智能控制系統的通信包括發(fā)送車(chē)流量信息和接收綠燈時(shí)長(cháng)。單片機在收到智能控制系統的請求數據信號0xff后,會(huì )將T0計數器記錄的車(chē)流量數據發(fā)送給智能控制系統。如果單片機收到的數據不是0xff,則識別此數據為綠燈時(shí)長(cháng)數據。每次智能控制系統會(huì )發(fā)送4個(gè)綠燈的時(shí)長(cháng)數據,單片機接到全部4個(gè)數據后對其合理性進(jìn)行校驗。如果4個(gè)數據都在預設的范圍內,則為合法數據,單片機將其裝入顯示時(shí)間數組中;如果存在非法數據,則將4個(gè)數據全部舍棄。這樣設計是為了防止智能控制系統紊亂或者被入侵而造成交通癱瘓等嚴重后果。如單片機一直不收到數據請求信號或時(shí)長(cháng)數據,則交通燈控制終端會(huì )一直按照現有的時(shí)長(cháng)數據正常循環(huán)運行。
4.2 信號校驗程序
信號校驗單片機是為了防止主單片機的I/O口輸出紊亂造成交通燈信號錯誤而設置的,主要是對控制單片機輸出信號進(jìn)行有效性校驗,校驗無(wú)誤后再顯示。同時(shí)為了防止信號校驗單片機出錯,啟動(dòng)看門(mén)狗寄存器,并且在單片機初始化時(shí)會(huì )置P1.2高電平延時(shí)0.5 s來(lái)啟動(dòng)警報電路,這樣如果信號校驗單片機跑飛復位,警報信號亦會(huì )動(dòng)作。信號校驗流程圖如圖5。
信號校驗單片機只有在檢測到顯示信號發(fā)生變化后才會(huì )去判斷信號是否正常,由于兩次信號變化的時(shí)間間隔很長(cháng),這樣可以保證信號變化時(shí)單片機U2正處于判斷信號相同循環(huán)中,74HC573處于不可寫(xiě)入狀態(tài),防止未經(jīng)校驗的信號寫(xiě)入鎖存器。
當單片機校驗到顯示信號不正常時(shí),會(huì )輸出低電平復位控制單片機,并啟動(dòng)警報電路。如果顯示信號一直不正常,則警報電路會(huì )持續收到警報信號報警,持續一段時(shí)間后時(shí)間繼電器動(dòng)作切換備用控制器。如果控制單片機因為看門(mén)狗復位,則信號校驗單片機同樣會(huì )檢測到然后啟動(dòng)警報電路。
5 系統調試
按設計把硬件環(huán)境搭建出來(lái)后,通過(guò)在正確程序中加入while(1)語(yǔ)句模擬單片機跑飛,單片機I/O口飛線(xiàn)高低電平來(lái)強制拉高或拉低單片機I/O電平模擬單片機I/O口輸出紊亂,進(jìn)行實(shí)物硬件調試。
經(jīng)多次修改調試,系統在長(cháng)時(shí)間運行中能夠保持穩定;在模擬故障環(huán)節中,復位功能及警報功能均正常動(dòng)作,系統功能達到預定要求。
6 結束語(yǔ)
本文采用單片機作為交通燈控制終端的控制核心,采用信號校驗的方式,彌補了PLC控制器運用于智能交通系統中的不足,同時(shí)保證系統運行的穩定性,更方便的滿(mǎn)足智能交通系統對于通信和控制的要求。在本系統的基礎上,亦可通過(guò)更換不同種類(lèi)和功能的單片機,滿(mǎn)足更多不同的交通控制要求。
評論