新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA的電梯控制器系統(tǒng)設(shè)計(jì)

基于FPGA的電梯控制器系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2012-03-12 來(lái)源:網(wǎng)絡(luò) 收藏

c. 模塊和指示模塊:該模塊根據(jù)各層按鈕被按下的情況,控制電梯運(yùn)行,并設(shè)置指示燈。模塊定義如下:

  module Lift_cONtrol(

  keyclk, //處理按鍵時(shí)鐘

  liftclk, //電梯運(yùn)行控制時(shí)鐘

  reset, //電梯復(fù)位按鈕,復(fù)位后電梯停在一樓;

  stop_r, //電梯內(nèi)各層按鍵信息

  up_r, //電梯外各層向上按鍵信息

  down_r, //電梯外各層向下按鍵信息

  position, //當(dāng)前樓層位置,每1位代表1層,當(dāng)相應(yīng)的位置1時(shí)表示電梯運(yùn)行至該層;

  stoplight, //內(nèi)部各層按鈕指示燈,每1位代表1層,當(dāng)相應(yīng)位置1時(shí)表示指示該層指示燈亮;

  uplight, //除頂層外各層外部按鈕指示燈,每1位代表1層,當(dāng)相應(yīng)位置1時(shí)表示該層up燈亮;

  downlight, //除首層外各層外部按鈕指示燈,每1位代表1層,當(dāng)相應(yīng)的位置1時(shí)表示該層的down指示燈亮;

  doorlight); //用于開(kāi)門(mén)指示燈,為1表示開(kāi)門(mén),為0表示關(guān)門(mén)


d. 顯示模塊:該模塊用于譯碼顯示當(dāng)前電梯所在樓層,模塊定義如下:

  module Display(liftclk,position,disp);

2.2 模塊設(shè)計(jì)與實(shí)現(xiàn)

對(duì)于分頻器模塊、按鍵請(qǐng)求模塊、模塊和指示模塊和顯示模塊這四個(gè)模塊,模塊和指示模塊涉及到電梯各種運(yùn)行情況的處理,其算法是最復(fù)雜的,也是最容易出錯(cuò)的。本文采用使用有限狀態(tài)機(jī)來(lái)設(shè)計(jì)該模塊,具體的算法描述如下。

將電梯運(yùn)行定義為7個(gè)狀態(tài),具體的狀態(tài)定義如下:

  S0:onfloor1,表示在樓層1;

  S1:dooropen_up,上升過(guò)程中,電梯開(kāi)門(mén)5s;

  S2:doorclose_up,上升過(guò)程中,電梯關(guān)門(mén);

  S3:up_lift,表示電梯上升一層;

  S4:dooropen_down,下降過(guò)程中,電梯開(kāi)門(mén)5s;

  S5:doorclose_down,下降過(guò)程中,電梯關(guān)門(mén);

  S6:down_lift,表示電梯下降一層。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉