畢業(yè)設(shè)計論文基于FPGA的交通燈設(shè)計_第1頁
畢業(yè)設(shè)計論文基于FPGA的交通燈設(shè)計_第2頁
畢業(yè)設(shè)計論文基于FPGA的交通燈設(shè)計_第3頁
畢業(yè)設(shè)計論文基于FPGA的交通燈設(shè)計_第4頁
畢業(yè)設(shè)計論文基于FPGA的交通燈設(shè)計_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、基于FPGA的交通燈設(shè)計摘要交通信號指示燈是城市中交通指揮疏導(dǎo)中不可缺少的智能工具。以前用到的大多數(shù)交通燈的控制系統(tǒng)都是采用單片機或者PLC進行設(shè)計開發(fā)的。本文將采用VHDL硬件描述語言來論述各模塊代碼,并在Quartus II開發(fā)環(huán)境下進行編譯,在硬件板子上進行調(diào)試和演示。在計算機上運行成功并生產(chǎn)生成頂層文件后下載在FPGA器件EP2C5T144開發(fā)板子上進行驗證。通過調(diào)試結(jié)果顯示,本文的設(shè)計完全可以滿足現(xiàn)在交通指揮的需求,包括時間提示顯示、相關(guān)狀態(tài)控制和主、支干道的紅、黃、綠燈交替顯示功能。本文在交通燈控制的基礎(chǔ)上,對硬件描述語言以及其設(shè)計流程做了簡單介紹。EDA工具是一種十分重要的VHD

2、L語言開發(fā)工具,它是一款能夠?qū)υO(shè)計過程中任何一個環(huán)節(jié)或者階段進行計算機模擬的強大工具,因而,該工具能夠確保準確的設(shè)計,減少設(shè)計周期,大大降低成本?;贔PGA的交通燈控制器具有較高的可靠性、擦寫迅速、高效的運算能力、故障少、設(shè)計簡單、質(zhì)量輕以及體積不大等優(yōu)勢。本次設(shè)計將采用EP2C5T144最小系統(tǒng)開發(fā)板,因為它的體積不大,可以輕松嵌入到外圍電路中,完全可以快速進行邏輯判斷,數(shù)據(jù)計算以及系統(tǒng)運算等。本文采用QuartusII軟件進行開發(fā),運用自頂向下的新型設(shè)計方法。關(guān)鍵詞:自動、邏輯、交通燈、EDA、FPGA AbstractTraffic light controller plays a v

3、ery important role in the regulation of urban traffic. The traditional traffic light controller is based on single-chip microcomputer or PLC. This paper introduces a scheme based on FPGA technology and II Quartus development platform to realize the intersection traffic light controller. Using VHDL h

4、ardware description language description of the module program, and in the II Quartus environment to compile, simulate, generate the top level files downloaded in the FPGA device EPF10K10LC84 FLEX for verification. The verification results show that the basic design to achieve the control of traffic

5、 light controller, including the countdown time display function and main function, the special state control, a road of red, yellow, and green light display function alternately, indicating that the design scheme is correct. In this paper, the design process of the traffic light controller, and bri

6、efly introduces the hardware description bright prospect in the digital system design of VHDL language structure model and process design, VHDL design advantages and the language and an important position.EDA tools for electronic design personnel is extremely important, it can in each stage of elect

7、ronic design, the level of computer simulation and verification, to ensure the design accuracy and can shorten the design cycle and reduce design cost. Can realize the automatic control of traffic lights crossroads traffic lights. Based on the FPGA design of traffic lights system has high reliabilit

8、y, real-time flash, high operation speed, the failure rate is low, the circuit is simple, and the volume is small. This design uses Altera cycloneii series ep2c5t144 chip as the core of the minimum system, it can easily embed into the actual traffic lights application system, can realize the functio

9、n of the simple logic control, data acquisition, signal processing and mathematical computing; using QuartusII software as a development platform; using top-down designKeywords: automatic, logic, traffic lights, EDA, FPGA-27-目錄摘要IAbstractII目錄III前言11 緒論21.1論文研究背景及意義21.2 FPGA開發(fā)的歷史及簡介31.3 EP2C5T144最小系統(tǒng)

10、介紹41.4 本文研究的主要內(nèi)容52 硬件設(shè)計62.1硬件開發(fā)環(huán)境介紹62.2硬件開發(fā)環(huán)境平臺搭建62.3原理圖設(shè)計113 軟件設(shè)計123.1軟件開發(fā)平臺介紹123.2軟件開發(fā)平臺搭建133.3程序設(shè)計143.3.1 程序設(shè)計分析153.3.2 程序設(shè)計中需要注意的問題194 實物模型展示204.1 實物模型介紹204.2 實物模型演示方法214.2 仿真說明23總結(jié)25參考文獻26致謝27附件1 部分程序源代碼28前言交通燈控制指揮系統(tǒng),其本質(zhì)就是規(guī)范和管理行人和車輛穿越路口的行為,從確保人和車輛能夠安全、快速、合理和有效通過。在現(xiàn)在,交通燈控制器安裝在各個路口上,大大提高了路口行人和車輛的

11、通行安全性和規(guī)范性,減少了交通事故的發(fā)生幾率。目前實現(xiàn)交通燈控制有很多方案,比如采用PLC1(可編程序控制器)、標準邏輯器件、51單片機2等方案來進行開發(fā)。若采用單片機平臺進行開發(fā)設(shè)計,其大致電路框架包括基于單片機的主控電路、電源電路、顯示電路和無線收發(fā)控制電路四個部分組成??刂齐娐返男酒瑸?1單片機或者STC單片機都可以。同時需要一個3.3V或者5.5CV的DCDC,數(shù)碼管顯示電路和無線收發(fā)控制電路是由數(shù)據(jù)發(fā)射模塊和編碼芯片兩部分組成。電路設(shè)計相對復(fù)雜不說,而且還需要進行軟件的設(shè)計。雖然基于單片機的交通燈控制系統(tǒng)具有運行穩(wěn)定,功能較多,靈活性比較好等優(yōu)勢,但是任然存在許多問題。特別是電路的修

12、改比較花費時間,設(shè)計比較繁瑣,在一定程度下增加了設(shè)計成本和維護周期??删幊炭刂破鱌LC的優(yōu)勢在于是可靠性較好和穩(wěn)定性較高,但是其也有諸多問題。PLC是一個封閉的結(jié)構(gòu),所以不同PLC控制器的兼容性較差,而且不同的PLC在程序設(shè)計上也存在著差異。這就意味著,一旦選擇一種PLC之后,就只能按照該型號PLC的相關(guān)方式進行編編程,而且需要學(xué)習(xí)相關(guān)的設(shè)計語言規(guī)律,這些問題大大的的限制了PLC的靈活性和多元性。與前兩者相比,基于FPGA的開發(fā)方案,不僅具有很好靈活性,穩(wěn)定性,而且編程語言是完全統(tǒng)一性,而且更簡單和穩(wěn)定。因而,此次交通燈的控制器開發(fā)設(shè)計采用基于VHDL語言,F(xiàn)PGA的方式進行設(shè)計,不僅經(jīng)濟節(jié)約

13、和而且更加可靠穩(wěn)定。其開發(fā)設(shè)計也相對更加簡單,故障維護也比較容易,更加適合目前城市交通指揮的需求。1 緒論1.1論文研究背景及意義現(xiàn)在城市發(fā)展迅速,然而城市的交通問題卻越來越嚴重。城市的交通道路交通壓力越來越大,經(jīng)常會有交通擁堵,甚至是交通事故發(fā)生,交通疏導(dǎo)不及時也是造成這些問題重要原因。如今,全國幾乎所有城市或多或少的都存在這交通擁堵,交通混亂,甚至造成嚴重的交通事故,這給人們的出行以及車輛行駛帶來了極大的安全隱患,甚至造成生命和財產(chǎn)的重大損失。那么如何能夠快速指揮和疏導(dǎo)交通,規(guī)范和約束行人和車輛的行為,構(gòu)建一個合理規(guī)范的交通秩序,是目前的當務(wù)之急。經(jīng)研究調(diào)查發(fā)現(xiàn),城市中擁堵的主要因素是由當

14、前城市交通指揮制度以及管理機制等問題不完善造成的,現(xiàn)今城市正準備打造一個智慧城市,其中的包含智慧交通,而智能交通正是城市道路上最重要的一塊。本設(shè)計采用了FPGA方案設(shè)計則正好大大滿足了智慧交通的理念。它將實現(xiàn)城市的每個路口運用交通控制系統(tǒng)從而控制整個城市的交通,包括系統(tǒng)的改進,道路的疏通,以及各路口的指揮。尤其是在十字路口,它將把現(xiàn)代化技術(shù)融入其中,打造成一個智慧的交通路口。為了確保路口行人與車輛能夠合理、有序、安全和快速的通過相關(guān)區(qū)域,采用交通信號燈來進行指揮和疏導(dǎo)交通情況,將大大降低事故發(fā)生的幾率以及確保交通通暢,人車有序通過。隨著生活水平的提高,人們對生活質(zhì)量的要求不斷增加,汽車的數(shù)量還

15、在不斷增加,研究和設(shè)計現(xiàn)代智能交通燈具有很好實際意義?,F(xiàn)今EDA的技術(shù)發(fā)展越來越快,人們利用EAD技術(shù)越來越方便于電路。利用EDA技術(shù)和FPGA方法來實現(xiàn)交通燈的設(shè)計,非常的復(fù)合目前的需求,具有設(shè)計周期短,效果穩(wěn)定,維護方便以及運用簡單等諸多特點。這種設(shè)計方案也是符合目前電子技術(shù)發(fā)展的方向的,是比較合理。1.2 FPGA開發(fā)的歷史及簡介FPGA或CPLD芯片都是ASIC相關(guān)芯片系列中比較特殊的一種,其不僅具有ASIC芯片自身的特點之外,還具有如下的獨特的特點:隨著VLSI(超大集成電路)工藝的不斷提高,現(xiàn)能將幾毫米見方的硅片上集成上萬至百萬晶體管,無數(shù)個晶體管排列在一起,這樣做的話既能大大的縮

16、小空間,降低成本,而且還能保持原有的功能。FPGA/CPLD芯片的所含的規(guī)模也越來越大,其中,光是單片邏輯門數(shù)就已經(jīng)達上百萬門。因此,它能夠所實現(xiàn)的功能也越來越強,能在上面完成系統(tǒng)集成,即SOC(片上系統(tǒng))。況且,每個FPGA/CPLD芯片都有質(zhì)量保證,因為每塊芯片在出廠之前都做過測試,測試結(jié)果達標才能投入市場,因此,設(shè)計人員完全不需要承擔(dān)任何風(fēng)險,設(shè)計人員只需要完成自己的設(shè)計,通過軟硬件完成設(shè)計的最終步驟。所以,F(xiàn)PGA/CPLD的資金投入就少,減少了潛在的花費。假如使用FPGA的設(shè)計方案,用戶可以隨意的擦數(shù)以及編程,需要實現(xiàn)什么樣的功能完全由用戶自己決定,這樣用戶就能完成在不懂任何電路的情

17、況下實現(xiàn)交通燈的多種功能。FPGA/CPLD芯片中還包含多種功能,比如輸入工具,這樣大大方便了用戶將程序輸入的步驟,還有仿真工具,以及版圖設(shè)計工具等多種功能,多種功能的集合,大大的方便了設(shè)計人員,有了這些功能,設(shè)計人員就能夠快速的完成電路及程序的輸入以及調(diào)試。Iverson于1962年的時候提出了硬件描述語言(VHDL),詳細的講解了語言的基本內(nèi)容和基本結(jié)構(gòu),以及利用該語言在各種層次上對數(shù)字系統(tǒng)的建模方法,從此之后,各國出現(xiàn)了多種硬件描述語言,比如美國的DATA I/O公司的ABEL-HDL、 Verilog公司開發(fā)的Verilog HDL以及日本電子工業(yè)振興協(xié)會開發(fā)的UDL/I語言。但是由于

18、這些硬件描述語言的與其公司的硬件產(chǎn)品密切相關(guān),本身就是為其公司設(shè)計而成,不能推廣開來,而且語法雜亂,因此造成了信息交流不便以及設(shè)備維護的種種困難。但自從1987年VHDL(超高速硬件描述語言)被定為IEEE標準(IEEE-STD-1076)以來,VHDL已被工業(yè)界廣泛認可,并在工業(yè)界推廣開來,越來越多的人使用VHDL語言,VHDL已成為數(shù)字系統(tǒng)設(shè)計和存檔的重要工具,極大的提高了數(shù)字系統(tǒng)的設(shè)計水平和效率,在此方面大大的影響了工業(yè)界,給工業(yè)界帶來了無法估計的價值。VHDL的出現(xiàn),不僅在工業(yè)界取得了重大作用,而且在大規(guī)模的數(shù)字電路系統(tǒng)領(lǐng)域發(fā)揮的很大的作用,比如在邏輯領(lǐng)域這塊,相比于傳統(tǒng)的方法,利用V

19、HDL將更加便捷,因此,VHDL將成為EDA領(lǐng)域的重要組成部分。 VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風(fēng)格與句法是十分類似于一般的計算機高級語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計,分成外部(或稱可視部分,及端口)和內(nèi)部(或稱不可視部分),這樣分開之后,兩者分開處理,既涉及了實體的內(nèi)部功能,又能完成算法部分,大大的提高了處理水平。當對一個設(shè)計實體定義了外部界面后,在處理外部界面時,一旦其內(nèi)部開發(fā)完成后,內(nèi)部的文件就能夠被其他設(shè)計使用,其他的設(shè)計就可以直接調(diào)用這個實體。這種將設(shè)計實體分成內(nèi)外部分的概念是VHDL系統(tǒng)設(shè)

20、計的基本點。1.3 EP2C5T144最小系統(tǒng)介紹本開發(fā)板采用的主芯片F(xiàn)PGA型號為Altera公司最新的Cyclone IV系列中的EP2C5T144,等效門數(shù)大約為50萬門(是Cyclone EP1C3(10萬門)的5倍)。開發(fā)板的電源系統(tǒng)需要的電源大小是5V直流電源,通過板上的LDO電源系統(tǒng)出來,然后給FPGA系統(tǒng)的各個元件提供所需的各種電壓,并且可以向外輸出5V、3.3V兩種電壓。電源系統(tǒng)出來后則是板上配的EPCS4配置芯片,JTAG和AS兩種下載端口,方便下載程序,以及50MHz有源晶振,給系統(tǒng)提供時鐘信號。FPGA的所有引腳均是通過兩個40Pin的2.54mm標準排針接口引出,引腳

21、的大小符合國際標準,并與國際流行的DE2開發(fā)板上的擴展接口管腳兼容,因此假如有先有的擴展卡,都可以拿來使用。系統(tǒng)內(nèi)設(shè)有8個LED發(fā)光二極管,其作用是用來做I/O的輸出顯示。除此之外,系統(tǒng)內(nèi)還有4個按鍵開關(guān)、8位數(shù)字撥碼開關(guān)組成的I/O輸入,其作用是用來控制系統(tǒng)的功能。PCB板是采用四層板設(shè)計,板子的性能以及穩(wěn)定性相當可靠。通過擴展接口可以將同樣的多塊FPGA板以層疊的形式集成在一起簡單擴充系統(tǒng)的容量,相當于多塊硬盤結(jié)合成一塊大的硬盤,這樣不僅擴大了容量,還能省去不少空間。除此之外,PCB板形成了多Nios嵌入式并行處理器的小型實驗系統(tǒng),可以駁接SRAM、SDARM、七段LED、LCD、Vide

22、o/Audio、AD/DA等設(shè)備和其他各種形式的用戶外設(shè)接口板。該開發(fā)板主要是為學(xué)習(xí)FPGA/HDL/嵌入式Nios等數(shù)字邏輯的學(xué)生和愛好者提供一種簡單廉價的實驗平臺。開發(fā)板要求的輸入電壓是5V。通過U2:LM1085-3.3的LDO芯片出來將會到3.3V的電壓。再通過AMS1117-1.2的LDO芯片,通過AMS1117-2.5的LDO芯片U4產(chǎn)生FPGA Cyclone IV芯片內(nèi)部PLL所需要的獨立電源。其中有3.3V電壓是給FPGA的IO提供的。也就是說本設(shè)計采用了簡化的FPGA IO引腳電平是+3.3V,而不提供給用戶 Cyclone IV 其它不同電平標準的 I/O電平選擇方式。

23、+1.2V電壓是提供給FPGA內(nèi)核的工作電壓,+2.5V是FPGA內(nèi)部PLL的專用工作電壓。1.2V電壓的純凈程度要求比較高,故采用鉭電容濾波。1.4 本文研究的主要內(nèi)容交通燈控制電路是的作用主要是用于城市的交通疏通,每當有大量車輛出入造成堵塞的時候,交通燈控制電路就能體現(xiàn)它的用處了。交通信號燈在人與車輛交替行駛時,能實現(xiàn)紅燈、黃燈、綠燈的自動指揮,更好的實現(xiàn)現(xiàn)代化交通管理。交通燈指示告訴我們,綠燈亮?xí)r,準許車輛通行,但轉(zhuǎn)彎的車輛不得妨礙被放行的直行車輛、行人通行;黃燈亮?xí)r,已越過停止線的車輛可以繼續(xù)通行;紅燈亮?xí)r,禁止車輛通行。在每個城鄉(xiāng)的十字路口,一般都在每條道路上各有一組紅、黃、綠交通信

24、號燈,這樣的用意就是在于保證交通秩序和行人安全。在未設(shè)置信號燈的路口,車輛和行人應(yīng)當按照機動車信號燈的表示通行。交通燈控制電路將會自動控制十字路口的交通燈的切換,安全的指揮各種車輛以及行人通過,真正的實現(xiàn)城鄉(xiāng)交通的自能化管理。一個十字路口的交通控制器,不光是交通燈的切換,更重要的是將十字路口的四個方向合理運轉(zhuǎn),方向有東南西北,東西方向的紅綠燈狀態(tài)一樣,南北方向的紅綠燈狀態(tài)一樣,每個方向上,有四盞燈,分別是左轉(zhuǎn)燈、紅燈、綠燈和黃燈。左拐燈亮表示左轉(zhuǎn)車輛可以通行;紅燈亮表示左轉(zhuǎn)和直行車輛禁行;綠燈亮表示直行車輛和右轉(zhuǎn)的車輛可以通行;黃燈亮表示左轉(zhuǎn)和直行的車輛即將禁行。本論文則簡要的介紹了FPGA芯

25、片的特點以及設(shè)計意義,本系統(tǒng)是以QuartusII軟件為開發(fā)平臺,然后通過VHDL硬件描述語言來編寫程序,以及設(shè)計原理圖以輸入方式來設(shè)計交通燈。FPGA芯片是一款功能非常強大,可多次編程及擦除的邏輯芯片,本系統(tǒng)采用了FPGA設(shè)計ASIC電路,用戶將不需要投片生產(chǎn),基于FPGA交通燈控制器設(shè)計就能實現(xiàn)相應(yīng)的功能。FPGA的內(nèi)部有著豐富的觸發(fā)器和I/O引腳。FPGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。FPGA的開發(fā),是ASIC電路中風(fēng)險最小、開發(fā)費用最低、設(shè)計周期最短的器件之一。FPGA采用高速的CHMOS工藝,功耗低,性能強,可直接與CMOS和TTL電平兼容。因此用FPGA完成

26、交通燈的設(shè)計不光要合理,更注重的是芯片的選用。本論文通過設(shè)計交通安全指揮燈,從而來形象的指揮行人和車輛的安全通行。在十字路口處,是發(fā)生危險的重點去,因此在十字路口的東西南北四個方向必須合理安排。東西方向的交通信號燈狀態(tài)保持一致,南北方向的交通信號燈狀態(tài)也保持一致。其中每個方向有左轉(zhuǎn)燈、紅燈、綠燈和黃燈,共四盞。左轉(zhuǎn)燈亮說明車輛可以左轉(zhuǎn)通行;紅燈亮說明禁止車輛直行和左轉(zhuǎn);綠燈亮說明允許車輛直行和右轉(zhuǎn);黃燈亮說明即將禁止車輛直行和左轉(zhuǎn)。在每個方向上均設(shè)有一個倒計時顯示器,以顯示禁止或允許通行的倒計時間。2 硬件設(shè)計2.1硬件開發(fā)環(huán)境介 在本次畢業(yè)設(shè)計中,筆者的硬件開發(fā)環(huán)境是AD14,即Altium

27、 Designer 14硬件開發(fā)環(huán)境。AD14是Altium Designer 是原Protel軟件開發(fā)商Altium公司推出的一體化的電子產(chǎn)品開發(fā)系統(tǒng),主要運行在Windows操作系統(tǒng)。該軟件全面集成了原理圖設(shè)計、原件繪制、原件封裝繪制、PCB板圖繪制以及電氣仿真等等功能,為開發(fā)者提供一個優(yōu)秀的開發(fā)環(huán)境和靈活的運用平臺,目前最高版本為Altium Designer 15.0.7 。Altium Designer 開發(fā)工具全面包括繼承包括Protel 99SE、Protel DXP在內(nèi)的以前相關(guān)版本的相關(guān)功能和優(yōu)勢外,繼續(xù)添加了一些新的創(chuàng)新的功能,該平臺拓寬了板級設(shè)計的傳統(tǒng)界面,全面集成了FP

28、GA設(shè)計功能和SOPC設(shè)計實現(xiàn)功能,從而允許工程設(shè)計人員能將系統(tǒng)設(shè)計中的FPGA與PCB設(shè)計及嵌入式設(shè)計集成在一起。 由于Altium Designer 在繼承先前Protel軟件功能的基礎(chǔ)上,綜合了FPGA設(shè)計和嵌入式系統(tǒng)軟件設(shè)計功能,Altium Designer 對計算機的系統(tǒng)需求比先前的版本要高一些。Altium Designer不僅擁有強大的PCB設(shè)計能力,而且還有強大的邏輯仿真分析能力,是一款特別適合初學(xué)者使用的PCB繪制軟件。該軟件主要任務(wù)包括:1. 電氣原理圖開發(fā)回執(zhí);2.印刷電氣屬性電路板PCB設(shè)計;3.FPGA程序及其仿真的設(shè)計;4 .嵌入式系統(tǒng)電路設(shè)計開發(fā);5. 3D P

29、CB模型繪制及其演示。2.2硬件開發(fā)環(huán)境平臺搭建上一節(jié)筆者介紹本次硬件設(shè)計的軟件為Altium Designe 14.0,下面筆者簡單介紹AD14如何建立工程項目工程。 步驟一:啟動AD軟件,如下圖2.2.1: 圖2.2.1 AD啟動界面 步驟二:在啟動后的界面如下圖2.2.2所示: 圖2.2.2步驟三:如圖2.2.3所示,在打開的界面中,打開菜單中選擇File>project>PCB Project,即可創(chuàng)建一個工程項目。圖2.2.3步驟四:創(chuàng)建完成后,在窗口的左邊會出現(xiàn)如下控制臺,如圖2.2.4所示:圖2.2.4步驟五:如圖2.2.5所示,將鼠標移動至項目工程圖標處,單機鼠標左

30、鍵,在彈出下拉菜單中選擇“add new to Project”選項,在彈出的菜單中,就可以添加原理圖和PCB制作圖板了,如圖所示:圖2.2.5在選擇“schematic”,就是添加原理圖制作文件,如圖2.2.6所示為原理圖制作窗口:圖2.2.6自此就可以開始設(shè)計原理圖了。2.3系統(tǒng)分析根據(jù)下面的系統(tǒng)框架圖我們可以分析得知,論文中所涉及的十字路口交通燈只能疏導(dǎo)控制系統(tǒng)必須具有能夠指揮前進和左轉(zhuǎn)的功能,還有擁有行人指示燈的功能,并且是控制綠黃紅燈按相關(guān)順序進行循環(huán)亮和滅的。而且要求綠燈亮轉(zhuǎn)紅燈亮或者轉(zhuǎn)左轉(zhuǎn)燈亮之前要先轉(zhuǎn)黃燈亮5秒,左轉(zhuǎn)燈亮轉(zhuǎn)紅燈亮之前也要先轉(zhuǎn)黃燈亮5秒,紅燈亮可以直接轉(zhuǎn)綠燈或左轉(zhuǎn)

31、燈亮(四種燈的循環(huán)順序如圖2.1所示)。還要求四種顏色燈的點亮?xí)r間能夠通過倒數(shù)計時的方式進行顯示。可以用VHDL語言合理設(shè)計系統(tǒng)功能,使紅黃綠左轉(zhuǎn)燈的轉(zhuǎn)換有一個準確的時間間隔和轉(zhuǎn)換順序。圖2.3 指示燈轉(zhuǎn)換順序采用基于FPGA邏輯編程的方法來進行該設(shè)計,具有編程簡單、操作靈活、便于優(yōu)化升級的特點。同時,目前FPGA元器件的快速進步,編程設(shè)計和原理圖電路設(shè)計等設(shè)計平臺的快速發(fā)展和進步,F(xiàn)PGA的設(shè)計方式越來越受到關(guān)注和運用。根據(jù)設(shè)計需求和該系統(tǒng)必須所具有功能,并參考相關(guān)的文獻資料經(jīng)現(xiàn)在的方案設(shè)計畫出十字路智能口交通燈控制系統(tǒng)框圖如下圖所示,這也是本次設(shè)計的總體方案,框圖如下圖2.4所示:CLK時

32、鐘分頻模塊交通燈控制及計時模塊掃描顯示模塊LED顯示數(shù)碼管位碼數(shù)碼管段碼圖2.4 系統(tǒng)的框圖2.4原理圖設(shè)計1.數(shù)碼管的時間顯示以及信號燈切換電路的設(shè)計原理如下圖所示,如下圖2.3所示為顯示電路部分,圖2.3 顯示以及信號燈電路如圖所示,本文的交通燈的顯示和指示燈電路,就是由圖2.3相同的四個電路構(gòu)成,分別指示四個路口的交通情況。這里要求的開發(fā)板上必須要設(shè)定一個計數(shù)器,且計數(shù)值為0-60。當計數(shù)值達到60后,下一個時鐘沿回復(fù)到0,開始下一輪計數(shù)。但是,如何系統(tǒng)檢測發(fā)現(xiàn)了特殊狀況(EMI =1)的出現(xiàn)時,計數(shù)器將會迅速暫停工作,此時本系統(tǒng)的復(fù)位信號RESET將命令計數(shù)器強制清零。這樣每一個電路的

33、控制端口都直接連接在開發(fā)板上,便于開發(fā)對整個系統(tǒng)的控制是完美的。由于采用的FPGA芯片的時鐘頻率是50MHz,需要將其分頻為1Hz。也就是說當前模塊的分頻為50M,且將相關(guān)頻率瞬間變換成1Hz的脈沖波信號,這樣得到的相關(guān)脈沖波的周期將可以達到1S。假如系統(tǒng)能夠達到分頻50M,這時在仿真圖上是根本觀察不了的,也就無法進行準確的驗證和測試,所以在仿真的時候,最好是將分頻系數(shù)調(diào)小一些,大約20分頻就可以了,這時候就可以很清楚的從圖中得到并分析對時鐘輸入信號的分頻了,如圖2.4所示, Reset是復(fù)位信號,CLK_50MHz是輸入時鐘頻率,CLK_1Hz是輸出時鐘頻率,從圖中可以看出,輸出頻率CLK_

34、1Hz確實是輸入時鐘頻率CLK_50MHz的20分頻。交通燈信號計時顯示部分,是按照相關(guān)輸入的STATUS信號,產(chǎn)生相應(yīng)的指示燈的信號,其直接可以控制交通燈的點亮或熄滅,在指示燈信號顯示電路程序測試真結(jié)果中,不難發(fā)現(xiàn),STATUS是一種輸入信號,而它是必須按照狀態(tài)控制模塊產(chǎn)生的脈沖信號,即STATUS信號,一種六種狀態(tài),依次為000(S1)、001(S2)、010(S3)、011(S4)、100(S5)、101(S6);EW_LRGY(8位)是東西方向上交通信號燈的狀態(tài), SN_LRGY(8位)是南北方向上交通信號燈的狀態(tài),依次為左轉(zhuǎn)、紅、綠、黃,對應(yīng)著EW_LRGY、SN_LRGY的前四位,

35、1表示點亮,0表示熄滅,后四位均為0,表示四個燈的陰極接負極。 圖2.4 整個指示電路3 軟件設(shè)計3.1軟件開發(fā)平臺介紹在本次畢業(yè)設(shè)計中,主要運用的軟件開發(fā)環(huán)境是Quartus II, Quartus II 是Altera公司的新一代功能跟強大的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、Verilog HDL以及AHDL語言等多種不同設(shè)計形式和方法,其內(nèi)部它本身獨立的綜合器以及獨立高效仿真器,能夠進行從程序設(shè)計輸入到相關(guān)硬件的設(shè)置和模擬仿真等設(shè)計流程。 Quartus II可以在XP系統(tǒng)、Linux系統(tǒng)包括Unix系統(tǒng)上都可以進行安裝運行,同時該軟件兼容Tcl腳本語言,而且還具有人性化的用戶

36、UI環(huán)境可以體驗,具有很快的操作速度和運行速度,高度的界面統(tǒng)一性,功能強大實用,操作簡單等特點。Quartus II兼容Altera的相關(guān)IP核,同時內(nèi)嵌了LPM/MegaFunction宏定義的功能模塊底層庫,這樣用戶很容易調(diào)用相關(guān)的函數(shù)模塊進行編程設(shè)計,對用戶而言更加簡單和方便。另外該軟件開發(fā)平臺也支持相關(guān)第三方的開大平臺。比如支持Synplify pro、Lenoardo Specturn以及Modelsem等第三方EDA工具來完成設(shè)計任務(wù)和仿真。Quartus平臺與Cadence、ExemplarLogic、 MentorGraphics、Synopsys和Synplicity等EDA

37、供應(yīng)商的開發(fā)工具相兼容。該軟件開發(fā)平臺進一步改進了系統(tǒng)模塊工具中的LogicLock模塊分析和設(shè)計功能,另外也增加了FastFit編譯的選項。事實上,在Quartus II開發(fā)平臺目前的運用已經(jīng)十分的普遍,在很多領(lǐng)域隨著FPGA編程的普及,不可避免的運用到了相關(guān)的Quartus II開發(fā)平臺,因為該平臺操作相對比較簡單,而且也比較容易理解,學(xué)起來也比較快,操作更加順手。另外,其具有強大的編譯和分析功能,特別是在處理復(fù)雜邏輯運算時,可以直接調(diào)用其內(nèi)嵌的大量的處理工具。因此,該平臺收到了極大的歡迎。3.2 Quartus II的設(shè)計流程介紹如圖3.1所示就是Quartus II的設(shè)計流程圖, 圖3

38、.1 設(shè)計流程圖該軟件開發(fā)平臺的具體的操作過程如下所示:1. 首先,進行設(shè)計之前,需要建立一個工作庫的文件夾和并且新建相關(guān)的編譯設(shè)計和程序編寫的文件。2. 然后,開始創(chuàng)建相關(guān)的工程文件。3. 編程完畢后,就開始進行編譯程序進行調(diào)試。4. 調(diào)試沒有語法錯誤后,就可以進行時序仿真5. 時序仿真后,如果沒有問題,就可以進行引腳鎖定6. 最后,就可以將程序下載到相關(guān)硬件環(huán)境中實際驗證3.3程序設(shè)計1用VHDL編寫程序,來實現(xiàn)交通燈控制器的原理框圖如圖3.3示 圖3.3交通信號燈控制器程序原理框圖 程序中的時鐘信號clk為石英晶體(327868HZ)分頻后的8Hz標準信號作為產(chǎn)生1秒信號的輸入信號,為L

39、ED數(shù)碼管驅(qū)動電路(MC4511)提供輸入信號,用于縣市交通燈所處的狀態(tài)的時間。6個輸出信號(對應(yīng)兩組紅黃綠燈,F(xiàn)R1、FY1和FG1為主干道紅黃綠燈信號, FR2、FY2和FG2為支干道紅黃綠燈信號)。該程序由7個進程組成,進程P1和P2將8Hz標準信號分頻后產(chǎn)生1秒信號(carry),進程P1和P2 進程P3、P4和P5 進程構(gòu)成兩個帶有預(yù)置數(shù)功能的十進制計數(shù)器,其中P4產(chǎn)生允許十位計數(shù)器計數(shù)的控制信號(en)。進程P6實現(xiàn)狀態(tài)轉(zhuǎn)換和產(chǎn)生狀態(tài)轉(zhuǎn)換的控制信號(load),進程P7產(chǎn)生次態(tài)信號(next_state)和信號燈輸出信號(FR1、FY1、FG1、FR2、FY2和FG2),以及每一個

40、狀態(tài)的時間值(即計數(shù)器的預(yù)置數(shù))和下一個狀態(tài)。3.3.1 程序設(shè)計分析圖3.4 程序流程圖上圖就是本次設(shè)計的程序流程圖3.3.2 程序分析與仿真一個完整的VHDL語言程序通常包括實體(Entity)、構(gòu)造體、配置、包集合(Package)和庫(Library)5個部分組成。下面結(jié)合實際的程序來加以說明。首先是更燈函數(shù)的轉(zhuǎn)換如下圖3.3所示when ew_yellow0 => ew_state<=ew_turnl; ew_secondH:=2; ew_secondL:=0; - 下一狀態(tài)的左轉(zhuǎn)燈 when ew_turnl =>ew_state<=ew_yellow1;

41、ew_secondH:=0; ew_secondL:=5; - 下一狀態(tài)的黃燈 when ew_yellow1 =>ew_state<=ew_red; ew_secondH:=8; ew_secondL:=0; - 下一狀態(tài)的紅燈 when others => ew_state<=ew_red; ew_secondH:=8; ew_secondL:=0; - 下一狀態(tài)的紅燈2.顯示器片選 case cnt is 顯示時間 when 0 => L<="000" dled<=display(ew_secondH); when 1 =&g

42、t; L<="001" dled<=display(ew_secondL); when 2 => L<="010" dled<=X"00" when 3 => L<="011" dled<=X"00" when 4 => L<="100" dled<=X"00" when 5 => L<="101" dled<=X"00" when

43、6 => L<="110" dled<=display(sn_secondH); when 7 => L<="111" dled<=display(sn_secondL); end case; end if; end process;end control;關(guān)于各種信號依次是:clk:系統(tǒng)輸入時鐘50MHzrst_n:系統(tǒng)異步復(fù)位信號LEDDX:東西向的LED紅綠燈rledDX:東西向的人行道紅燈LEDNB:南北向的LED紅綠燈rledNB:南北向的人行道紅燈SGMDX:東西向的數(shù)碼管段選SGMNB:南北向的數(shù)碼管段選

44、SWDX:東西向的數(shù)碼管位選SWNB:南北向的數(shù)碼管位選仿真圖如下圖3.5所示圖3.5 信號仿真圖*產(chǎn)生計時信號2*/always (posedge clk or negedge rst_n)beginif(!rst_n) beginscountb<='d2;cntb<='d0;endelse if(start_countb=1'b1)beginif(cntb>=50000000)begincntb<='d0;if(scountb>'d0)scountb<=scountb-'d1;elsescountb<='d0;endelse cntb<=cntb+'d1;endelsescountb<=timesb;end4 實物模型展示4.1 實物模型介紹圖4.1 交通燈模型圖如圖4.1所示,這就是本文設(shè)計的一個智能交通等的大致模型,從圖上可以看出,每一個路口有三個指示和兩個行人指示燈。考

溫馨提示

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

評論

0/150

提交評論