智能交通燈--基于車流量自動調時_第1頁
智能交通燈--基于車流量自動調時_第2頁
智能交通燈--基于車流量自動調時_第3頁
智能交通燈--基于車流量自動調時_第4頁
智能交通燈--基于車流量自動調時_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2021屆本科畢業(yè)設計基于單片機的多功能交通燈設計院 系 名 稱物理與電子信息學院專 業(yè) 名 稱電子信息科學與技術學 生 姓 名苑大彪學 號110524065指 導 教 師王招娣助教完 成 時 間2021年5月8日基于單片機的多功能交通燈設計苑大彪物理與電子信息學院 電子信息科學與技術專業(yè) 學號:110524065指導教師:王招娣摘要:本文是以AT89S51單片機為核心器件設計了一種多功能交通燈控制器系統(tǒng)。該系統(tǒng)可完成十字路口東西南北方向的交通燈定時控制及實時路況車流量檢測的任務,它不僅可以工作在固定計數模式下,而且可通過紅外傳感器裝置實時檢測南北和東西方向連續(xù)幾次的車流量,并將其與系統(tǒng)設置的

2、閾值進行比照完成自適應計時調節(jié),最后通過控制紅黃綠燈的循環(huán)點亮的方法,顯示輸出結果。本文通過proteus硬件仿真軟件對系統(tǒng)結果進行測試,結果說明系統(tǒng)能夠準確的根據車流量自動調控紅綠燈時長,具有一定的使用價值。關鍵詞:車流量檢測;自適應調節(jié);定時;多路復用Design of Multi-functional Traffic Light Based on Single Chip MicrocomputerYuan Da-biao College of Physics and Electronic Information Electronic Information Science and Tec

3、hnology No: 110524065Tutor:Wang Zhao-diAbstract: This article is based on AT89S51 microcontroller as the core design of a multifunctional traffic light control system. The system can realize the crossroads of East and West direction traffic light timing control, completed the task of real-time traff

4、ic traffic detection, It can not only work at a fixed count mode, and can be detected in real time by an infrared sensor device north-south and east-west traffic flow successive, and with the threshold set by the system compared to performing adaptive timing adjustment, finally controlling the traff

5、ic light display output results. By using proteus hardware simulation to test the system, The results show that the system can accurately automatic control according to the traffic. It shows that it has a certain value.Key words: Traffic detection; Automatic adjustment; Timing; Multiplexers目 錄1 緒論11

6、.1 引言11.2 課題研究的目的及意義12 系統(tǒng)方案設計22.1 自動模式設置22.2 綠燈工作模式設置32.3 交通管理的方案論證33 硬件系統(tǒng)設計43.1 單片機概述43.2 單片機最小系統(tǒng)63.2.1 時鐘電路模塊63.2.2 復位電路模塊73.2.3 系統(tǒng)電源設計73.2.4 按鍵功能介紹83.3 系統(tǒng)硬件電路設計93.3.1 硬件設計框圖93.3.2 紅外收發(fā)傳感電路93.3.3 穩(wěn)壓芯片選型93.3.4 數碼管顯示電路設計103.4 本章小結114 軟件系統(tǒng)設計114.1 軟件總體設計方案114.2 局部軟件功能介紹124.2.1 延時設置124.2.2 軟件延時去抖動144.2

7、.3 手動模式選擇144.2.4 自動模式切換154.3 本章小結165 仿真結果及分析175.1 Proteus軟件介紹175.2 硬件仿真分析17總結19致謝19參考文獻201 緒論1.1 引言隨著我國經濟的高速開展,城市中人口越來越多,居民出行的次數和機動車數量不斷增加,城市道路擁擠、車流量不均衡的問題日益嚴重。人們常常會為道路的擁擠,交通秩序的混亂,而導致的出行時間過長等交通問題倍感苦惱。交通堵塞既增加了人們的出行時間,又無形中增加了日常車輛的耗油,損失了經濟也浪費了能源。交通的堵塞,造成車輛不斷的加速剎車,間接的增加了燃料消耗,加重了環(huán)境污染,降低市民的生活品質,影響人們的身心健康。

8、有時候遇到緊急情況,例如120、消防,也可能因為交通的堵塞而造成無法挽回的損失。如此看來,提高城市交通的運行能力,實現交通的科學化管理迫在眉睫。 如何才能保持城市交通的平安便捷,高效暢通和綠色環(huán)保,已成為政府政策規(guī)劃的一個重要參考1,2。為了緩解城市交通的堵塞,相關部門從以下幾個方面進行了考慮3:1拓寬道路此方法是解決交通堵塞的最根本方法,因為當汽車使用率增加時,就需要有更多的道路來容納車流。不過此方法僅能“增加道路的面積,而無法“根治交通的堵塞,因為汽車數量并未隨之減少。即便方案可行,但投入巨大,短時間內也見不到成效。2減少道路交叉既通過架設高架橋和開發(fā)地鐵等方式,減少車輛在道路上遇紅綠燈停

9、行的時間,在治理交通堵塞方面有一定的作用,但和拓寬道路一樣,本錢很高,短時間見不到效果。3交通信號燈控制系統(tǒng)通過道路上的車流量,調整信號燈的周期,使得道路交叉口的停堵時間減少,以期到達高架和地鐵的效果,讓車輛少??煨?,從而有效緩解交通的堵塞。1.2 課題研究的目的及意義該方案主要涉及根據檢測車流量自動調整綠燈時長和闖紅燈的簡單控制。1檢測車流量以自動調整綠燈時長傳統(tǒng)的交通燈控制方法大多是以路口的狀況,按丁字、十字與多路口分時段進行紅綠黃燈控制,實現各路口依次通行,常常存在車多的路向綠燈通行時間短、無車或少車的路向卻亮著綠燈的情況,為克服這種少車路向綠燈時無車通行,多車路向綠燈通行時間短而堵車的

10、現象,在不增加本錢的情況下,結合現實的情況,我們把車流量分成空閑雙向車流量都不大、單忙只一個方向的車流量大、雙忙雙向車流量都大三種情況例如上下班、節(jié)假日期間車流量較大,工作日車流量較小,用軟件實現檢測一段連續(xù)時間內的車流量,以實現交通燈的自動簡單控制。2闖紅燈該功能主要是為了處理交通管理中的緊急情況,在交通信號燈正常工作的根底上, 增加的緊急優(yōu)先處理功能, 如消防、急救等需要闖紅燈的情況出現時, 東西南北方向的紅燈會均閃爍數秒, 待緊急情況處理后, 交通信號燈又恢復到之前的工作狀態(tài)。2 系統(tǒng)方案設計2.1 自動模式設置結合現實中的情況,我們把車流量分成空閑雙向車流量都不大、單忙只一個方向的車流

11、量大、雙忙雙向車流量都大三種情況,例如上下班、節(jié)假日期間車流量較大,夜間車流量較小,通過紅外傳感器檢測綠燈車道的車流量,在黃燈階段,通過比較檢測到的值和預設的值,判斷車流量的大小。我們采用比較連續(xù)幾次的車流量來決定綠燈時長是否切換。以3次為例,分析東西方向,只有連續(xù)3次東西方向的車流量大于預設值,再判斷為忙,反過來,只有連續(xù)3次東西方向的車流量小于預設值,才能由忙切換為閑,倘假設不滿足連續(xù)的要求,工作模式既保持不變。程序中考慮路況車況,可以調整檢測連續(xù)次數的大小,并有指示燈提示當前要檢測的連續(xù)次數。如以下圖,從左至右的四個LED燈,采用8421的方法編碼表示連續(xù)的次數,亮代表1,滅代表0,其中

12、最左邊的紅燈,亮代表工作在自動調節(jié)模式,滅代表工作在手動調節(jié)模式。 圖1 手動時指示燈顯示 圖2 自動時綠燈連續(xù)檢測2次時指示燈顯示2.2 綠燈工作模式設置交通燈為手動調整模式時,具體綠燈時長模式選擇由按鍵S2控制,模式選擇提示由倒計時牌上數碼管的dp顯示,交通燈工作在自動調整模式時,綠燈時長模式自動切換,數碼管上的dp自動顯示,具體綠燈時長模式如表1。表1 模式設置車流量模式空閑單忙(東西)單忙南北雙忙Dp1十位小數點滅滅亮亮Dp2個位小數點滅亮滅亮南北通行時間30s30s60s60s東西通行時間45s75s45s75s圖3 兩位數碼管的dp1和dp22.3 交通管理的方案論證東西、南北兩干

13、道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人平安通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換。以車流量為空閑時為例,指示燈燃亮的方案如表2。表2 指示燈燃亮規(guī)那么時間40S5S25S5S南北道紅燈亮紅燈亮綠燈亮黃燈亮東西道綠燈亮黃燈亮紅燈亮紅燈亮說明: 1當南北道為綠燈,此道車輛、行人可通過,綠燈時長25秒;東西方向為紅燈,此道車輛、行人禁止通行,紅燈時長30秒。2南北方向變?yōu)辄S燈時,燃亮5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換,此時東西方向依舊為紅燈,禁止車輛通行。 3當南北方向為紅燈,南北道車輛、行人禁止通過,紅燈時長45秒;東

14、西方向為綠燈,此道車輛通行,綠燈時長40秒。東西方向車流大通行時間長。4東西方向變?yōu)辄S燈時,燃亮5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。南北方向依舊是紅燈,禁止車輛通行。5這樣如上表所示紅、綠、黃依次出現,行人和車輛就能平安暢通的通行。6有闖紅燈時,東西南北方向的紅燈都閃爍,為消防、急救等車輛讓道。時間為6秒。7此表可根據車流量動態(tài)設定紅綠燈初始值。3 硬件系統(tǒng)設計3.1 單片機概述單片微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單片微型計算機簡稱單片機,特別適用于控制領域,故又稱為微控制器。通常,單片機由單塊集成電路芯片構成,內部包含有計算機的根本功能部件:中央處理器、存

15、儲器和I/O接口電路等。因此,單片機只需要和適當的軟件及外部設備相結合,便可成為一個單片機控制系統(tǒng)。AT89S51是一個低功耗,高性能CMOS 8位單片機,片內含4k Bytes ISP(In-system programmable)的可反復擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,功能強大的微型計算機AT89S51可為許多嵌入式控制應用系統(tǒng)提供高性價比的解決方案4。AT89S51如圖4具有如下特點:40個引腳,4k Bytes F

16、lash片內程序存儲器,256 bytes的隨機存取數據存儲器RAM,32個外部雙向輸入/輸出I/O口,6個中斷源,2個16位可編程定時計數器,2個全雙工串行通信口,看門狗WDT電路,片內時鐘振蕩器。下面重點介紹其中局部引腳特性:Vcc:電源端,接5V。 Vss:接地端。P0口P0.0P0.7:該端口為漏極開路的8位準雙向口,它為8位地址線和8位數據線的復用端口,使用時需接外部上拉電阻。在訪問外部程序存儲器時,它作存儲器的低8位地址線。圖4 AT89S51管腳圖P1口P1.0P1.7:它是一個內部帶上拉電阻的8位準雙向I/O口,作為輸入口使用時,應先向其內部鎖存器寫1。P2口P2.0P2.7:

17、它為一個內部帶上拉電阻的8位準雙向I/O口,作為輸入口時同樣需先向其內部鎖存器寫1。在訪問外部程序存儲器時,它作存儲器的高8位地址線。P3口P3.0P3.7:P3口同樣是內部帶上拉電阻的8位準雙向I/O口,P3口除了作為一般的I/O口使用之外,其還具有第二引腳功能,具體如表3所示。表3 P3口線的第二功能口線特殊功能信號名稱P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2INT0外部中斷0輸入口P3.3INT1外部中斷1輸入口P3.4T0定時器0外部輸入口P3.5T1定時器1外部輸入口P3.6WR寫選通輸出口P3.7RD讀選通輸出口XTAL1:接外部晶振和微調電容的一端,在片內它是振蕩

18、器倒相放大器的輸入,假設使用外部TTL時鐘時,該引腳接外部時鐘的輸入端。XTAL2:接外部晶振和微調電容的另一端,在片內它是振蕩器倒相放大器的輸出,假設使用外部TTL時鐘時,該引腳必須懸空。地址鎖存允許信號ALE:系統(tǒng)擴展時,ALE用于控制地址鎖存器鎖存P0口輸出的低8位地址,從而實現數據與低位地址的復用。此外,ALE是以六分之一晶振頻率的固定頻率輸出的正脈沖,可作為外部時鐘或外部定時脈沖使用。外部程序存儲器讀選通信號PSEN :PSEN是讀外部程序存儲器的選通信號,低電平有效。訪問程序存儲器控制信號EA:當為高電平時,CPU執(zhí)行片內程序存儲器指令,但當PC中的值超過0FFFH時,將自動轉向執(zhí)

19、行片外程序存儲器指令。當為低電平時,CPU只執(zhí)行片外程序存儲器指令。復位信號RST:該信號高電平有效,在輸入端保持兩個機器周期的高電平后,就可以完成復位操作。3.2 單片機最小系統(tǒng)最小系統(tǒng)由這四局部組成:單片機、電源、時鐘電路、復位電路,電路圖如圖6。3.2.1 時鐘電路模塊 時鐘電路在單片機系統(tǒng)中起著非常重要的作用,是保證系統(tǒng)正常工作的根底。在一個單片機應用系統(tǒng)中,時鐘是保障系統(tǒng)正常工作的基準振蕩定時信號,主要由晶振和外圍電路組成,晶振頻率的大小決定了單片機系統(tǒng)工作的快慢。根據不同需要可以采用不同頻率的晶振,這里采用12MHz的晶振,另外有兩個33pF的電容,兩晶振引腳分別連到XTAL1和X

20、TAL2振蕩脈沖輸入輸出引腳。具體連接圖如圖5所示4。外接石英晶體或陶瓷諧振器以及電容C1,C2接在放大器的反響電路中構成并聯諧振電路。諧振器本身對外接電容C1、C2雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的上下、振蕩器工作的穩(wěn)定性、起振的難易程度以及溫度的穩(wěn)定性,如果使用石英晶體,推薦使用33pF,而使用陶瓷諧振器建議選擇40pF。圖5 時鐘電路圖6 單片機最小系統(tǒng)3.2.2 復位電路模塊單片機在啟動時都需要復位,以使CPU及系統(tǒng)各部件處于確定的初始狀態(tài),并從初態(tài)開始工作。89系列單片機的復位信號是從RST引腳輸入到芯片內的施密特觸發(fā)器中的。當系統(tǒng)處于正常工作狀態(tài)時,且振蕩

21、器穩(wěn)定后,如果RST引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,那么CPU就可以響應并將系統(tǒng)復位。除進入系統(tǒng)的正常初始化之外,當由于程序運行出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài)時,為擺脫困境,可以按復位鍵以重新啟動,也可以通過監(jiān)視定時器來強迫復位。具體電路如圖7所示。3.2.3 系統(tǒng)電源設計為51系列單片機系統(tǒng)提供的電源為穩(wěn)定的5V直流電源。本系統(tǒng)用一個7805芯片為系統(tǒng)提供穩(wěn)定的5V直流電源。7805穩(wěn)壓芯片能提供多種固定的輸出電壓,應用范圍廣。內部含過熱保護,短路保護,輸出電流可達1A。雖然該芯片是固定穩(wěn)壓電路,但使用不同的外接元件,可獲得不同的輸出電壓。25時輸出電壓范圍為5

22、18V。本系統(tǒng)7805的輸入電壓為9V直流電壓。9V直流電壓可用普通干電池提供,也可以用市面上很容易買到的普通變壓器提供。7805對輸入電壓要求不高,但輸入電壓一般應大于所需輸出電壓2V以上5。圖7 復位電路在7805與9V電源之間用一個IN4001整流二極管來提高系統(tǒng)的平安性。IN4001能提供正向最大電流1A,最大反向峰值電壓50V,防止了電源反接或電源不穩(wěn)定給系統(tǒng)帶來的平安隱患。7805的5V調控輸出采用生產該芯片的公司提供的經典電路。在輸出端5V電壓處接一個藍色發(fā)光二極管來作為電源指示燈。具體電氣連接如圖8所示。圖8 電源電路3.2.4 按鍵功能介紹本系統(tǒng)一共用到五個按鍵,除了一個用于

23、單片機功能復位外,其中三個采用了功能復用。按鍵S0和S1分別表示東西和南北車道上的紅外傳感器,其工作原理一樣,以東西方向的S0為例,東西方向為紅燈時,S0按下,表示東西車道上有急救車輛闖紅燈,單片時機做出反響,東西南北車道上的綠燈均熄滅,紅燈均閃爍,警示車輛讓道;東西方向為綠燈時,交通燈工作在手動模式下時,紅外傳感器不檢測車流量,按下S0無反響;交通燈工作在自動模式下時,每按下一次S0表示東西車道有一輛車通過,模擬紅外傳感器檢測車流量,待東西方向變?yōu)辄S燈時,將綠燈時檢測到的車流量與系統(tǒng)預定值比較,判斷此次通行是忙還是閑,以此自動調節(jié)東西車道的綠燈時長。按鍵S2采用了功能復用,與按鍵S搭配使用。

24、S鍵控制的是交通燈的工作模式切換,其狀態(tài)顯示由標號為S的LED表示,S亮時,表示工作在自動模式下,S滅時,表示工作在手動模式下。在自動模式下,按鍵S2用于調整需要檢測的連續(xù)綠燈次數,LED燈S22、S21、S20運用8421的編碼方式排列,表示需要檢測的綠燈次數;在手動模式下,按鍵S2用于切換車道的閑忙模式,通過數碼管的小數點表示,亮表示忙,滅表示閑。3.3 系統(tǒng)硬件電路設計3.3.1 硬件設計框圖本系統(tǒng)基于單片機AT89S51所設計,附有系統(tǒng)電源、時鐘電路、復位電路、數碼管顯示電路等,具體如圖10所示。3.3.2 紅外收發(fā)傳感電路本系統(tǒng)通過紅外線發(fā)射二極管和接收管檢測車道是否有車輛通過。紅外

25、線二極管發(fā)射紅外光,如果該車道有車輛通過,紅外線從車輛反射回來,相當于人眼睛的紅外接收器,檢測到反射回的紅外光線,并發(fā)出信號來說明檢測到從車輛反射回的紅外線,單片機基于這個傳感器的輸入檢測車流量。紅外接收管/檢測器有內置的光濾波器,除了需要檢測的980nm波長的紅外線外,它幾乎不允許其他光通過。紅外檢測器還有一個電子濾波器,它只允許大約38.5kHz的電信號通過。換句話說,檢測器只尋找每秒閃爍38500次的紅外光。這就防止了普通光源像太陽光等對紅外接收管的干擾。太陽光是直流干預0Hz源,它完全被紅外探測器忽略5。仿真過程紅外傳感器用按鍵代替。3.3.3 穩(wěn)壓芯片選型7805為3端穩(wěn)壓集成電路,

26、TO-220封裝,能提供多種固定的輸出電壓,應用范圍廣。內含過流、過熱和過載保護電路。帶散熱片時,輸出電流可達1A。雖然是固定穩(wěn)壓電路,但使用外接元件,可獲得不同的電壓和電流6-8。引腳排列如圖9: 主要特點:1輸出電流可達 1A 2輸出電壓有:5V 3過熱保護 4短路保護 圖9 78055輸出晶體管 SOA 保護 圖10 總電路圖3.3.4 數碼管顯示電路設計數碼管按段數分為7段數碼管和8段數碼管。7段數碼管是由七段條形發(fā)光二極管組成的“8字形的LED顯示器,每段分別用a、b、c、d、e、f、g表示;8段數碼管那么是在7段的根底上再加一個圓點型發(fā)光二極管,用dp表示。由于連接方式的不同,數碼

27、管又分共陽極接法和共陰極接法,接法不同,段碼值不同6-8。在該設計中采用共陰極接法,具體段碼值確定如表3。表3 采用共陰極連接顯示數值dp g f e d c b a驅動代碼16進制00 0 1 1 1 1 1 13FH10 0 0 0 0 1 1 006H20 1 0 1 1 0 1 15BH30 1 0 0 1 1 1 14FH40 1 1 0 0 1 1 066H50 1 1 0 1 1 0 06DH60 1 1 1 1 1 0 07DH70 0 0 0 0 1 1 107H80 1 1 1 1 1 1 17FH90 1 1 0 1 1 1 16FH3.4 本章小結本系統(tǒng)基于單片機AT8

28、9S51所設計,附有系統(tǒng)電源、時鐘電路、復位電路、數碼管顯示電路等,硬件電路十分簡潔,且對元器件參數無特殊要求,只需采用各元器件廠家推薦的經典電路就可以滿足設計的需要,需要的本錢很低。簡易的硬件需求,使得該系統(tǒng)能夠很方便的投入使用和維護。4 軟件系統(tǒng)設計4.1 軟件總體設計方案軟件設計局部采用模塊化程序設計,用C語言編寫。Keil是美國Keil Software公司出品的51系列兼容單片機C語言軟件的開發(fā)系統(tǒng),與匯編相比,C語言在功能、結構、可讀性、可維護性上有明顯的優(yōu)勢,易學易用9。本次單片機課程設計軟件設計局部采用模塊化程序設計,程序局部由主程序、T0中斷程序、T1中斷程序、數碼管顯示子程

29、序、延時子程序等組成。其程序流程圖如圖11所示。4.2 局部軟件功能介紹4.2.1 延時設置延時方法分兩種:一種是硬件延時,利用MCS-51內部定時器產生溢出中斷來延時,另一種是軟件延時。在此采用計數器硬件延時與軟件延時相結合的方法來實現延時1s,采用軟件延時解決按鍵的抖動問題。計數器硬件延時1S:1)計數器初值計算9定時器工作時必須給計數器送計數器初值,這個值是送到TH和TL中的。他是以加法記數的,并能從全1到全0時自動產生溢出中斷請求。因此,我們可以把計數器記滿為零所需的計數值設定為C和計數初值設定為TC 可得到如下計算通式:TC=M-C式中,M為計數器模值,該值和計數器工作方式有關。在方

30、式0時M為213 ;在方式1時M的值為216;在方式2和3為282)計算公式T=MTCT計數或TCMTT計數其中T計數是單片機時鐘周期T的12倍;TC為定時初值。例如單片機的主脈沖頻率為12MHz,經過12分頻,計數頻率就是1MHz,計數周期為1us,所以方式0TMAX213 * 1微秒8.192毫秒方式1TMAX216 * 1微秒65.536毫秒顯然秒鐘已經超過了計數器的最大定時時間,所以我們只有采用定時器和軟件相結合的方法才能解決這個問題。3)延時秒的方法我們采用在主程序中設定一個初值為20的軟件計數器,使T0定時50毫秒。這樣每當T0到50毫秒時CPU就響應它的溢出中斷請求,進入他的中斷

31、效勞子程序。在中斷效勞子程序中,CPU先使軟件計數器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時間顯示程序。圖11 系統(tǒng)流程圖4相應程序代碼主程序void init(void)TMOD=0x01; EA=1;TH0=(65536-50000)/256;TL0=(65536-50000)%256; ET0=1; TR0=1;2定時器0中斷 void time0(void) interrupt 1 static uint counter ;counter +;TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(20= counter)coun

32、ter =0;time0-;time1-;4.2.2 軟件延時去抖動/延時函數10 void delay(unsigned int z)while(z-);4.2.3 手動模式選擇手動模式選擇由S2按鍵控制,按鍵按下一次,S2自增1,當S2自加到4時,軟件使其置零。具體如表5所示。表5 模式選擇模式雙向閑東西忙南北忙雙向忙雙向閑S201230while(1)if(0=s1)delay(20);if(0=s1)while(0=s1);if(+mode=4) mode=0;switch(mode)case 0:temp0=30;temp1=45;break;/雙向閑case 1:temp0=30;

33、temp1=75;break;/東西忙case 2:temp0=60;temp1=45;break;/南北忙case 3:temp0=60;temp1=75;break;/雙向忙default: break;4.2.4 自動模式切換自動模式切換通過幾個標志變量實現,貫穿程序的首尾,其中的關鍵是處理檢測車流量的連續(xù)次數中,假設一次不滿足,之前的累計數全部清零,重新檢測滿足的連續(xù)次數,這局部是本程序的核心,簡要如下:綠燈變?yōu)辄S燈再變?yōu)榧t燈的程序變量賦值變化:if(time0=0 && yellow_flag=0) time0=2;N_GRE=1;N_YEL=0;yellow_fla

34、g=1;N_mark=0;if(time0=255 && yellow_flag=1) time0=temp0;N_YEL=1;N_RED=0;D_RED=1;D_GRE=0;yellow_flag=0;red_flag=1; N_mark=0;檢測連續(xù)綠燈的車流量與臨界值比較:if(s1=0)delay(10);if(s1=0)while(s1=0);Ngreen_busycounter+;if(yellow_flag=1 && N_mark=0) N_mark=1; if(Ngreen_busycounter >= Bus_num) N_busymod

35、e+; if(N_busymode=Green_checkmode) N_busymode=0;N=1; else N_busymode=0; Ngreen_busycounter=0; 4.3 本章小結軟件局部是本系統(tǒng)的核心和難點,設計了正常、單忙、雙忙三種綠燈模式,模式切換設計了手動和自動兩種方法,其中手動切換是根據實際車流量通過按鍵S2來更改模式;自動切換模式是根據設定的程序,通過紅外傳感器分別探測南北和東西方向連續(xù)幾次的車流量與預定的臨界值作比較,以實現自動切換綠燈工作模式。以東西方向為例,處于閑的模式時,如果東西方向連續(xù)N次綠燈的車流量都大于臨界值,此方向切換為忙的模式,之后,要等到

36、東西方向連續(xù)N次綠燈的車流量都小于臨界值,此方向才能切換為閑的模式,假設連續(xù)N次中有一次車流量大于臨界值,東西方向保持忙的模式,如此循環(huán),實現自動調節(jié)綠燈時長。處于自動切換模式時,可以設定連續(xù)檢測車流量的次數N。用S0鍵模擬東西方向紅外檢測模塊,S1鍵模擬南北方向紅外檢測模塊,兩個紅外檢測模塊功能復用,以南北為例,南北方向為紅燈時,S1檢測南北方向是否有應急車輛闖紅燈,假設有會啟動闖紅燈模式,東西南北均亮紅燈給急救車輛讓道;南北方向為綠燈時,S1統(tǒng)計南北向車流量,在南北方向為黃燈時,測定車流量與預定值比較,為南北向紅綠燈自動切換時長提供依據。5 仿真結果及分析5.1 Proteus軟件介紹Pr

37、oteus是世界上著名的EDA仿真軟件,提供30多種元件庫,超過8000中模擬、數字元器件,可以仿真模擬電路和數字電路,也可仿真模擬數字混合電路,還可以對嵌入式系統(tǒng)進行軟硬件協同設計與仿真,是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等多種系列的處理器。2021年又增加了Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型11-14。Proteus包含強大的調試工具,可觀測存放器、存儲器變化、設置斷點、單步模式等,可對

38、IAR、Keil和MATLAB等開發(fā)工具的源程序進行調試,觀察代碼在仿真硬件上的實時運行效果,對顯示、按鈕、鍵盤等外設的交互可視化進行仿真。Proteus可以實現從原理圖布圖、代碼調試到單片機與外圍電路協同仿真,一鍵切換到PCB設計,真正實現了從概念到產品的完整設計。5.2 硬件仿真分析系統(tǒng)初始上電時,東西南北方向均亮紅燈,之后東西綠燈,南北紅燈,循環(huán)往復。初始上電,東西南北均為閑,數碼管小數點位均熄滅,系統(tǒng)處于手動模式。手動模式下,以東西為例,東西為紅燈時,按下S0鍵,交通燈處于闖紅燈模式,東西南北均亮紅燈3秒,之后恢復為闖紅燈前的狀態(tài);東西為綠燈時,按下S0鍵無反響。在手動模式下,按下S2

39、鍵,交通燈會在雙閑,東西忙,南北忙,雙忙模式下交替切換,可根據車流量人為設定。數碼管的高位小數點代表東西,低位小數點代表南北,亮表示忙,滅表示閑。上電后,按下S鍵,紅燈S亮表示處于自動模式,初始連續(xù)檢測的車流量次數設為2,綠燈S21亮,S22,S20滅,以421的編碼模式表示為2。按下S2鍵,檢測的次數會在2到7之間切換,以S22,S21,S20三盞藍色LED的亮滅讀取次數,調試程序中閑忙的臨界值設為3。自動模式下,以東西為例,東西為紅燈時,按下S0鍵,交通燈處于闖紅燈模式,東西南北均亮紅燈3秒;東西為綠燈時,按下S0鍵的次數表示東西方向檢測到的車流量,假設連續(xù)2次綠燈時間內檢測到的車流量都不

40、小于3,東西由閑的模式切換為忙的模式,數碼管高位小數點點亮表示東西忙,接著假設連續(xù)2次檢測到的車流量都小于3,東西由忙的模式切換為閑的模式,數碼管高位小數點熄滅,否那么,東西方向一直處于忙的模式,可通過數碼管小數點的亮滅判斷閑忙狀態(tài)。本系統(tǒng)在Proteus上調試完全通過,仿真效果如圖12所示。圖12 手動模式仿真效果總結本文是以AT89S51單片機為核心器件設計了一種多功能交通燈控制器系統(tǒng)。該系統(tǒng)可完成十字路口東西南北方向的交通燈定時控制及實時路況車流量檢測的任務,它不僅可以工作在固定計數模式下,而且可通過紅外傳感器裝置實時檢測南北和東西方向連續(xù)幾次的車流量,并將其與系統(tǒng)設置的閾值進行比照完成自適應計時調節(jié)模式,最后通過控制紅黃綠燈的循環(huán)點亮的方法,顯示輸出結果。本文通過proteus硬件仿真軟件對系統(tǒng)結果進行測試,結果說明系統(tǒng)能夠很好的根據車流量自動調控綠燈時長。但由于能力有限,時間倉促,想要投入實際運用,還需一定的改進,像左轉右轉等都需要完善。最后感謝你閱讀此文,文中的錯誤和不妥在所難免,敬請老師、同學批評指正。致謝論文告終,內心沖動之余對所有關心、支持和幫助我的老師、家人、朋友致以最由衷的謝意。畢設的硬件電路很簡單,涉及的單片機知識也不深,難點在于程序的設計,整個過程咨詢了很多老師和同學,看了很多期刊資料,這個過程讓我熟悉了Proteus的使用方法,對程序

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論