




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、摘 要電梯作為垂直方向的交通工具,在高層建筑和公共場所已成為不可或缺的設(shè)備。中國是全球最大的電梯市場,也具有最強的電梯生產(chǎn)能力,但由于缺乏自主知識產(chǎn)權(quán)和核心技術(shù),自主品牌占市場的份額很少。隨著社會需求的變化,電梯朝著節(jié)能、環(huán)保及智能化方向發(fā)展。EDA技術(shù)打破了軟件和硬件間的壁壘,使計算機的軟件技術(shù)與硬件實現(xiàn)、設(shè)計效率與產(chǎn)品性能合二為一,它代表了電子設(shè)計技術(shù)和應(yīng)用技術(shù)的發(fā)展方向。VHDL主要用于描述數(shù)字系統(tǒng)的接口,結(jié)構(gòu)和功能,它的語法簡單易懂,移植性好。本設(shè)計采用VHDL,源程序經(jīng)A1tera公司的MAX+plus II軟件仿真。運用有限狀態(tài)機的設(shè)計方法,設(shè)計了兩個進程相互配合,狀態(tài)機進程作為主
2、要進程,信號燈控制進程作為輔助進程。在電梯時鐘的觸發(fā)下,通過當(dāng)前狀態(tài)和信號燈信號來判定下一狀態(tài)。信號燈控制進程中,信號燈信號存儲按鍵請求情況,它的熄滅是由狀態(tài)機進程中傳出的信號來控制?!娟P(guān)鍵詞】電梯控制器 EDA技術(shù)及其優(yōu)點,電梯控制器的基本設(shè)計原理目 錄前 言第一章 概述第一節(jié) 中國電梯的現(xiàn)狀及發(fā)展趨勢 一 、中國電梯市場的現(xiàn)狀二 、電梯的發(fā)展方向第二節(jié) EDA技術(shù)及VHDL簡述一 、EDA技術(shù)及其發(fā)展二 、硬件描述語言VHDL第二章 五層電梯控制器的基本設(shè)計原理第一節(jié) 電梯控制器的功能模塊第二節(jié) 電梯控制器的流程圖第三節(jié) 有限狀態(tài)機一 、建立狀態(tài)機的基本原理和基本方法 二 、狀態(tài)機的優(yōu)越性
3、三 、一般狀態(tài)機的VHDL設(shè)計第三章 五層電梯控制器的具體設(shè)計第一節(jié) 五層電梯控制器實現(xiàn)的功能及運行規(guī)則第二節(jié) 五層電梯控制器的綜合設(shè)計一 、五層電梯控制器的設(shè)計思路二 、實體設(shè)計三 、結(jié)構(gòu)體設(shè)計四 、VHDL源代碼語法的簡單說明 五 、VHDL源代碼參考文獻前 言隨著EDA技術(shù)的發(fā)展和應(yīng)用領(lǐng)域的擴大和深入,EDA技術(shù)在電子信息、通信、自動控制及計算機領(lǐng)域的重要性日益突出。隨著技術(shù)市場與人才市場對EDA的需求不斷提高,產(chǎn)品的市場需求和技術(shù)市場的要求也必然會反映到教學(xué)和科研領(lǐng)域中來。用VHDL硬件描述語言的形式來進行數(shù)字系統(tǒng)的設(shè)計方便靈活,利用EDA軟件進行編譯優(yōu)化仿真極大地減少了電路設(shè)計時間和
4、可能發(fā)生的錯誤,降低了開發(fā)成本,這種設(shè)計方法必將在未來的數(shù)字系統(tǒng)設(shè)計中發(fā)揮越來越重要的作用。CPLD作為新一代工業(yè)控制器,以其高可靠性和技術(shù)先進性,在電梯控制中得到廣泛應(yīng)用,從而使電梯由傳統(tǒng)的繼電器控制方式發(fā)展為計算機控制的一個重要方向,成為當(dāng)前電梯控制和技術(shù)改造的熱點之一。另外CPLD是一種專門從事邏輯控制的微型計算機系統(tǒng)。由于CPLD具有性能穩(wěn)定、抗干擾能力強、設(shè)計配置靈活等特點,配合VHDL語言的突出的優(yōu)點,因此在工業(yè)控制方面得到了廣泛應(yīng)用。相信以后必將受到世界范圍內(nèi)電子工程設(shè)汁人員的廣泛關(guān)注和普遍歡迎。EDA是目前世界電子設(shè)計的最新技術(shù)方向和潮流,是一種全新的實驗手段,能有效地提高現(xiàn)代
5、化電子設(shè)計能力。為了跟上時代的步伐,提高自己的電子設(shè)計能力,我選擇了做本課題來學(xué)習(xí)EDA技術(shù)的基本內(nèi)容。第一章 概述第一節(jié) 中國電梯的現(xiàn)狀及發(fā)展趨勢一、中國電梯市場的現(xiàn)狀近年來,隨著中國房地產(chǎn)業(yè)的快速發(fā)展,與之配套的電梯生產(chǎn)制造業(yè)也經(jīng)歷了迅猛發(fā)展的階段,電梯產(chǎn)量保持了每年20以上的增長速度。我國電梯的出口年均增長率將保持在35%以上,電梯行業(yè)逐步成為國內(nèi)比較重要的行業(yè)。 隨著我國經(jīng)濟持續(xù)增長、城鎮(zhèn)化建設(shè)的加速和房地產(chǎn)行業(yè)的進一步發(fā)展,對電梯的需求越來越大。估計未來50年中國新增住房面積將達到200億平方米。國家規(guī)定20米以上高樓就應(yīng)安裝電梯,因此未來電梯最大的市場就是住宅市場。此外,機場、商場
6、、地鐵等大型公共設(shè)施建設(shè)對自動扶梯、觀光電梯等電梯的需求量也十分可觀。目前,中國不但是全球最大的電梯市場,而且形成了全球最強的電梯生產(chǎn)能力,但由于缺乏自主的知識產(chǎn)權(quán)和核心技術(shù),產(chǎn)品的附加價值不高,利潤非常低。目前,全國注冊電梯企業(yè)約400家,但美國奧的斯、瑞士迅達、芬蘭通力、德國蒂森、日本三菱、日立、富士達、東芝等13家大型外企占據(jù)中國電梯市場75%左右的份額,而自主品牌只占25%左右的市場份額。電梯作為終端消費品,品牌在市場競爭中的作用非常明顯。品牌往往成為人們在選擇電梯產(chǎn)品時的重要考慮因素,電梯生產(chǎn)要想建立良好的品牌并獲得市場的認可,也必須經(jīng)過市場一定時間的不斷考驗。面對外資巨頭的貼身進逼
7、,我 國電梯品牌在服務(wù)和營銷上難以匹敵,其生存狀況不容樂觀。二、電梯的發(fā)展方向電梯作為垂直方向的交通工具,在高層建筑和公共場所已經(jīng)成為重要的建筑設(shè)備而不可或缺。電梯產(chǎn)業(yè)的前景和走勢隨著社會的需求而悄然發(fā)生著改變,除了考慮安全、舒適、豪華裝修等要求外,市場對新一代的綠色電梯、節(jié)能電梯和智能電梯的需求越來越旺盛。國內(nèi)外電梯企業(yè)順應(yīng)市場需要,加大研發(fā)投入,都準備在未來新概念電梯產(chǎn)業(yè)發(fā)展中占得先機。1、電梯的節(jié)能和環(huán)?!熬G色”已成為21世紀的主流色調(diào),一個全球性的綠色市場為企業(yè)的發(fā)展提供了廣闊的空間,當(dāng)今社會誰先推出綠色產(chǎn)品,搶占綠色營銷市場,誰就能掌握競爭的主動權(quán)。有關(guān)人士預(yù)言,綠色環(huán)保電梯將成為今
8、后電梯市場的主導(dǎo)性產(chǎn)品,誰擁有了它的核心技術(shù),誰就在競爭中獲得了優(yōu)勢。老式電梯噪音、占用空間、耗能等形成的危害積累起來是相當(dāng)大的,因此,在城市環(huán)保社區(qū)建設(shè)中,如何盡量減少電梯對環(huán)境的危害是相當(dāng)重要的課題之一。目前,我國市場每年銷售各種類型的電梯達4.5萬部,如果這些電梯全部實現(xiàn)環(huán)?;洵h(huán)境效益是難以估量的。電梯現(xiàn)在越來越多,在對賓館、寫字樓等的用電情況調(diào)查統(tǒng)計中,電梯用電量占總用電量的17%-25%以上,僅次于空調(diào)用電量,高于照明、供水等的用電量。負責(zé)任的開發(fā)商,都會為業(yè)主的長遠利益著想,購買節(jié)能型的電梯。近年來,節(jié)能型電梯的市場越來越好,電梯制造商也越來越注重電梯的“節(jié)能”性能。在上世紀9
9、0年代,在電梯驅(qū)動上開始應(yīng)用變頻調(diào)壓調(diào)速系統(tǒng),能耗大幅度地降低。近幾年,又出現(xiàn)了永磁同步電機驅(qū)動的電梯,能耗又有大幅度的下降,有的電梯還能利用太陽能對機房的電能進行補充。2、電梯的智能化隨著城市化的高速發(fā)展,越來越多的摩天大樓拔地而起。就摩天大樓的高度而言,不僅受建筑技術(shù)上的制約,而且還有電梯升高方面的困惑,因而,在摩天大樓日益完備智能化的趨勢中,電梯的智能化也不容忽視。它不僅是人們上上下下的代步工具,同時,也是摩天大樓智能化的一個重要標志。盡管電梯在摩天大樓中只是個細節(jié),但電梯智能化程度的高低卻決定著它服務(wù)質(zhì)量的優(yōu)劣。因而,電梯的智能化在一定程度上反映出智能大廈的智能程度。計算機技術(shù),通訊技
10、術(shù)與控制技術(shù)的發(fā)展使大廈的智能化成為現(xiàn)實,而電梯是智能建筑中的重要交通工具,其技術(shù)發(fā)展及智能化程度也倍受世人關(guān)注。智能化的電梯要與智能大廈中所有自動化系統(tǒng)聯(lián)網(wǎng),如與樓宇控制系統(tǒng)、消防系統(tǒng)、保安監(jiān)控系統(tǒng)等交互聯(lián)系,使電梯成為高效優(yōu)質(zhì)、安全舒適的服務(wù)工具。第二節(jié) EDA技術(shù)及VHDL簡述一、EDA技術(shù)現(xiàn)代EDA技術(shù)就是以讓算機為工具,在EDA軟件平臺上,根據(jù)硬件描述語言HDL完成的設(shè)計文件,能自動地完成用軟件方式描述的電子系統(tǒng)到硬件系統(tǒng)的邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合及優(yōu)化、布局布線、邏輯仿真,直至完成對于特定目標芯片的適配編譯、邏輯映射和編程下載等工作。設(shè)計者的工作僅限于利用軟件的方式來
11、完成對系統(tǒng)硬件功能的描述,在EDA工具的幫助下和應(yīng)用相應(yīng)的FPGA/CPLD器件,就可以得到最后的設(shè)計結(jié)果。盡管目標系統(tǒng)是硬件,但整個設(shè)計和修改過程如同完成軟件設(shè)計一樣方便和高效??梢?,利用EDA技術(shù)進行電子系統(tǒng)的設(shè)計,具有以下幾個特點:用軟件的方式設(shè)計硬件;用軟件方式設(shè)計的系統(tǒng)到硬件系統(tǒng)的轉(zhuǎn)換是由有關(guān)的開發(fā)軟件自動完成的;從以前的“組合設(shè)計”轉(zhuǎn)向真正的“自由設(shè)計”;設(shè)計過程中可用有關(guān)軟件進行各種仿真;系統(tǒng)可現(xiàn)場編程,在線升級;設(shè)計的移植性好,效率高;非常適合分工設(shè)計,團隊協(xié)作;整個系統(tǒng)可集成在一個芯片上,體積小、功耗低、可靠性高。因此,EDA是當(dāng)今電子設(shè)計的發(fā)展趨勢。二、硬件描述語言VHDL
12、VHDL主要用于描述數(shù)字系統(tǒng)的結(jié)構(gòu),行為,功能和接口,它是從抽象到具體的水平來描述硬件的一個行業(yè)標準的語言。VHDL的程序結(jié)構(gòu)特點是將一項工程設(shè)計分成外部和內(nèi)部,外部即端口,內(nèi)部則涉及實體的功能和算法。在對一個設(shè)計實體定義了外部端口并完成內(nèi)部開發(fā)后,其他的設(shè)計就可以直接調(diào)用這個實體。自1987年被IEEE批準后,VHDL語言已經(jīng)在電子設(shè)計生產(chǎn)中處于核心地位。它有以下優(yōu)點:VHDL語言功能強大,設(shè)計方式多樣。VHDL語言具有強大的硬件描述能力。VHDL語言具有很好移植性。VHDL語言的設(shè)計描述與器件無關(guān)。VHDL語言程序易于共享和復(fù)用。由于VHDL語言是一種描述、模擬、綜合、優(yōu)化和布線的標準硬件
13、描述語言,因此它可以使設(shè)計成果在設(shè)計人員之間方便地進行交流和共享,從而減小硬件電路設(shè)計的工作量,縮短開發(fā)周期。三,EDA設(shè)計技術(shù)的基本特征一般來說,EDA設(shè)計技術(shù)就是指以計算機為工作平臺,以eda軟件工具未開發(fā)環(huán)境,以硬件描述語言為設(shè)計語言,以可編程邏輯器件為載體,以asic和soc芯片為設(shè)計的基本目標,以電子系統(tǒng)設(shè)計為應(yīng)用方向的電子產(chǎn)品自動化設(shè)計過程。通常,eda技術(shù)的基本特征主要包括以下幾個方面:(1)自頂向下的設(shè)計方法。(2)硬件描述語言。(3)邏輯綜合與優(yōu)化功能。(4)開放性與標準化。 第二章 三層電梯控制器的基本設(shè)計原理第一節(jié) 電梯控制器的功能模塊電梯控制器的功能模塊如圖2.1所示,
14、包括主控制器、分控制器、樓層選擇器、狀態(tài)顯示器、譯碼器和樓層顯示器。乘客在電梯中選擇所要到達的樓層,通過主控制器的處理,電梯開始運行,狀態(tài)顯示器顯示電梯的運行狀態(tài),電梯所在樓層數(shù)通過譯碼器譯碼從而在樓層顯示器中顯示。分控制器把有效的請求傳給主控制器進行處理,同時顯示電梯的運行狀態(tài)和電梯所在樓層數(shù)。由于分控制器相對簡單很多,所以主控制器是核心部分。狀態(tài)顯示器主控制器樓層選擇器分控制器譯碼器樓層顯示器 圖2.1 電梯控制器原理圖第二節(jié) 電梯控制器的流程圖外部按鍵請求信號寄存器狀態(tài)寄存器內(nèi)部軟件執(zhí)行機構(gòu)外部硬件執(zhí)行機構(gòu)圖2.2 總流程圖初始化判定電梯運行方向是否有請求?等待電梯運行樓層檢測否電梯停止
15、目標層與本層是否同層?是是否目標層?開門延時關(guān)門是否停止運行?是否是否是否停止圖2.3 電梯控制主流程圖第三節(jié) 有限狀態(tài)機 有限狀態(tài)機(finite state machine)又稱有限狀態(tài)自動機或簡稱狀態(tài)機,是表示有限個狀態(tài)以及這些狀態(tài)之間的轉(zhuǎn)移和動作等行為的數(shù)學(xué)模型,它是由一組狀態(tài)、一個初始狀態(tài)、輸入和根據(jù)輸入及現(xiàn)有狀態(tài)轉(zhuǎn)換為下一個狀態(tài)的轉(zhuǎn)換函數(shù)組成。有限狀態(tài)機是一種基本的、簡單的、重要的形式化技術(shù),在軟件設(shè)計中常常采用。它是描述一個由有限個獨立狀態(tài)組成的過程,這些狀態(tài)可以互相遷移,直到最終離開這個過程。采用有限狀態(tài)機可以使設(shè)計過程直觀簡單易于理解,隨著硬件設(shè)計軟件化趨勢的加劇,在運用VH
16、DL硬件描述語言設(shè)計數(shù)字系統(tǒng)時,利用有限狀態(tài)機成為了可靠方便的途徑??刂破髯鳛殡娮酉到y(tǒng)設(shè)計的核心部分,在EDA軟件平臺上,借助有限狀態(tài)機表示方法符合人的邏輯思維的特征,將控制功能用有限狀態(tài)機來建模實現(xiàn),有許多優(yōu)越之處,以使FSM成為大型控制電路設(shè)計的有力工具。一、建立狀態(tài)機的基本原理和基本方法1、狀態(tài)機的基本原理除了輸人信號、輸出信號外,狀態(tài)機還包含一組寄存器記憶內(nèi)部狀態(tài)。狀態(tài)機寄存器的下一個狀態(tài)及輸出,不僅同輸入信號有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機有兩個主要部分:即組合邏輯和寄存器部分。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機的下一個狀態(tài),即確定狀態(tài)機的激勵
17、方程,輸出譯碼器確定狀態(tài)機的輸出,即確定狀態(tài)機的輸出方程。在實際的應(yīng)用中,根據(jù)有限狀態(tài)機是否使用輸入信號,設(shè)計人員經(jīng)常將其分為摩爾(moore)型狀態(tài)機和米立(mealy)型狀態(tài)機兩種類型。摩爾狀態(tài)機的輸出只是當(dāng)前狀態(tài)的函數(shù),而米立狀態(tài)機的輸出一般是當(dāng)前狀態(tài)和輸入信號的函數(shù)。大多數(shù)實用的狀態(tài)機都是同步的時序電路,由時鐘信號觸發(fā)進行狀態(tài)的轉(zhuǎn)換。時鐘信號同所有的邊沿觸發(fā)的狀態(tài)寄存器和輸出寄存器相連,使狀態(tài)的改變發(fā)生在時鐘的上升或下降沿。在數(shù)字系統(tǒng)中,那些輸出取決于過去的輸入和當(dāng)前的輸入的部分都可以作為有限狀態(tài)機。有限狀態(tài)機的全部“歷史”都反映在當(dāng)前狀態(tài)上。當(dāng)給FSM一個新的輸入時,在時鐘的觸發(fā)下,
18、狀態(tài)就會發(fā)生轉(zhuǎn)移。2、建立狀態(tài)機的方法數(shù)字系統(tǒng)中,傳統(tǒng)的狀態(tài)機建立方法主要有狀態(tài)轉(zhuǎn)移圖和狀態(tài)轉(zhuǎn)移表兩種。狀態(tài)轉(zhuǎn)移圖:如圖2.4所示,圖中每個橢圓表示狀態(tài)機的一個狀態(tài),而箭頭表示狀態(tài)之間的轉(zhuǎn)移方向,引起狀態(tài)轉(zhuǎn)換的輸入信號及當(dāng)前輸出表示在箭頭上。狀態(tài)A狀態(tài)B狀態(tài)C狀態(tài)D輸入/出輸入/出輸入/出輸入/出圖2.4 狀態(tài)轉(zhuǎn)移圖狀態(tài)轉(zhuǎn)移表:如表2.1所示,表中的行列出了全部可能的輸入信號和內(nèi)部狀態(tài)以組合及相應(yīng)的次狀態(tài)和輸出,因此狀態(tài)表表現(xiàn)了狀態(tài)轉(zhuǎn)移函數(shù)和輸出函數(shù)。然而,狀態(tài)表不適合具有大量輸入的系統(tǒng),因為隨著輸入的增加其狀態(tài)數(shù)和系統(tǒng)的復(fù)雜性會顯著增加。表2.1 狀態(tài)轉(zhuǎn)移表現(xiàn)態(tài)輸入次態(tài)輸出A-DI0-ImA
19、-DO0-On如果能夠畫出狀態(tài)轉(zhuǎn)移圖或狀態(tài)轉(zhuǎn)移表,就可以列出狀態(tài)轉(zhuǎn)移方程和輸出方程,畫出設(shè)計電路圖。狀態(tài)轉(zhuǎn)移圖、狀態(tài)轉(zhuǎn)移表這兩種狀態(tài)機的建立方法是等價的,都可以描述同一硬件的結(jié)構(gòu),它們可以相互轉(zhuǎn)換,但各有優(yōu)缺點,分別適合于不同場合,并且這種傳統(tǒng)的設(shè)計方法十分復(fù)雜。 利用VHDL設(shè)計狀態(tài)機,不必進行繁雜的狀態(tài)分配,狀態(tài)表繪制和化簡,更不必畫出設(shè)計電路和搭試硬件電路測試邏輯功能,這些工作可以全由EDA工具完成。用VHDL語言設(shè)計狀態(tài)機,是通過簡便地定義狀態(tài)變量,將狀態(tài)描述成進程,每個狀態(tài)均可表達為case-when語句結(jié)構(gòu)中的一條case語句,狀態(tài)的轉(zhuǎn)移通過if-then-else語句實現(xiàn),并輸出
20、信號以控制其他進程,從而實現(xiàn)所需功能。二、狀態(tài)機的優(yōu)越性 狀態(tài)機的工作方式是根據(jù)控制信號按照預(yù)先設(shè)定的狀態(tài)進行順序運行的,它是純硬件數(shù)字系統(tǒng)中的順序控制電路,狀態(tài)機克服了純硬件數(shù)字系統(tǒng)順序方式控制不靈活的缺點。 由于狀態(tài)機的結(jié)構(gòu)模式相對簡單,設(shè)計方案相對固定,特別是可以定義符號化枚舉類型的狀態(tài),這一切都是VHDL綜合器盡可能發(fā)揮其強大的優(yōu)化功能提供了有利條件。狀態(tài)機容易構(gòu)成性能良好的同步時序邏輯模塊,在大規(guī)模邏輯電路設(shè)計可以抑制冒險現(xiàn)象。狀態(tài)機的VHDL表述豐富多樣,程序?qū)哟畏置?,結(jié)構(gòu)清晰,簡單易懂,便于于排錯、修改和模塊移植。由于在VHDL中,一個狀態(tài)機可以有多個進程,一個結(jié)構(gòu)體中可以有多個
21、狀態(tài)機,而一個單獨的狀態(tài)機(多個并行運行的狀態(tài)機)以順序方式所能完成的運算與控制方面的工作與一個CPU的功能類似,所以在高速運算和控制方面,狀態(tài)機更有其巨大的優(yōu)勢。由于狀態(tài)機是由純硬件電路構(gòu)成,它的運行不依賴軟件指令的逐條執(zhí)行,在設(shè)計中能使用各種完整的容錯技術(shù),并且當(dāng)狀態(tài)機進入非法狀態(tài)時會從中跳出,此過程耗時很少,所以就可靠性而言,狀態(tài)機的優(yōu)勢也是十分明顯的。三、一般狀態(tài)機的VHDL設(shè)計用VHDL設(shè)計的狀態(tài)機有多種形式,但最一般和最常用的狀態(tài)機通常包含說明部分,主控時序進程,主控組合進程和輔助進程幾個部分。1、說明部分說明部分中使用type語句定義新的數(shù)據(jù)類型,此數(shù)據(jù)類型為枚舉型,其元素通常都
22、用狀態(tài)機的狀態(tài)名來定義。狀態(tài)變量定義為信號,便于信息傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說明部分一般放在結(jié)構(gòu)體的architecture和begin之間。2、主控時序進程主控時序進程是指負責(zé)狀態(tài)機運轉(zhuǎn)和在時鐘驅(qū)動下負責(zé)狀態(tài)轉(zhuǎn)換的進程。狀態(tài)機隨外部時鐘信號以同步時序方式工作,因此,狀態(tài)機中必須包含一個對工作時鐘信號敏感的進程,作為狀態(tài)機的“驅(qū)動泵”,當(dāng)時鐘發(fā)生跳變時,狀態(tài)機的狀態(tài)才會發(fā)生改變。當(dāng)時鐘的有效跳變到來時,時序進程將代表次態(tài)的信號next_state中的內(nèi)容送入現(xiàn)態(tài)信號current_state中,而next_state中的內(nèi)容完全由其他進程根據(jù)實際情
23、況而定,此進程中往往也包括一些清零或置位的控制信號。3、主控組合進程主控組合進程的任務(wù)是根據(jù)外部輸入的控制信號(包括來自狀態(tài)機外部的信號和來自狀態(tài)機內(nèi)部其他非主控的組合或時序進程的信號)和當(dāng)前狀態(tài)值確定下一狀態(tài)next_state的取向,以及確定對外輸出或?qū)?nèi)其他進程輸出控制信號的內(nèi)容。4、輔助進程輔助進程是用于配合狀態(tài)機工作的組合或時序進程。在一般狀態(tài)機的設(shè)計過程中,為了能獲得可綜合的,高效的VHDL狀態(tài)機描述,建議使用枚舉數(shù)據(jù)類型來定義狀態(tài)機的狀態(tài),并使用多進程方式來描述狀態(tài)機的內(nèi)部邏輯。例如可使用兩個進程來描述,個進程描述時序邏輯,包括狀態(tài)寄存器的工作和寄存器狀態(tài)的輸出,另一個進程描述組
24、合邏輯,包括進程間狀態(tài)值的傳遞邏輯以及狀態(tài)轉(zhuǎn)換值的輸出。必要時還可以引入第三個進程完成其它的邏輯功能。第三章 五層電梯控制器的設(shè)計原理本設(shè)計嘗試用硬件描述語言VHDL來實現(xiàn)對三層電梯的控制,源程序經(jīng)A1tera公司的MAX+plus II軟件仿真,保證了設(shè)計的正確性。使用VHDL進行電梯控制器的設(shè)計,主要就是對電梯軟件部分的設(shè)計,使用VHDL中的邏輯關(guān)系建立電梯的升降模式,開門,關(guān)門達到動作,而外部器件的硬件設(shè)備基本上保持不變。使用VHDL硬件描述語言設(shè)計電梯控制器可以為電梯實現(xiàn)智能控制奠定基礎(chǔ)。第一節(jié) 五層電梯控制器實現(xiàn)的功能及運行規(guī)則電梯一層入口處設(shè)有上升請求開關(guān),二,三,四層入口處設(shè)有上
25、、下請求開關(guān),五層入口處設(shè)有下降請求開關(guān),電梯內(nèi)部設(shè)有顧客到達樓層的停站請求開關(guān)。每層電梯入口處設(shè)有位置指示裝置及電梯運行模式 (上升或下降)指示裝置。電梯初始狀態(tài)為一層開門狀態(tài)。電梯每秒上升(下降)一層樓。電梯到達需要停止的樓層,經(jīng)過1秒電梯門打開,開門指示燈亮,開門4秒后,電梯門關(guān)閉(開門指示燈滅),電梯繼續(xù)運行,直至執(zhí)行完最后一個請求信號后停留在當(dāng)前層。電梯需要寄存器來記憶電梯內(nèi)外所有請求,并按照電梯運行規(guī)則按順序響應(yīng),每個請求信號保留至執(zhí)行后消除。電梯的運行規(guī)則:當(dāng)電梯處于上升模式時,只響應(yīng)比電梯所在位置高的上樓請求信號和停站請求信號,由下而上逐個執(zhí)行,直到最后一個上樓請求執(zhí)行完畢;如
26、果高層有下樓請求,則直接上升到有下樓請求的最高層,然后進入下降模式。當(dāng)電梯處于下降模式時則與上升模式相反。第二節(jié) 五層電梯控制器的綜合設(shè)計一、五層電梯控制器的設(shè)計思路電梯控制器設(shè)計兩個進程相互配合,狀態(tài)機進程作為主要進程,信號燈控制進程作為輔助進程。根據(jù)電梯的實際工作情況,可以為狀態(tài)機設(shè)置十個狀態(tài),它們分別是“電梯停在一層”“開門”“關(guān)門”“開門等待第一秒”“開門等待第二秒”“開門等待第三秒”“開門等待第四秒”“上升”“下降”和“停止”。由于電梯每秒上升或下降一層,則可以用周期為1s的信號來作為電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時鐘。狀態(tài)機進程中的很多判斷條件是以信號燈控制進程產(chǎn)生的信號燈信號為依據(jù),而信號燈
27、控制進程中信號燈的熄滅又是由狀態(tài)機進程中傳出的信號來控制。五層電梯控制器的設(shè)計主要是對實體和結(jié)構(gòu)體的設(shè)計,它的VHDL描述模塊流程如圖3.1所示:元件庫的說明定義實體結(jié)構(gòu)體端口狀態(tài)機進程信號燈控制進程結(jié)束按鍵信號燈圖3.1 五層電梯控制器的VHDL描述模塊流程二、實體設(shè)計實體設(shè)計即是對端口名、端口模式及數(shù)據(jù)類型的說明。首先考慮輸入端口,一個異步復(fù)位端口“reset”,用于當(dāng)電梯出現(xiàn)非正常情況時回到初始狀態(tài);在電梯外部,一層入口處設(shè)有上升請求端,二,三,四層入口處設(shè)有上升和下降請求端,五層入口處設(shè)有下降請求端;在電梯內(nèi)部,應(yīng)設(shè)有各層停站請求端口;一個電梯時鐘輸入端口,它提供周期為1s的時鐘信號,
28、用作電梯狀態(tài)轉(zhuǎn)換的觸發(fā)時鐘;還有一個頻率很高的按鍵時鐘輸入端口。其次考慮輸出端口,當(dāng)有各層上升或下降請求時,各層入口處應(yīng)該有端口顯示請求是否被響應(yīng),有請求時端口輸出邏輯1,被執(zhí)行后則恢復(fù)成邏輯0;同樣的,電梯內(nèi)部也應(yīng)有各層停站請求是否被響應(yīng)的指示端口;一個開關(guān)門指示端口,當(dāng)門開著時,它為邏輯1,門關(guān)著時,則為邏輯0;還需要端口來顯示電梯所處的位置和模式(上升或下降)。三、結(jié)構(gòu)體設(shè)計在結(jié)構(gòu)體中,首先說明了狀態(tài)機設(shè)置的十個狀態(tài),分別是:電梯停在1層(stopon1)、開門(dooropen)、關(guān)門(doorclose)、開門等待第1秒(doorwait1)、開門等待第2秒(doorwait2)、開
29、門等待第3秒(doorwait3)、開門等待第4秒(doorwait4)、上升(up)、下降(down)和停止(stop)。在結(jié)構(gòu)體最前端用如下的定義語句,來定義狀態(tài)機。type lift_state is(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);接著描述電梯內(nèi)部功能實現(xiàn),在結(jié)構(gòu)體中設(shè)計了兩個進程,一個狀態(tài)機進程(ctrlift),它是以reset和liftclk作為敏感信號,控制電梯的狀態(tài)轉(zhuǎn)移;另外一個是信號燈控制進程(ctrlight),它是以reset和buttonc
30、lk作為敏感信號,控制寄存信號的邏輯值。在狀態(tài)機進程中,電梯關(guān)門后根據(jù)信號燈的情況,來決定下一個狀態(tài)是上升、下降還是停止;在信號燈控制進程中,由于使用了專門的頻率較高的按鍵時鐘,所以使得按鍵的靈敏度大,但是時鐘頻率不能過高,否則容易使按鍵過于靈敏,而信號燈的熄滅是由狀態(tài)機進程中傳出clearup和cleardn信號來控制。四、VHDL源代碼語法的簡單說明本程序設(shè)計調(diào)用了ieee庫,ieee庫是VHDL設(shè)計中最為常用的庫,它包含有ieee標準的程序包和其他一些支持工業(yè)標準的程序包。本設(shè)計采用std-logic-1164、std-logic-unsigned、std-logic-arith程序包。
31、以關(guān)鍵詞entity引導(dǎo),end entity threelift結(jié)尾的部分是程序的實體部分。VHDL的實體描述了電路器件的外部情況,本設(shè)計定義了關(guān)于三層電梯控制器用到的各類時鐘、異步復(fù)位按鍵、信號燈指示端口、電梯的請求端口。它描述了端口模式主要有in、buffer、out,以及各端口信號的數(shù)據(jù)類型主要有std-logic、std-logic-vector、integer。(3)以關(guān)鍵詞architecture引導(dǎo),end architecture one結(jié)尾的語句部分是結(jié)構(gòu)體部分,結(jié)構(gòu)體描述電路器件的內(nèi)部邏輯功能。五、VHDL源代碼library ieee; -庫的說明use ieee.st
32、d_logic_1164.all; -程序包的說明use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity threelift is -實體 port(buttonclk:in std_logic; -按鍵時鐘信號 liftclk:in std_logic; -電梯時鐘信號 reset:in std_logic; -異步復(fù)位端口 f1upbutton:in std_logic; -一層上升請求端口 f2upbutton:in std_logic; -二層上升請求端口 f2dnbutton:in std_logic;
33、-二層下降請求端口 f3dnbutton:in std_logic; -三層下降請求端口 stop1button:in std_logic; -一層停站請求端口 stop2button:in std_logic; -二層停站請求端口 stop3button:in std_logic; -三層停站請求端口 position:buffer integer range 1 to 3; -電梯位置信號 udsig:buffer std_logic; -電梯模式(上升或下降)信號 fuplight,fdnlight,stoplight:buffer std_logic_vector(3 downto 1
34、); -上升、下降、停站請求寄存信號doorlight:out std_logic; -開關(guān)門信號 dout1:out std_logic_vector(3 downto 0); end entity threelift;architecture one of threelift is -結(jié)構(gòu)體type lift_state is -定義十個狀態(tài)(stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3,doorwait4,up,down,stop);signal mylift:lift_state;signal clearup:std_
35、logic; -上升和停站請求清除信號signal cleardn:std_logic; -下降和停站請求清除信號beginctrlift:process(reset,liftclk) -狀態(tài)機進程variable pos:integer range 3 downto 1;beginif reset='1' then -異步復(fù)位,電梯的初始狀態(tài)為一層開門狀態(tài) mylift<=stopon1; clearup<='0' cleardn<='0'else if liftclk'event and liftclk='1
36、' then case mylift is when stopon1=> doorlight<='1' position<=1; pos:=1; mylift<=doorwait1; -電梯等待4s when doorwait1=> mylift<=doorwait2; when doorwait2=> clearup<='0' cleardn<='0' mylift<=doorwait3; when doorwait3=> mylift<=doorwait4; wh
37、en doorwait4=> mylift<=doorclose; when doorclose=> -關(guān)門,判定電梯下一個運行方式 doorlight<='0' if udsig='1' then -電梯處在上升模式 if position=3 then if fuplight="000" and fdnlight="000" and stoplight="000" then -沒有請求信號時,電梯停在當(dāng)前層 udsig<='0' mylift<=d
38、oorclose; elsif fdnlight(3)='1' or stoplight(3)='1' then -本層有請求信號是,電梯開門 udsig<='0' mylift<=dooropen; else -否則下降 udsig<='0' mylift<=down; end if; elsif position=2 then if fuplight="000" and fdnlight="000" and stoplight="000" th
39、en udsig<='1' mylift<=doorclose;elsif fuplight(2)='1' or stoplight(2)='1' then -本層有上升或停站請求時時,電梯開門 udsig<='1' mylift<=dooropen; elsif fuplight="000" and stoplight="000" and fdnlight="010" then -只有二層有下降請求時,電梯開門 udsig<='0&
40、#39; mylift<=dooropen; elsif stoplight(3)='1' or fdnlight(3)='1' then -三層有停站請求或下降請求,則上升 udsig<='1' mylift<=up; else udsig<='0' mylift<=down; end if; elsif position=1 then if fuplight="000" and fdnlight="000" and stoplight="000&q
41、uot; then udsig<='1' mylift<=doorclose; elsif stoplight(1)='1' or fuplight(1)='1' then udsig<='1' mylift<=dooropen; else udsig<='1' mylift<=up; end if; end if; elsif udsig='0' then -電梯處在下降模式 if position=3 then if fuplight="000&qu
42、ot; and fdnlight="000" and stoplight="000" then udsig<='0' mylift<=doorclose; elsif fdnlight(3)='1' or stoplight(3)='1' then udsig<='0' mylift<=dooropen; else udsig<='0' mylift<=down; end if; elsif position=2 then if fupli
43、ght="000" and fdnlight="000" and stoplight="000" then udsig<='0' mylift<=doorclose; elsif fdnlight(2)='1' or stoplight(2)='1' then udsig<='0' mylift<=dooropen; elsif fdnlight="000" and stoplight="000" and f
44、uplight="010" then udsig<='1' mylift<=dooropen; elsif fuplight(1)='1' or stoplight(1)='1' then -一層有停站請求或上升請求,則下降 udsig<='0' mylift<=down; else udsig<='1' mylift<=up; end if; elsif position=1 then if fuplight="000" and fdnl
45、ight="000" and stoplight="000" then udsig<='1' mylift<=doorclose; elsif stoplight(1)='1' or fuplight(1)='1' then udsig<='1' mylift<=dooropen; else udsig<='1' mylift<=up; end if; end if; end if; when up=> -電梯處于上升狀態(tài) posit
46、ion<=position+1; -電梯樓層數(shù)加一 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<=d
47、oorclose; end if; when down=> -電梯處在下降狀態(tài) position<=position-1; -電梯樓層數(shù)減一 pos:=pos-1; if pos>1 and (stoplight(pos)='1' and fdnlight(pos)='1') then mylift<=stop; elsif pos=1 and (stoplight(pos)='1' or fuplight(pos)='1') then mylift<=stop; else mylift<=doorclose; end if; when stop=> mylift<=dooropen; when dooropen=> doorlight<='1' if udsig='1' then if position<3 and (fuplight(pos)='1' or stoplight(pos)='1') then clearup<='
溫馨提示
- 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)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 第14課《應(yīng)有格物致知精神》教學(xué)設(shè)計2023-2024學(xué)年統(tǒng)編版語文八年級下冊
- 2023八年級數(shù)學(xué)上冊 第十四章 整式的乘法與因式分解14.1 整式的乘法14.1.4 整式的乘法第4課時 整式的除法教學(xué)實錄(新版)新人教版
- Module 7 Unit 2(教學(xué)設(shè)計)-2024-2025學(xué)年外研版英語八年級上冊
- Module 9 Unit 1 教學(xué)設(shè)計 2024-2025學(xué)年外研版八年級英語下冊
- 2023三年級數(shù)學(xué)下冊 第四單元 毫米和千米4.1 認識毫米教學(xué)實錄 冀教版
- 《第四單元 工具的使用:13 組裝小車》教學(xué)設(shè)計-2024-2025學(xué)年湘科版2024版一年級上冊
- 2024-2025學(xué)年新教材高中地理 第一章 宇宙中的地球 第三節(jié) 地球的歷史教學(xué)實錄(1)新人教版必修1
- DB6540-T 006-2022 油用亞麻病蟲草害防治技術(shù)規(guī)范
- 中國近代史知到課后答案智慧樹章節(jié)測試答案2025年春保山學(xué)院
- Unit 4 Reading for writing教學(xué)設(shè)計 -2024-2025學(xué)年外研版七年級英語上冊
- 智慧園區(qū)機電智慧運維平臺方案設(shè)計
- 培養(yǎng)孩子社交能力的家庭教育手段
- 2024-2030年中國心理傾向測驗設(shè)備資金申請報告
- 中考道德與法治真題專題復(fù)習(xí) 堅持憲法至上(原卷版)
- 2024年社會工作者(中級)-社會綜合能力考試歷年真題含答案
- 防雷防靜電應(yīng)急救援演練實施方案
- 應(yīng)急第一響應(yīng)人理論考試試卷(含答案)
- 護理核心制度測試題+參考答案
- 大學(xué)籃球普修課教案
- 風(fēng)電基礎(chǔ)施工方案
- 供貨合同協(xié)議花崗巖
評論
0/150
提交評論