步進(jìn)電機(jī)已經(jīng)滲透入我們生活的方方面面,本文介紹了一些重要的步進(jìn)電機(jī)相關(guān)技術(shù),,為開發(fā)人員基本了解步進(jìn)電機(jī)的工作原理提供了足夠的信息,,同時也介紹了用微控制器或數(shù)字信號處理器控制步進(jìn)電機(jī)的方法。
步進(jìn)電機(jī)也叫步進(jìn)器,,它利用電磁學(xué)原理,,將電能轉(zhuǎn)換為機(jī)械能,,人們早在20世紀(jì)20年代就開始使用這種電機(jī)。隨著嵌入式系統(tǒng)(例如打印機(jī),、磁盤驅(qū)動器,、玩具、雨刷,、震動尋呼機(jī),、機(jī)械手臂和錄像機(jī)等)的日益流行,步進(jìn)電機(jī)的使用也開始暴增,。不論在工業(yè),、軍事、醫(yī)療,、汽車還是娛樂業(yè)中,,只要需要把某件物體從一個位置移動到另一個位置,步進(jìn)電機(jī)就一定能派上用場,。步進(jìn)電機(jī)有許多種形狀和尺寸,,但不論形狀和尺寸如何,它們都可以歸為兩類:可變磁阻步進(jìn)電機(jī)和永磁步進(jìn)電機(jī),。本文重點(diǎn)討論更為簡單也更常用的永磁步進(jìn)電機(jī),。
![]() |
圖1:具有雙齒槽和單繞組的定子 |
步進(jìn)電機(jī)的構(gòu)造
如圖1所示,步進(jìn)電機(jī)是由一組纏繞在電機(jī)固定部件--定子齒槽上的線圈驅(qū)動的,。通常情況下,,一根繞成圈狀的金屬絲叫做螺線管,而在電機(jī)中,,繞在齒上的金屬絲則叫做繞組,、線圈、或相,。如果線圈中電流的流向如圖1所示,,并且我們從電機(jī)頂部向下看齒槽的頂部,那么電流在繞兩個齒槽按逆時針流向流動,。根據(jù)安培定律和右手準(zhǔn)則,,這樣的電流會產(chǎn)生一個北極向上的磁場。
![]() |
圖2:雙相雙極電機(jī) |
現(xiàn)在假設(shè)我們構(gòu)造一個定子上纏繞有兩個繞組的電機(jī),,內(nèi)置一個能夠繞中心任意轉(zhuǎn)動的永久磁鐵,這個可旋轉(zhuǎn)部分叫做轉(zhuǎn)子,。圖2給出了一種簡單的電機(jī),,叫做雙相雙極電機(jī),因?yàn)槠涠ㄗ由嫌袃蓚€繞組,,而且其轉(zhuǎn)子有兩個磁極,。如果我們按圖2a所示方向給繞組1輸送電流,而繞組2中沒有電流流過,那么電機(jī)轉(zhuǎn)子的南極就會自然地按圖中所示,,指向定子磁場的北極,。
再假設(shè)我們切斷繞組1中的電流,而按圖2b所示方向給繞組2輸送電流,,那么定子的磁場就會指向左側(cè),,而轉(zhuǎn)子也會隨之旋轉(zhuǎn),與定子磁場方向保持一致,。
接著,,我們再將繞組2的電流切斷,按照圖2c的方向給繞組1輸送電流,,注意:這時繞組1中的電流流向與圖2a所示方向相反,。于是定子的磁場北極就會指向下,從而導(dǎo)致轉(zhuǎn)子旋轉(zhuǎn),,其南極也指向下方,。
然后我們又切斷繞組1中的電流,按照圖2d所示方向給繞組2輸送電流,,于是定子磁場又會指向右側(cè),,從而使得轉(zhuǎn)子旋轉(zhuǎn),其南極也指向右側(cè),。
![]() |
圖3:雙相6極電機(jī) |
最后,,我們再一次切斷繞組2中的電流,并給繞組1輸送如圖2a所示的電流,,這樣,,轉(zhuǎn)子又會回到原來的位置。
至此,,我們對電機(jī)繞組完成了一個周期的電激勵,,電機(jī)轉(zhuǎn)子旋轉(zhuǎn)了一整圈。也就是說,,電機(jī)的電頻率等于它轉(zhuǎn)動的機(jī)械頻率,。
如果我們用1秒鐘順序完成了圖2所示的這4個步驟,那么電機(jī)的電頻率就是1Hz,。其轉(zhuǎn)子旋轉(zhuǎn)了一周,,因而其機(jī)械頻率也是1Hz??傊?,一個雙相步進(jìn)電機(jī)的電頻率和機(jī)械頻率之間的關(guān)系可以用下式表示:
fe=fm*P/2 (1)
其中,fe代表電機(jī)的電頻率,,fm代表其機(jī)械頻率,,而P則代表電機(jī)轉(zhuǎn)子的等距磁極數(shù),。
從圖2中我們還可以看出,每一步操作都會使轉(zhuǎn)子旋轉(zhuǎn)90°,,也就是說,,一個雙相步進(jìn)電機(jī)每一步操作造成的旋轉(zhuǎn)度數(shù)可由下式表示:
1 step= 180°/P (2)
由等式(2)可知,一個雙極電機(jī)每動作一次可以旋轉(zhuǎn)180°/2=90°,,這與我們在圖2中看到的情形正好相符,。此外,該等式還表明,,電機(jī)的磁極數(shù)越多,,步進(jìn)精度就越高。常見的是磁極數(shù)在12和200個之間的雙相步進(jìn)電機(jī),,這些電機(jī)的步進(jìn)精度在15°和 0.9°之間,。
![]() |
圖4:同時激勵電機(jī)的兩個繞組 |
圖3給出的例子是一個雙相、6極步進(jìn)電機(jī),,其中包含3個永久磁鐵,,因而有6個磁極。第一步,,如圖3a所示,,我們給繞組1施加電壓,在定子中產(chǎn)生一個北極指向其頂部的磁場,,于是,,轉(zhuǎn)子的南極(圖3a中紅色的“S”一端)轉(zhuǎn)向了該圖的上方。接著,,在圖3b中,,我們給繞組2施加電壓,定子中產(chǎn)生一個北極指向其左側(cè)的磁場,。于是,,轉(zhuǎn)子的一個距離最近的南極轉(zhuǎn)向了圖的左方,即轉(zhuǎn)子順時針轉(zhuǎn)動了30°,。第三步,,在圖3c中,我們又向繞組1施加一個電壓,,在定子中產(chǎn)生一個北極指向圖下方的磁場,,從而又使轉(zhuǎn)子順時針旋轉(zhuǎn)30°到達(dá)圖3c所示的位置。而在圖3d中,,我們給繞組2施加電壓,,在定子中產(chǎn)生一個北極指向定子右側(cè)的磁場,再一次使轉(zhuǎn)子順時針旋轉(zhuǎn)30°,,到達(dá)圖3d所示的位置,。最后,我們再向繞組1施加電壓,,產(chǎn)生一個如圖3a所示的北極指向定子上方的磁場,,使得轉(zhuǎn)子順時針旋轉(zhuǎn)30°,結(jié)束一個電周期,。如此可以看出,,4步電激勵造成了120°的機(jī)械旋轉(zhuǎn)。也就是說,,該電機(jī)的電頻率是機(jī)械頻率的3倍,,這一結(jié)果符合等式(1)。此外,,我們從圖3和等式(2)也能看出,,該電機(jī)的轉(zhuǎn)子每一步旋轉(zhuǎn)30°。
![]() |
圖5:可用于驅(qū)動電機(jī)每個繞組的H橋電路 |
如果同時向兩個繞組輸送電流,,還能增大電機(jī)的扭矩,,如圖4所示。這時,,電機(jī)定子的磁場是兩個繞組各自產(chǎn)生的磁場的矢量和,,雖然這一磁場每一次動作仍然只使電機(jī)旋轉(zhuǎn)90°,就象圖2和圖3中一樣,,但因?yàn)槲覀兺瑫r激勵兩個電機(jī)繞組,,所以此時的磁場比單獨(dú)激勵一個繞組時更強(qiáng)。由于該磁場是兩個垂直場的矢量和,,因此它等于單獨(dú)每個場的2×1.414倍,,從而電機(jī)對其負(fù)載施加的扭矩也成正比增大。
電機(jī)的激勵順序
既然我們知道了一系列激勵會使步進(jìn)電機(jī)旋轉(zhuǎn),,接下來就要設(shè)計(jì)硬件來實(shí)現(xiàn)所需的步進(jìn)序列,。一塊能讓電機(jī)動起來的硬件(或結(jié)合了硬件和軟件的一套設(shè)備)就叫做電機(jī)驅(qū)動器。
從圖4中可以看出我們怎樣激勵雙相電機(jī)的繞組才能使電機(jī)轉(zhuǎn)子旋轉(zhuǎn),,圖中,,電機(jī)內(nèi)的繞組抽頭分別被標(biāo)為1A、1B,、2A和2B,。其中,1A和1B是繞組1的兩個抽頭,,2A和2B則是繞組2的兩個抽頭,。
首先,要給腳1B和2B施加一個正電壓,,并將1A和2A接地,。然后,,給腳1B和2A施加一個正電壓,而將1A和2B接地,,這一過程其實(shí)取決于導(dǎo)線繞齒槽纏繞的方向,,假設(shè)導(dǎo)線纏繞的方向與上一節(jié)所述相符。依次進(jìn)行下去,,我們就得到了表1中總結(jié)的激勵順序,,其中,“1”表示正電壓,,“0”表示接地,。
電流在電機(jī)繞組中有兩種可能的流向,這樣的電機(jī)就叫做雙極電機(jī)和雙極驅(qū)動序列,。雙極電機(jī)通常由一種叫做H橋的電路驅(qū)動,,圖5給出了連接H橋和步進(jìn)電機(jī)兩根抽頭的電路。H橋通過一個電阻連接到一個電壓固定的直流電源(其幅度可根據(jù)電機(jī)的要求選取),,然后,,該電路再經(jīng)過4個開關(guān)(分別標(biāo)為S1、S2,、S3和S4)連接到繞組的兩根抽頭,。這一電路的分布看起來有點(diǎn)象一個大寫字母H,因此叫做H橋,。
![]() |
圖6 |
從表1中可以看出,,要激勵該電機(jī),第一步應(yīng)將抽頭2A設(shè)為邏輯0,,2B設(shè)為邏輯1,,于是,我們可以閉合開關(guān)S1和S4,,并斷開開關(guān)S2和S3,。接著,需要將抽頭2A設(shè)為邏輯1,,2B設(shè)為邏輯0,,于是,我們可以閉合S2,、S3,,并斷開S1和S4。與此類似,,第三步我們可以閉合S2,、S3并斷開S1和S4,第四步則可以閉合S1、S4并斷開S2,、S3,。
對繞組1的激勵方法也不外乎如此,使用一對H橋就能產(chǎn)生需要的激勵信號序列,。表2所示就是激勵過程中每一步開關(guān)所在的位置,。
![]() |
圖7:單極電機(jī)的控制電路 |
注意,如果R=0,,而開關(guān)S1和S3又不小心同時閉合,那么流經(jīng)開關(guān)的電流將達(dá)到無窮大,。這時,,不但開關(guān)會被燒壞,電源也可能損壞,,因此電路中使用了一個非零阻值的電阻,。盡管這個電阻會帶來一定的功耗,也會降低電機(jī)驅(qū)動器的效率,,但它可以提供短路保護(hù),。
單極電機(jī)及其驅(qū)動器
前面我們已經(jīng)討論了雙極步進(jìn)電機(jī)和驅(qū)動器。單極電機(jī)與雙極電機(jī)類似,,不同的是在單極電機(jī)中外部能夠接觸到的只有每個繞組的中心抽頭,,如圖6所示。我們將從繞組頂部抽出的抽頭標(biāo)為抽頭B,,底部抽出的標(biāo)為抽頭A,,中間的為抽頭C。
有時我們會遇到一些抽頭沒有標(biāo)注的電機(jī),,如果我們清楚步進(jìn)電機(jī)的構(gòu)造,,就很容易通過測量抽頭之間的阻值,識別出哪些抽頭屬于哪根繞組,。不同繞組的抽頭之間阻抗通常為無窮大,。如果經(jīng)測量,抽頭A和C之間的阻抗為100歐姆,,那么抽頭B和C之間的阻抗也應(yīng)是100歐姆,,而A和B之間的阻抗為200歐姆。200歐姆這一阻抗值就叫做繞組阻抗,。
![]() |
圖8 |
圖7給出一個單極電機(jī)的單相驅(qū)動電路,。從中可以看出,當(dāng)S1閉合而S2斷開時,,電流將由右至左流經(jīng)電機(jī)繞組,;而當(dāng)S1斷開,S2閉合時,,電流流向變?yōu)橛勺笾劣?。因此,,我們僅用兩個開關(guān)就能改變電流的流向(而在雙極電機(jī)中需要4個開關(guān)才能做到)。表3所示為單極電機(jī)驅(qū)動電路中,,每一步激勵時開關(guān)所處的位置,。
雖然單極電機(jī)的驅(qū)動器控制起來相對簡單,但由于在電機(jī)中使用了中心抽頭,,因此它比雙極電機(jī)更復(fù)雜,,而且其價格通常比雙極電機(jī)貴。此外,,由于電流只流經(jīng)一半的電機(jī)繞組,,所以單極電機(jī)只能產(chǎn)生一半的磁場。
在知道了單極電機(jī)和雙極電機(jī)的構(gòu)造原理之后,,當(dāng)我們遇到一個沒有標(biāo)示抽頭也沒有數(shù)據(jù)手冊的電機(jī)時,,我們就能自己推導(dǎo)出抽頭和繞組的關(guān)系。帶4個抽頭的電機(jī)就是一個雙相雙極電機(jī),,我們可以通過測量導(dǎo)線之間的阻抗來分辨哪兩個抽頭屬于同一個繞組,。帶6個抽頭的電機(jī)可能是一個雙相單極電機(jī),也可能是一個三相雙極電機(jī),,具體情況可以通過測量導(dǎo)線之間的阻抗來確定,。
![]() |
表1 雙相電機(jī)動作過程中的繞組抽頭極性 |
電機(jī)控制
本文前面討論的電機(jī)控制理論可以采用全硬件方案實(shí)現(xiàn),也可以用微控制器或DSP實(shí)現(xiàn),。圖8說明了如何用晶體管作為開關(guān)來控制雙相單極電機(jī),。每個晶體管的基極都要通過一個電阻連接到微控制器的一個數(shù)字輸出上,阻值可以從1到10M歐姆,,用于限制流入晶體管基極的電流,。每個晶體管的發(fā)射極均接地,集電極連到電機(jī)繞組的4個抽頭,。電機(jī)的中心抽頭均連接到電源電壓的正端,。
每個晶體管的集電極均通過一個二極管連接到電壓源,以保護(hù)晶體管不被旋轉(zhuǎn)時電機(jī)繞組上的感應(yīng)電流燒壞,。轉(zhuǎn)子旋轉(zhuǎn)時,,電機(jī)繞組上會出現(xiàn)一個感應(yīng)電壓,如果晶體管集電極沒有通過二極管連接到電壓源,,感應(yīng)電壓造成的電流就會涌入晶體管的集電極,。
![]() |
表2:雙相電機(jī)動作過程中開關(guān)的位置 |
舉個例子,假設(shè)數(shù)字輸出do1為高而do2為低,,于是do1會使晶體管T1導(dǎo)通,,電流從+V流經(jīng)中心抽頭和T1的基極,然后由T1的發(fā)射極輸出。但此時do2處于斷開狀態(tài),,因此電流無法流經(jīng)T2,。這樣推理下去,我們就能將表3改為驅(qū)動電機(jī)所需的微控制器數(shù)字輸出的改變順序,。
一旦清楚了驅(qū)動電機(jī)所需的硬件和數(shù)字輸出的順序,,我們就可以對最順手的微控制器或DSP編寫軟件,實(shí)現(xiàn)這些序列,。
固件控制
我本人在一塊Microchip PIC16F877上,,利用1N4003二極管和2SD1276A達(dá)靈頓晶體管實(shí)現(xiàn)了以上談到的電機(jī)控制器。PIC的PortA第0位到第3位用來做數(shù)字輸出,。電機(jī)采用在Jameco購買的5V雙相單極電機(jī)(Airpax [Thomson]生產(chǎn),,型號為M82101-P1),并且用同一個5V電源為PIC和電機(jī)供電,。但在真正應(yīng)用時,為避免給微控制器的電源信號引入噪聲,,建議大家還是分別用不同的電源為電機(jī)和微控制器供電,。
列表1給出了控制程序的匯編源代碼,該程序每50毫秒旋轉(zhuǎn)電機(jī)一次,。首先,,程序會將微控制器的數(shù)字輸出初始化為表4中第一步的值,然后每隔50毫秒(此時間常數(shù)由程序中的常量waitTime定義)按照正確的順序循環(huán)輸出數(shù)字信號,。若需使電機(jī)反向旋轉(zhuǎn),,只需按與表4所示相反的順序輸出數(shù)字信號即可。
![]() |
|
本人所用的電機(jī)為24極電機(jī),,即每一步輸出可以控制電機(jī)旋轉(zhuǎn)180°/24=7.5°,。電機(jī)每50毫秒旋轉(zhuǎn)7.5°,也就是每2.4秒轉(zhuǎn)一周,。如果將常量waitTime減小一半,,電機(jī)轉(zhuǎn)速會加快一倍。但因?yàn)檗D(zhuǎn)子受慣性,、摩擦力和其他機(jī)械限制,,所以電機(jī)轉(zhuǎn)速有一個上限,當(dāng)定子磁場旋轉(zhuǎn)過快時,,轉(zhuǎn)子的轉(zhuǎn)速無法跟上,,導(dǎo)致電機(jī)的旋轉(zhuǎn)也無法跟上,開始跳動(skipping),。如果這時再降低歐姆aitTime,,電機(jī)很可能干脆就停止旋轉(zhuǎn)。
除了本文重點(diǎn)討論的雙相電機(jī)以外,步進(jìn)電機(jī)還有其他類型,,如三相步進(jìn)電機(jī)或四相步進(jìn)電機(jī),。另外還有一些雙相步進(jìn)電機(jī),它們只有一個中心抽頭,,同時連接到兩個繞組的中心點(diǎn),,這類步進(jìn)電機(jī)外部有5個抽頭引出。
同樣,,步進(jìn)電機(jī)也不是電機(jī)家族中的唯一成員,,最古老也最簡單的電機(jī)是直流(DC)電機(jī)。早期的直流電機(jī)使用電刷,,現(xiàn)在已經(jīng)不再流行,。如今常見的無刷直流電機(jī),就是利用電子線路代替電刷進(jìn)行換向的直流電機(jī),,這類電機(jī)中不存在電刷老化問題,,因此其壽命比有刷直流電機(jī)長很多。
還有一種感應(yīng)電機(jī),,其工作原理與步進(jìn)電機(jī)或直流電機(jī)完全不同,。直流電機(jī)采用的是直流電壓源,而感應(yīng)電機(jī)則采用交流(AC)電壓源,,并且步進(jìn)電機(jī)和直流電機(jī)中轉(zhuǎn)子與定子磁場的旋轉(zhuǎn)是同步的,,而感應(yīng)電機(jī)中轉(zhuǎn)子的轉(zhuǎn)速滯后于定子磁場的轉(zhuǎn)速。
本文小結(jié)
本文對步進(jìn)電機(jī)進(jìn)行了概括性的介紹,,更多的細(xì)節(jié)等待著您的發(fā)現(xiàn),。但只要您理解了本文介紹的電機(jī)工作原理,那么您就已經(jīng)完全可以開始設(shè)計(jì),、維護(hù)和調(diào)試步進(jìn)電機(jī)的驅(qū)動軟,、硬件了。