blog:2024-05-03_share_嵌入式開發--無刷馬達學習1--foc簡介
2024-05-03 Share: 嵌入式開發--無刷馬達學習1--FOC簡介
Local Backup
寫在前面
最近剛學
FOC電機控制,文中錯誤在所難免,歡迎批評指正,也歡迎在評論區留言討論。
FOC意義
控制過程簡述
下圖是FOC控制馬達的完整過程,先不用管它是怎麼實現的,邊學習邊理解就好了。
紅框內是開環狀態的過程,也就是在不獲得馬達位置的情況下,透過強行輸出每個時間節點的控制訊息,來驅動馬達旋轉,至於馬達到底動沒動,先不管它。如果參數設定正確,轉速不高,馬達又是空載的情況下,還是能夠轉起來的。否則馬達可能會在原地發抖。
-
在驅動馬達之前,假設我們知道馬達的各項參數,這是可以預先測試出來的,也知道電源能提供的最大電壓和電流。
那麼在給定驅動力矩的情況下,由於摩擦力,空氣阻力的存在,馬達是會等速度旋轉的。
我們控制馬達針對的是定子線圈,而轉子因磁場變化是隨動的,在開環運轉時可以先不關心轉子的狀態,只有在進行閉環控制的時候,才開始由編碼器去讀取轉子位置。故而以下所有討論均圍繞著開環狀態中的定子線圈進行。
首先我們用兩個正交放置的線圈,來取代電機定子中120度分佈的三相線圈,並將三相電流投射到α和β軸,並用Iα和Iβ來等效電機的三相電流ia, ib,ic,這樣透過Iα和Iβ這兩路電流來驅動這一對正交線圈,就可以等效的驅動三相線圈了。此方法最早由克拉克女士提出,稱為克拉克變換。
在馬達運轉時,如果定子產生的磁場方向不變化,那麼這個磁場會吸引轉子到一個固定的位置後不再旋轉,馬達就會鎖定在這個位置,類似於步進馬達的定位。如果把磁場旋轉一個小角度,那麼轉子也會被磁場吸引到這個新角度。
定子的三個線圈所產生的磁場等效為某一個方向上的磁場,而這個磁場也可以由同兩個正交佈置的線圈來產生。這個過程稱為帕克變換。
-
顯然這兩個變換過程存在某種對應關係,克拉克變換用的是電流,帕克變換用的是磁場,而電流乘以電感就是磁場,於是這兩個變換可以連接起來,這樣我們就可以通過磁場的方向和強度,來驅動馬達。
SVPWM實現的就是具體的每個相給多少電壓,由於相電阻和相電感是定值,也就實現了每個相的電流控制,使電機旋轉一個小小的角度,然後重複這個過程,電機就轉起來了。
歸一化的馬達座標圖
-
如上圖所示,
黑色的ABC,表示馬達的定子線圈的三個相,是馬達最基礎的座標系,它的電流為ia,ib,ic
綠色是α和β座標系,表示用兩個的正交線圈去模擬這三個相,座標係為α和β。對應的,它的電流為Iα和Iβ
藍色的是轉子座標系d,q,它本來表示的是磁場,而電流乘以電感就是磁場,所以它也可以等效為id,iq,因為轉子是不停的旋轉的,所以會有一個θ角表示轉子的位置。
力矩控製或者叫力矩環
FOC驅動無刷馬達時,對於三相無刷馬達來說,是以3路正弦波來驅動的,如下圖。
-
這裡有一個背景知識,對於真實的電機系統來說,由於摩擦阻力,空氣阻力的存在,給定一個固定的力矩,電機會保持一個固定的轉速,這也就是電機控制最根本的性質,也叫力矩控制,或者叫力矩環。
這個力矩是怎麼來的呢,它來自於UVW或是叫ABC三相的驅動電流。例如我們以1KHz的頻率驅動MOS管半橋,那麼我們需要每秒計算1000次Y的值,X的值就是0秒,0.001秒,0.002秒…直到0.999秒,並相應的計算出Y的值,以驅動3相線圈,使得每個時刻定子產生的磁場,均平行於轉子下一步應該到達的的磁場,如此可以獲得最大的驅動力。
剛剛描述的是開環工作狀態,閉環其實也類似,只是任意時刻馬達的實際位置是由編碼器給出,而不是由時間計算得出。
顯然在任意一個時刻,如果驅動電流不再變化,其電流大小決定了定子產生的磁場的強度,而這並不會改變馬達的旋轉速度,只會改變馬達的保持力矩,也就是扭力,單位是Nm。馬達就會停在目前位置保持鎖定狀態。決定馬達旋轉速度的,是定子磁場強度與磁場變化的速度的乘積。
這種透過控制力矩來驅動馬達旋轉的方式叫做力矩控制,是馬達控制中最頻繁控制也是最核心的環路,也叫做力矩環。
Permalink blog/2024-05-03_share_嵌入式開發--無刷馬達學習1--foc簡介.txt · Last modified: 2024/05/03 09:22 by
jethro