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

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

無(wú)感FOC方案原理機(jī)器控制難點(diǎn)分析

STM32 foc2.0無(wú)感驅(qū)動(dòng)PMSM電機(jī)難以啟動(dòng)成功怎么解決?
小米平衡車(chē)無(wú)感FOC控制?
PMSM常見(jiàn)的無(wú)感FOC方法
笙泉BLDC MCU: 應(yīng)用于FOC無(wú)感控制
無(wú)感FOC的控制原理詳細(xì)資料說(shuō)明

【硬聲推薦】電機(jī)FOC控制視頻合集
無(wú)刷直流電機(jī)、永磁同步電機(jī)及FOC控制算法簡(jiǎn)介

評(píng)論