畢業(yè)設計論文基于FPGA的交通燈設計
《畢業(yè)設計論文基于FPGA的交通燈設計》由會員分享,可在線閱讀,更多相關《畢業(yè)設計論文基于FPGA的交通燈設計(31頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、基于FPGA的交通燈設計 摘要 交通信號指示燈是城市中交通指揮疏導中不可缺少的智能工具。以前用到的大多數(shù)交通燈的控制系統(tǒng)都是采用單片機或者PLC進行設計開發(fā)的。本文將采用VHDL硬件描述語言來論述各模塊代碼,并在Quartus II開發(fā)環(huán)境下進行編譯,在硬件板子上進行調試和演示。在計算機上運行成功并生產生成頂層文件后下載在FPGA器件EP2C5T144開發(fā)板子上進行驗證。通過調試結果顯示,本文的設計完全可以滿足現(xiàn)在交通指揮的需求,包括時間提示顯示、相關狀態(tài)控制和主、支干道的紅、黃、綠燈交替顯示功能。本文在交通燈控制的基礎上,對硬件描述語言以及其設計流程做了簡單介紹。 EDA工具是
2、一種十分重要的VHDL語言開發(fā)工具,它是一款能夠對設計過程中任何一個環(huán)節(jié)或者階段進行計算機模擬的強大工具,因而,該工具能夠確保準確的設計,減少設計周期,大大降低成本?;贔PGA的交通燈控制器具有較高的可靠性、擦寫迅速、高效的運算能力、故障少、設計簡單、質量輕以及體積不大等優(yōu)勢。本次設計將采用EP2C5T144最小系統(tǒng)開發(fā)板,因為它的體積不大,可以輕松嵌入到外圍電路中,完全可以快速進行邏輯判斷,數(shù)據(jù)計算以及系統(tǒng)運算等。本文采用QuartusII軟件進行開發(fā),運用自頂向下的新型設計方法。 關鍵詞:自動、邏輯、交通燈、EDA、FPGA Abstract Traffic ligh
3、t controller plays a very 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 co
4、ntroller. Using VHDL hardware 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
5、the control of traffic 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 lig
6、ht controller, and briefly 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 ca
7、n in each stage of electronic 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 sy
8、stem has high reliability, 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,
9、 can realize the function of the simple logic control, data acquisition, signal processing and mathematical computing; using QuartusII software as a development platform; using top-down design Keywords: automatic, logic, traffic lights, EDA, FPGA -27- 目錄 摘要 I Abstract II 目錄 III 前言 1 1 緒論 2
10、1.1論文研究背景及意義 2 1.2 FPGA開發(fā)的歷史及簡介 3 1.3 EP2C5T144最小系統(tǒng)介紹 4 1.4 本文研究的主要內容 5 2 硬件設計 6 2.1硬件開發(fā)環(huán)境介紹 6 2.2硬件開發(fā)環(huán)境平臺搭建 6 2.3原理圖設計 11 3 軟件設計 12 3.1軟件開發(fā)平臺介紹 12 3.2軟件開發(fā)平臺搭建 13 3.3程序設計 14 3.3.1 程序設計分析 15 3.3.2 程序設計中需要注意的問題 19 4 實物模型展示 20 4.1 實物模型介紹 20 4.2 實物模型演示方法 21 4.2 仿真說明 23 總結 25 參考文獻 26
11、致謝 27 附件1 部分程序源代碼 28 前言 交通燈控制指揮系統(tǒng),其本質就是規(guī)范和管理行人和車輛穿越路口的行為,從確保人和車輛能夠安全、快速、合理和有效通過。在現(xiàn)在,交通燈控制器安裝在各個路口上,大大提高了路口行人和車輛的通行安全性和規(guī)范性,減少了交通事故的發(fā)生幾率。目前實現(xiàn)交通燈控制有很多方案,比如采用PLC[1](可編程序控制器)、標準邏輯器件、51單片機[2]等方案來進行開發(fā)。若采用單片機平臺進行開發(fā)設計,其大致電路框架包括基于單片機的主控電路、電源電路、顯示電路和無線收發(fā)控制電路四個部分組成??刂齐娐返男酒瑸?1單片機或者STC單片機都可以。
12、同時需要一個3.3V或者5.5CV的DCDC,數(shù)碼管顯示電路和無線收發(fā)控制電路是由數(shù)據(jù)發(fā)射模塊和編碼芯片兩部分組成。電路設計相對復雜不說,而且還需要進行軟件的設計。雖然基于單片機的交通燈控制系統(tǒng)具有運行穩(wěn)定,功能較多,靈活性比較好等優(yōu)勢,但是任然存在許多問題。特別是電路的修改比較花費時間,設計比較繁瑣,在一定程度下增加了設計成本和維護周期??删幊炭刂破鱌LC的優(yōu)勢在于是可靠性較好和穩(wěn)定性較高,但是其也有諸多問題。PLC是一個封閉的結構,所以不同PLC控制器的兼容性較差,而且不同的PLC在程序設計上也存在著差異。這就意味著,一旦選擇一種PLC之后,就只能按照該型號PLC的相關方式進行編編程,而且
13、需要學習相關的設計語言規(guī)律,這些問題大大的的限制了PLC的靈活性和多元性。與前兩者相比,基于FPGA的開發(fā)方案,不僅具有很好靈活性,穩(wěn)定性,而且編程語言是完全統(tǒng)一性,而且更簡單和穩(wěn)定。因而,此次交通燈的控制器開發(fā)設計采用基于VHDL語言,F(xiàn)PGA的方式進行設計,不僅經(jīng)濟節(jié)約和而且更加可靠穩(wěn)定。其開發(fā)設計也相對更加簡單,故障維護也比較容易,更加適合目前城市交通指揮的需求。 1 緒論 1.1論文研究背景及意義 現(xiàn)在城市發(fā)展迅速,然而城市的交通問題卻越來越嚴重。城市的交通道路交通壓力越來越大,經(jīng)常會有交通擁堵,甚至是交通事故發(fā)生,交通疏導不及時也是造成這些問題重要原因。如今,全國幾乎所有
14、城市或多或少的都存在這交通擁堵,交通混亂,甚至造成嚴重的交通事故,這給人們的出行以及車輛行駛帶來了極大的安全隱患,甚至造成生命和財產的重大損失。那么如何能夠快速指揮和疏導交通,規(guī)范和約束行人和車輛的行為,構建一個合理規(guī)范的交通秩序,是目前的當務之急。 經(jīng)研究調查發(fā)現(xiàn),城市中擁堵的主要因素是由當前城市交通指揮制度以及管理機制等問題不完善造成的,現(xiàn)今城市正準備打造一個智慧城市,其中的包含智慧交通,而智能交通正是城市道路上最重要的一塊。本設計采用了FPGA方案設計則正好大大滿足了智慧交通的理念。它將實現(xiàn)城市的每個路口運用交通控制系統(tǒng)從而控制整個城市的交通,包括系統(tǒng)的改進,道路的疏通,以及各路口的指
15、揮。尤其是在十字路口,它將把現(xiàn)代化技術融入其中,打造成一個智慧的交通路口。為了確保路口行人與車輛能夠合理、有序、安全和快速的通過相關區(qū)域,采用交通信號燈來進行指揮和疏導交通情況,將大大降低事故發(fā)生的幾率以及確保交通通暢,人車有序通過。隨著生活水平的提高,人們對生活質量的要求不斷增加,汽車的數(shù)量還在不斷增加,研究和設計現(xiàn)代智能交通燈具有很好實際意義。 現(xiàn)今EDA的技術發(fā)展越來越快,人們利用EAD技術越來越方便于電路。利用EDA技術和FPGA方法來實現(xiàn)交通燈的設計,非常的復合目前的需求,具有設計周期短,效果穩(wěn)定,維護方便以及運用簡單等諸多特點。這種設計方案也是符合目前電子技術發(fā)展的方向的,是比較
16、合理。 1.2 FPGA開發(fā)的歷史及簡介 FPGA或CPLD芯片都是ASIC相關芯片系列中比較特殊的一種,其不僅具有ASIC芯片自身的特點之外,還具有如下的獨特的特點: 隨著VLSI(超大集成電路)工藝的不斷提高,現(xiàn)能將幾毫米見方的硅片上集成上萬至百萬晶體管,無數(shù)個晶體管排列在一起,這樣做的話既能大大的縮小空間,降低成本,而且還能保持原有的功能。FPGA/CPLD芯片的所含的規(guī)模也越來越大,其中,光是單片邏輯門數(shù)就已經(jīng)達上百萬門。因此,它能夠所實現(xiàn)的功能也越來越強,能在上面完成系統(tǒng)集成,即SOC(片上系統(tǒng))。 況且,每個FPGA/CPLD芯片都有質量保證,因為每塊芯片在出廠之前都做過測
17、試,測試結果達標才能投入市場,因此,設計人員完全不需要承擔任何風險,設計人員只需要完成自己的設計,通過軟硬件完成設計的最終步驟。所以,F(xiàn)PGA/CPLD的資金投入就少,減少了潛在的花費。 假如使用FPGA的設計方案,用戶可以隨意的擦數(shù)以及編程,需要實現(xiàn)什么樣的功能完全由用戶自己決定,這樣用戶就能完成在不懂任何電路的情況下實現(xiàn)交通燈的多種功能。FPGA/CPLD芯片中還包含多種功能,比如輸入工具,這樣大大方便了用戶將程序輸入的步驟,還有仿真工具,以及版圖設計工具等多種功能,多種功能的集合,大大的方便了設計人員,有了這些功能,設計人員就能夠快速的完成電路及程序的輸入以及調試。 Iverson于
18、1962年的時候提出了硬件描述語言(VHDL),詳細的講解了語言的基本內容和基本結構,以及利用該語言在各種層次上對數(shù)字系統(tǒng)的建模方法,從此之后,各國出現(xiàn)了多種硬件描述語言,比如美國的DATA I/O公司的ABEL-HDL、 Verilog公司開發(fā)的Verilog HDL以及日本電子工業(yè)振興協(xié)會開發(fā)的UDL/I語言。但是由于這些硬件描述語言的與其公司的硬件產品密切相關,本身就是為其公司設計而成,不能推廣開來,而且語法雜亂,因此造成了信息交流不便以及設備維護的種種困難。但自從1987年VHDL(超高速硬件描述語言)被定為IEEE標準(IEEE-STD-1076)以來,VHDL已被工業(yè)界廣泛認可,并
19、在工業(yè)界推廣開來,越來越多的人使用VHDL語言,VHDL已成為數(shù)字系統(tǒng)設計和存檔的重要工具,極大的提高了數(shù)字系統(tǒng)的設計水平和效率,在此方面大大的影響了工業(yè)界,給工業(yè)界帶來了無法估計的價值。VHDL的出現(xiàn),不僅在工業(yè)界取得了重大作用,而且在大規(guī)模的數(shù)字電路系統(tǒng)領域發(fā)揮的很大的作用,比如在邏輯領域這塊,相比于傳統(tǒng)的方法,利用VHDL將更加便捷,因此,VHDL將成為EDA領域的重要組成部分。 VHDL主要用于描述數(shù)字系統(tǒng)的結構,行為,功能和接口。除了含有許多具有硬件特征的語句外,VHDL的語言形式和描述風格與句法是十分類似于一般的計算機高級語言。VHDL的程序結構特點是將一項工程設計,分成外部(
20、或稱可視部分,及端口)和內部(或稱不可視部分),這樣分開之后,兩者分開處理,既涉及了實體的內部功能,又能完成算法部分,大大的提高了處理水平。當對一個設計實體定義了外部界面后,在處理外部界面時,一旦其內部開發(fā)完成后,內部的文件就能夠被其他設計使用,其他的設計就可以直接調用這個實體。這種將設計實體分成內外部分的概念是VHDL系統(tǒng)設計的基本點。 1.3 EP2C5T144最小系統(tǒng)介紹 本開發(fā)板采用的主芯片F(xiàn)PGA型號為Altera公司最新的Cyclone IV系列中的EP2C5T144,等效門數(shù)大約為50萬門(是Cyclone EP1C3(10萬門)的5倍)。開發(fā)板的電源系統(tǒng)需要的電源大小是5V
21、直流電源,通過板上的LDO電源系統(tǒng)出來,然后給FPGA系統(tǒng)的各個元件提供所需的各種電壓,并且可以向外輸出5V、3.3V兩種電壓。電源系統(tǒng)出來后則是板上配的EPCS4配置芯片,JTAG和AS兩種下載端口,方便下載程序,以及50MHz有源晶振,給系統(tǒng)提供時鐘信號。FPGA的所有引腳均是通過兩個40Pin的2.54mm標準排針接口引出,引腳的大小符合國際標準,并與國際流行的DE2開發(fā)板上的擴展接口管腳兼容,因此假如有先有的擴展卡,都可以拿來使用。系統(tǒng)內設有8個LED發(fā)光二極管,其作用是用來做I/O的輸出顯示。除此之外,系統(tǒng)內還有4個按鍵開關、8位數(shù)字撥碼開關組成的I/O輸入,其作用是用來控制系統(tǒng)的功
22、能。PCB板是采用四層板設計,板子的性能以及穩(wěn)定性相當可靠。通過擴展接口可以將同樣的多塊FPGA板以層疊的形式集成在一起簡單擴充系統(tǒng)的容量,相當于多塊硬盤結合成一塊大的硬盤,這樣不僅擴大了容量,還能省去不少空間。除此之外,PCB板形成了多Nios嵌入式并行處理器的小型實驗系統(tǒng),可以駁接SRAM、SDARM、七段LED、LCD、Video/Audio、AD/DA等設備和其他各種形式的用戶外設接口板。該開發(fā)板主要是為學習FPGA/HDL/嵌入式Nios等數(shù)字邏輯的學生和愛好者提供一種簡單廉價的實驗平臺。 開發(fā)板要求的輸入電壓是5V。通過U2:LM1085-3.3的LDO芯片出來將會到3.3V的電
23、壓。再通過AMS1117-1.2的LDO芯片,通過AMS1117-2.5的LDO芯片U4產生FPGA Cyclone IV芯片內部PLL所需要的獨立電源。其中有3.3V電壓是給FPGA的IO提供的。也就是說本設計采用了簡化的FPGA IO引腳電平是+3.3V,而不提供給用戶 Cyclone IV 其它不同電平標準的 I/O電平選擇方式。 +1.2V電壓是提供給FPGA內核的工作電壓,+2.5V是FPGA內部PLL的專用工作電壓。1.2V電壓的純凈程度要求比較高,故采用鉭電容濾波。 1.4 本文研究的主要內容 交通燈控制電路是的作用主要是用于城市的交通疏通,每當有大量車輛出入造成堵塞的時候,
24、交通燈控制電路就能體現(xiàn)它的用處了。交通信號燈在人與車輛交替行駛時,能實現(xiàn)紅燈、黃燈、綠燈的自動指揮,更好的實現(xiàn)現(xiàn)代化交通管理。交通燈指示告訴我們,綠燈亮時,準許車輛通行,但轉彎的車輛不得妨礙被放行的直行車輛、行人通行;黃燈亮時,已越過停止線的車輛可以繼續(xù)通行;紅燈亮時,禁止車輛通行。在每個城鄉(xiāng)的十字路口,一般都在每條道路上各有一組紅、黃、綠交通信號燈,這樣的用意就是在于保證交通秩序和行人安全。在未設置信號燈的路口,車輛和行人應當按照機動車信號燈的表示通行。交通燈控制電路將會自動控制十字路口的交通燈的切換,安全的指揮各種車輛以及行人通過,真正的實現(xiàn)城鄉(xiāng)交通的自能化管理。一個十字路口的交通控制器,
25、不光是交通燈的切換,更重要的是將十字路口的四個方向合理運轉,方向有東南西北,東西方向的紅綠燈狀態(tài)一樣,南北方向的紅綠燈狀態(tài)一樣,每個方向上,有四盞燈,分別是左轉燈、紅燈、綠燈和黃燈。左拐燈亮表示左轉車輛可以通行;紅燈亮表示左轉和直行車輛禁行;綠燈亮表示直行車輛和右轉的車輛可以通行;黃燈亮表示左轉和直行的車輛即將禁行。 本論文則簡要的介紹了FPGA芯片的特點以及設計意義,本系統(tǒng)是以QuartusII軟件為開發(fā)平臺,然后通過VHDL硬件描述語言來編寫程序,以及設計原理圖以輸入方式來設計交通燈。 FPGA芯片是一款功能非常強大,可多次編程及擦除的邏輯芯片,本系統(tǒng)采用了FPGA設計ASIC電路,用
26、戶將不需要投片生產,基于FPGA交通燈控制器設計就能實現(xiàn)相應的功能。FPGA的內部有著豐富的觸發(fā)器和I/O引腳。FPGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。FPGA的開發(fā),是ASIC電路中風險最小、開發(fā)費用最低、設計周期最短的器件之一。FPGA采用高速的CHMOS工藝,功耗低,性能強,可直接與CMOS和TTL電平兼容。因此用FPGA完成交通燈的設計不光要合理,更注重的是芯片的選用。本論文通過設計交通安全指揮燈,從而來形象的指揮行人和車輛的安全通行。在十字路口處,是發(fā)生危險的重點去,因此在十字路口的東西南北四個方向必須合理安排。東西方向的交通信號燈狀態(tài)保持一致,南北方向的交通信
27、號燈狀態(tài)也保持一致。其中每個方向有左轉燈、紅燈、綠燈和黃燈,共四盞。左轉燈亮說明車輛可以左轉通行;紅燈亮說明禁止車輛直行和左轉;綠燈亮說明允許車輛直行和右轉;黃燈亮說明即將禁止車輛直行和左轉。在每個方向上均設有一個倒計時顯示器,以顯示禁止或允許通行的倒計時間。 2 硬件設計 2.1硬件開發(fā)環(huán)境介 在本次畢業(yè)設計中,筆者的硬件開發(fā)環(huán)境是AD14,即Altium Designer 14硬件開發(fā)環(huán)境。AD14是Altium Designer 是原Protel軟件開發(fā)商Altium公司推出的一體化的電子產品開發(fā)系統(tǒng),主要運行在Windows操作系統(tǒng)。該軟件全面集成了原理圖設計、原件
28、繪制、原件封裝繪制、PCB板圖繪制以及電氣仿真等等功能,為開發(fā)者提供一個優(yōu)秀的開發(fā)環(huán)境和靈活的運用平臺,目前最高版本為Altium Designer 15.0.7 。 Altium Designer 開發(fā)工具全面包括繼承包括Protel 99SE、Protel DXP在內的以前相關版本的相關功能和優(yōu)勢外,繼續(xù)添加了一些新的創(chuàng)新的功能,該平臺拓寬了板級設計的傳統(tǒng)界面,全面集成了FPGA設計功能和SOPC設計實現(xiàn)功能,從而允許工程設計人員能將系統(tǒng)設計中的FPGA與PCB設計及嵌入式設計集成在一起。 由于Altium Designer 在繼承先前Protel軟件功能的基礎上,綜合了FPGA設計和嵌
29、入式系統(tǒng)軟件設計功能,Altium Designer 對計算機的系統(tǒng)需求比先前的版本要高一些。 Altium Designer不僅擁有強大的PCB設計能力,而且還有強大的邏輯仿真分析能力,是一款特別適合初學者使用的PCB繪制軟件。該軟件主要任務包括:1.. 電氣原理圖開發(fā)回執(zhí);2.印刷電氣屬性電路板PCB設計;3.FPGA程序及其仿真的設計;4 .嵌入式系統(tǒng)電路設計開發(fā);5. 3D PCB模型繪制及其演示。 2.2硬件開發(fā)環(huán)境平臺搭建 上一節(jié)筆者介紹本次硬件設計的軟件為Altium Designe 14.0, 下面筆者簡單介紹AD14如何建立工程項目工程。 步驟一:啟動AD軟
30、件,如下圖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所示,將鼠標移動至項目工程圖標處,單機鼠標左鍵,在彈出下拉菜單中選擇“add new t
31、o Project”選項,在彈出的菜單中,就可以添加原理圖和PCB制作圖板了,如圖所示: 圖2.2.5 在選擇“schematic”,就是添加原理圖制作文件,如圖2.2.6所示為原理圖制作窗口: 圖2.2.6 自此就可以開始設計原理圖了。 2.3系統(tǒng)分析 根據(jù)下面的系統(tǒng)框架圖我們可以分析得知,論文中所涉及的十字路口交通燈只能疏導控制系統(tǒng)必須具有能夠指揮前進和左轉的功能,還有擁有行人指示燈的功能,并且是控制綠黃紅燈按相關順序進行循環(huán)亮和滅的。而且要求綠燈亮轉紅燈亮或者轉左轉燈亮之前要先轉黃燈亮5秒,左轉燈亮轉紅燈亮之前也要先轉黃燈亮5秒,紅燈亮可以直接轉綠燈或左轉燈亮(四
32、種燈的循環(huán)順序如圖2.1所示)。還要求四種顏色燈的點亮時間能夠通過倒數(shù)計時的方式進行顯示??梢杂肰HDL語言合理設計系統(tǒng)功能,使紅黃綠左轉燈的轉換有一個準確的時間間隔和轉換順序。 圖2.3 指示燈轉換順序 采用基于FPGA邏輯編程的方法來進行該設計,具有編程簡單、操作靈活、便于優(yōu)化升級的特點。同時,目前FPGA元器件的快速進步,編程設計和原理圖電路設計等設計平臺的快速發(fā)展和進步,F(xiàn)PGA的設計方式越來越受到關注和運用。 根據(jù)設計需求和該系統(tǒng)必須所具有功能,并參考相關的文獻資料經(jīng)現(xiàn)在的方案設計畫出十字路智能口交通燈控制系統(tǒng)框圖如下圖所示,這也是本次設計的總體方案,框圖如下圖2.4所示:
33、 CLK 時鐘分頻模塊 交通燈控制及計時模塊 掃描顯示模塊 LED顯示 數(shù)碼管位碼 數(shù)碼管段碼 圖2.4 系統(tǒng)的框圖 2.4原理圖設計 1.數(shù)碼管的時間顯示以及信號燈切換電路的設計原理如下圖所示,如下圖2.3所示為顯示電路部分, 圖2.3 顯示以及信號燈電路 如圖所示,本文的交通燈的顯示和指示燈電路,就是由圖2.3相同的四個電路構成,分別指示四個路口的交通情況。這里要求的開發(fā)板上必須要設定一個計數(shù)器,且計數(shù)值為0-60。當計數(shù)值達到60后,下一個時鐘沿回復到0,開始下一輪計數(shù)。但是,如何系統(tǒng)檢測發(fā)現(xiàn)了特殊狀況(EMI =‘1’)的出現(xiàn)時,計數(shù)器將會迅速暫停工
34、作,此時本系統(tǒng)的復位信號RESET將命令計數(shù)器強制清零。 這樣每一個電路的控制端口都直接連接在開發(fā)板上,便于開發(fā)對整個系統(tǒng)的控制是完美的。由于采用的FPGA芯片的時鐘頻率是50MHz,需要將其分頻為1Hz。也就是說當前模塊的分頻為50M,且將相關頻率瞬間變換成1Hz的脈沖波信號,這樣得到的相關脈沖波的周期將可以達到1S。假如系統(tǒng)能夠達到分頻50M,這時在仿真圖上是根本觀察不了的,也就無法進行準確的驗證和測試,所以在仿真的時候,最好是將分頻系數(shù)調小一些,大約20分頻就可以了,這時候就可以很清楚的從圖中得到并分析對時鐘輸入信號的分頻了,如圖2.4所示, Reset是復位信號,CLK_50MHz是
35、輸入時鐘頻率,CLK_1Hz是輸出時鐘頻率,從圖中可以看出,輸出頻率CLK_1Hz確實是輸入時鐘頻率CLK_50MHz的20分頻。交通燈信號計時顯示部分,是按照相關輸入的STATUS信號,產生相應的指示燈的信號,其直接可以控制交通燈的點亮或熄滅,在指示燈信號顯示電路程序測試真結果中,不難發(fā)現(xiàn),STATUS是一種輸入信號,而它是必須按照狀態(tài)控制模塊產生的脈沖信號,即STATUS信號,一種六種狀態(tài),依次為000(S1)、001(S2)、010(S3)、011(S4)、100(S5)、101(S6);EW_LRGY(8位)是東西方向上交通信號燈的狀態(tài), SN_LRGY(8位)是南北方向上交通信號燈的
36、狀態(tài),依次為左轉、紅、綠、黃,對應著EW_LRGY、SN_LRGY的前四位,‘1’表示點亮,‘0’表示熄滅,后四位均為0,表示四個燈的陰極接負極。 圖2.4 整個指示電路 3 軟件設計 3.1軟件開發(fā)平臺介紹 在本次畢業(yè)設計中,主要運用的軟件開發(fā)環(huán)境是Quartus II, Quartus II 是Altera公司的新一代功能跟強大的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、Verilog HDL以及AHDL語言等多種不同設計形式和方法,其內部它本身獨立的綜合器以及獨立高效仿真器,能夠進行從程序設計輸入到相關硬件的設置和模擬仿真等設計流程。
37、Quartus II可以在XP系統(tǒng)、Linux系統(tǒng)包括Unix系統(tǒng)上都可以進行安裝運行,同時該軟件兼容Tcl腳本語言,而且還具有人性化的用戶UI環(huán)境可以體驗,具有很快的操作速度和運行速度,高度的界面統(tǒng)一性,功能強大實用,操作簡單等特點。Quartus II兼容Altera的相關IP核,同時內嵌了LPM/MegaFunction宏定義的功能模塊底層庫,這樣用戶很容易調用相關的函數(shù)模塊進行編程設計,對用戶而言更加簡單和方便。另外該軟件開發(fā)平臺也支持相關第三方的EDA開大平臺。比如支持Synplify pro、Lenoardo Specturn以及Modelsem等第三方EDA工具來完成設計任務和仿
38、真。Quartus平臺與Cadence、ExemplarLogic、 MentorGraphics、Synopsys和Synplicity等EDA供應商的開發(fā)工具相兼容。該軟件開發(fā)平臺進一步改進了系統(tǒng)模塊工具中的LogicLock模塊分析和設計功能,另外也增加了FastFit編譯的選項。 事實上,在Quartus II開發(fā)平臺目前的運用已經(jīng)十分的普遍,在很多領域隨著FPGA編程的普及,不可避免的運用到了相關的Quartus II開發(fā)平臺,因為該平臺操作相對比較簡單,而且也比較容易理解,學起來也比較快,操作更加順手。另外,其具有強大的編譯和分析功能,特別是在處理復雜邏輯運算時,可以直接調用其內
39、嵌的大量的處理工具。因此,該平臺收到了極大的歡迎。 3.2 Quartus II的設計流程介紹 如圖3.1所示就是Quartus II的設計流程圖, 圖3.1 設計流程圖 該軟件開發(fā)平臺的具體的操作過程如下所示: 1. 首先,進行設計之前,需要建立一個工作庫的文件夾和并且新建相關的編譯設計和程序編寫的文件。 2. 然后,開始創(chuàng)建相關的工程文件。 3. 編程完畢后,就開始進行編譯程序進行調試。 4. 調試沒有語法錯誤后,就可以進行時序仿真 5. 時序仿真后,如果沒有問題,就可以進行引腳鎖定 6. 最后,就可以將程序下載到相關硬件環(huán)境中實際
40、驗證 3.3程序設計 1用VHDL編寫程序,來實現(xiàn)交通燈控制器的原理框圖如圖3.3示 圖3.3交通信號燈控制器程序原理框圖 程序中的時鐘信號clk為石英晶體(327868HZ)分頻后的8Hz標準信號作為產生1秒信號的輸入信號,為LED數(shù)碼管驅動電路(MC4511)提供輸入信號,用于縣市交通燈所處的狀態(tài)的時間。6個輸出信號(對應兩組紅黃綠燈,F(xiàn)R1、FY1和FG1為主干道紅黃綠燈信號, FR2、FY2和FG2為支干道紅黃綠燈信號)。 該程序由7個進程組成,進程P1和P2將8Hz標準信號分頻后產生1秒信號(carry),進程P1和P2 進程P3、P4和P5
41、進程構成兩個帶有預置數(shù)功能的十進制計數(shù)器,其中P4產生允許十位計數(shù)器計數(shù)的控制信號(en)。進程P6實現(xiàn)狀態(tài)轉換和產生狀態(tài)轉換的控制信號(load),進程P7產生次態(tài)信號(next_state)和信號燈輸出信號(FR1、FY1、FG1、FR2、FY2和FG2),以及每一個狀態(tài)的時間值(即計數(shù)器的預置數(shù))和下一個狀態(tài)。 3.3.1 程序設計分析 圖3.4 程序流程圖 上圖就是本次設計的程序流程圖 3.3.2 程序分析與仿真 一個完整的VHDL語言程序通常包括實體(Entity)、構造體、配置、包集合(P
42、ackage)和庫(Library)5個部分組成。下面結合實際的程序來加以說明。首先是更燈函數(shù)的轉換如下圖3.3所示 when ew_yellow0 => ew_state<=ew_turnl; ew_secondH:=2; ew_secondL:=0; -- 下一狀態(tài)的左轉燈 when ew_turnl =>ew_state<=ew_yellow1; ew_secondH:=0; ew_secondL:=5; -- 下一狀態(tài)的黃燈 when ew_yellow1 =>ew_state<=ew_red; ew_secondH:=
43、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 => L<="001"; dled<=display(ew_secondL); when 2 => L<="010"; dl
44、ed<=X"00"; when 3 => L<="011"; dled<=X"00"; when 4 => L<="100"; dled<=X"00"; when 5 => L<="101"; dled<=X"00"; when 6 => L<="110"; dled<=display(sn_secondH); when 7 => L<="111"; dled<=display(sn_secondL); end case; end if; end pro
45、cess; end control; 關于各種信號依次是: clk:系統(tǒng)輸入時鐘50MHz rst_n:系統(tǒng)異步復位信號 LEDDX:東西向的LED紅綠燈 rledDX:東西向的人行道紅燈 LEDNB:南北向的LED紅綠燈 rledNB:南北向的人行道紅燈 SGMDX:東西向的數(shù)碼管段選 SGMNB:南北向的數(shù)碼管段選 SWDX:東西向的數(shù)碼管位選 SWNB:南北向的數(shù)碼管位選 仿真圖如下圖3.5所示 圖3.5 信號仿真圖 **產生計時信號2 */ always @(posedge clk or negedge rst_n) begin if(!
46、rst_n) begin scountb<=d2; cntb<=d0; end else if(start_countb==1b1) begin if(cntb>=50000000) begin cntb<=d0; if(scountb>d0) scountb<=scountb-d1; else scountb<=d0; end else cntb<=cntb+d1; end else scountb<=timesb; end 4 實物模型展示 4
47、.1 實物模型介紹 圖4.1 交通燈模型圖 如圖4.1所示,這就是本文設計的一個智能交通等的大致模型,從圖上可以看出,每一個路口有三個指示和兩個行人指示燈??紤]到實驗室所用的FPGA器件EP2C5T144最小系統(tǒng)板上的數(shù)碼管數(shù)量比較少以及LED邏輯狀態(tài)的指示管數(shù)量相對比較有少,因此,本論文設計的十字路口交通燈控制器不具有左拐彎功能,僅實現(xiàn)主、支干道紅、黃、綠燈、倒計時數(shù)的顯示,初始化設置以及特殊狀態(tài)控制功能。實現(xiàn)紅黃綠燈的智能控制和管理系統(tǒng)的廣泛運用是目前現(xiàn)代城市構建智能交通指揮疏導系統(tǒng)的重要研究課題。通過對上面模型圖的分析,可以明白本設計,是介紹的一種基于FPGA的十字路口智能交通燈控制
48、系統(tǒng),該系統(tǒng)分別由四組紅、黃、綠燈以及四組紅綠燈組成,其中四組的紅黃綠燈是指揮十字路口車輛的,四組紅綠燈是指揮行人的。另外由VHDL語言在相關開發(fā)系統(tǒng)板上對所以燈的開關進行系統(tǒng)合理的控制,使得所有顏色的燈按照一定規(guī)律循環(huán)亮和滅。 4.2 實物模型演示方法 該模擬平臺只要給其通上電源后,系統(tǒng)開發(fā)板會自動啟動在一個計算周期內,該交通控制指揮系統(tǒng)有四種運行模式,包括S0、S1、S2、S3四個不同的狀態(tài)。四種狀態(tài)的運行模式為S0→S1→S2→S3,S3結束后,返回到S0狀態(tài),整個運行周期連續(xù)為60s。R表示信號的重置,相關設置重置后系統(tǒng)開始自動按原來規(guī)律進行循環(huán)。SPC是一種緊急的控制信號,一旦
49、該信號電平置高后系統(tǒng)自動切換至S6狀態(tài),該狀態(tài)解除后,系統(tǒng)將被初始化,自動變?yōu)镾0。WE和SN是兩組控制不同方向左轉的控制信號。當直行方向允許通車后,WE將被置高,系統(tǒng)被切換值S4模式,同樣S4狀態(tài)解除后,系統(tǒng)切換至S1模式。當直行方向禁止通車后,SN將被置高,此時系統(tǒng)將會變成S5狀態(tài),S5狀態(tài)解除后,系統(tǒng)立刻變成S3狀態(tài),又以此循環(huán)下去。每一組紅綠燈的狀態(tài)指示方式如下:S0: 直行道路點亮綠的,另一直行道路顯示紅燈。也就是說此時一條直行道路可以通車,另一條直行道路將被禁止通車,整個狀態(tài)維持60s。 S1狀態(tài): 一條直行道路亮黃燈、另一條亮紅燈。這個時候第一條直行道路即將禁止通行,另一側的直
50、行通道任然禁止通車,這個狀態(tài)將維持5S。 4.3 效果展示 如下圖所示,這就是硬件運行后的效果圖, 圖4.3 效果圖1 總結 利用網(wǎng)絡和圖書館的有效資源,并且參考閱讀了很多的資料,并進行仔細分析和研究,充分驗證后作出了相關的設計思路;最后按照該方案,通過向同學老師請教,最終完成了這個課題任務。本設計是通過利用VHDL語言進行程序設計的,以芯片EP2C5T144的FPGA試驗箱為開發(fā)平臺,通過簡單的外圍電路,以雙色LED的變換過程,模擬交通十字路口交通燈的紅綠兩個信號燈的變化,本設計綜合分析了多種通行情況的可能,加入了比較了人性化的聲音和時間提示功能。因為硬件
51、芯片I/O口數(shù)量實在無法滿足相關需求,在硬件測試過程中不得不刪除了一部分軟件調試中的功能,比如由三行道改為了雙行道,但是這并不意味著該系統(tǒng)功能在軟件仿真上不能實現(xiàn)。同時,我深深體會到了通過FPGA在設計數(shù)字電路方面,具有操作方便、設計簡潔的特點,這讓我相信未來數(shù)字電路的應用必將更加廣泛。另外,我深深的感覺到:從事研發(fā)和設計的相關工作,必須要保持勤奮、踏實、認真、不放棄的學習態(tài)度,堅持這種態(tài)度才能讓自己的學習和工作做得更好。讓我認識自己能力,找準自己的不足點,加強相關點的學習和認知。 更重要的是,這一次畢業(yè)設計讓我學會了如何面對艱難、如何別人合作和交流、如何獨立思考和應對不確定問題。讓我深刻了解到,成功之初的艱辛,只有認真找到問題的實質,真正理解到問題的根本后,才能夠有更有效的找到解決問題的方法。 最后敬請各位專家、老師和同學對論文的不足和謬誤之處提出寶貴的指導意見和建議,謝謝。
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市教育局冬季運動會安全工作預案
- 2024年秋季《思想道德與法治》大作業(yè)及答案3套試卷
- 2024年教師年度考核表個人工作總結(可編輯)
- 2024年xx村兩委涉案資金退還保證書
- 2024年憲法宣傳周活動總結+在機關“弘揚憲法精神推動發(fā)改工作高質量發(fā)展”專題宣講報告會上的講話
- 2024年XX村合作社年報總結
- 2024-2025年秋季第一學期初中歷史上冊教研組工作總結
- 2024年小學高級教師年終工作總結匯報
- 2024-2025年秋季第一學期初中物理上冊教研組工作總結
- 2024年xx鎮(zhèn)交通年度總結
- 2024-2025年秋季第一學期小學語文教師工作總結
- 2024年XX村陳規(guī)陋習整治報告
- 2025年學校元旦迎新盛典活動策劃方案
- 2024年學校周邊安全隱患自查報告
- 2024年XX鎮(zhèn)農村規(guī)劃管控述職報告