設計一個十字路口交通控制系統(tǒng),要求如下:
(1)東西、南北兩個方向均有綠燈、黃燈、紅燈指示,其持續(xù)時間分別為35秒、5秒、40秒,交通燈運行的切換示意圖如圖1所示。
圖1 交通燈運行切換示意圖
(2)系統(tǒng)設有時鐘,以倒計時的方式顯示每一路允許通行的時間。
3系統(tǒng)設計方案
本設計是基于FPGA的交通燈的設計,故系統(tǒng)設計方案采用自上而下的頂層設計,將整體設計方案分成若干個模塊分別進行設計,然后采用硬件語言VHDL生成元件和構建原理圖的方式進行整體設計。根據設計的任務要求,由系統(tǒng)內部時鐘信號提供計時時間。而紅綠燈正常的工作由倒計時的時間控制,且倒計時的時間顯示由數(shù)碼管控制。故此本系統(tǒng)設計方案可以分為五個模塊:分頻器模塊,主控制器模塊,提取顯示值模塊,動態(tài)掃描模塊,譯碼器模塊。其系統(tǒng)設計方案如圖2所示。
圖2 系統(tǒng)整體框圖
其中分頻器模塊用于24MHz分頻為1Hz;主控器模塊用于計時和控制紅綠燈的亮滅;提取顯示值模塊用于把倒計時兩位數(shù)時間能分別顯示在兩個數(shù)碼管上;動態(tài)掃描模塊用于人眼能清晰地看出四位數(shù)碼管同時倒計時的時間;譯碼器模塊用于把倒計時的時間在數(shù)碼管顯示出來。
4 各模塊設計及仿真
4.1主控制器模塊
設計主控器的作用是根據計數(shù)器值控制發(fā)光二極管的亮滅以及輸出計數(shù)值。其中主控制器的計數(shù)范圍0——40。倒計時從40到1完成一次循環(huán)。其主控器模塊元件如圖3所示。
圖3 主控器模塊元件
主控器模塊的CLOCK是輸入端,當時鐘信號接收到1Hz的脈沖時,主控器開始計數(shù)的功能;REST是輸入端,進行單獨控制,當人為控制輸入高電平‘1’時,A,B兩路紅燈亮起,停止計時,交通燈的狀態(tài)進行復位;NUMA,NUMB是輸出端,功能是計數(shù)值給七段數(shù)碼管的提取顯示值電路;六個指示燈也是輸出端,其功能根據倒計時值,顯示A,B路的紅綠燈亮滅。即A路35s倒計時顯示綠燈亮,5s倒計時顯示黃燈亮時,B路口40s倒計時顯示紅燈亮,B路口 35s倒計時顯示綠燈亮,然后5s黃燈亮時,A路口40s倒計時顯示紅燈亮。其仿真結果如圖4所示,通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖4 主控器仿真圖
4.2 分頻器模塊
分頻器的設計是為了實現(xiàn)將高頻時鐘信號轉換成低頻的時鐘信號,作用于主控器、提取顯示值和動態(tài)掃描顯示電路。動態(tài)掃描電路需要高頻率時鐘信號,而主控器,提取顯示值則需要低頻率的時鐘信號,才能精確計時和顯示。其分頻模塊如圖5所示。
圖5 分頻器模塊
分頻器模塊的輸入端CLK24M選用是24Mhz高頻率時鐘,其作用于動態(tài)掃描。輸出端CLK1Hz則是通過分頻先將24Mhz經過48分頻到500khz,在500000分頻到1hz。而主控器電路需要分頻成1hz低頻率用于計時。其仿真結果如圖6所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖6 24mhz分頻1hz時序仿真圖
4.3 提取顯示值模塊
提取顯示值模塊也可以稱為數(shù)碼管分位模塊,設計提取顯示值模塊是主控器輸出的倒計時數(shù)值是1位或者2位數(shù),而一個七段數(shù)碼管只能顯示一位數(shù)。為了倒計時能顯示兩位數(shù),所以在七段數(shù)碼管的譯碼電路前加一個分位電路。其模塊生成的元件如圖7所示。
圖7 提取顯示值模塊元件
其模塊輸入端CLK是接收1Hz的脈沖信號,為了和主控器同步。輸入端numin與主控器的numa相連,其作用是為了把計數(shù)的兩位數(shù)值能分開顯示在兩個數(shù)碼管上。輸出端numa,numb是把輸入的兩位數(shù)分開輸出,即兩位數(shù)分成十位和個位。其仿真結果如圖8所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖8 提取顯示值仿真圖
4.4 動態(tài)掃描模塊
設計動態(tài)掃描模塊是為了能同時顯示出四個數(shù)碼管倒計時的動態(tài)變化。其原理是利用人眼的余暉效應,而此時的脈沖需要高頻率的時鐘信號來點亮數(shù)碼管。其動態(tài)掃描模塊如圖9所示。
圖9 動態(tài)掃描模塊元件
此模塊元件輸入端clk時鐘信號受到24mhz的脈沖信號,其數(shù)碼管中等亮滅速度遠遠大于人眼識別最少時間13毫秒,所以動態(tài)掃描可以讓人眼感受不到閃爍。其中AH,AL,BH,BL表示A,B路的輸入端的高位和低位。當輸入端輸入1、2、3、4時,輸出端dout輸出的對應實驗板上的用于顯示倒計時的數(shù)碼管的位置。輸出端q為位循環(huán)輸出,顯示數(shù)值。其仿真結果如圖10所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖10 動態(tài)掃描時序仿真圖
4.5 譯碼器模塊
譯碼器模塊的設計是將要顯示的數(shù)字轉換成能驅動數(shù)碼管的信號,通過輸入二進制數(shù)值,輸出信號點亮二極管,顯示出倒計時的數(shù)值。譯碼器模塊如圖11所示。
圖11 譯碼器模塊元件
此模塊的輸入端dout與動態(tài)掃描的輸出端dout相連,是把輸入的四位二進制數(shù)轉換成輸出端led7s的7位二進制信號,用來驅動數(shù)碼管顯示數(shù)值。其模塊仿真圖如圖12所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖12 譯碼器仿真圖
5 頂層電路設計
頂層電路的工作流程:24MHz經過兩次48分頻和500000分頻產生1hz的脈沖信號作用于主控器模塊和提取顯示值模塊。主控器模塊控制紅綠燈的亮、滅和計數(shù),提取顯示值模塊用于把計數(shù)的兩位數(shù)分成十位和個位顯示。24MHz高頻率的時鐘信號作用于動態(tài)掃描模塊,用來能同時顯示出四個數(shù)碼管倒計時的動態(tài)變化。譯碼器模塊作用于數(shù)碼管來顯示數(shù)值。其頂層電路設計如圖13所示。
圖13 頂層電路設計
引腳配置如圖14所示。
通過對頂層電路的仿真,仿真結果如圖15所示。通過觀察仿真,滿足設計需求,完成了實驗預期。
6功能擴展
根據進一步的實驗要求,聯(lián)系實際交通信號的燈的運轉模式,添加緊急控制、閃爍、左轉和右三個狀態(tài)作為本次實驗的功能擴展。
(1)緊急控制:當東西或南北兩路中的任一路出現(xiàn)特殊情況,系統(tǒng)可由交警手動控制立即進入特殊運行狀態(tài),即紅燈全亮,時鐘停止計時,東西、南北兩路所有車輛停止通行;當特殊運行狀態(tài)結束后,系統(tǒng)恢復工作,繼續(xù)正常運行。
(2)閃爍:當綠燈運行結束需要點亮黃燈或者閃爍綠燈作為點亮紅燈前的過度狀態(tài)。此功能在原紅綠燈的基礎上進行了擴展,讓交通燈的變化顯得更人性化。
(3)右轉和左轉:當直行時右轉燈點亮10s后,熄滅右轉燈后點亮左轉向燈亮10s,熄滅左轉燈后直行綠燈點亮25s,直行燈熄滅后點亮黃燈閃爍5s,熄滅黃燈后點亮干路紅燈,運行50s后循環(huán),支路干路一一對應,當干路左、右轉向燈和直行綠燈亮起至黃燈熄滅,支路的紅燈一直點亮;當支路左、右轉向燈和直行綠燈亮起至黃燈熄滅,干路的紅燈一直點亮;此功能擴展在原任務基礎上添加左轉和右轉功能,完善了交通信號燈的功能。
6.1 擴展的主控器模塊
擴展的主控制器模塊的主要功能根據計數(shù)后的數(shù)值對輸出端elect分幾種情況控制紅綠燈的狀態(tài),以及輸出端rea7A,rea7B輸出計數(shù)。其擴展后的主控器模塊如圖16所示。
圖16 擴展后主控器模塊元件
此模塊的clk時鐘信號是接收1hz的脈沖,主控器開始計數(shù),而輸出端rea7A、rea7B功能是把計數(shù)的值給7段數(shù)碼管的分位譯碼電路。輸出端elect的功能是根據計數(shù)后分類幾種情況后,分別對紅綠燈進行控制。輸入端rest是緊急控制按鍵,對rest輸入高電平(1)時,A(干路)和B(支路)兩個路口紅燈亮起,計數(shù)停止。輸入低電平(0)時,正常工作。對此模塊進行仿真,其仿真結果如圖17所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖17 擴展主控器仿真圖
6.2 LED燈控制模塊
LED燈控制模塊的功能是對直行,左轉,右轉,停止指示燈的控制,使其符合紅綠燈規(guī)則。其模塊如圖18所示。
圖18 LED燈控制模塊元件
此模塊中的clk10的時鐘信號是接收10hz的脈沖,是為了符合交通燈在遇到黃燈時閃爍的效果,10hz頻率是0.1s,人眼可以看到其閃爍變化。而輸入端elect是連接擴展主控器的輸出端elect,其功能主要是通過對不同數(shù)值的選擇,而對輸出端10種指示燈控制,進一步符合紅綠燈規(guī)則。即數(shù)值‘0’情況時,發(fā)生緊急制動;數(shù)值‘1’情況時,當A(干路)右轉燈亮,數(shù)值‘2’情況時;當A(干路)左轉燈亮;數(shù)值‘3’情況時,當A(干路)直行燈亮;數(shù)值‘4’情況時,當A(干路)黃燈閃爍;在這四種情況下,B(支路)紅燈亮;同理另外四種情況,當B(支路)綠燈亮時,A(干路)紅燈亮路。對此模塊進行仿真,其仿真結果如圖19所示。通過觀察仿真,滿足設計需求,完成了實驗預期效果。
圖19 LED燈控制仿真圖
7 擴展的頂層設計
分頻器模塊,提取顯示值模塊,動態(tài)掃描模塊,譯碼器模塊等設計都和前面的模塊設計一樣,就不再敘述。由于黃燈閃爍需要加一個10hz的時鐘信號脈沖,故多加一個分頻器。擴展后的頂層設計流程和上述一樣,不再敘述。其頂層設計電路如圖20所示。
圖20 擴展后設計電路
其引腳分頻如圖21所示。
圖21 引腳分配圖
通過對頂層電路的仿真,仿真結果如圖22所示。通過觀察仿真,滿足設計需求,完成了實驗預期。
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |