基于FPGA的電梯的自動控制設(shè)計 畢業(yè)設(shè)計_第1頁
基于FPGA的電梯的自動控制設(shè)計 畢業(yè)設(shè)計_第2頁
基于FPGA的電梯的自動控制設(shè)計 畢業(yè)設(shè)計_第3頁
基于FPGA的電梯的自動控制設(shè)計 畢業(yè)設(shè)計_第4頁
基于FPGA的電梯的自動控制設(shè)計 畢業(yè)設(shè)計_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 畢 業(yè) 設(shè) 計題 目 基于fpga的電梯的自動控制設(shè)計 姓 名 學(xué) 號 20097048 系 部 理工系 專業(yè)年級 09電子信息工程2班 指導(dǎo)教師 2013年5月15日中文摘要電梯作為現(xiàn)代化的產(chǎn)物,早在上個世紀就進入了我們的生活之中。大規(guī)模的經(jīng)濟建設(shè)尤其是蓬勃發(fā)展的房地產(chǎn)業(yè)給國內(nèi)電梯行業(yè)開拓了更為廣闊的市場。隨著經(jīng)濟建設(shè)的持續(xù)高速發(fā)展,我國電梯需求量越來越大。由此,一個更為龐大的電梯市場已經(jīng)在國內(nèi)轟然形成。我國以前主要都是依靠國外的進口技術(shù),本國的電梯廠商主要都是依靠為進口電梯作銷售代理或者售后維修進行經(jīng)營。但是隨著技術(shù)的革新和與國外的交流,當今經(jīng)濟建設(shè)需求的各類電梯,幾乎全部都可以在中國生

2、產(chǎn)。電梯生產(chǎn)作為一門國家的新興產(chǎn)業(yè),它這種能有減少人口膨脹對環(huán)境所造成的巨大壓力的特性,注定了其在中國具有一片光明的前景。本設(shè)計就是基于電子設(shè)計自動化(electronic design automation)技術(shù)中的甚高速集成電路硬件描述語言(very high speed integrated circuit hardware descrisioon language)語言所開發(fā)的三層電梯控制程序,實驗調(diào)試平臺是altera公司的quartusii軟件。本程序具有vhdl語言設(shè)計里最為常用的三個模塊:實體entity,對控制器的實體(輸入輸出)端口進行定義;結(jié)構(gòu)體architecture,

3、對控制器內(nèi)部的信號端進行定義;進程執(zhí)行單元process,對控制器的所有輸入輸出端口、內(nèi)部信號端口進行功能、行為描述。通過程序調(diào)試及運行仿真,結(jié)果表明,本程序可以完成:電梯運行所在樓層指示、電梯運行方向指示、關(guān)門延時設(shè)置等。本設(shè)計對更高層的電梯控制設(shè)計具有一定的拓展性。關(guān)鍵詞:電梯控制 程序設(shè)計 eda vhdl quartusiititle the lift control design basic on the eda technologyabstract:the lift , as the modernized result, are entered in our life in las

4、t century. extensive economic construction, especially vigorous real estate have opened up the wider market for the trade of domestic lift . with the sustained and rapid development of economic construction, the demand of lift in our country is increasingly large. therefore, a huger lift market has

5、already taken shape with a loud crash at home. our country depended on foreign importing technology mainly in the past, national lift manufacturer was act as for import lift sale agent or after sale to maintain operating to rely on mainly. but with the innovation of technology and and exchange in fo

6、reign countries, all kinds of lifts of the current economic construction demand, can all nearly produce in china now . lift produce as one new industry of country, its characteristic can cut down the population expansion which cause toward the environment enormous of pressure effectively, have been

7、destined that have a slice of bright prospect in china. this thesis designs the three - floor lift controll on the basis of the electron basic on the electronic design automation(eda) technologys the very high-speed integrated circuit hardware describe language(vhdl), it is debuged in the altera com

8、panysquartusii software as a platform in experiment. this procedure has commonly most used three pieces of module in language designs:the entity,the architectureand the process. through testing the connection of the eda case, realize the following main functions: the lift s floor shows, the lift ope

9、ration direction shows; closes prolonging the dog reports to the police; overloads reporting to the police;fault alarm ,etc. the design can make some evolution for designing to on the senior level lift control.keywords: lift control programmer eda vhdl目 錄 1 引言51.1 問題的提出51.2總體方案的確定51.2.1plc技術(shù)在電梯控制的應(yīng)用

10、51.2.2單片機技術(shù)在電梯控制的應(yīng)用61.2.3eda技術(shù)在電梯控制的應(yīng)用71.2.4方案選擇71.3 設(shè)計的基礎(chǔ)依據(jù)71.3.1 eda技術(shù)介紹81.3.2 vhdl語言介紹81.3.3 fpga的簡介及特點91.4設(shè)計要求92 程序設(shè)計112.1 三層電梯控制器的端口設(shè)計112.2 三層電梯控制器的狀態(tài)機設(shè)計和進程執(zhí)行單元122.3程序流程分析132.4程序調(diào)試1325程序仿真162.5.1建立波形輸入162.6電梯功能的實現(xiàn)與仿真172.6.1仿真步驟182.6.2仿真結(jié)果分析18結(jié)論21致謝22參考文獻23附錄24 1 引言1.1 問題的提出當今世界,部分地區(qū)人口高度密集,人和土地資

11、源短缺的矛盾日趨激化。這就注定了必須合理地利用土地去解決人與土地的矛盾。而興建高層建筑是其中的有效措施之一。因此,能使人們快速、便捷地到達目的樓層的電梯便應(yīng)運而生了。在一些發(fā)達國家和地區(qū),人均電梯擁有數(shù)量一般在每萬人30臺以上,某些國家甚至達到每萬人120臺以上,隨著城鎮(zhèn)化程度的加大,電梯市場會更加繁華。中國的電梯市場增長也很樂觀,目前,每年增長率為15%18%。隨著電梯普及率的升溫,人們對電梯的要求也會越來越高。如何更安全、更快捷地到達目的樓層,也就成了人們對電梯最為根本的要求。而電梯系統(tǒng)里掌控這方面技術(shù)參數(shù)的是電梯控制系統(tǒng)。因此,控制系統(tǒng)的設(shè)計就成了在電梯設(shè)計領(lǐng)域里最為核心的技術(shù)。在電子技

12、術(shù)飛速發(fā)展的今天,現(xiàn)代電子產(chǎn)品幾乎滲透到了社會的各個領(lǐng)域,有力地推動了社會生產(chǎn)力的發(fā)展和社會信息化程度的提高,同時也使現(xiàn)代電子產(chǎn)品性能進一步提高,加速了電子設(shè)計技術(shù)的普及進程及技術(shù)革新。電子設(shè)計在日常生活和物質(zhì)產(chǎn)品生產(chǎn)都占到了舉足輕重的地位,這尤其體現(xiàn)在其對電子產(chǎn)品的開發(fā)和設(shè)計上。面對如此廣袤的電梯市場,所謂“科技就是第一生產(chǎn)力”,處于科技前沿的電子設(shè)計技術(shù)很自然地就與電梯控制設(shè)計一拍即合,給設(shè)計師們以巨大的設(shè)計空間。因此,本設(shè)計就是希望在以開發(fā)更安全、更快捷的三層電梯控制系統(tǒng)為前提下,結(jié)合電子設(shè)計技術(shù),對電梯控制進行設(shè)計。1.2總體方案的確定1.2.1plc技術(shù)在電梯控制的應(yīng)用由當初的繼電器

13、邏輯控制電路到今天廣為應(yīng)用的可編程邏輯控制器及微機控制系統(tǒng),電梯控制的發(fā)展經(jīng)歷了相當長一段歷程。為了實現(xiàn)電梯的控制,過去大多是采用繼電器邏輯電路,這種邏輯控制方式具有原理簡單、直觀的特點,但通用性較差,對不同的樓層和不同的控制方式,其原理圖、接線圖等必須重新制作,且控制系統(tǒng)由許多繼電器觸點組成,接線復(fù)雜、故障率高。因此,它逐漸被可靠性高、通用性強的可編程序控制器及微機控制系統(tǒng)所代替。由plc或微機實現(xiàn)繼電器的邏輯控制功能,具有較大的靈活性,不同的控制方式可用相同的硬件,只是軟件各不相同。只要把按鈕、限位開關(guān)、光電開關(guān)、無觸點行程開關(guān)等電器元件作為輸入信號,而把制動器、接觸器等功率輸出元件接到輸

14、出端,就算完成了接線任務(wù)。通常,電梯功能、層數(shù)變化時,無需增減繼電器和大量的電路。plc在設(shè)計和制造上采取了許多抗干擾措施,輸入輸出均有光電隔離。能在較惡劣的各種環(huán)境里工作、可靠性高,適合于安全性要求較高的電梯控制。plc將cpu、存儲器、i/o接口等做成一體,使用方便,擴展容易。具有繼電器系統(tǒng)的直觀、易懂、易學(xué),應(yīng)用操作和調(diào)試方便等優(yōu)勢。因此,目前在國產(chǎn)電梯及中低檔的客梯廣泛應(yīng)用了plc控制系統(tǒng),特別適用在用電梯的技術(shù)改造。電梯既是一種特殊的起重運輸設(shè)備,具有完善的機械專用結(jié)構(gòu),又是一種比較復(fù)雜的機電一體化的大型工業(yè)產(chǎn)品,具有復(fù)雜的電氣控制系統(tǒng)。就電梯的控制方法而言,目前國產(chǎn)電梯廣泛采用可編

15、程控制器技術(shù)的智能化控制。由于這種控制屬于隨機控制,各種輸入信號之間、輸出信號之間以及輸入信號和輸出信號之間互相關(guān)聯(lián),邏輯關(guān)系處理起來非常復(fù)雜,這就給plc編程帶來很大難度。從這種意義上來說,plc編程水平的高低就決定電梯運行狀態(tài)的好壞,因此plc應(yīng)用在電梯控制中的編程技術(shù)就成為控制電梯運行的關(guān)鍵技術(shù)。plc充分利用了微型計算機的原理和技術(shù),具有很強的邏輯處理能力,在電梯運行控制中發(fā)揮了重要作用。由于電梯在運行過程中各種輸入信號時隨機出現(xiàn)的,即信號的出現(xiàn)具有不確定性,同時信號需要自鎖保持、互鎖保存、優(yōu)先級排隊、數(shù)據(jù)比較等,因此信號之間就存在復(fù)雜的邏輯關(guān)系。所以在電梯的運行控制中,plc的編程工

16、作主要是針對各種信號進行邏輯判斷和處理。1.2.2單片機技術(shù)在電梯控制的應(yīng)用單片機體積小,處理速度快,價格低廉,功能強大,是合適的控制系統(tǒng)。對電梯的控制主要是選層、啟層、換速、平層、停車等幾個環(huán)節(jié),其中以選層環(huán)節(jié)最為復(fù)雜。與通常的電器控制相比,單片機系統(tǒng)不需要通過“選層器”并且配備以大量的中間繼電器作為選層電路的控制設(shè)備,避免了設(shè)備多,檢修困難,運行維護不便,造價成本高。應(yīng)用微機控制可以取消選層器和大量中間繼電器。而且應(yīng)用單片機控制又相當于應(yīng)用其他微機減小了外圍設(shè)備的接口芯片,增強了可靠性。1.2.3eda技術(shù)在電梯控制的應(yīng)用eda技術(shù)不是某一學(xué)科的分支,或某種新的技能技術(shù),它是一門綜合性學(xué)科

17、,融合多學(xué)科于一體,打破了軟件和硬件間的壁壘,使計算機的軟件和硬件實現(xiàn)設(shè)計效率和產(chǎn)品性能合二為一,它代表了電子設(shè)計技術(shù)和應(yīng)用技術(shù)的發(fā)展方向。vhdl具有與具體硬件電路無關(guān)和設(shè)計平臺無關(guān)的特性,并且具有良好的電路行為描述和系統(tǒng)描述的能力,并在語言易讀性和層次化結(jié)構(gòu)化設(shè)計方面,表現(xiàn)了強大的生命力和應(yīng)用潛力。eda使得設(shè)計者的工作僅限于利用硬件描述語言和eda軟件來完成對系統(tǒng)硬件功能的實現(xiàn)。正因eda在設(shè)計控制系統(tǒng)中的這些特點,在電梯控制電路上采用eda技術(shù)進行開發(fā),越來越受到人們的重視。1.2.4方案選擇對于符合市場需求的大規(guī)模系統(tǒng),要達到高效、高速完成,必須有多人甚至多個開發(fā)組共同并行工作才能實

18、現(xiàn)。對于用eda技術(shù)完成的一個確定的設(shè)計,可以利用相應(yīng)的工具平臺進行邏輯綜合和優(yōu)化,完成設(shè)計任務(wù)?;趀da技術(shù)的vhdl語言對設(shè)計的描述具有相對獨立性,設(shè)計者可以不懂硬件的結(jié)構(gòu),也不必管理最終設(shè)計實現(xiàn)的目標器件是什么,而進行獨立的設(shè)計。這為電子設(shè)計的入門者提供了便捷的幫助。相信在不遠的將來,我國相關(guān)的專業(yè)技術(shù)人員使用eda技術(shù)進行工程設(shè)計,就像現(xiàn)在使用計算器一樣,雖然大部分人不能開辦集成電路制造廠,但是卻能快速、經(jīng)濟地制造自己的專用集成電路。綜上比較,本設(shè)計采用eda技術(shù)實現(xiàn)對電梯的控制。1.3 設(shè)計的基礎(chǔ)依據(jù)現(xiàn)代電子設(shè)計技術(shù)的核心是eda技術(shù)?;趀da技術(shù)開發(fā)的實現(xiàn)三層電梯自動控制與目前

19、主流的利用可編程邏輯控制器實現(xiàn)電梯控制緊密相連。硬件描述語言是eda技術(shù)的重要組成部分,vhdl是作為電子設(shè)計主流硬件的描述語言。使用vhdl語言進行程序設(shè)計,在quartusii軟件上對程序進行編譯、仿真。在quartusii平臺上開發(fā)具有易學(xué)易懂、控制靈活方便、抗干擾能力強、運行穩(wěn)定可靠等優(yōu)點。1.3.1 eda技術(shù)介紹eda是電子設(shè)計自動化(electronic design automation)的縮寫,在20世紀90年代初從計算機輔助設(shè)計(cad)、計算機輔助制造(cam)、計算機輔助測試(cat)和計算機輔助工程(cae)的概念發(fā)展而來的。20世紀90年代,國際上電子和計算機技術(shù)較

20、先進的國家,一直在積極探索新的電子電路設(shè)計方法,并在設(shè)計方法、工具等方面進行了徹底的變革,取得了巨大成功。在電子技術(shù)設(shè)計領(lǐng)域,可編程邏輯器件(如cpld、fpga)的應(yīng)用,已得到廣泛的普及,這些器件為數(shù)字系統(tǒng)的設(shè)計帶來了極大的靈活性。這些器件可以通過軟件編程而對其硬件結(jié)構(gòu)和工作方式進行重構(gòu),從而使得硬件的設(shè)計可以如同軟件設(shè)計那樣方便快捷。這一切極大地改變了傳統(tǒng)的數(shù)字系統(tǒng)設(shè)計方法、設(shè)計過程和設(shè)計觀念,促進了eda技術(shù)的迅速發(fā)展。eda技術(shù)就是以計算機為工具,設(shè)計者在eda軟件平臺上,用硬件描述語言vhdl完成設(shè)計文件,然后由計算機自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至

21、對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。eda技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可操作性,減輕了設(shè)計者的勞動強度。利用eda工具,電子設(shè)計師可以從概念、算法、協(xié)議等開始設(shè)計電子系統(tǒng),大量工作可以通過計算機完成,并可以將電子產(chǎn)品從電路設(shè)計、性能分析到設(shè)計出ic版圖或pcb版圖的整個過程在計算機上自動處理完成?,F(xiàn)在對eda的概念或范疇用得很寬。包括在機械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事、等各個領(lǐng)域,都有eda的應(yīng)用。目前eda技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門廣泛使用。例如在飛機制造過程中,從設(shè)計、性能測試及特性分析直到飛行模擬,都可能涉及到eda技

22、術(shù)。1.3.2 vhdl語言介紹vhdl(very high speed integrated circuit hardware description language)語言于1983年由美國國防部發(fā)起創(chuàng)建,由電工和電子工程師協(xié)會(the institute of electrical and electronics engineer)進一步發(fā)展并在1987年作為“ieee1076”發(fā)布。從此,vhdl成為硬件描述語言的業(yè)界標準之一。vhdl作為一個規(guī)范語言和建模語言,具有很強的電路描述和建模能力,能從多個層次對數(shù)字系統(tǒng)進行建模和描述,從而大大簡化了硬件設(shè)計任務(wù),提高了設(shè)計效率和可靠性。vh

23、dl具有與具體硬件電路無關(guān)和設(shè)計平臺無關(guān)的特性,并且具有良好的電路行為描述和系統(tǒng)描述的能力,并在語言易讀性和層次化結(jié)構(gòu)化設(shè)計方面,表現(xiàn)了強大的生命力和應(yīng)用潛力。1.3.3 fpga的簡介及特點目前以硬件描述語言(verilog或 vhdl)所完成的電路設(shè)計,可以經(jīng)過簡單的綜合與布局,快速的燒錄至 fpga 上進行測試,是現(xiàn)代 ic 設(shè)計驗證的技術(shù)主流。這些可編輯元件可以被用來實現(xiàn)一些基本的邏輯門電路(比如and、or、xor、not)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。在大多數(shù)的fpga里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(flipflop)或者其他更加完整的記憶塊。

24、系統(tǒng)設(shè)計師可以根據(jù)需要通過可編輯的連接把fpga內(nèi)部的邏輯塊連接起來,就好像一個電路試驗板被放在了一個芯片里。一個出廠后的成品fpga的邏輯塊和連接可以按照設(shè)計者而改變,所以fpga可以完成所需要的邏輯功能。 fpga一般來說比asic(專用集成芯片)的速度要慢,無法完成復(fù)雜的設(shè)計,而且消耗更多的電能。但是他們也有很多的優(yōu)點比如可以快速成品,可以被修改來改正程序中的錯誤和更便宜的造價。廠商也可能會提供便宜的但是編輯能力差的fpga。因為這些芯片有比較差的可編輯能力,所以這些設(shè)計的開發(fā)是在普通的fpga上完成的,然后將設(shè)計轉(zhuǎn)移到一個類似于asic的芯片上。另外一種方法是用cpld(復(fù)雜可編程邏輯

25、器件備)。 cpld與fpga的關(guān)系早在1980年代中期,fpga已經(jīng)在pld設(shè)備中扎根。cpld和fpga包括了一些相對大數(shù)量的可以編輯邏輯單元。cpld邏輯門的密度在幾千到幾萬個邏輯單元之間,而fpga通常是在幾萬到幾百萬。 cpld和fpga的主要區(qū)別是他們的系統(tǒng)結(jié)構(gòu)。cpld是一個有點限制性的結(jié)構(gòu)。這個結(jié)構(gòu)由一個或者多個可編輯的結(jié)果之和的邏輯組列和一些相對少量的鎖定的寄存器。這樣的結(jié)果是缺乏編輯靈活性,但是卻有可以預(yù)計的延遲時間和邏輯單元對連接單元高比率的優(yōu)點。而fpga卻是有很多的連接單元,這樣雖然讓它可以更加靈活的編輯,但是結(jié)構(gòu)卻復(fù)雜的多。 cpld和fpga另外一個區(qū)別是大多數(shù)的

26、fpga含有高層次的內(nèi)置模塊(比如加法器和乘法器)和內(nèi)置的記憶體。一個因此有關(guān)的重要區(qū)別是很多新的fpga支持完全的或者部分的系統(tǒng)內(nèi)重新配置。允許他們的設(shè)計隨著系統(tǒng)升級或者動態(tài)重新配置而改變。一些fpga可以讓設(shè)備的一部分重新編輯而其他部分繼續(xù)正常運行。 fpga工作原理fpga采用了邏輯單元陣列l(wèi)ca(logic cell array)這樣一個概念,內(nèi)部包括可配置邏輯模塊clb(configurable logic block)、輸出輸入模塊iob(input output block)和內(nèi)部連線(interconnect)三個部分。 1.4設(shè)計要求要求用高速集成電路硬件描述語言(very

27、high speed integrated circuit hardware descripsioon language)設(shè)計實現(xiàn)一個3層電梯的控制系統(tǒng)。系統(tǒng)的要求如下:(1)電梯運行規(guī)則:當電梯處在上升模式時,只響應(yīng)比電梯所在位置高的上樓請求,由下向上逐個執(zhí)行,直到最后一個上樓請求執(zhí)行完畢。如果高層有下樓請求,直接升到有下樓請求的最高樓層,然后進入下降模式。電梯處在下降模式時,工作方式與上升模式相反。設(shè)電梯共有3層,每秒上升或下降一層。(2)電梯初始狀態(tài)為一層,處在開門狀態(tài),開門指示燈亮。(3)每層電梯入口處均設(shè)有上下請求開關(guān),電梯內(nèi)部設(shè)有乘客到達樓層的停站請求開關(guān)及其顯示。 (4)設(shè)置電梯

28、所處位置的指示及電梯上升或下降的指示。 (5)電梯到達有停站請求的樓層后,電梯門打開,開門指示燈亮。開門4妙后,電梯門關(guān)閉,開門指示燈滅,電梯繼續(xù)運行,直至執(zhí)行完最后一個請求信號后停在當前層。 (6)電梯控制系統(tǒng)能記憶電梯內(nèi)外的請求信號,并按照電梯運行規(guī)則工作,每個請求信號執(zhí)行完畢后清除。 根據(jù)電梯控制系統(tǒng)的設(shè)計要求,除了具備兩個時鐘信號clk,一個是電梯時鐘信號,另一個是按鍵時鐘信號。以外,還應(yīng)該定義輸入信號和輸出信號。輸入信號定義如下:系統(tǒng)復(fù)位信號:reset,高電平有效;電梯入口處一層、二層的上樓請求開關(guān):f1upbuttion、f2upbuttion;電梯入口處二層、三層的下樓請求開關(guān)

29、:f2dnbuttion、f3dnbuttion;電梯內(nèi)部到達樓層的停站請求開關(guān):stoplbuttion、stop2buttion、stop3buttion。 所有輸入信號的規(guī)定為:輸入信號等于1,表示有請求,信號等于0,表示無請求。輸出信號定義如下:電梯外部上升和下降請求指示燈:uplight和downlight,這些信號與f1upbuttion、f2upbuttion、f2dnbuttion、f3dnbuttion信號相對應(yīng);電梯內(nèi)部乘客到達樓層的停站請求燈:stoplight,該信號與stoplbuttion、stop2buttion、stop3buttion信號相對應(yīng);電梯運行模式指

30、示:udsig,1代表下降模式,0代表上升模式;電梯所在樓層指示:position,表示電梯在對應(yīng)樓層;電梯門狀態(tài)指示:doorlight,1表示開門,0表示關(guān)門2 程序設(shè)計2.1 三層電梯控制器的端口設(shè)計首先考慮輸入端口,一個復(fù)位端口reset,用于系統(tǒng)不正常時回到初始狀態(tài);在電梯外部必須有升降請求端口,一層不需要有下降請求,三層不需要有上升請求,二層則上升下降請求端口都有;在電梯內(nèi)部應(yīng)該有各層的停止請求按鈕;一個電梯時鐘輸入端口,以1秒為周期,用于驅(qū)動電梯的上升,下降。開門以及關(guān)門動作;另外一個按鍵時鐘輸入端口,頻率要比電梯的高得多在這里要64hz。其次是輸出端口,有升降請求信號以后,就得

31、有一個輸出端口指示是否被響應(yīng),同樣,在電梯內(nèi)部也應(yīng)該有輸出端口來顯示各層停留是否響應(yīng)。在電梯外部需要一個端口來顯示電梯所在的位置,電梯開門,關(guān)門狀態(tài)也要用一個端口來顯示;為了觀察電梯的升降狀態(tài),也要有一個端口來指示電梯的升降狀態(tài)。最后還要顯示開門時間,就要有一個端口來輸出2.1.1三層電梯的總電路圖2.2 三層電梯控制器的狀態(tài)機設(shè)計和進程執(zhí)行單元首先說明一下狀態(tài)。狀態(tài)機設(shè)計了10個狀態(tài),分別是電梯停留在一層(stopon1),開門(dooropen),關(guān)門(doorclose),開門等待1秒(doorwait1),開門等待2秒(doorwait2),開門等待3秒(doorwait3),開門等待

32、4秒(doorwait4),上升(up),下降(down),和停止(stop)。 在結(jié)構(gòu)體中,設(shè)計兩個進程互相配合,一個是狀態(tài)機進程的主要進程,另一個是信號燈控制進程作為補助的進程。狀態(tài)機進程中的很多判斷條件是以信號燈進程產(chǎn)生的信號為依據(jù)的,而信號燈進程中信號的熄滅又是以狀態(tài)機進程中傳出的clearup,cleardn 信號來控制的。 在狀態(tài)機進程中,在電梯上升狀態(tài)中,通過對信號燈的判斷,決定下一個狀態(tài)是繼續(xù)還是停止;在電梯下降狀態(tài)中,也是通過對信號燈的判斷,決定下一個狀態(tài)是繼續(xù)下降還是停止。 在信號燈控制進程中,由于使用了專門的頻率比較高的按鍵時鐘,所以按鍵靈敏度增大,但是時鐘頻率不能太高,

33、否則容易按鍵過于靈敏。按下按鍵后產(chǎn)生的點亮的信號燈用于作為狀態(tài)機進程中判斷條件,而clearup和cleardn信號為邏輯1時相應(yīng)的信號燈熄滅。2.3程序流程分析電梯的運行規(guī)則確立后,需對整個控制程序的設(shè)計作一個流程規(guī)范。對程序進行模塊化構(gòu)思。根據(jù)vhdl語言的規(guī)則,程序必須由最基本的實體和結(jié)構(gòu)體構(gòu)成。實體對控制器的端口進行定義,結(jié)構(gòu)體對各端口的行為進行描述。因此程序運行需經(jīng)過以下流程:vhdl庫調(diào)用;確立控制器的端口;根據(jù)電梯運行規(guī)則,設(shè)計相關(guān)運行描述;對電梯內(nèi)外信號進行處理;具體流程圖如圖1所示:程序開始vhdl庫調(diào)用設(shè)置控制器的端口電梯運行規(guī)則描述電梯信號處理程序結(jié)束 圖1程序流程圖2.

34、4程序調(diào)試(1)建立好工作目錄,以便設(shè)計工程項目的存儲,打開quartusii軟件,其初始界面如圖2所示。圖2quartus軟件初始界面(2)在工具欄中選擇“新建”按鈕。選擇“vhdl file”,如圖3所示。圖3創(chuàng)建vhdl文本輸入(3)在文本輸入界面內(nèi)進行程序輸入,如圖4所示。圖4程序輸入界面(4)輸入完畢后,需要對程序進行保存。注意文件名和實體定義名必須保持一致,即threeflift,文件后綴名為vhd。(5)保存以后,對程序進行編譯。在編譯前,需要把文件設(shè)置為頂層文件或工程文件project。選擇菜單“project”中的“set as top-level entity”。(6)在“

35、quartusii”里選擇“processing”下拉菜單中的“start compilation”,此時,quartusii軟件會對程序進行糾錯等處理。當程序被確認無誤后會出現(xiàn)如下界面,如圖5所示。圖5編譯完成2.4.1三層電梯的邏輯電路圖 圖6邏輯電路圖25程序仿真2.5.1建立波形輸入(1)編譯完成后,新建波形編輯器進行設(shè)計仿真。選擇菜單“file” 中的“new”項,在ne w窗口中選擇“vector waveform file”,單擊ok按鈕,即出現(xiàn)空白的波形編譯器,如圖7所示。圖7波形編輯器(2)設(shè)置仿真時間區(qū)域,在“edit”菜單中選擇“end time”項,在彈出窗口中設(shè)置。(

36、3)將工程threeflift的端口信號名選入波形編輯器中。方法是在編輯器左邊name下的空白處右擊選擇“insert node or bus”項,彈出對話框如圖8所示,在node filter框中選“pins:all”,單擊list按鈕,下方的nodes found 窗口中出現(xiàn)設(shè)計工程的所有端口引腳名。圖7圖8添加節(jié)點信號(4)創(chuàng)立輸入波形。從上圖左邊框中往右邊框加入需要的信號節(jié)點,就可對輸入信號逐一賦值,便可對程序進行仿真,觀察輸出信號,得出結(jié)論。如對時鐘信賦于周期如下圖9 所示。設(shè)置好的輸入波形如下圖10所示。 圖9 設(shè)置時鐘的周期 圖10 設(shè)計好的輸入波形2.6電梯功能的實現(xiàn)與仿真2.

37、6.1仿真步驟(1)仿真器參數(shù)設(shè)置。選擇菜單“assignment”中的“settings”,在“settings”窗口下選擇“category”下的“simulator”,右側(cè)設(shè)置如下圖11所示。圖11選擇仿真控制(2)啟動仿真器?,F(xiàn)在所有設(shè)置進行完畢,在菜單processing項下選擇start simulation,直到出現(xiàn)simulation was successful,仿真結(jié)束。仿真結(jié)果如下圖12。2.6.2仿真結(jié)果分析(1) 圖12所示仿真的是在第二層電梯外部有上升請求,也就是f2upbuttton信號的一個脈沖,可以看到電梯從一層上升到二層,position信號由00變到01。

38、doorlight信號1表示開門,0表示關(guān)門。當電梯到達第二層以后,doorlight信號為1,電梯處在開門狀態(tài),經(jīng)過4秒的關(guān)門延遲后,doorlight信號為0,電梯處在關(guān)門狀態(tài)。圖12有上升請求時電梯的仿真波形圖(2)圖13所示仿真的是reset=1,電梯處在不正常工作狀態(tài),一直停留在一樓。圖13 reset為1時電梯的仿真波形圖結(jié)論電梯控制器系統(tǒng)設(shè)計已經(jīng)全部完成,基本實現(xiàn)了預(yù)期效果,實現(xiàn)了電梯按預(yù)定運行規(guī)則上升、下降、載客等功能。設(shè)計了關(guān)門延時功能使電梯運行更加安全更加可靠。在本設(shè)計中,因為考慮了擴展性,所以在信號定義的時候就使用了二進制的向量,而不是整數(shù)。在設(shè)計方法上也做了特殊的設(shè)計,

39、所以使得擴展性較好。如果要實現(xiàn)n層電梯的控制,首先在端口的地方就要加入所有的按鍵,而指示燈只要把向量中的3改成n就可以了。在本設(shè)計過程中還需要改進的地方有,電梯運行規(guī)則的優(yōu)化(如設(shè)計閑時忙時控制規(guī)則)、電梯運行速度的控制、設(shè)計更多的報警功能等。電梯控制系統(tǒng)的設(shè)計中體現(xiàn)了vhdl覆蓋面是如此的廣,描述能力強,是一個多層次的硬件描述語言及運行速度快,使用方便,便于修改,設(shè)計簡單等特點。本設(shè)計在實用方面和參考方面具有一定的價值。致謝感謝所有任課老師四年來對我的培養(yǎng)。這個文化底蘊深厚、安詳寧靜的地方,塑造了我積極、樂觀、淡定的人生態(tài)度,刻畫了我永遠留戀的青春記憶,讓我在這即將離別的時候如此不舍。在此,

40、我要向諸位老師說聲謝謝。當然也要感謝我的父母,我所邁出的每一步,都凝聚著你們心血和汗水,你們始終如一的支持和關(guān)愛,是我一直勇敢向前的動力。同時也要感謝我的同學(xué)和朋友,我將永遠記得你們伴我走過的每一個有歡笑有淚水的日子,是你們的關(guān)心和幫助,讓我感受到了家的溫暖。參考文獻1王鎖萍.電子設(shè)計自動化(eda)教程m.成都:成都電子科技大學(xué)出版社,2006,6790.2 邱玉春. 李文俊.vhdl系統(tǒng)設(shè)計m.電子產(chǎn)品世界,2007, 5053.3 蘇長贊. 電梯設(shè)計與應(yīng)用m. 北京:人民郵電出版社,2008,7691.4 彭為. 數(shù)字系統(tǒng)設(shè)計m. 電子工業(yè)出版社,2006,6171.5 戴佳. vhdl

41、程序設(shè)計實例精講m. 電子工業(yè)出版社,2007,8892.6 朱清慧. vhdl教程. 清華大學(xué)出版社m.2008,201210.7 何立民eda應(yīng)用技術(shù)選編m北京:北京航空航天大學(xué)出版社,2008,44518 李華eda實用接口技術(shù)m. 北京航空航天大學(xué)出版社2003,176182.9 譚會生,張昌凡.eda技術(shù)及應(yīng)用.第二版.西安電子科技大學(xué)出版社,200910 譚會生,瞿遂春.eda技術(shù)綜合應(yīng)用實例與分析.西安電子科技大學(xué)出版社,200411 王志鵬,付麗琴可編程邏輯器件開發(fā)技術(shù)max+plusii北京:國防工業(yè)出版社.200412 王金明,楊吉斌.數(shù)字系統(tǒng)設(shè)計本文源自網(wǎng)與verilog

42、 hdl.北京:電子工業(yè)出版社,200213 潘松,黃繼業(yè).eda技術(shù)實用教程.北京:科學(xué)出版社,200214 李國麗,朱維勇.電子技術(shù)實驗指導(dǎo)書.合肥:中國科技大學(xué)出版社,200015潘松,王國棟. vhdl實用教程(修訂版)m.成都:成都電子科技大學(xué)出版社,2002,4587.附錄library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;-輸入輸出口定義entity threeflift isport(buttonclk: in std_logi

43、c;liftclk: in std_logic;reset: in std_logic;f1upbutton:in std_logic; -一樓上升請求f2upbutton:in std_logic; -二樓上升請求f2dnbutton:in std_logic; -二樓下降請求f3dnbutton:in std_logic; -三樓下降請求fuplight: buffer std_logic_vector(3 downto 1); -上升指示燈fdnlight:buffer std_logic_vector(3 downto 1); -下降指示燈stop1button,stop2button

44、,stop3button:in std_logic;stoplight: buffer std_logic_vector(3 downto 1);position: buffer integer range 1 to 3;doorlight:out std_logic;udsig: buffer std_logic); - 升降指示end threeflift;- -architecture art of threeflift istype lift_state is -十個狀態(tài)的定義(stopon1,dooropon,doorclose,doorwait1,doorwait2,doorwai

45、t3,doorwait4,up,down,stop);signal mylift: lift_state;signal clearup: std_logic; -用于清除上升請求信號signal cleardn: std_logic; -用于清除下降請求信號begin ctrlift: process(reset,liftclk)variable pos: integer range 3 downto 1;beginif reset='1' then -初始化時mylift<=stopon1;clearup<='0'cleardn<='

46、0'else -正常運行時if liftclk'event and liftclk='1' thencase mylift iswhen stopon1=>doorlight<='1'position<=1; pos:=1;mylift<=doorwait1;when doorwait1=>mylift<=doorwait2;when doorwait2=>clearup<='0'cleardn<='0'mylift<=doorwait3;when doo

47、rwait3=>mylift<=doorwait4;when doorwait4=>mylift<=doorclose;when doorclose=>doorlight<='0'-電梯在關(guān)門狀態(tài)下執(zhí)行if udsig='0' then if position=3 thenif stoplight="000" and fdnlight="000" and fuplight="000"thenudsig<='1' mylift<=doorcl

48、ose;else udsig<='1'mylift<=down;end if;elsif position=2 thenif stoplight="000" and fdnlight="000" and fuplight="000"thenudsig<='0'mylift<=doorclose;elsifstoplight(3)='1' or (stoplight(3)='0' and fdnlight(3)='1')thenuds

49、ig<='0'mylift<=up;else udsig<='1'mylift<=down;end if;-elsif position=1 then if stoplight="000" and fdnlight="000" and fuplight="000"then udsig<='0'mylift<=doorclose;else udsig<='0'mylift<=up;end if;end if;-elsif ud

50、sig<='1' then if position=1 then if stoplight="000" and fuplight="000" and fdnlight="000" thenudsig<='0'mylift<=doorclose;else udsig<='0'mylift<=up;end if;elsif position=2 thenifstoplight="000" and fuplight="000"

51、; and fdnlight="000" thenudsig<='1'mylift<=doorclose; elsif stoplight(1)='1'or(stoplight(1)='0' and fuplight(1)='1') thenudsig<='1'mylift<=down;else udsig<='0'mylift<=up;end if;elsif position=3 then if stoplight="000&qu

52、ot; and fuplight="000" and fdnlight="000" then udsig<='1'mylift<=doorclose;else udsig<='1'mylift<=down;end if;end if;end if;-當電梯在上升狀態(tài)時執(zhí)行when up=>position<=position+1;pos:=pos+1;if pos<3 and(stoplight(pos)='1' or fuplight(pos)='1')then mylift<=stop;elsif pos=3 and(stoplight(pos)='1'or fdnlight(pos)='1')then mylift<=stop;else mylift<=doorclose;end if;-當電梯在下降狀態(tài)時執(zhí)行when down=>position

溫馨提示

  • 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

提交評論