謝正剛
摘 要:本文主要研究步進(jìn)電機(jī)的自動(dòng)化控制,首先介紹了步進(jìn)電機(jī)的工作原理,在此基礎(chǔ)上設(shè)計(jì)了對(duì)應(yīng)的硬件電路,通過ULN2003芯片驅(qū)動(dòng)其運(yùn)轉(zhuǎn),最后通過設(shè)計(jì)專門的軟件流程來(lái)實(shí)現(xiàn)對(duì)單片機(jī)運(yùn)轉(zhuǎn)的自動(dòng)控制。
關(guān)鍵詞:步進(jìn)電機(jī);自動(dòng)化;單片機(jī)
一、步進(jìn)電機(jī)的工作原理
步進(jìn)電機(jī)有很多種,按照不同的實(shí)現(xiàn)原理可以分為反應(yīng)式、永磁式、永磁感應(yīng)式三類,不同類型的步進(jìn)電機(jī)通過不同的工作原理,來(lái)實(shí)現(xiàn)相同的制動(dòng)動(dòng)力,最終實(shí)現(xiàn)了步進(jìn)電機(jī)以固定的旋轉(zhuǎn)角為基本步長(zhǎng)的動(dòng)力類型。三類步進(jìn)電機(jī)可以實(shí)現(xiàn)不同的旋轉(zhuǎn)角,以磁阻式步進(jìn)電機(jī)為例,可以實(shí)現(xiàn)旋轉(zhuǎn)角為1°到
15°,甚至更小的步距角,有效地為其他提供了固定步距的動(dòng)力。如圖1所示,為三相步進(jìn)電機(jī)的工作原理圖。
如圖所示,三相步進(jìn)電機(jī)是由定子和轉(zhuǎn)子構(gòu)成,二者之間通過磁場(chǎng)力來(lái)實(shí)現(xiàn)轉(zhuǎn)子按照固定步距的旋轉(zhuǎn)。如圖可知,三相步進(jìn)電機(jī)定子分別為AABBCC,如果對(duì)其依次通電,那么A定子對(duì)應(yīng)的轉(zhuǎn)子為了使磁阻最小,就會(huì)帶動(dòng)轉(zhuǎn)子使其與A對(duì)其,如果此時(shí)停止對(duì)A通電,對(duì)B開始通電,那么與B對(duì)應(yīng)的轉(zhuǎn)子為了減少磁阻而帶動(dòng)轉(zhuǎn)子旋轉(zhuǎn)與B對(duì)其,以此類推即可知道,如果對(duì)轉(zhuǎn)子的通電順序和時(shí)間間隔都是固定的,那么轉(zhuǎn)子就會(huì)在固定的時(shí)間內(nèi),按照固定的旋轉(zhuǎn)角度帶動(dòng)轉(zhuǎn)子進(jìn)行旋轉(zhuǎn),進(jìn)而提供固定旋轉(zhuǎn)角度的動(dòng)力。
二、步進(jìn)電機(jī)的自動(dòng)化控制
由步進(jìn)電機(jī)的工作原理可知,主要連續(xù)地對(duì)定子進(jìn)行有序的固定時(shí)長(zhǎng)的通電,那么步進(jìn)電機(jī)就會(huì)按照一定的旋轉(zhuǎn)角度和選裝方向進(jìn)行轉(zhuǎn)動(dòng)。如果改變通電時(shí)間間隔,那么步進(jìn)電機(jī)旋轉(zhuǎn)的每一步之間的時(shí)間間隔就會(huì)發(fā)生變化,如果對(duì)定子通電的順序發(fā)生變化,那么轉(zhuǎn)子的旋轉(zhuǎn)方向就會(huì)發(fā)生變化,對(duì)外界產(chǎn)生的動(dòng)力也就隨之產(chǎn)生變化。單片機(jī)是常見的產(chǎn)生產(chǎn)生脈沖信號(hào)的有效控制器件,而51系列的單片機(jī)以其價(jià)格低、性能高、穩(wěn)定性好而在很多領(lǐng)域得到廣泛應(yīng)用。對(duì)于步進(jìn)電機(jī)的自動(dòng)化控制,主要思想就是通過單片機(jī)生成穩(wěn)定的脈沖信號(hào),通過脈沖信號(hào)驅(qū)動(dòng)步進(jìn)電機(jī)的通電狀態(tài)來(lái)實(shí)現(xiàn)其自動(dòng)化控制,而人為地通過編程,來(lái)控制脈沖信號(hào)的頻率、占空比以及其他特性,來(lái)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的旋轉(zhuǎn)方向、步長(zhǎng)時(shí)間的有效控制。
(一)單片機(jī)控制步進(jìn)電機(jī)的硬件設(shè)計(jì)圖。使用單片機(jī)對(duì)步進(jìn)電機(jī)進(jìn)行控制,主要是通過AT89C51數(shù)據(jù)輸入輸出端口連接到步進(jìn)電機(jī),為步進(jìn)電機(jī)發(fā)送脈沖信號(hào)即可。如圖2所示,為基于AT89C51單片機(jī)實(shí)現(xiàn)步進(jìn)電機(jī)自動(dòng)化控制的硬件結(jié)構(gòu)設(shè)計(jì)圖。
由圖2.可知,步進(jìn)電機(jī)的自動(dòng)化控制主要由AT89C51完成,通過該單片機(jī)的數(shù)據(jù)輸入輸出端口,連接ULN2003芯片,進(jìn)而連接到步進(jìn)電機(jī)來(lái)驅(qū)動(dòng)該電機(jī)運(yùn)轉(zhuǎn)。由于AT89C51單片機(jī)屬于低電壓驅(qū)動(dòng)的COMS控制器,數(shù)據(jù)輸出信號(hào)的功率較小,不能直接驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)轉(zhuǎn),需要有ULN2003芯片最為步進(jìn)電機(jī)的驅(qū)動(dòng)芯片,將單片機(jī)的功率較小的脈沖信號(hào)進(jìn)行放大,進(jìn)而驅(qū)動(dòng)步進(jìn)電機(jī)運(yùn)轉(zhuǎn)。
(二)單片機(jī)的軟件流程邏輯設(shè)計(jì)。步進(jìn)電機(jī)的控制,最終是通過單片機(jī)生成數(shù)字脈沖信號(hào)來(lái)實(shí)現(xiàn),而單片機(jī)生成脈沖信號(hào),則是通過人為的編程來(lái)實(shí)現(xiàn),按照步進(jìn)電機(jī)控制系統(tǒng)的運(yùn)轉(zhuǎn)邏輯,可以為單片機(jī)進(jìn)行編程。
單片機(jī)的軟件流程設(shè)計(jì),目標(biāo)是為了配合硬件電路,生成脈沖信號(hào)實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制。首先,對(duì)單片機(jī)內(nèi)部的各個(gè)組件進(jìn)行初始化設(shè)置,如對(duì)連接ULN2003芯片的端口設(shè)置成數(shù)據(jù)輸出端口,對(duì)開關(guān)控制連接的端口設(shè)置成數(shù)據(jù)接收端口,并且對(duì)定時(shí)器進(jìn)行初始化操作,對(duì)單片機(jī)外的各種工作芯片發(fā)送控制字,使其處在工作狀態(tài),然后檢測(cè)步進(jìn)電機(jī)的工作狀態(tài),如果處在停止?fàn)顟B(tài),則可開始發(fā)送控制脈沖,使其工作。
數(shù)字脈沖的生成原理,可以采用最近本的時(shí)間控制改變輸出端口電壓的原理,即在ULN2003芯片連接端口,首先使其處在高電壓,然后啟動(dòng)定時(shí)器,當(dāng)定時(shí)器到達(dá)固定時(shí)間后,在為該端口發(fā)送電壓,在初始化定時(shí)器并且啟動(dòng)計(jì)時(shí),當(dāng)?shù)竭_(dá)固定時(shí)間后,再將其變成高電壓,周而復(fù)始,實(shí)現(xiàn)數(shù)字脈沖的信號(hào)的生產(chǎn),進(jìn)而控制步進(jìn)電機(jī)運(yùn)轉(zhuǎn)。
總結(jié):步進(jìn)電機(jī)的自動(dòng)化控制,主要是通過單片機(jī)生成脈沖信號(hào),通過ULN2003芯片驅(qū)動(dòng)步進(jìn)電機(jī)自動(dòng)旋轉(zhuǎn),進(jìn)而產(chǎn)生動(dòng)力。所以在實(shí)現(xiàn)步進(jìn)電機(jī)的自動(dòng)化控制系統(tǒng)時(shí),需要設(shè)計(jì)相應(yīng)的硬件電路,使ULN2003芯片連接步進(jìn)電機(jī),并且在單片機(jī)編程,通過定時(shí)器定時(shí)改變輸出端口電壓來(lái)實(shí)現(xiàn)脈沖信號(hào)生成,進(jìn)而控制步進(jìn)電機(jī)運(yùn)轉(zhuǎn)。
參考文獻(xiàn):
[1] 成新. 基于單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)研究[J]. 電子技術(shù)與軟件工程. 2015(05)