0. 前言
前段時間做了一個永磁同步電機無感控制的項目,想總結(jié)一下,做個比較基礎(chǔ)易懂的文章方便大家入門,主要介紹以下幾個方面:
1.FOC控制算法、坐標(biāo)變換
3.SVPWM
4.過調(diào)制
5.相電流檢測及重構(gòu)(單電阻、雙電阻及三電阻采樣)
6.轉(zhuǎn)子位置及速度提?。ɑび^測器、低通濾波器、鎖相環(huán))
7.PMSM無感控制的啟動
計劃寫完上述內(nèi)容后再開始寫一些別的控制算法(MTPA、弱磁控制、電流前饋補償、高頻注入等)
1. 什么是FOC
FOC 是一種電機控制技術(shù),全稱為 Field Oriented Control(磁場定向控制),也稱作矢量控制。該技術(shù)可以提高電機的效率、控制穩(wěn)定性和精度,廣泛應(yīng)用于電機驅(qū)動系統(tǒng)中,是目前無刷直流電機(BLDC)、永磁同步電機(PMSM)、感應(yīng)電機的高效控制的最優(yōu)方法之一。
2.FOC控制和六步換相控制的區(qū)別
控過無刷直流電機BLDC的小伙伴應(yīng)該都知道有六步換相控制,F(xiàn)OC控制和六步換相控制都是用來控制電機的方法,但它們的原理和控制方式略有不同。
六步換相控制是一種較為簡單的電機控制方法,它將電機的六個電極分為三個相,每個相對應(yīng)兩個電極,然后通過依次通電、斷電,來實現(xiàn)電機的轉(zhuǎn)動。這種控制方式對電機的控制比較粗略,不能實現(xiàn)對電機轉(zhuǎn)速和轉(zhuǎn)矩的精確控制。
FOC控制則是一種更為精確、先進(jìn)的控制方式。它將電機的空間磁場分解成水平和垂直兩個分量,然后對這兩個磁場分量分別進(jìn)行控制。通過調(diào)節(jié)兩個磁場分量的大小和相位差,就可以實現(xiàn)對電機的精確控制,包括轉(zhuǎn)速、轉(zhuǎn)矩、效率等方面。相對于六步換相控制,F(xiàn)OC控制可以使電機效率更高,噪音更小,并且可以實現(xiàn)更佳的控制性能。缺點是FOC控制需要更高的計算能力和控制算法,因此復(fù)雜度比六步控制要高,對控制芯片會有更高的要求。
3. FOC的原理
FOC的雙環(huán)控制(電流環(huán)、速度環(huán))內(nèi)環(huán)為電流環(huán),外環(huán)為速度環(huán)。
雙環(huán)控制通過控制電流的大小可以實現(xiàn)電機轉(zhuǎn)速的精確控制,整個雙環(huán)控制的框圖如下圖所示:
圖中foc的內(nèi)環(huán)分為六個步驟(Step1、Step2、Step3、Step4、Step5、Step6),涉及三個坐標(biāo)系(三相靜止坐標(biāo)系(A-B-C)、兩相靜止坐標(biāo)系(α-β)、旋轉(zhuǎn)坐標(biāo)系(d-q))、三種坐標(biāo)變換方法(Clark變換、Park變換、反Park變換)、一個控制算法(PID控制算法)、一個脈寬調(diào)制方法(SVPWM)、一個轉(zhuǎn)子位置及角速度估算方法,大家先記住有這些東西,不理解沒關(guān)系,我們先對著框圖梳理一下FOC的整個流程,之后再給大家一一講解。
FOC的整個過程是這樣的:
1.采集三相電流IA、IB、IC;
2.將三相電流進(jìn)行Clark變換得到兩相靜止坐標(biāo)系下的電流Iα、Iβ;
3.再將Iα、Iβ進(jìn)行Park變換得到旋轉(zhuǎn)坐標(biāo)系下的電流Id、Iq;
4.利用Iα、Iβ和Uα、Uβ利用觀測器估算出轉(zhuǎn)子的轉(zhuǎn)速Speed_est以及角度θ;
5.計算轉(zhuǎn)子的實際轉(zhuǎn)速Speed_est與設(shè)定的目標(biāo)轉(zhuǎn)速Speed_ref的誤差
6.將誤差丟入PI控制器,執(zhí)行器輸出Iq_ref;(肯定會有人疑問為什么Id_ref=0,這個后面會講到)
7.計算Id、Iq與設(shè)定值Id_ref、Iq_ref的誤差;
8.將誤差分別丟入PI控制器,執(zhí)行器分別輸出Ud、Uq;
9.Ud、Uq進(jìn)行反Park變換得到Uα、Uβ;
10.最后Uα、Uβ經(jīng)過SVPWM變成作用在三相上的電壓UA、UB、UC;
看完這里肯定有人一頭霧水,F(xiàn)OC控制它到底在控制什么???這些變換到底是在干么???為什么要變來變?nèi)ィ???/p>
大家先了解一下這個框圖就行,看完后面的內(nèi)容再回過頭來看這個框圖就會恍然大悟了。上面這些問題接下來我會一一講解。
4. FOC到底在控制什么
我們用手或者外部的其他機構(gòu)勻速轉(zhuǎn)動PMSM,用示波器觀察它的三相電壓,會看到如下的波形:

波形是三個兩兩相差120°的正弦電壓波形,那么反過來我們在三相上輸入三個相位相差120°的正弦電壓,電機就會勻速轉(zhuǎn)動起來。那我們輸入的電壓是正弦的那激勵出來的電流是不是也是正弦,這樣的話我們通過采集電流的波形,控制電流按照正弦波去變化,電機就能旋轉(zhuǎn)起來了。(在這里先埋兩個坑,后面講SVPWM時再給填上,大家想一下SVPWM模塊輸出的端電壓波形是不是正弦的???是不是只有正弦的端電壓才能激勵出正弦的相電流???)
綜上所述FOC控制其實就是在控制三相電流按照正弦變化,同時控制三個變量按照幅值不變的正弦波一樣變化是很困難的,控制器設(shè)計也很復(fù)雜,因此我們需要簡化控制變量,這時候就輪到Clark和Park變換出場了。
現(xiàn)在大家知道FOC控制的變量什么了吧,就是在控三相電流,讓三相電流按照正弦變化。
5. FOC涉及到的坐標(biāo)變換
4.1 Clark變換(三相靜止坐標(biāo)系 to 兩相靜止坐標(biāo)系)
首先我們要定義一個三相靜止坐標(biāo)系,以電機A相的方向畫出三相靜止坐標(biāo)系的A軸,逆時針相差120°畫出B軸,同樣這樣畫出C軸。這三個軸上的基向量是非正交的,我們是不是可以通過某種變換將三相靜止坐標(biāo)系里面的向量變換到兩相靜止坐標(biāo)系?
通過Clark變換我們可以達(dá)到上述目的,變換后的坐標(biāo)系命名為兩相靜止坐標(biāo)系 α-β,α軸的方向與電機A相的方向相同,β軸垂直于α軸,變換公式如下(乘以2/3是為了等幅值變換):
把我們要控制的三相電流進(jìn)行Clark變換,變換后的波形依舊是正弦波,不過我們要控制的變量少了一個。
變換前后的波形如下:
雖然說我們要控制的變量少了一個,但是被控量依舊是兩個非線性的量,不適合用PID這類線性控制器,因此我們要想辦法把它線性化,通過Park變換我們可以達(dá)成該目的。
4.2 Park變換(兩相靜止坐標(biāo)系 to 兩相旋轉(zhuǎn)坐標(biāo)系)
接下來我們要建立一個新的坐標(biāo)系兩相旋轉(zhuǎn)坐標(biāo)系 d-q,它是隨著電機的轉(zhuǎn)子不停旋轉(zhuǎn)的,我們以轉(zhuǎn)子的磁場方向(轉(zhuǎn)子N極方向)為d軸正方向,以垂直于轉(zhuǎn)子磁場的方向為q軸方向,d軸可以稱為直軸,q軸稱為交軸,旋轉(zhuǎn)坐標(biāo)系 d-q與兩相靜止坐標(biāo)系 α-β的夾角是θ。
我們可以把兩相靜止坐標(biāo)系上的電流變換到旋轉(zhuǎn)坐標(biāo)系上,變換公式如下:
把α-β坐標(biāo)系下的電流進(jìn)行Park變換,變換后我們會發(fā)現(xiàn),兩相旋轉(zhuǎn)坐標(biāo)系下兩個控制變量都被線性化了:
那么原來需要我們控制的三個非線性的量,就被我們簡化成了兩個線性的量,所以接下來我們就可以使用線性控制器PID了,用這兩個值作為反饋控制的對象,通過反饋不斷的調(diào)整Ud和Uq,從而使激勵出來的電流Id、Iq達(dá)到我們想要的參考值Id_ref、Iq_ref。
4.3 反Park變換(兩相旋轉(zhuǎn)坐標(biāo)系 to 兩相靜止坐標(biāo)系)
第2章開頭我們講了FOC的內(nèi)環(huán)(電流環(huán))控制框圖,我們可以看到Step#3的PI控制器的輸出是Ud和Uq,但是Ud和Uq是不能直接作用在電機的三相上面的,所以我們得再將dq軸的電壓向量再反變換回去,得到能作用在電機三相上的相電壓Ua、Ub、Uc。這時有人會問了,那反變換回去不是首先反Park變換再反Clark變換就行了,為什么最后一步是SVPWM而不是反Clark變換???
這個我們后面講SVPWM時再講為什么不是反Clark,我們先看一下反Park變換。反Park變換顧名思義是將Park變換后得到的dq軸上的向量給變換回去得到αβ軸上的向量。
其變換公式如下:
變換前后的波形如下圖所示:
ok到這里foc的大致流程就過了一遍,下一篇文章我會詳細(xì)講解PID控制器的作用原理,在之后就來填上SVPWM埋下的坑。
6. FOC如何控制的電機的轉(zhuǎn)速
前面我們將了FOC其實就是在控制電機的電流大小來使得電機轉(zhuǎn)動的,由于控制三相電流比較麻煩,所以我們用了Clark和Park變換,使得控制的電流線性化了,得到了Id和Iq。
那么Id和Iq是如何影響電機轉(zhuǎn)動的呢?如果想讓電機加速或者減速我們應(yīng)該怎么控制Id和Iq的大小呢?
首先我們知道電機轉(zhuǎn)動,是因為受到了力的作用,這個力是由磁場產(chǎn)生的,我們叫它電磁轉(zhuǎn)矩,記作Te,Te的公式如下:
式中P為極對數(shù),Ψf為永磁體磁鏈,Ld、Lq分別為d、q軸的電感,id、iq分為別為d、q軸電流。
對于表貼式的電機Ld和Lq是相等的,內(nèi)嵌式的電機Ld一般小于Lq;
如果我們控制的是表貼式的電機大括號里的第二項就消掉了,電磁轉(zhuǎn)矩Te的大小只與Iq相關(guān),增大Iq,Te隨之增大,電機的角加速度隨之變大;
如果我們控制的是內(nèi)嵌式的電機,電磁轉(zhuǎn)矩Te的大小與Id、Iq相關(guān),增大Iq,Te隨之增大,電機的角加速度隨之變大,并且若Id為負(fù)值時,可以產(chǎn)生正向的電磁轉(zhuǎn)矩,負(fù)地越大,Te越大,電機的角加速度越大。
本系列文章都是針對表貼式電機來講解地,因此Ld與Lq相等,只需要把Id電流控制到0就可以了,這也就是為什么前面FOC框圖里面地Id_ref = 0的原因。
7. 總結(jié)
本節(jié)主要講了FOC的大致流程,帶大家先了解FOC到底是個什么東西在做什么,各個模塊具體的原理會放到后面的章節(jié)詳細(xì)講解。
FOC其實就是通過控制,相電流按照正弦變化,從而產(chǎn)生出旋轉(zhuǎn)的磁場,控制電機轉(zhuǎn)子轉(zhuǎn)動。具體流程包括以下幾個步驟:
通過測量電機運行時的三相定子電流,得到Ia、Ib、Ic。
將三相電流通過Clark變換轉(zhuǎn)化為兩相電流Iα和Iβ,這是兩個正交的電流信號。
Iα和Iβ通過Park變換得到旋轉(zhuǎn)坐標(biāo)系下的電流Id和Iq。
Id的參考值決定了電機轉(zhuǎn)子磁通量,Iq的參考值決定了電機的轉(zhuǎn)矩輸出大小。二者各自的實際值與參考值進(jìn)行比較得到的誤差,作為電流環(huán)PI控制器的輸入。通過PI控制計算輸出得到Vd和Vq,即要施加到電機繞組上的電壓矢量。
利用觀測到的電機角度,Vd和Vq經(jīng)過Park逆變換到兩相靜止坐標(biāo)系上。該計算將產(chǎn)生下一個正交電壓值Vα、Vβ。再采用SVPWM算法判定其合成的電壓矢量位于哪個扇區(qū),計算出三相各橋臂開關(guān)管的導(dǎo)通時間。最后經(jīng)過三相逆變器驅(qū)動模塊輸出電機所需的三相電壓。
-
電機控制
+關(guān)注
關(guān)注
3559文章
1937瀏覽量
270635 -
永磁同步電機
+關(guān)注
關(guān)注
28文章
876瀏覽量
50118 -
PMSM
+關(guān)注
關(guān)注
14文章
248瀏覽量
42377 -
FOC控制
+關(guān)注
關(guān)注
0文章
47瀏覽量
3067
發(fā)布評論請先 登錄
相關(guān)推薦
淺析永磁同步電機(PMSM)的FOC閉環(huán)控制

PMSM常見的無感FOC方法
笙泉BLDC MCU: 應(yīng)用于FOC無感控制
無感FOC的控制原理詳細(xì)資料說明

評論