亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于FPGA的電梯控制器

        2019-10-08 06:52:16吳雪顏
        軟件 2019年4期
        關(guān)鍵詞:狀態(tài)機(jī)

        摘 ?要: 本文介紹了基于FPGA設(shè)計(jì)的一種四層電梯控制器,使用有限狀態(tài)機(jī)實(shí)現(xiàn),采用VHDL語言對(duì)其進(jìn)行描述,通過Quartus II 13.0軟件及ModelSim軟件進(jìn)行電路的綜合與仿真,驗(yàn)證了此電梯控制器設(shè)計(jì)的正確性。

        關(guān)鍵詞: FPGA;電梯控制器;VHDL;狀態(tài)機(jī)

        中圖分類號(hào): TP342+.3 ? ?文獻(xiàn)標(biāo)識(shí)碼: A ? ?DOI:10.3969/j.issn.1003-6970.2019.04.041

        本文著錄格式:吳雪顏. 基于FPGA的電梯控制器[J]. 軟件,2019,40(4):190195

        【Abstract】: The paper introduces a four-layer elevator controller design based on FPGA, which is implemented by finite state machine and described by VHDL language. Carrying on synthesis and simulation of the circuit with Quartus II 13.0 and ModelSim software, verifies correctness of the elevator controller design.

        【Key words】: FPGA; Elevator controller; VHDL; State machine

        0 ?引言

        隨著我國城市化的發(fā)展,高層建筑不斷增多,電梯已經(jīng)進(jìn)入了人們的日常生產(chǎn)生活之中,作為具有足夠安全性的動(dòng)力驅(qū)動(dòng)升降裝置,電梯成為高層建筑中必不可少的垂直運(yùn)輸交通工具[1]。可編程邏輯器件(如FPGA、CPLD)的廣泛應(yīng)用,使得電子系統(tǒng)的設(shè)計(jì)更加方便靈活,改變了傳統(tǒng)數(shù)字系統(tǒng)設(shè)計(jì)的方法,推動(dòng)了EDA技術(shù)的發(fā)展[2]。本文中的電梯控制器利用現(xiàn)場(chǎng)可編程門陣列(FPGA)進(jìn)行設(shè)計(jì),并進(jìn)行了仿真。

        1 ?EDA技術(shù)

        在計(jì)算機(jī)技術(shù)的推動(dòng)下,20世紀(jì)末,電子技術(shù)獲得了飛速的發(fā)展,EDA(Electronics Design Automation)技術(shù)就是現(xiàn)代電子設(shè)計(jì)技術(shù)的核心。EDA技術(shù)依賴功能強(qiáng)大的計(jì)算機(jī),在EDA工具軟件平臺(tái)上,對(duì)以硬件描述語言HDL(Hardware Description Language)為系統(tǒng)邏輯描述手段完成的設(shè)計(jì)文件,自動(dòng)的完成邏輯化簡、邏輯分割、邏輯綜合、結(jié)構(gòu)綜合(布局布線),以及邏輯優(yōu)化和仿真測(cè)試等功能,直至實(shí)現(xiàn)既定性能的電子線路系統(tǒng)功能[3]。

        可編程邏輯器件是通過EDA技術(shù)將電子應(yīng)用系統(tǒng)的既定功能和技術(shù)指標(biāo)具體實(shí)現(xiàn)的硬件載體,F(xiàn)PGA作為實(shí)現(xiàn)這一途徑的主流器件之一,具有直接面向用戶,靈活性和通用性極大,使用方便,硬件測(cè)試和實(shí)現(xiàn)快捷等特點(diǎn)[4]。

        硬件描述語言(HDL)是一種用來設(shè)計(jì)數(shù)字邏輯系統(tǒng)和描述數(shù)字電路的語言[5],常用的主要有VHDL、Verilog HDL、System Verilog和Symtem C。作為一種全方位的硬件描述語言,VHDL具有與具體硬件電路無關(guān)、與設(shè)計(jì)平臺(tái)無關(guān)的特性,具有寬范圍描述能力、不依賴于特定的器件、可將復(fù)雜控制邏輯的設(shè)計(jì)用嚴(yán)謹(jǐn)簡潔的代碼進(jìn)行描述等優(yōu)點(diǎn),得到眾多EDA公司的支持,在電子設(shè)計(jì)領(lǐng)域得到了廣泛應(yīng)用[6]。

        有限狀態(tài)機(jī)(Finite-state machine, FSM),簡稱狀態(tài)機(jī),是表示有限個(gè)狀態(tài)以及在這些狀態(tài)之間進(jìn)行轉(zhuǎn)移和動(dòng)作等行為的數(shù)學(xué)模型[7]。在許多方面,有限狀態(tài)機(jī)都有其難以超越的優(yōu)越性,主要表現(xiàn)在它作為高效的順序控制模型,容易利用現(xiàn)成的EDA工具進(jìn)行優(yōu)化設(shè)計(jì),系統(tǒng)性能穩(wěn)定,具有高速性能和高可靠性能。有限狀態(tài)機(jī)廣泛應(yīng)用于數(shù)字系統(tǒng)、工業(yè)自動(dòng)化、計(jì)算機(jī)系統(tǒng)等領(lǐng)域[8]。

        2 ?系統(tǒng)設(shè)計(jì)及仿真

        2.1 ?硬件原理

        四層電梯的硬件原理如圖1所示,包括兩臺(tái)電機(jī),一臺(tái)用于吊升電梯轎廂,一臺(tái)用于控制電梯門的開關(guān)。轎廂和對(duì)重分別連接在曳引繩兩端,轎廂作為運(yùn)載乘客或貨物及其他載荷的箱體部件,對(duì)重則具有平衡轎廂載荷和減小電機(jī)功率的作用。

        2.2 ?輸入輸出端口信號(hào)

        根據(jù)圖1可以總結(jié)出電梯控制器的輸入輸出端口信息如表1所示,其中電梯轎廂位置信號(hào)(in_ cage_pos)和電梯門開閉位置信號(hào)(in_door_pos)實(shí)際中由傳感器采集得到(對(duì)電梯控制器來說是輸入信號(hào))。但在本設(shè)計(jì)中為了簡化仿真激勵(lì)文件,這兩個(gè)信號(hào)由轎廂電機(jī)和門控電機(jī)的控制信號(hào)(out_cage_dir, out_cage_en, out_door_dir, out_ door_en)的生效時(shí)間直接生成(比如可以用100個(gè)clk時(shí)間電梯上行或下行1層的距離,用100個(gè)clk時(shí)間電梯門可從全開狀態(tài)關(guān)閉成全閉狀態(tài))[9]。因此這兩個(gè)信號(hào)可作為內(nèi)部信號(hào),不體現(xiàn)在端口上。但為了仿真觀測(cè)方便,把生成的這兩個(gè)信號(hào)作為輸出,并將這兩個(gè)信號(hào)的名字改為了out_cage_pos和out_door_pos。

        2.3 ?內(nèi)部信號(hào)設(shè)置

        首先,12個(gè)按鍵的請(qǐng)求狀態(tài)端口信號(hào),以及 out_door_pos、out_cage_pos、out_cage_dir、out_ cage_en、out_door_dir、out_door_en 端口信號(hào),這18個(gè)端口的方向是輸出的,由于程序內(nèi)部需要對(duì)這些信號(hào)進(jìn)行讀取,因此為他們?cè)O(shè)置內(nèi)部信號(hào);其次開門狀態(tài)持續(xù)一定的時(shí)間后需要自動(dòng)關(guān)門,這需要一個(gè)定時(shí)計(jì)數(shù)器信號(hào)。內(nèi)部信號(hào)設(shè)置如表2所示。

        2.4 ?進(jìn)程分類

        (1)號(hào)進(jìn)程為分頻時(shí)鐘產(chǎn)生進(jìn)程,當(dāng)檢測(cè)到由外部提供的時(shí)鐘信號(hào)時(shí),則產(chǎn)生由FPGA內(nèi)部的PLL鎖相環(huán)進(jìn)行分頻處理,從而產(chǎn)生分頻時(shí)鐘信號(hào)[10]。

        (2)號(hào)進(jìn)程為door_pos,cage_pos產(chǎn)生進(jìn)程,用來產(chǎn)生轎廂的位置信息和電梯門開關(guān)的位置信息。如果復(fù)位信號(hào)rst有效,則電梯門復(fù)位至全關(guān)閉狀態(tài),轎廂初始在一層。

        如果電梯門在運(yùn)動(dòng)且門在關(guān)閉中,若門原本是全關(guān)閉狀態(tài)則繼續(xù)全關(guān)閉狀態(tài),否則門關(guān)閉;若門原本是全開狀態(tài)則繼續(xù)保持全開狀態(tài),否則門慢慢打開。

        如果轎廂在運(yùn)動(dòng)且轎廂下行,若轎廂原本在一層則繼續(xù)保持在一層,否則轎廂向下運(yùn)動(dòng),若轎廂原本在四層則繼續(xù)保持在四層,否則轎廂向上運(yùn)動(dòng)。

        (3)號(hào)進(jìn)程為doortimer定時(shí)進(jìn)程,用于計(jì)算電梯門的等待時(shí)間。如果復(fù)位信號(hào)rst有效,則電梯門等待時(shí)間清零重新計(jì)數(shù)。

        如果門不處于全開狀態(tài),則電梯門等待時(shí)間清零重新計(jì)數(shù)。

        如果門處于全開狀態(tài),若轎廂內(nèi)按了開門按鍵,則電梯門等待時(shí)間清零重新計(jì)數(shù);若電梯門等待時(shí)間沒到限制的時(shí)間,那么繼續(xù)等待,計(jì)數(shù)累加;否則給等待計(jì)時(shí)器到達(dá)時(shí)間的標(biāo)志。

        (4)號(hào)進(jìn)程為12個(gè)按鈕請(qǐng)求生效和失效處理進(jìn)程,用于樓層的上下樓按鍵、轎廂內(nèi)的開關(guān)門按鍵、轎廂內(nèi)的樓層按鍵的生效和失效處理。如果復(fù)位信號(hào)rst有效,則12個(gè)按鍵請(qǐng)求初始不作用,為失效狀態(tài)。

        樓層的上下樓按鍵:

        若一層按上行,則一層上行請(qǐng)求生效,直到電梯在一層門全開狀態(tài),一層上行請(qǐng)求失效;

        若二層按上行,則二層上行請(qǐng)求生效,直到電梯在二層門全開狀態(tài),二層上行請(qǐng)求失效;

        若二層按下行,則二層下行請(qǐng)求生效,直到電梯在二層門全開狀態(tài),二層下行請(qǐng)求失效;

        若三層按上行,則三層上行請(qǐng)求生效,直到電梯在三層門全開狀態(tài),三層上行請(qǐng)求失效;

        若三層按下行,則三層下行請(qǐng)求生效,直到電梯在三層門全開狀態(tài),三層下行請(qǐng)求失效;

        若四層按下行,則四層下行請(qǐng)求生效,直到電梯在四層門全開狀態(tài),四層下行請(qǐng)求失效。

        轎廂內(nèi)的開關(guān)門按鍵:

        如果電梯停在任意一層按轎廂內(nèi)的開門按鍵,則開門請(qǐng)求生效,否則電梯門處于全打開狀態(tài),開門請(qǐng)求失效;

        如果電梯停在任意一層按轎廂內(nèi)的關(guān)門按鍵或電梯門等待時(shí)間到達(dá),則關(guān)門請(qǐng)求生效,否則門全關(guān)或開門請(qǐng)求生效,關(guān)門請(qǐng)求失效。

        轎廂內(nèi)的樓層按鍵:

        若轎廂內(nèi)按一層,轎廂內(nèi)一層指示按鍵生效,當(dāng)電梯停在一層門全開,轎廂內(nèi)一層指示按鍵失效;

        若轎廂內(nèi)按二層,轎廂內(nèi)二層指示按鍵生效,當(dāng)電梯停在二層門全開,轎廂內(nèi)二層指示按鍵失效;

        若轎廂內(nèi)按三層,轎廂內(nèi)三層指示按鍵生效,當(dāng)電梯停在三層門全開,轎廂內(nèi)三層指示按鍵失效;

        若轎廂內(nèi)按四層,轎廂內(nèi)四層指示按鍵生效,當(dāng)電梯停在四層門全開,轎廂內(nèi)四層指示按鍵失效。

        (5)號(hào)進(jìn)程為樓層顯示進(jìn)程,用于樓層的顯 ?示器的顯示控制。如果復(fù)位信號(hào)rst有效,則樓層顯示‘1。

        若轎廂位置在一層,樓層顯示‘1;

        若轎廂位置在二層,樓層顯示‘2;

        若轎廂位置在三層,樓層顯示‘3;

        若轎廂位置在四層,樓層顯示‘4。

        (其中用7位段選碼控制顯示數(shù)碼管數(shù)字“gfedcba”)

        (6)號(hào)進(jìn)程為運(yùn)動(dòng)控制進(jìn)程,用于產(chǎn)生cage_dir, cage_on,door_dir,door_en等運(yùn)動(dòng)控制的信號(hào),確定電梯門和轎廂的運(yùn)動(dòng)狀態(tài)。如果復(fù)位信號(hào)rst有效,則運(yùn)動(dòng)狀態(tài)初始化。

        如果轎廂不運(yùn)動(dòng):

        若轎廂在一層、電梯門不運(yùn)動(dòng)且門全關(guān)閉,當(dāng)一層按上行或轎廂內(nèi)按開門或轎廂內(nèi)按一層時(shí)門打開,當(dāng)二層按上行或下行、三層按上行或下行、四層按下行或轎廂內(nèi)按二、三、四層時(shí)轎廂上行;若門為全開狀態(tài),當(dāng)轎廂內(nèi)按關(guān)時(shí)門關(guān)閉。

        若轎廂在二層、電梯門不運(yùn)動(dòng)且門全關(guān)閉,當(dāng)二層按上行或下行、轎廂內(nèi)按開門或轎廂內(nèi)按二層時(shí)門打開,當(dāng)三層按上行或下行、四層按下行、轎廂內(nèi)按三層或四層時(shí)轎廂上行,當(dāng)一層按上行或轎廂內(nèi)按一層時(shí)轎廂下行;若門為全開狀態(tài),當(dāng)轎廂內(nèi)按關(guān)時(shí)門關(guān)閉。

        若轎廂在三層、電梯門不運(yùn)動(dòng)且門全關(guān)閉,當(dāng)三層按上行或下行、轎廂內(nèi)按開門或轎廂內(nèi)按三層時(shí)門打開,當(dāng)四層按下行或轎廂內(nèi)按四層時(shí),轎廂上行,當(dāng)一層按上行、二層按上行或下行、轎廂內(nèi)按一層或二層時(shí),轎廂下行;若門為全開狀態(tài),當(dāng)轎廂內(nèi)按關(guān)時(shí)門關(guān)閉。

        若轎廂在四層、電梯門不運(yùn)動(dòng)且門全關(guān)閉,當(dāng)四層按下行、轎廂內(nèi)按開門或按四層時(shí)門打開,當(dāng)一層按上行、二層按上行或下行、三層按上行或下行、轎廂內(nèi)按一層或二層或三層時(shí)轎廂下行;若門為全開狀態(tài),當(dāng)轎廂內(nèi)按關(guān)時(shí)門關(guān)閉。

        當(dāng)轎廂在任意一層且電梯門運(yùn)動(dòng),如果門打開中,當(dāng)門的位置全開后門停止運(yùn)動(dòng);如果門關(guān)閉中,當(dāng)轎廂內(nèi)按開門時(shí)門打開,當(dāng)門的位置到全關(guān)閉狀態(tài)后停止。

        如果轎廂上行時(shí):

        若轎廂上行到一層,當(dāng)一層按上行或轎廂內(nèi)按一層時(shí),轎廂停止運(yùn)動(dòng)。

        若轎廂上行到二層,當(dāng)二層按上行或轎廂內(nèi)按二層時(shí),轎廂停止運(yùn)動(dòng);當(dāng)二層按下行并且轎廂內(nèi)沒有按三層或四層、三層沒有按上行或下行、四層沒有按下行時(shí),轎廂也停止運(yùn)動(dòng)。

        若轎廂上行到三層,當(dāng)三層按上行或轎廂內(nèi)按三層時(shí),轎廂停止運(yùn)動(dòng);當(dāng)三層按下行并且四層沒有按下行、轎廂內(nèi)沒有按四層時(shí),轎廂也停止運(yùn)動(dòng)。

        若轎廂上行到四層,轎廂停止運(yùn)動(dòng)。

        如果轎廂下行時(shí):

        若轎廂下行到一層,轎廂停止運(yùn)動(dòng)。

        若轎廂下行到二層,當(dāng)二層按下行或轎廂內(nèi)按二層時(shí),轎廂停止運(yùn)動(dòng);當(dāng)二層按上行并且一層沒有按上行、轎廂內(nèi)沒有按一層時(shí),轎廂也停止運(yùn)動(dòng)。

        若轎廂下行到三層,當(dāng)三層按下行或轎廂內(nèi)按三層時(shí),轎廂停止運(yùn)動(dòng);當(dāng)三層按上行并且一層沒有按上行、二層沒有按上行或下行、轎廂內(nèi)沒有按一層或二層時(shí),轎廂也停止運(yùn)動(dòng)。

        若轎廂下行到四層,轎廂停止運(yùn)動(dòng);當(dāng)四層按下行、轎廂內(nèi)按四層時(shí),轎廂也停止運(yùn)動(dòng)。

        2.5 ?仿真結(jié)果

        在Quartus II 13.0軟件開發(fā)環(huán)境下,運(yùn)用ModelSim軟件進(jìn)行如下過程仿真:電梯開始時(shí)在1層處于停止?fàn)顟B(tài),一段時(shí)間后有人A在1層按下上升請(qǐng)求按鈕,電梯門打開,人A進(jìn)入后按下去4層的按鈕,門延時(shí)自動(dòng)關(guān)閉后開始上行,上行過程中有人B在3層按下上升請(qǐng)求按鈕,電梯到達(dá)3層后停止,自動(dòng)開門,人B進(jìn)入后按下手動(dòng)關(guān)門按鈕,但門還沒關(guān)上時(shí)發(fā)現(xiàn)人C從遠(yuǎn)處跑來要乘電梯,于是按住手動(dòng)開門按鈕等待人C,人C進(jìn)來后人B松開手動(dòng)開門按鈕,電梯自動(dòng)關(guān)門,上行至4層,電梯自動(dòng)開門,延時(shí)一段時(shí)間后自動(dòng)關(guān)門并停在4層。得到仿真波形如圖2所示。

        3 ?結(jié)論

        本文基于FPGA設(shè)計(jì)了一種四層電梯控制器,使用有限狀態(tài)機(jī)實(shí)現(xiàn),詳細(xì)介紹了電梯控制器系統(tǒng)的信號(hào)設(shè)置及進(jìn)程分類,由仿真波形可以看出本設(shè)計(jì)實(shí)現(xiàn)了四層電梯控制器的功能。同時(shí)此電梯控制器采用FPGA進(jìn)行設(shè)計(jì),性能穩(wěn)定,具有高可靠性。

        參考文獻(xiàn)

        [1] 任曉峰. 大樣本檢驗(yàn)數(shù)據(jù)對(duì)電梯風(fēng)險(xiǎn)評(píng)估的應(yīng)用[J]. 電子元器件與信息技術(shù), 2018(07): 22-24+28.

        [2] 郭霞, 楊拴科, 張安莉, 等. 《模擬電子技術(shù)實(shí)用教程》教材建設(shè)與實(shí)踐[J]. 電子測(cè)試, 2018(24): 107-108+123.

        [3] 李文. 基于蟻群算法的電梯群控系統(tǒng)控制器設(shè)計(jì)[J]. 西昌學(xué)院學(xué)報(bào)(自然科學(xué)版), 2017, 31(04): 43-46.

        [4] 羅建, 姜玲. 智能電梯控制系統(tǒng)優(yōu)化設(shè)計(jì)[J]. 科學(xué)咨詢(科技·管理), 2018(01): 45+47.

        [5] 馮建文. 有限狀態(tài)機(jī)在FPGA硬件實(shí)驗(yàn)中的應(yīng)用[J]. 實(shí)驗(yàn)室研究與探索, 2017, 36(06): 138-141.

        [6] 蔡景新. 電梯管理對(duì)電梯運(yùn)行質(zhì)量積極影響研究[J]. 新型工業(yè)化, 2018, 8(03): 47-51.

        [7] 李鵬, 楊保亮, 胡勤國, 等. 基于可編程控制器的群控電梯模型設(shè)計(jì)與實(shí)現(xiàn)[J]. 重慶文理學(xué)院學(xué)報(bào), 2015, 34(05): 76-80.

        [8] 孫宏旭, 邢薇, 陶林. 基于有限狀態(tài)機(jī)的模型轉(zhuǎn)換方法的研究[J]. 計(jì)算機(jī)技術(shù)與發(fā)展, 2012, 22(02): 10-13+17.

        [9] 蘭夏燕, 萬舟, 許有才, 等. 基于SVD優(yōu)化EMD的電梯導(dǎo)靴振動(dòng)信號(hào)故障 特征提取[J]. 軟件, 2017, 38(08): 25-31.

        [10] 羅杰, 康華光. 兩種硬件描述語言VHDL/Verilog的發(fā)展及其應(yīng)用[J]. 電氣電子教學(xué)學(xué)報(bào), 2002(04): 1-5.

        猜你喜歡
        狀態(tài)機(jī)
        基于有限狀態(tài)機(jī)的交會(huì)對(duì)接飛行任務(wù)規(guī)劃方法
        基于狀態(tài)機(jī)比對(duì)的狀態(tài)機(jī)推斷方案
        江蘇通信(2015年5期)2015-03-16 01:16:51
        雙口RAM讀寫正確性自動(dòng)測(cè)試的有限狀態(tài)機(jī)控制器設(shè)計(jì)方法
        FPGA設(shè)計(jì)中狀態(tài)機(jī)安全性研究
        基于反熔絲FPGA的有限狀態(tài)機(jī)加固設(shè)計(jì)
        基于VHDL的一個(gè)簡單Mealy狀態(tài)機(jī)
        7878成人国产在线观看| 国产亚洲视频在线播放| 中文字幕中文有码在线| 日日噜噜夜夜狠狠久久无码区 | 国内免费高清在线观看| 亚洲有码转帖| 欧美日韩国产高清| 亚洲精品在线97中文字幕| 欧美国产亚洲日韩在线二区| 成人看片黄a免费看那个网址| 国产视频网站一区二区三区| 97女厕偷拍一区二区三区| 亚洲av无码无线在线观看| 中文字幕无码av激情不卡| 日韩精品一区二区三区毛片| 国产不卡在线播放一区二区三区| 在线观看老湿视频福利| 女人夜夜春高潮爽a∨片| 黄色大片一区二区中文字幕| 国产一区二区在线免费视频观看 | 日本韩国男男作爱gaywww| av无码免费永久在线观看| 丁香六月久久| 成人激情视频在线手机观看| 18精品久久久无码午夜福利| AV无码最在线播放| 国产毛片三区二区一区| 亚洲国产精品一区二区毛片| 男人j进女人j啪啪无遮挡| 乱人伦人妻中文字幕无码| 中文字幕成人精品久久不卡91 | 人妻少妇中文字幕,久久精品| 99国产精品自在自在久久| 午夜性刺激免费视频| 精品日本免费观看一区二区三区| 男人国产av天堂www麻豆| 国语少妇高潮对白在线| 久久久精品国产亚洲麻色欲| av男人的天堂亚洲综合网| 日本乱偷人妻中文字幕在线| 亚洲福利天堂网福利在线观看|