03.06 有刷電機和無刷電機

眾所周知,在生活和生產中,機器人能模仿人類的行為。比如巨型的機械臂機器人可以組裝汽車;掃地機器人可以依靠輪式底盤移動,通過轉動小掃把來清潔地面。

工業機械臂

大家對機器人的這些行為已經司空見慣。要讓機器人動起來,就需要有動力源驅動它,常見的機器人驅動方式有液壓、氣動和電動三種。

液壓驅動常用於大負載的情形,氣壓驅動常用於負載小、精度要求低的場景。相比之下,電機的驅動就比較簡單、穩定性好,應用也最為廣泛,比如機械臂的關節、家用電器的驅動。

有刷電機和無刷電機

今天我們再深入聊聊電機。

在機器人的設計過程中,電機是一個極其重要的驅動單元,就好比人類的肌肉和關節。電機將電能轉化為機械能,為機器人的運動產生驅動轉矩(讓機器人動起來),被廣泛應用在機器人的關節驅動、輪式底盤驅動等方面。

有刷電機和無刷電機


機器人中的應用

電機有兩種供電方式,直流和交流。直流電機可以用鋰離子電池之類的直流電源供電,所以在機器人領域被廣泛應用。

根據是否帶有電刷換向器,又可以將直流電機分為有刷電機和無刷電機。

直流有刷電機

直流有刷電機的結構比較簡單,通過換向器進行換向。下圖中,電流從紅色開關流入,經過黃色的轉子線圈,從灰色開關流出。通電線圈在磁場中受安培力,開始旋轉。

有刷電機和無刷電機


紅線為電流、綠線為磁力、藍線為受力方向

當轉到平衡位置時,換向器就會和電源失去連接,但沒關係,轉子會靠慣性繼續轉動,轉過平衡位置。這時,換向器和電刷的結構會使電流方向發生逆轉,線圈產生的磁場方向也隨之改變,即完成了一次機械換向的過程。

有刷電機和無刷電機


直流有刷電機原理

但由於電刷和換向器長期互相摩擦,導致機械磨損,因此有刷電機噪音大、壽命短、需要定期維護。而無刷電機的出現恰好解決了這個問題。

有刷電機和無刷電機


有刷電機受磨損

直流無刷電機

直流無刷電機的結構稍複雜一些,它不利用機械換向,而是用電子換相。下圖是無刷電機的定子繞組圖(中間的轉子結構沒有畫出)。

有刷電機和無刷電機


三相內轉子無刷電機

圖中的黃色部分是三個線圈繞組,代表三個相,它們的一端在中心相連,另一端分別引出“A”、“B”、“C”三個端子。

如果對三個端子兩兩通電,那就有 6 種通電情況:A 正 B 負、A 正 C 負、B 正 A 負、B 正 C 負、C 正 A 負、C 正 B 負。

不管什麼組合,每一時刻都有兩個線圈有電,然後產生磁場。

有刷電機和無刷電機


兩個帶電線圈產生磁場

如果再按照一定的次序通電,就產生了下圖的磁場:

有刷電機和無刷電機


紅箭頭表示每個線圈產生的磁場,黃箭頭表示兩個線圈合成的磁場。可以看出,無刷電機是定子繞組產生了旋轉的磁場。

那麼,轉子又在幹嘛呢?轉子是永磁體,因為異性相吸同性相斥的原理,轉子會被定子產生的磁場帶動,跟隨定子磁場的腳步一起轉起來。

有刷電機和無刷電機


轉子轉動

而每當轉子要與定子對齊的時候,我們就換一次相,轉子就永遠都追不上定子了。想想也是一個傷感的故事。

我們把轉子的結構加上,看幾個典型的例子:

下圖從左往右分別是,三相三繞組一極對、三相六繞組二極對、三相六繞組四極對內轉子電機,繞組數就是它的定子中線圈繞組的數量,極對數就是內轉子的極對數量。

有刷電機和無刷電機


轉子在內部

不僅有“轉子在內部”的無刷電機,還有“轉子在外部”的無刷電機。雖然轉子位置不同,但基本原理是一致的:

有刷電機和無刷電機


轉子在外部

它的轉子在電機外殼上,電機轉動時,內部的線圈繞組不動,外殼和轉子轉動。因為一般外殼的質量比較大,所以轉子的轉速較低,電機扭力輸出大,航模用得比較多。

電機驅動器

要給它們兩兩交替著通電,不可能用雙手瘋狂地換著插電,就算你的手速跟得上電機轉速讓它順暢地轉起來,你也沒法控制轉速。這時,就需要用到電機驅動器,也稱電子調速器(Electronic Speed Control,ESC),簡稱電調

有刷電機和無刷電機


電機驅動器

顧名思義,電機驅動器就是驅動電機的,它通過控制 A、B、C 三端的輸入,讓電機轉起來,並且控制電機的轉速和方向。

有刷電機和無刷電機


左:電調;右:電機

無刷電機的轉子在勻速轉動時,各定子繞組會產生反電動勢,電機結構不同,產生的反電動勢波形也會不同,有方波反電動勢和正弦波反電動勢。

方波的通常採用方波電流驅動,正弦波的通常採用正弦波電流驅動。

有刷電機和無刷電機


方波反電動勢和正弦波反電動勢

方波驅動

無刷電機有 A、B、C 三相輸入端口,所以電調有三個輸出端,一個端有兩個開關,一共是六個開關,這也叫全橋驅動電路:

有刷電機和無刷電機


全橋電路

每次按照一定的次序同時閉合兩個開關,就可以保證 A、B、C 每次都有兩個端口連接電源的正負極:

有刷電機和無刷電機


兩兩通電

利用開關器件來控制電機和電源的連接,就是驅動的原理。(如何控制開關,這屬於電控知識,在這不展開說。)

那如何調速呢?我們引入脈衝寬度調製(Pulse Width Modulation,PWM),PWM通過調製一列方波的脈衝寬度,來改變輸出到電機的平均電壓,而平均電壓一變化,速度就變化了。

有刷電機和無刷電機


方波驅動的定子線圈繞組中的電流是瞬間變化的,產生的磁場力合力的方向也是瞬間偏移 60°,所以轉子並不是平穩地轉過每一個 360°,而是像時鐘一樣,一格一格地走,這就形成了轉矩脈動。

如何抑制轉矩脈動?我們還有第二種驅動方式——正弦波驅動。

正弦波驅動

利用正弦波電流驅動可以有效降低轉矩脈動的現象。但正弦波驅動也有缺點,就是控制過程較複雜,且成本較高。想用正弦波電流來驅動電機,就要求反電動勢是正弦波。

有刷電機和無刷電機


左:方波;右:正弦波

正弦波驅動電機的方式也是全橋電路,但它的調速方式和方波驅動不同。

常見的正弦波控制方法有電壓正弦波控制(sinusoidal pulse width modulation,簡稱 spwm)、磁場定向控制(field-oriented control,簡稱 foc,也稱矢量控制,vector control)和直接轉矩控制(direct torque control,簡稱 dtc)。

foc 方式被廣泛應用,接下來我們主要介紹 foc 的控制思想。

要理解 foc 的控制思想,我們得再複習一下直流有刷電機。直流有刷電機能轉起來是因為磁場和電流互相作用產生了力(轉矩),轉矩的大小由磁場和電流決定,而定子(永磁體)產生的磁場是固定的。所以只要控制電流就可以控制轉矩量,速度也就能控制了。

有刷電機和無刷電機


再用一次這張圖

而無刷電機的設計強行增加了遊戲難度。它的電流不僅產生了轉矩(稱作轉矩電流),還磁化了定子中的磁通材料併產生磁場(稱作勵磁電流)。這兩個量耦合在一起,使得整個控制系統非線性、高階、又具有強耦合性(也就是很難控制的意思)。

所以,要想控制速度,我們必須將轉矩電流和勵磁電流彼此分離,單獨控制。foc 利用了座標旋轉變換的方式,分解了定子三相電流。將電流分解後,就可以得到勵磁電流分量和轉矩電流分量,分別控制這兩個量,就可以控制轉矩了。轉矩大了,力大了,速度就上去了。

foc 方式的轉矩脈動極小,所以轉動非常平穩,也降低了噪聲。好東西當然也有缺點,就是算法複雜,成本高昂。座標旋轉變換中涉及 clarke 變換和 Park 變換,各種高頻率的數學變換對微處理器的要求很高。

轉子位置的檢測

終於終於,速度能控制了,但這時候的電機就像一個蒙著眼睛跑步的人,知道自己跑快或跑慢,但假設要精確到 3 米/秒,還是做不到。

這時,我們就需要一個教練在旁邊看著,看到他跑了 2 米/秒,就讓他再跑快一點。而在電機裡,我們只要檢測轉子的位置,就能清楚地得知電機的轉速,進而控制它跑快點還是跑慢點(這也叫速度閉環)。

有刷電機和無刷電機


而且,轉子的位置直接影響電子換相,電調就是通過讀取轉子的位置來決定什麼時候換相的。

如何檢測轉子位置呢?根據電調是否有傳感器,分為有感檢測和無感檢測。有感檢測相對簡單,利用編碼器、霍爾傳感器等傳感器就可以檢測轉子的位置。

有刷電機和無刷電機


光電編碼器

無感檢測不需要在電機內部添加傳感器,成本低、應用廣,常用的有反電動勢法。

反電動勢法

轉子轉動過程中,旋轉的轉子會在定子上產生反電動勢,我們通過這個反電動勢的變化情況,也可以判斷轉子的位置。

foc 對轉子位置精度要求比較高,所以無感 foc 驅動設計也是一個難點。傳統方法有高頻信號注入法、滑模變結構控制方法、模型參考自適應方法等。隨著人工智能的發展,神經網絡、模糊控制、專家系統等智能算法也被用來檢測轉子的位置。智能算法的自適應能力強、魯棒性好,但目前依然處於研究階段。

總結和應用

最後,我們做一個小總結:無刷電機沒有電刷換向器結構,不需要定期維護,壽命較長。在驅動原理上,無刷電機的驅動又分為方波驅動和正弦波驅動,前者原理簡單、成本較低,後者算法較複雜,但可以有效地抑制轉矩脈動,使電機轉動更平穩。

在實際的應用中,我們可以根據實際需求,綜合考慮各方面因素,去選擇合適的電機方案和驅動方案。

直流有刷電機成本較低,機械磨損大,可以用作機器人的輪式底盤結構;無刷電機的一大優點是換向的時候不會產生電火花,所以廣泛用於特種機器人上。

有刷電機和無刷電機


機器人的底盤和關節運動

正弦波驅動的電機轉矩脈動小,可以應用在控制精度要求高的地方,如機器人的關節驅動;方波驅動的電機控制較簡單,但相比正弦波驅動存在著轉矩脈動大、噪音大的缺點,可以應用在空中機器人的多旋翼動力系統。



分享到:


相關文章: