基于FPGA的自動(dòng)門(mén)控制設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引 言
門(mén)和人類(lèi)文明是孿生的,它伴隨著人類(lèi)文明的發(fā)展而躍動(dòng)。21 世紀(jì)的今天,門(mén)更加突出了安全理念,強(qiáng)調(diào)了有效性:有效地防范、通行、疏散,同時(shí)還突出了建筑藝術(shù)的理念,強(qiáng)調(diào)門(mén)與建筑以及周?chē)h(huán)境整體的協(xié)調(diào)、和諧。門(mén)大規(guī)模專(zhuān)業(yè)化生產(chǎn)始于150 年前,在不斷發(fā)展和完善的過(guò)程中,涌現(xiàn)出大批獨(dú)具規(guī)模的專(zhuān)業(yè)制造商。門(mén)的高級(jí)形式--自動(dòng)門(mén)起源在歐美,迅速發(fā)展至今天,已經(jīng)形成了種類(lèi)齊全、功能完善、造工精細(xì)的自動(dòng)門(mén)家族。
中國(guó)早在十多年前就開(kāi)始引用歐洲自動(dòng)門(mén),并把它應(yīng)用在酒店、機(jī)場(chǎng)、購(gòu)物中心、銀行、寫(xiě)字樓等大中型公共場(chǎng)所,為這些建筑增添了亮麗、時(shí)尚的姿彩。自動(dòng)門(mén)從理論上理解應(yīng)該是門(mén)的使用觀念的延伸,是人們根據(jù)需要對(duì)門(mén)的功能的提升和完善。所以對(duì)自動(dòng)門(mén)的認(rèn)識(shí)應(yīng)該從人對(duì)門(mén)功能的要求開(kāi)始。作為建筑物一部分的門(mén),從最基本的意義上講,要同時(shí)滿足隔離外部環(huán)境和不妨礙人的通行這兩種要求。因此門(mén)體本身應(yīng)牢固、密封。
因此,設(shè)計(jì)一個(gè)操作方便、運(yùn)行穩(wěn)定可靠、成本低的自動(dòng)門(mén)的控制系統(tǒng)具有一定的市場(chǎng)。本文設(shè)計(jì)的自動(dòng)門(mén)控制系統(tǒng)為了達(dá)到上述目的,采用了如下設(shè)計(jì)方案:采用按鈕、無(wú)線遙控、紅外感應(yīng)三種驅(qū)動(dòng)方式,既可自動(dòng)控制又可人工控制,操作簡(jiǎn)單并且適用范圍廣;采用EDA技術(shù)設(shè)計(jì)主控制器的狀態(tài)轉(zhuǎn)換,可軟件診錯(cuò);采用自動(dòng)復(fù)位以及電機(jī)專(zhuān)用控制芯片來(lái)保證系統(tǒng)的可靠運(yùn)行。由于設(shè)計(jì)采用了EDA 技術(shù)的VHDL 設(shè)計(jì)而非傳統(tǒng)的單片機(jī)設(shè)計(jì),是一種自上向下的設(shè)計(jì)方法,使得系統(tǒng)的開(kāi)發(fā)周期短、成本降低。下文將詳細(xì)介紹系統(tǒng)各個(gè)部分的設(shè)計(jì)。
1 系統(tǒng)分析
本系統(tǒng)通過(guò)按鈕、無(wú)線遙控、紅外感應(yīng)三種驅(qū)動(dòng)方式實(shí)現(xiàn)自動(dòng)門(mén)的開(kāi)、關(guān)、停,且按鈕優(yōu)先級(jí)別最高。紅外感應(yīng)開(kāi)關(guān)在有人來(lái)時(shí)自動(dòng)門(mén)開(kāi)。還可以通過(guò)人工控制方式使用按鍵與遙控器來(lái)控制自動(dòng)門(mén)的開(kāi)、關(guān)、停。無(wú)線遙控器可根據(jù)實(shí)際情況在市場(chǎng)考查選用。自動(dòng)門(mén)主控制器電路用一片FPGA 芯片,根據(jù)驅(qū)動(dòng)信號(hào)以及位置和遇阻外部信號(hào)來(lái)完成對(duì)門(mén)運(yùn)行狀態(tài)的轉(zhuǎn)換控制;自動(dòng)門(mén)的電機(jī)控制電路則根據(jù)主控制器發(fā)出的正反轉(zhuǎn)以及停控制信號(hào)來(lái)控制電機(jī)的開(kāi)、關(guān)、停以及實(shí)現(xiàn)自動(dòng)門(mén)正反運(yùn)行的分別調(diào)速。
2 電機(jī)控制電路設(shè)計(jì)
為了保證電機(jī)的控制簡(jiǎn)便可靠,設(shè)計(jì)中使用了電機(jī)專(zhuān)用控制芯片MC33033 如圖1。該芯片可對(duì)直流電機(jī)速度進(jìn)行開(kāi)環(huán)和閉環(huán)控制,亦可分別對(duì)電機(jī)正反轉(zhuǎn)進(jìn)行調(diào)速。MC33033 是第二代無(wú)刷直流電機(jī)控制器的典型芯片,該芯片內(nèi)含轉(zhuǎn)子位置譯碼器,并可為傳感器工作提供帶有溫度補(bǔ)償?shù)膮⒖蓟鶞?zhǔn)電壓。MC33033 的另一個(gè)特點(diǎn)是內(nèi)含三個(gè)集電極開(kāi)路的頂部驅(qū)動(dòng)器和為MOSFET 驅(qū)動(dòng)電源而設(shè)計(jì)的三個(gè)高電流推拉式底部驅(qū)動(dòng)器,并具有電機(jī)過(guò)流檢測(cè)和保護(hù)功能。
MC33033DWG 應(yīng)用到自動(dòng)門(mén)的電機(jī)控制時(shí),將邏輯運(yùn)算電路得出的停止、正轉(zhuǎn)、反轉(zhuǎn)作為三個(gè)輸入信號(hào)(優(yōu)先級(jí)高低順序是停止、正轉(zhuǎn)、反轉(zhuǎn),正常情況下三個(gè)信號(hào)中有且僅有一個(gè)有效)。正轉(zhuǎn)和反轉(zhuǎn)信號(hào)經(jīng)過(guò)邏輯門(mén)接入MC33033 的3 端,如果該端為高電平時(shí),MC33033 將使AT 輸出高電平,同時(shí)CB 端輸出PWM 調(diào)制波形,相應(yīng)控制開(kāi)關(guān)動(dòng)作,從而實(shí)現(xiàn)電機(jī)正轉(zhuǎn)并進(jìn)行速度調(diào)整;反之,MC33033 將使AB 輸出高電平,同時(shí)CT 端輸出PWM 調(diào)制波形,相應(yīng)控制開(kāi)關(guān)動(dòng)作,從而實(shí)現(xiàn)電機(jī)反轉(zhuǎn)并進(jìn)行速度調(diào)整。低電平時(shí),停止信號(hào)接入到MC33033 的19 端(使能端),如果它為高電平時(shí),芯片將停止正常工作,此時(shí)就能實(shí)現(xiàn)電機(jī)的停轉(zhuǎn)。這就是電機(jī)部分如何實(shí)現(xiàn)電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、停止以及正反轉(zhuǎn)分別調(diào)速的原理。
3 基于FPGA 的自動(dòng)門(mén)主控制電路
用 VHDL 進(jìn)行電子系統(tǒng)設(shè)計(jì)的優(yōu)點(diǎn)是從上而下的設(shè)計(jì)方法,設(shè)計(jì)者不用考慮實(shí)際工藝,可以全心在思路設(shè)計(jì)上,這樣更有利于系統(tǒng)的簡(jiǎn)單和實(shí)際應(yīng)用。
3.1 設(shè)計(jì)思路
首先畫(huà)出自動(dòng)門(mén)控制器的狀態(tài)圖。分析自動(dòng)門(mén)的運(yùn)行過(guò)程可知:門(mén)開(kāi)始處于閉合狀態(tài),有開(kāi)信號(hào)則開(kāi)門(mén),開(kāi)關(guān)門(mén)過(guò)程中如遇到阻力則暫停一段時(shí)間,然后自動(dòng)繼續(xù)原來(lái)的開(kāi)關(guān)門(mén)動(dòng)作。門(mén)在運(yùn)行過(guò)程中遇到停信號(hào)以及起始位置(門(mén)關(guān)時(shí))則停,遇到底(門(mén)全開(kāi)時(shí))位置信號(hào)則暫停一段時(shí)間,然后自動(dòng)執(zhí)行關(guān)門(mén)動(dòng)作。假設(shè)x1、x2、x3 分別表示開(kāi)、關(guān)、??刂菩盘?hào);x4 表示門(mén)在運(yùn)行過(guò)程中遇到障礙時(shí)傳感器發(fā)出的信號(hào);x5 表示門(mén)完全閉合;x6 表示門(mén)完全打開(kāi)。COUT 為控制器內(nèi)部的定計(jì)時(shí)控制信號(hào)(這里假定三個(gè)暫停狀態(tài)的暫停時(shí)間一樣)。
s0 表示電動(dòng)門(mén)處于零位置時(shí)的狀態(tài),此時(shí)電動(dòng)門(mén)處于關(guān)閉的位置;
s1 表示電動(dòng)門(mén)開(kāi)的狀態(tài)、電機(jī)正轉(zhuǎn)的情況;
s2 表示電動(dòng)門(mén)關(guān)的狀態(tài)、電機(jī)反轉(zhuǎn)的情況;
s3 表示電動(dòng)門(mén)停止時(shí)的狀態(tài),此時(shí)要求電機(jī)停止轉(zhuǎn)動(dòng);
s4 表示電動(dòng)門(mén)處于底位置時(shí)的狀態(tài),此時(shí)電動(dòng)門(mén)處于開(kāi)的臨界位置;
s5 表示在反轉(zhuǎn)過(guò)程中電動(dòng)門(mén)在遇到障礙時(shí)的暫停狀態(tài);
s6 表示在正轉(zhuǎn)過(guò)程中電動(dòng)門(mén)在遇到障礙時(shí)的暫停狀態(tài)。Z1、Z2、Z3 分別表示控制器發(fā)給電機(jī)控制電路的開(kāi)、關(guān)、??刂菩盘?hào)。
3.2 自動(dòng)門(mén)控制器的VHDL 語(yǔ)言設(shè)計(jì)
(1) VHDL 的實(shí)體描述:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY door IS
PORT(
Clk,reset: IN STD_LOGIC;--時(shí)鐘和復(fù)位信號(hào);
X1,x2,x3,x4,x5,x6:OUT STD_LOGIC;--開(kāi)關(guān)量;
Outputs:OUT_LOGIC_VECTOR(1 TO 3);
Ten:OUT STD_LOGIC);
END door;
(2) 主控組合進(jìn)程部分程序
PROCESS(current_state,x1,x2,x3,x4,x5,x6)
BEGIN
CASE current_state IS
WHEN so=》comb_output《=’001’;
en《=’0’;
IF x1=’1’ THEN next_state《s1;
………………
ELSE next_state《s0;
………………
END IF;
4 結(jié)束語(yǔ)
本文中介紹的自動(dòng)控制系統(tǒng)采用了先進(jìn)的EDA 技術(shù),從上而下的設(shè)計(jì)方法,與工藝無(wú)關(guān)的設(shè)計(jì)思路,使設(shè)計(jì)者在設(shè)計(jì)中更多的考慮系統(tǒng)的實(shí)現(xiàn),更好的簡(jiǎn)化系統(tǒng),同時(shí)大大縮短了系統(tǒng)的設(shè)計(jì)完成時(shí)間。EDA 技術(shù)將在自動(dòng)控制中應(yīng)用會(huì)越來(lái)越廣泛。