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