為初學者解釋 FOC(磁場定向控制)

無刷馬達 FOC 控制

利用 FOC(磁場定向控制)演算法,您可以透過多種方式控制無刷馬達的旋轉。這在機器人技術中也有廣泛的應用。

FOC系統

FOC 系統是一個閉環系統,其中控制器接收來自感測器的電流和角度訊號,然後根據我們提供的命令計算所需的馬達速度、位置和扭矩。然後它將這些計算結果轉換成相應的電信號來控制馬達的旋轉。該系統的核心是計算方法,即FOC演算法。要了解FOC演算法的計算內容,我們首先需要了解無刷馬達的控制原理。

無刷馬達的內部結構

如下圖所示,馬達周圍佈置了三個線圈,外部連接了六個MOSFET。運轉時,線圈保持靜止,稱為定子。中間有一個旋轉的磁鐵,稱為轉子。

當兩個 MOSFET 導通時,電流流入兩個線圈,產生磁場。當兩個磁場重疊時,它們會產生導致轉子旋轉的磁場。當轉子與磁場重疊時,控制器切換到另一個 MOSFET 以繼續旋轉轉子。

我們還可以打開所有三個 MOSFET,使電流流入所有三個線圈,產生三個磁場,這些磁場結合起來產生比僅兩個磁場更強的磁場。下面是可以產生六種不同磁場的不同開關組合的圖表。透過在這些場之間不斷切換,可以驅動轉子旋轉。

這就是無刷馬達控制的基本原理。

創造精確、可控的磁場

基本的無刷馬達控製本質上只是使馬達旋轉,取代了傳統的有刷馬達。例如,遙控飛機或電動吹風機中使用的無刷馬達控制器就採用了這項原理。然而,有些產品不僅需要讓馬達旋轉,還需要更多的功能。它們需要更精確的控制,例如電動牙刷,這需要精確的馬達控制。這種精確控制包括允許馬達以任何速度旋轉、停留在任何位置以及調整其扭矩。這些都是 FOC 演算法要解決的問題。

FOC演算法如何實現精準控制?

控制任意方向的磁場

我們需要在任何方向產生磁場。如前所述,開關 MOSFET 會產生六種不同的磁場。現在,我們在 V1 和 V2 之間來回切換 0.5ms。透過重複這個過程,轉子將在V1和V2的磁場之間來回振盪。然而,如果磁場的切換速度足夠快,超過轉子的響應時間,轉子將保持在中心位置而不移動,從而有效地產生新的磁場。

此時,透過調整一個時間週期內初始磁場的時間比例,我們可以合成該範圍內的任意磁場。同樣的方法可以應用於相鄰磁場之間的切換,從而使我們能夠在 360° 範圍內的任何方向上創建磁場。

控制磁場強度

此時,我們僅創建了任意方向的磁場。我們還需要控制磁場的強度。方法很簡單:當同一排列的三個MOSFET導通時,線圈沒有電壓但有電流,因為線圈是電感性的,而電感具有連續性作用,可以防止電流突變。因此,電流只能以一定的速率衰減,而不會立即降至零。這就是為什麼零向量總是需要三個上部 MOSFET 或三個下部 MOSFET 導通,而不是讓所有六個 MOSFET 關閉。透過在一個時間週期內插入零磁場狀態並調整時間比例,我們可以隨意控制磁場的強度。因此,我們現在創建了一個方向和強度可以控制的磁場。

轉子和磁場對準

此時,您可能會認為我們只需要在我們希望轉子旋轉的方向上產生磁場,但事實並非那麼簡單。首先,我們需要使用角度感測器來偵測轉子的當前位置,然後產生一個始終垂直於該方向的磁場。該磁場將吸引轉子朝其移動。只要轉子稍微移動,磁場就會跟隨它以保持垂直對齊。這是因為這種配置產生的力最強,效率最高。

一旦我們有了這個想法,我們唯一需要調整的參數就是磁場強度。透過控制磁場強度,我們可以控制無刷馬達的位置、速度和扭力。例如,如果我們希望馬達旋轉得更快,我們就增加磁場強度。如果我們希望馬達停止,我們可以施加負磁場,產生反作用力。當轉子停止時,我們可以將磁場強度設為零。如果存在外部幹擾導致轉子位置發生變化,我們可以施加磁場使轉子恢復原狀。這是FOC的基礎。

閉環系統

一個完整的FOC演算法是一個閉環系統。前面提到的磁場強度是使用感測器的數據和我們發出的命令透過 PID 計算來計算的。在實踐中,我們用電流代替磁場,因為線圈中的電流與磁場密切相關:它們的方向一致,並且它們的大小成比例。此外,使用電流感測器使其更加方便。因此,實際的FOC拓樸結構包括電流環、速度環和用於回授的位置環。系統將根據輸入的控制命令和感測器資料決定如何控制MOSFET開關。

一個評論

  1. 洛薩 2026-02-01 at pm5:37 - 回复

    FOC 馬達的功能控制直觀地採用了數位 PWM 調製方式,可實現 PWM 薄膜和高速頻率,音訊訊號是最好的、最有效的。啟動馬達轉子的膜片,然後瞧,就可以控制和定位了。

發表評論