freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于vhdl的電梯控制系統(tǒng)vhdl編程、含ppt(編輯修改稿)

2025-06-19 23:14 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 降請(qǐng)求和第三層樓的上升請(qǐng)求,則電梯會(huì)先響應(yīng)第三層樓的請(qǐng)求,當(dāng)?shù)竭_(dá)第三層樓后,在消除這一信號(hào),接著響應(yīng)第四層樓的請(qǐng)求; 而電梯的上升和下降模式流程圖則更加具體的指出了電梯在什么情況下上升 ,在什么情況下下降,上升過(guò)程中和下降過(guò)程中的一些具體情況;門(mén) 制系統(tǒng)也是很重要的一部分,它形象的表達(dá)了電梯在到達(dá)所指定的樓層后 所做出的反應(yīng)及其所等待時(shí)間。 總之,這五個(gè)流程圖將電梯控制系統(tǒng)具體化,有利于后面的設(shè)計(jì)。 電梯控制器可以通過(guò)多種方法進(jìn)行設(shè)計(jì),其中采用狀態(tài)機(jī)來(lái)實(shí)現(xiàn),思路比較清晰??梢詫㈦娞莸却拿棵腌娨约伴_(kāi)門(mén),關(guān)門(mén)都看成一個(gè)獨(dú)立的狀態(tài)。由于電梯又是每秒上升或下降一層,所以就可以通過(guò)一個(gè)統(tǒng)一的 1 秒為周期的時(shí)鐘來(lái)觸發(fā)狀態(tài)機(jī)。 N Y N Y N N Y Y N 初始化 一層開(kāi)門(mén)等待 下降模式 上升請(qǐng)求 到最高層 有到目的層 一層開(kāi)門(mén)等待 Y 上升 N 下降請(qǐng)求請(qǐng)求 到最低層請(qǐng)求 到目的層請(qǐng)求 掃描當(dāng)前層 下降 停車 上升模式 圖 3 上升模式流程圖 圖 4 下降 模式流程圖 Y 11 圖 5 停車門(mén)控流程圖 狀態(tài)機(jī)及其 VHDL 設(shè)計(jì) 有限狀態(tài)機(jī)( Finite State Machine,簡(jiǎn)稱 FSM) 是一類很重要的時(shí)序電路,是許多數(shù)字系統(tǒng)的核心部件,也是實(shí)時(shí)系統(tǒng)設(shè)計(jì)中的一種數(shù)學(xué)模型,是一種重要的、易于建立的、應(yīng)用比較廣泛的、以描述控制特性為主的建模方法,它可以應(yīng)用于從系統(tǒng)分析到設(shè)計(jì)的所有階段。有限狀態(tài)機(jī)的優(yōu)點(diǎn)在于簡(jiǎn)單易用,狀態(tài)間的關(guān)系清晰直觀。建立有限狀態(tài)機(jī)主要有兩種方法:“狀態(tài)轉(zhuǎn)移圖”和“狀態(tài)轉(zhuǎn)移表”。標(biāo)準(zhǔn)狀態(tài)機(jī)通??煞譃?Moore 和 Mealy 兩種類型。 停車控制程序 到站 開(kāi)門(mén) 等待 2秒 等待 2秒 清該層對(duì)應(yīng)指示燈 關(guān)門(mén) 返回 12 狀態(tài)譯碼器 狀態(tài)寄存器 輸 出譯碼器 輸出信號(hào) 狀態(tài)機(jī)的基本結(jié)構(gòu)和功能 狀態(tài)機(jī)的基本結(jié)構(gòu)如圖 1 所示。除了輸人信號(hào)、輸出信號(hào)外,狀態(tài)機(jī)還包含一組寄存器記憶狀態(tài)機(jī)的內(nèi)部狀態(tài)。狀態(tài)機(jī)寄存器的下 一個(gè)狀態(tài)及輸出,不僅同輸入信號(hào)有關(guān),而且還與寄存器的當(dāng)前狀態(tài)有關(guān),狀態(tài)機(jī)可以認(rèn)為是組合邏輯和寄存器邏輯的特殊組合。它包括兩個(gè)主要部分:即組合邏輯部分和寄存器。組合邏輯部分又可分為狀態(tài)譯碼器和輸出譯碼器,狀態(tài)譯碼器確定狀態(tài)機(jī)的下一個(gè)狀態(tài),即確定狀態(tài)機(jī)的激勵(lì)方程,輸出譯碼器確定狀態(tài)機(jī)的輸出,即確定狀態(tài)機(jī)的輸出方程。寄存器用于存儲(chǔ)狀態(tài)機(jī)的內(nèi)部狀態(tài)。 組合邏輯 圖 6 狀態(tài)機(jī)的基本結(jié)構(gòu) 狀態(tài)機(jī)的基本操作有兩種: 1.狀態(tài)機(jī)的內(nèi)部狀態(tài)轉(zhuǎn)換。 狀態(tài)機(jī)經(jīng)歷一系列狀態(tài),下一狀態(tài)由狀態(tài)譯碼器根據(jù)當(dāng)前狀態(tài)和輸 入條件決定。 2.產(chǎn)生輸出信號(hào)序列。 輸出信號(hào)由輸出譯碼器根據(jù)當(dāng)前狀態(tài)和輸入條件確定。用輸入信號(hào)決定下一狀態(tài)也稱為“轉(zhuǎn)移”。除了轉(zhuǎn)移之外,復(fù)雜的狀態(tài)機(jī)還具有重復(fù)和歷程功能。從一個(gè)狀態(tài)轉(zhuǎn)移到另一狀態(tài)稱為控制定序,而決定下一狀態(tài)所需的邏輯稱為轉(zhuǎn)移函數(shù)。 在產(chǎn)生輸出的過(guò)程中,根據(jù)是否使用輸入信號(hào)可以確定狀態(tài)機(jī)的類型。兩種典型的狀態(tài)機(jī)是米立( Mealy)狀態(tài)機(jī)和摩爾( Moore)狀態(tài)機(jī)。摩爾狀態(tài)機(jī)的輸出只是當(dāng)前狀態(tài)的函數(shù),而米立狀態(tài)機(jī)的輸出一般是當(dāng)前狀態(tài)和輸入信號(hào)的函數(shù)。對(duì)于這兩類狀態(tài)機(jī),控制定序都取決于當(dāng)前狀態(tài)和 輸入信號(hào)。大多數(shù)實(shí)用的狀態(tài)機(jī)都是同步的時(shí)序電路,由時(shí)鐘信號(hào)觸發(fā)進(jìn)行狀態(tài)的轉(zhuǎn)換。時(shí)鐘信號(hào)同所有輸入信號(hào) 13 的邊沿觸發(fā)的狀 態(tài)寄存器和輸出寄存器相連,使?fàn)顟B(tài)的改變發(fā)生在時(shí)鐘的上升或下降沿。 一般狀態(tài)機(jī)的 VHDL 設(shè)計(jì) ( 1) 狀態(tài)機(jī)的一般組成 用 VHDL 設(shè)計(jì)有限狀態(tài)機(jī)方法有多種,但最一般和最常用的狀態(tài)機(jī) 設(shè)計(jì)通常包括說(shuō)明部分,主控時(shí)序部分,主控組合部分和輔助進(jìn)程部分 , 附錄 1 為狀態(tài)機(jī)的一種設(shè)計(jì)情況。 1 說(shuō)明部分 說(shuō)明部分中使用 TYPE 語(yǔ)句定義新的數(shù)據(jù)類型,此數(shù)據(jù)類型為枚舉型,其元素通常都用狀態(tài)機(jī)的狀態(tài)名來(lái)定義。狀態(tài)變量定義為 信號(hào),便于信息傳遞,并將狀態(tài)變量的數(shù)據(jù)類型定義為含有既定狀態(tài)元素的新定義的數(shù)據(jù)類型。說(shuō)明部分一般放在結(jié)構(gòu)體的 ARCHITECTURE 和 BEGIN 之間。 2 主控時(shí)序進(jìn)程 是指負(fù)責(zé)狀態(tài)機(jī)運(yùn)轉(zhuǎn)和在時(shí)鐘驅(qū)動(dòng)下負(fù)責(zé)狀態(tài)機(jī)轉(zhuǎn)換的進(jìn)程。狀態(tài)機(jī)隨外部時(shí)鐘信號(hào)以同步方式工作,當(dāng)時(shí)鐘的有效跳變到來(lái)時(shí),時(shí)序進(jìn)程將代表次態(tài)的信號(hào) next_state 中的內(nèi)容送入現(xiàn)態(tài)信號(hào) current_state 中,而 next_state 中的內(nèi)容完全由其他進(jìn)程根據(jù)實(shí)際情況而定,此進(jìn)程中往往也包括一些清零或置位的控制信號(hào)。 3 主控組合進(jìn)程 根據(jù) 外部輸入的控制信號(hào)(包括來(lái)自外部的和狀態(tài)機(jī)內(nèi)容的非主控進(jìn)程的信號(hào))或和當(dāng)前狀態(tài)值確定下一狀態(tài) next_state 的取值內(nèi)容,以及對(duì)外或?qū)?nèi)部其他進(jìn)程輸出控制信號(hào)的內(nèi)容。 4 輔助進(jìn)程 用于配合狀態(tài)機(jī)工作的組合、時(shí)序進(jìn)程或配合狀態(tài)機(jī)工作的其他時(shí)序進(jìn)程。 在一般狀態(tài)機(jī)的設(shè)計(jì)過(guò)程中,為了能獲得可綜合的,高效的 VHDL 狀態(tài)機(jī)描述,建議使用枚舉類數(shù)據(jù)類型來(lái)定義狀態(tài)機(jī)的狀態(tài),并使用多進(jìn)程方式來(lái)描述狀態(tài)機(jī)的內(nèi)部邏輯。例如可使用兩個(gè)進(jìn)程來(lái)描述, — 個(gè)進(jìn)程描述時(shí)序邏輯,包括狀態(tài)寄存器的工作和寄存器狀態(tài)的輸出,另一個(gè)進(jìn)程描述組 合邏輯,包括進(jìn)程間狀態(tài)值的傳遞邏輯以及狀態(tài)轉(zhuǎn)換值的輸出。必要時(shí)還可以引入第三個(gè)進(jìn)程完成其它的邏輯功能。 在 VHDL 中可以有兩種方式來(lái)創(chuàng)建反饋機(jī)制:即使用信號(hào)的方式和使用變量的方式。通常傾向于使用信號(hào)的方式。一般而言,在進(jìn)程中使用變量傳遞數(shù)據(jù),然后使用信號(hào)將數(shù)據(jù)帶出進(jìn)程。在設(shè)計(jì)過(guò)程中,如果希望輸出的信號(hào)具有寄存器 14 鎖存功能,則需要為此輸出寫(xiě)第 3 個(gè)進(jìn)程,并把 clk 和 reset 信號(hào)放入敏感信號(hào)表中。但必須注意避免由于寄存器的引入而創(chuàng)建了不必要的異步反饋路徑。根據(jù)VHDL 綜合器的規(guī)則,對(duì)于所有可能的輸入條件,如果進(jìn)程 中的輸出信號(hào)沒(méi)有被明確的賦值時(shí),此信號(hào)將自動(dòng)被指定,即在未列出的條件下保持原值,這就意味著引入了寄存器。因此,我們?cè)诔绦虻木C合過(guò)程中,應(yīng)密切注意 VHDL 綜合器給出的警告信息,并根據(jù)警告信息對(duì)程序作必要的修改。 一般來(lái)說(shuō),利用狀態(tài)機(jī)進(jìn)行設(shè)計(jì)有如下幾個(gè)步驟: (1) 分析設(shè)計(jì)要求,列出狀態(tài)機(jī)的全部可能狀態(tài),并對(duì)每一個(gè)狀態(tài)進(jìn)行編碼。 (2) 根據(jù)狀態(tài)轉(zhuǎn)移關(guān)系和輸出函數(shù)畫(huà)出狀態(tài)轉(zhuǎn)移圖。 (3) 由狀態(tài)轉(zhuǎn)移圖,用 VHDL 語(yǔ)句對(duì)狀態(tài)機(jī)描述。 ( 2) 狀態(tài)機(jī)的編碼方案 在狀態(tài)機(jī)的編碼方案中,有兩種重要的編碼方法:二進(jìn)制編碼和一位 熱碼(One— Hot)編碼。 在二進(jìn)制編碼的狀態(tài)機(jī)中,狀態(tài)位 (B)與狀態(tài) (S)的數(shù)目之間的關(guān)系為B=log2S,如兩位狀態(tài)位就有 00, 01, 10, 11 四個(gè)不同狀態(tài),它們?cè)诓煌目刂菩盘?hào)下可以進(jìn)行狀態(tài)轉(zhuǎn)換,但如果各觸發(fā)器又沒(méi)有準(zhǔn)確地同時(shí)改變其輸出值,那么在狀 態(tài) 01 變到 10 時(shí)則會(huì)出現(xiàn)暫時(shí)的 11 或 00 狀態(tài)輸出,這類險(xiǎn)象可能使整個(gè)系統(tǒng)造成不可預(yù)測(cè)的結(jié)果。這時(shí),采用格雷碼二進(jìn)制編碼是特別有益,在該編碼方案中,每次僅一個(gè)狀態(tài)位的值發(fā)生變化。 一位熱碼編碼就是用 n 個(gè)觸發(fā)器來(lái)實(shí)現(xiàn) n 個(gè)狀態(tài)的編碼方式,狀態(tài)機(jī)中的每一個(gè)狀態(tài)都由 其中一個(gè)觸發(fā)器的狀態(tài)來(lái)表示。如 4個(gè)狀態(tài)的狀態(tài)機(jī)需 4個(gè)觸發(fā)器,同一時(shí)間僅一個(gè)狀態(tài)位處于邏輯 1 電平,四個(gè)狀態(tài)分別為: 000 00 0100、1000。 在實(shí)際應(yīng)用中,根據(jù)狀態(tài)機(jī)的復(fù)雜程度、所使用的器件系列和從非法狀態(tài)退出所需的條件來(lái)選擇最適合的編碼方案,使之能確保高效的性能和資源的利用。 四層電梯控制器具體設(shè)計(jì) 四層電梯控制器的功能 及設(shè)計(jì)思路 電梯控制器是控制電梯按照顧客要求自動(dòng)上下的裝置。四層電梯控制器的功能如下: (1) 每層電梯入口處設(shè)有上下請(qǐng)求開(kāi)關(guān),電梯內(nèi)設(shè)有顧客到達(dá)層次的停站請(qǐng)求開(kāi)關(guān)。 (2)設(shè)有電梯入口處位置指示裝置及電梯運(yùn)行模式 (上升或下降 )指示裝置。 15 (3)電梯每秒上升 (下降 )一層樓。 (4)電梯到達(dá)有停站請(qǐng)求的樓層,經(jīng)過(guò) 1 秒電梯門(mén)打開(kāi),開(kāi)門(mén)指示燈亮,開(kāi)門(mén)4 秒后,電梯門(mén)關(guān)閉 (開(kāi)門(mén)指示燈滅 ),電梯繼續(xù)進(jìn)行,直至執(zhí)行完最后一個(gè)請(qǐng)求信號(hào)停留在當(dāng)前層。 (5)能記憶電梯內(nèi)外所有請(qǐng)求,并按照電梯運(yùn)行規(guī)則按順序響應(yīng),每個(gè)請(qǐng)求信號(hào)保留至執(zhí)行后消除。 (6)電梯運(yùn)行規(guī)則 — 當(dāng)電梯處于上升模式時(shí),只響應(yīng)比電梯所在位置的上樓請(qǐng)求信號(hào),由下而上逐個(gè)執(zhí)行,直到最后一個(gè)上樓請(qǐng)求執(zhí)行完畢;如果高層有下樓請(qǐng)求,則直接升到由下樓請(qǐng)求的最高樓層,然后進(jìn)入下降模式。當(dāng)電梯處于下降模式則與上升模式相反。 (7)電梯初始狀態(tài)為一層開(kāi)門(mén)狀態(tài)。 采用狀態(tài)機(jī)來(lái)實(shí)現(xiàn)電梯控制器,思路比較清晰,通過(guò)一個(gè)統(tǒng)一的 1 秒為周期的時(shí)鐘來(lái)觸發(fā)狀態(tài)機(jī)。根據(jù)電梯的實(shí)際工作情況,可以把狀態(tài)機(jī)設(shè)置 10 個(gè)狀態(tài),分別是“電梯停留在 1 層”、“開(kāi)門(mén)”、“關(guān)門(mén)”、“開(kāi)門(mén)等待第 1 秒”、“開(kāi)門(mén)等待第二秒”、“開(kāi)門(mén)等待第三秒”、“開(kāi)門(mén)等待第四秒”、“上升”、“下降”和“停止”狀態(tài)。各個(gè)狀態(tài)之間的轉(zhuǎn)換條件可由上面的設(shè)計(jì)要求所決定。 四層電梯控制器的設(shè)計(jì)思路 ( 1)四層電梯控制器的實(shí)體 設(shè)計(jì) 首先考慮輸入端口,一個(gè)異步復(fù)位端口 reset,用于在系統(tǒng)不正常時(shí)回到初始狀態(tài);在電梯外部,必須有升降請(qǐng)求端口,一層最低,不需要下降請(qǐng)求,四層是最高層。不需要有上升請(qǐng)求,二層與三層則上升,下降請(qǐng)求端口都有;在電梯內(nèi)部,應(yīng)該設(shè)有各層停留的請(qǐng)求端口;一個(gè)電梯時(shí)鐘輸入端口,該輸入時(shí)鐘以 1秒為周期,用于驅(qū)動(dòng)電梯的升降及開(kāi)門(mén)關(guān)門(mén)等動(dòng)作;另有一個(gè)是按鍵時(shí)鐘輸入端口,時(shí)鐘頻率比電梯時(shí)鐘高。 其次是輸出端口,有升降請(qǐng)求信號(hào),就得有一個(gè)輸出端口來(lái)指示請(qǐng)求是否被響應(yīng),有請(qǐng)求信號(hào)以后,該輸出端口輸 出邏輯’ 1’,被響應(yīng)以后則恢復(fù)邏輯’ 0’;同樣,在電梯內(nèi)部也應(yīng)該有這樣的輸出端口來(lái)顯示各層停留是否被響應(yīng);在電梯外部,需要一個(gè)端口來(lái)指示電梯現(xiàn)在所處的位置;電梯開(kāi)門(mén)關(guān)門(mén)的狀態(tài)也能用一個(gè)輸出端口來(lái)指示;為了觀察電梯的運(yùn)行是否正確,可以設(shè)置一個(gè)輸出端口來(lái)指示電梯的升降狀態(tài)。 在端口的定義中定義 position 時(shí)選用的是整型數(shù)據(jù)類型( INTEGRER),主要是為了在電梯運(yùn)行是便于觀察。整型直接可以看出電梯運(yùn)行是樓層的變化,在第一層就顯示 1,第二層就顯示 2,很直觀。當(dāng)然, position 的定義也可以用標(biāo)準(zhǔn)邏輯矢量( STD_LOGIC_VECTOR)來(lái)定義,但是如果選用標(biāo)準(zhǔn)邏輯矢量,在電 16 梯運(yùn)行時(shí)就不是那么好觀察。這里是四層的電梯控制器,那么只需定義一個(gè)兩位的就足夠顯示了。 “ 00”的時(shí)候?qū)?yīng)電梯的第一層, “ 11”的時(shí)候就對(duì)應(yīng)第四層。但是 “ 11”的十進(jìn)制值為 3,沒(méi)有和層次顯示的第四層想對(duì)應(yīng)起,所以就放棄選用標(biāo)準(zhǔn)邏輯矢量來(lái)定義 position,而選用的整型。 ( 2) 四層電梯控制器的結(jié)構(gòu)體設(shè)計(jì) 首先說(shuō)明一下?tīng)顟B(tài)。狀態(tài)機(jī)設(shè)置了 10 個(gè)狀態(tài),分別是電梯停留在 1 層(stopon1)、開(kāi)門(mén) (dooropen)、關(guān)門(mén) (doorclose)、開(kāi)門(mén)等待第 1 秒 (doorwait1)、開(kāi)門(mén)等待第 2 秒 (doorwait2)、開(kāi)門(mén)等待第 3 秒 (doorwait3)、開(kāi)門(mén)等待第 4 秒(doorwait4)、上升 (up)、下降 (down)和停止 (stop)。在實(shí)體說(shuō)明中定義完端口之后,在結(jié)構(gòu)體個(gè)之間需要有如下的定義語(yǔ)句,來(lái)定義狀態(tài)機(jī)。 TYPE lift_state IS (stopon1,dooropen,doorclose,doorwait1,doorwait2,doorwait3, doorwait4,up,down,stop) 電梯的 10 個(gè)狀態(tài) SIGNAL mylift:lift_state。 定義為 lift 類型的信號(hào) mylift 在結(jié)構(gòu)體中,設(shè)計(jì)了兩個(gè)進(jìn)程互相配合,一個(gè)狀態(tài)機(jī)進(jìn)程作為主要進(jìn)程,另外一個(gè)是信號(hào)燈控制進(jìn)程作為輔助進(jìn)程。狀態(tài)機(jī)進(jìn)程中的很多判斷條件是以信號(hào)燈進(jìn)程產(chǎn)生的信號(hào)燈信號(hào)為依據(jù)的,而信號(hào)燈進(jìn)程中信號(hào)燈的熄滅又是有狀態(tài)機(jī)進(jìn)程中傳出 clearup 和 cleardn 信號(hào)來(lái)控制。 在狀態(tài)機(jī)進(jìn)程中,在電梯上升狀態(tài)中,通過(guò)對(duì)信號(hào)燈的判斷,決定下一個(gè)狀態(tài)是繼續(xù)上升還是停止;在電梯下降狀態(tài) 中,也是通過(guò)對(duì)信號(hào)燈的判斷,決定下一個(gè)狀態(tài)是繼續(xù)下降還是是停止;在電梯停止?fàn)顟B(tài)中,判斷是最復(fù)雜的,通過(guò)對(duì)信號(hào)的判斷,決定電梯是上升、下降還是停止。 在信號(hào)燈控制進(jìn)程中,由于使用了專門(mén)的頻率較高的按鍵時(shí)鐘,所以使得按鍵的靈敏度增大,但是時(shí)鐘頻率不能過(guò)高,否則容易使按鍵過(guò)于靈敏。按鍵后產(chǎn)生的點(diǎn)亮的信號(hào)燈 (邏輯值為 “ 1” )用于作為狀態(tài)機(jī)進(jìn)程中的判斷條件,而 clearup和 cleardn 信號(hào)為邏輯 “ 1” 使得相應(yīng)的信號(hào)燈熄滅。 ( 3) 四層電梯控制器設(shè)計(jì) 輸入輸出端口定義表 Buttonclk 按鍵時(shí)鐘
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1