一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

從零開始之電機FOC控制

張飛實戰(zhàn)電子官方 ? 2025-04-23 19:34 ? 次閱讀

我們將撕開FOC神秘而虛偽的面紗,以說人話的方式講述它。真正的做到從零開始,小白一看就會,一學就廢。


如果覺得有用的話,就點個贊唄,純手碼。


一、什么是FOC?

FOC是Field Orientation Control的縮寫,字面意思是場方向控制,在電機應(yīng)用場景下就是磁場方向控制。


現(xiàn)在問題來了,挖掘技術(shù)哪家強?不是,走錯了再來,那么問題來了,就不能像小時候四驅(qū)賽車馬達一樣,通個電直接就轉(zhuǎn)了,不簡單粗暴多了,為啥電機控制就要用到FOC呢?這個問題得問你啊,你不用它不就沒有那么多屁事了。


二、學習門檻

FOC是關(guān)于電機的一種驅(qū)動方式,由于這個東西過于高深,不建議啥都不懂的小伙伴學習,所以要了解并使用它,得具有以下理論基礎(chǔ):


初中物理,部分電磁學,需要明白如何由電生磁。

高中物理,力的分解與合成。

高中數(shù)學,向量運算,向量=矢量;三角函數(shù)。

電路、程序基礎(chǔ),這個就不用多說了,懂的都懂。

三、電機構(gòu)成

電機分類大概如下所示。


f64faa6c-2036-11f0-9434-92fbcf53809c.png


一般的移動或小型的應(yīng)用場景因為電源是電池類型為低壓直流,所以較為常見的為直流電機。


3.1 有刷電機

有刷電機,也就是四驅(qū)車馬達電機那種,內(nèi)部結(jié)構(gòu)如下圖所示。


f6670cca-2036-11f0-9434-92fbcf53809c.png


正常情況下,要讓電機轉(zhuǎn)動很簡單,用手撥就可以讓電機轉(zhuǎn)動,現(xiàn)在都什么時代了,還要自己動手?那有什么能夠代替我的手呢,就是用另外一種力替代我手撥動的這個力就行了,萬有引力行不行呢,不行,雖然說兩個物體相互吸引,但是這個力太小了,而且不能控制大小,所以我需要一種力氣大小可控的力。


磁鐵大家應(yīng)該都玩過,磁場越強的磁鐵吸到一起后就越難分開。根據(jù)電磁學第二定律,通電電流約大,磁場越強,那么磁力也就越大,那這力氣不就來了嘛。


有了力氣,那么我就用上去唄,我們定義上面能轉(zhuǎn)動的磁鐵叫做轉(zhuǎn)子,下面固定不動的磁鐵叫做定子,用了之后發(fā)現(xiàn),也只能動一下,要讓它連續(xù)轉(zhuǎn)動,好像還要合計合計。如果當要達到穩(wěn)定狀態(tài)時,改變定子的磁極,這時候會產(chǎn)生一個排斥力,讓它繼續(xù)轉(zhuǎn)動,只要我在合適的時間變換定子的磁極,那轉(zhuǎn)子不就一直在轉(zhuǎn)動。


用手動變化定子磁極的話太累了,根據(jù)初中物理的安培定則即右手螺旋定則,線圈+電流=磁鐵,而且方向可控,同時磁力大小與電流成正比。PS:電磁學三大定律:法拉第電磁感應(yīng)定律、安培環(huán)路定理、麥克斯韋-安培定律,描述了電場和磁場之間的相互作用關(guān)系。


f684ef38-2036-11f0-9434-92fbcf53809c.png


于是乎有了下面的狀態(tài),


f696dfc2-2036-11f0-9434-92fbcf53809c.jpg


當要達到穩(wěn)定狀態(tài)時,改變一下電流方向,線圈磁極也跟著改變后,就會產(chǎn)生一個繼續(xù)波動的力,如下圖。


f6a61d16-2036-11f0-9434-92fbcf53809c.png


有刷電機,刷子和換向器的作用,就是更換電流方向。一個線圈、一個磁極、一個刷子+換向器就能實現(xiàn)轉(zhuǎn)動了,一臺電機原型機就出來了。


為什么拆過的那些電機有好幾個磁鐵和線圈呢?不是一個就夠了么,搞那么多不是浪費。你聽我解釋,我有借口,不是,我有理由這么做,多線圈和磁極的設(shè)計有以下目的和優(yōu)勢:1、增強轉(zhuǎn)矩,可以提供更多的磁場與線圈的相互作用,進一步增強轉(zhuǎn)矩。2、平滑轉(zhuǎn)動,通過交替激活不同的線圈,可以使電機的輸出轉(zhuǎn)矩更加連續(xù)和均勻,減少震動和振動。3、改善運行特性和控制性能等。


不過話說回來,咱還沒搞懂原型機怎么轉(zhuǎn)動呢,你就跟我扯什么性能,我這不是話說開了就收不住,書接上回,以有刷電機的原型機為例分析原型機怎么轉(zhuǎn)動的,直接花大價錢拿一個奧迪雙鉆夢之隊經(jīng)典四驅(qū)車馬達來分解說明。


四驅(qū)馬達車實物內(nèi)部圖如下所示。

f6670cca-2036-11f0-9434-92fbcf53809c.png


根據(jù)線圈與電刷的接觸程度可以分為以下四個過程,電機轉(zhuǎn)動就在這四個過程之前依次不斷循環(huán)。這里驅(qū)動電源始終是直流不用變化,變化的是線圈的接觸改變線圈里面流過的電流,從而完成磁場的轉(zhuǎn)換。

f6dfec9e-2036-11f0-9434-92fbcf53809c.giff6fced58-2036-11f0-9434-92fbcf53809c.png


至此有刷電機的轉(zhuǎn)動分析完成,而實際有三個線圈是為了規(guī)避圖1的狀態(tài),避免卡死到中間不轉(zhuǎn)的情況。其他電機也是從這個基礎(chǔ)上延伸出來,俗話說的好,萬丈高樓平地起,基礎(chǔ)了解完了就可以開始深一步的學習。


3.2 無刷電機

無刷電機,常見四旋翼無人機電機,內(nèi)部結(jié)構(gòu)如下圖所示。


f71f2cb0-2036-11f0-9434-92fbcf53809c.png

無刷電機,顧名思義相比較上面的有刷電機,無刷就是沒有刷子,那沒有刷子的話,如何完成換向,同時這么做的優(yōu)點是什么,對吧,沒有好處你跟我整這么一出,那別人肯定不買賬,那么聽我慢慢道來。還有就是為啥是三相的?


了解一下三相電機的優(yōu)點,主要原因:三相電源不是同時交替,而是同一時刻每相相差120°相位,這就意味著在任意時刻,三相提供的電壓總和相同,相當于一個恒定的電源,這是單向系統(tǒng)不具備的。


其他優(yōu)點:


增加帶負載能力,同等條件下,三相能運輸?shù)墓β适菃蜗虻娜叮驗橛腥€。

三相電機還具有更高的功率因數(shù),這意味著它們在給定負載和效率下消耗更少的能量。

相比較單向的脈沖,三相提供恒定功率,使電機運行更加穩(wěn)定。

等等,但是也有缺點,相比較單向電機應(yīng)用起來復(fù)雜等。

反正就是優(yōu)勝劣汰的結(jié)果,導(dǎo)致這玩意就是三相結(jié)構(gòu),而你就是要了解學習它。


好了既然定下了電機構(gòu)造,然后來分析一下,由上面有刷電機的了解,線圈內(nèi)的電流是需要換向才能讓電機轉(zhuǎn)起來的。


單向有刷電機,通電就轉(zhuǎn),因為內(nèi)部有電刷和換向器完成線圈電流的換向,三相無刷電機沒有電刷,外部驅(qū)動用MOS管開關(guān),完成線圈內(nèi)電流的換向。


按照有刷電機的邏輯去驅(qū)動三相電機,按一定順序依次將每一個線圈通電,這個過程稱為六步換向法。三相電機線圈的控制一共有8種狀態(tài),去掉全開(111)和全關(guān)(000)兩種運行過程中沒用的狀態(tài),剩6種,把它分布到電機上去,如圖所示。

f74654ca-2036-11f0-9434-92fbcf53809c.png


f7668f6a-2036-11f0-9434-92fbcf53809c.png

按照順序驅(qū)動電機就可以控制正反轉(zhuǎn)了,如下圖,霍爾傳感器數(shù)據(jù)代表線圈狀態(tài),下表是力矩情況。


f77c512e-2036-11f0-9434-92fbcf53809c.jpg

可以看出轉(zhuǎn)矩一點都不平滑,有大有小,為了使電機轉(zhuǎn)動更快,能源轉(zhuǎn)換效率更高,就不能使用這種驅(qū)動方式。


那可能就會有人問了,有沒有一種方式,可以控制磁場的大小,每時每刻都讓轉(zhuǎn)動方向的磁力維持最大,那么這樣的情況下,能量的轉(zhuǎn)換效率也越高,電機的轉(zhuǎn)速就越快,是不是很妙啊。


不知道怎么做之前,先取個名字吧,不如就叫做磁場方向控制Field Orientation Control,簡稱FOC。


四、FOC學習

需要控制磁場力,首先要分析磁場力,然后根據(jù)想要達到的狀態(tài)去控制磁場最后達到目標狀態(tài)??梢苑纸鉃橄旅嫒齻€步驟:


分析磁力:目的在于要知道如何去控制它

采集數(shù)據(jù)和計算誤差:采集到實際的數(shù)據(jù)并與設(shè)定的數(shù)據(jù)與實際數(shù)據(jù)誤差

調(diào)節(jié)輸出:將誤差反饋控制輸出。


4.1分析磁力:

那么如何優(yōu)化這個控制呢,那么從數(shù)學和物理學的角度出發(fā)分析出解決方案,設(shè)某一時刻,磁鐵和線圈的磁場如下所示。

f78f8ffa-2036-11f0-9434-92fbcf53809c.png


以轉(zhuǎn)子磁鐵一邊為原點,建立直角坐標系,這個坐標系隨磁鐵旋轉(zhuǎn),所以稱為旋轉(zhuǎn)坐標系,平行于磁鐵的稱為磁軸,垂直于磁鐵的稱為旋轉(zhuǎn)軸。


將磁鐵所受到的力分解到這兩個坐標軸上,并命名為Q正交力,D正向力。轉(zhuǎn)子在運行過程中受到這兩個力的作用,在其中D不做功,沒啥作用,所以要把這個力控到0,另一個力Q旋轉(zhuǎn)軸上的力,用于旋轉(zhuǎn),如想要獲得最大轉(zhuǎn)速,那么就使轉(zhuǎn)子受到的Q正交力始終保持最大,D為0,這種情況下,效率最高,轉(zhuǎn)速最快。同樣的道理,如果Q為0,D最大,那么電機就處于扭矩最大的靜止狀態(tài)。


接下來將三個線圈的力作用分析到磁鐵上去,首先對線圈磁場進行分析,因為磁力的大小是不知道的,但是根據(jù)電磁學,力的大小與流過線圈的電流大小成正比,所以將電流大小等效為力的大小。又因為定子線圈相對位置固定即相互夾角為120°,電流(磁力)矢量圖如下所示。

f7add96a-2036-11f0-9434-92fbcf53809c.png

如何將這個力分析到磁鐵上去呢?


下面的目的就是解答一道數(shù)學題,問題:在已知兩個坐標軸:線圈磁場力坐標系和磁鐵旋轉(zhuǎn)坐標系,線圈磁場力坐標軸有三個磁力向量大小為Ia、Ib、Ic,互相間隔120°,兩個坐標系的夾角為θ范圍在0-360°,將線圈磁場力坐標系上的三個磁力向量分解導(dǎo)磁鐵旋轉(zhuǎn)坐標軸上,并求出其大小。


解:整個過程大致是將一個坐標系上的三個向量(三相磁力)變換到另一個夾角為θ的坐標系上的兩個坐標軸上,這個過程用數(shù)學上稱之為解耦。


答:根據(jù)參考答案可知,


步驟1:先將三個向量變成兩個向量,


步驟2:根據(jù)θ,將兩個向量分解到磁鐵旋轉(zhuǎn)坐標軸上。


最終我們將三個線圈產(chǎn)生的磁力轉(zhuǎn)換為轉(zhuǎn)子磁鐵受到的Q正交力和D正向力。


人們喜歡將步驟1叫做clarke變換,步驟二叫做park變換。其實這兩個變換的本質(zhì)還是向量的正交分解和加減運算。


clarke變換:


f7bf5ea6-2036-11f0-9434-92fbcf53809c.png

由:

f7da84a6-2036-11f0-9434-92fbcf53809c.png


可得:

f7ec8020-2036-11f0-9434-92fbcf53809c.png


Park變換:


f804f358-2036-11f0-9434-92fbcf53809c.pngf81af5b8-2036-11f0-9434-92fbcf53809c.png


這里,因為線圈坐標系是固定的,磁鐵坐標系是旋轉(zhuǎn)的,磁鐵坐標系與與線圈坐標系為θ,這個角度是怎么知道的呢?因為轉(zhuǎn)子會裝上一個位置傳感器,即編碼器、霍爾傳感器等,用來感知轉(zhuǎn)子的位置,所以這個角度是已知的。


綜上,知道兩個線圈的電流大小和轉(zhuǎn)子位置后,就知道當前轉(zhuǎn)子的受力情況,為啥不是三個線圈?因為三相線圈接法使三相電流總和為0。


4.2 采集數(shù)據(jù)和計算誤差:

由上述我需要采集的數(shù)據(jù):


當前線圈電流值:通過電流三個線圈的電流值,可以得到三個線圈產(chǎn)生的磁力。

轉(zhuǎn)子位置狀態(tài):速度、當前角度值等,通過角度,將磁力分解到轉(zhuǎn)子上,形成旋轉(zhuǎn)軸的Q正交力和磁軸的D正向力。這個角度可以通過編碼器或者霍爾傳感器獲得。速度用于后續(xù)的控制。

我需要確定的控制狀態(tài):


根據(jù)設(shè)定的控制狀態(tài)轉(zhuǎn)換為Q、D參數(shù)。

例如,在一定轉(zhuǎn)速的情況下,盡量減小無用的D,使Q保持為定值而不是像六步換向法那樣力矩有大有小,這種情況下能量轉(zhuǎn)換效率最高。

其他控制:位置閉環(huán)、力矩閉環(huán)等。

4.3 控制:

以轉(zhuǎn)速一定為例,實際速度可以通過實時采集位置數(shù)據(jù)/時間得到。再根據(jù)設(shè)定的速度與實際速度的誤差去改變力矩大小,這個過程稱為反饋調(diào)節(jié),工業(yè)上常用PID算法調(diào)節(jié)誤差,注:這個誤差值的大小取值可能是0-最大速度的任意值。


通過誤差值,按照PID算法系數(shù),可計算出下一個控制狀態(tài)的Q、D值,然后將這個Q、D施加到線圈上去改變電機運行狀態(tài),當誤差為0時就達到了設(shè)定的目標狀態(tài),下面內(nèi)容就是講這方面的。


那么問題來了,已知Q、D,如何將這兩個參數(shù)轉(zhuǎn)換為磁場力?答案是通過控制線圈,進而控制轉(zhuǎn)子磁場,最后達到控制效果。


有兩個問題需要解決,1、如何控制線圈電流,從而達到控制磁場的目的。2、Q、D值如何轉(zhuǎn)換為線圈電流的控制量。


首先第1點:


由電磁學可知,線圈的磁場大小與流過線圈的電流成正比,而線圈電阻一定,所以施加在線圈兩端的電壓大小也與線圈磁場成正比。于是乎,我改變線圈電壓不就等于改變線圈電流,不就等于改變磁場,不就等于改變對轉(zhuǎn)子的磁力了么。


那么問題來了,最終控制量Q、D大小任意、可正可負,目前線圈電壓就兩種,那么為0要么為1,這大小怎么改變呢?別急,有一種東西叫做脈寬調(diào)制,PWM(Pulse Width Modulation)。


大概意思是一個幅值為1V的方波,通過調(diào)節(jié)占空比可以將方波等效為0-1V之間的任意電壓,如下圖所示。

f82a11ec-2036-11f0-9434-92fbcf53809c.png


將目標控制量用PWM調(diào)制出來就可以實現(xiàn)控制了。


所以第1個問題答案:通過PWM控制線圈電壓就可以達到控制線圈磁場的目的。


然后第二點:


這就相當于線圈磁力轉(zhuǎn)換為轉(zhuǎn)子受力的逆變換,將旋轉(zhuǎn)坐標系下的兩個向量轉(zhuǎn)換為固定坐標系下的三個線圈電壓向量,再通過第一點實現(xiàn)控制。


1、將旋轉(zhuǎn)坐標系兩個向量轉(zhuǎn)換固定坐標系下的兩個向量,這個過程需要用到park逆變換,如下圖。

f844b420-2036-11f0-9434-92fbcf53809c.pngf857ac9c-2036-11f0-9434-92fbcf53809c.png

由向量的運算,可將轉(zhuǎn)換后的固定向量轉(zhuǎn)換為一個向量,那么這個向量就是以A為原點,隨著轉(zhuǎn)子360°旋轉(zhuǎn),如下圖。

f86a6a80-2036-11f0-9434-92fbcf53809c.png


2、如何由固定的三個線圈電壓向量合成上述轉(zhuǎn)換后的一個向量,就是后面所說的。


我們已知三個線圈向量,有六種狀態(tài)即6個向量,如下圖。


f7668f6a-2036-11f0-9434-92fbcf53809c.png


那么將三個向量合成一個大小固定繞原點旋轉(zhuǎn)360°的向量,大概意思如下圖,改變?nèi)齻€向量的大小即可。


f89f646a-2036-11f0-9434-92fbcf53809c.giff8c866da-2036-11f0-9434-92fbcf53809c.png

轉(zhuǎn)換輸出的這個過程稱為PWM調(diào)制,又因為是調(diào)制結(jié)果是合成空間矢量,所以也稱為空間矢量脈寬調(diào)制(Space Vector Pulse Width Modulation)。


總結(jié):


整個過程的流量框圖可以描述為下圖所示:

f8daf390-2036-11f0-9434-92fbcf53809c.png

經(jīng)過上述過程就已經(jīng)達到了Q、D到磁場轉(zhuǎn)換的目的了,后續(xù)就是完善控制邏輯和程序算法細節(jié)。


優(yōu)點

FOC:磁場控制,可以精確控制電機內(nèi)部線圈的磁場強度,從而達到想要的控制效果,相比較一般控制類型,這種控制效率、精度更高,性能更強、功能更多。


效率對比:


YouTube上有個實驗,在同樣的條件下,用FOC控制和六步換向法控制無刷電機風機吹動小車,測量小車移動的距離來判斷風機的效率。

f8f8a142-2036-11f0-9434-92fbcf53809c.png


同樣的條件下,F(xiàn)OC吹動玩具車的距離是六步換向法的6倍,六步換向法驅(qū)動風機轉(zhuǎn)速為17895rpm,而FOC驅(qū)動的風機轉(zhuǎn)速達到了29310rpm,快了64%。


附錄一

clark變換:一種簡化三相電路分析的數(shù)學變換α-β變換,由Edith Clarke于1937-1938發(fā)表了關(guān)于不平衡三相問題的修改計算方法的論文中提及。

f96e4ee2-2036-11f0-9434-92fbcf53809c.png

park變換:是目前分析同步電動機運行最常用的一種坐標變換,由美國工程師派克(R.H.Park)在1929年提出。派克變換將定子的a,b,c三相電流投影到隨著轉(zhuǎn)子旋轉(zhuǎn)的直軸(d軸),交軸(q軸)與垂直于dq平面的零軸(0軸)上去,從而實現(xiàn)了對定子電感矩陣的對角化,對同步電動機的運行分析起到了簡化作用。

f9813f52-2036-11f0-9434-92fbcf53809c.png


原文鏈接:

https://blog.csdn.net/qq_30993593/article/details/130846964


-- END --

免責聲明:本文轉(zhuǎn)自網(wǎng)絡(luò),版權(quán)歸原作者所有,如涉及作品版權(quán)問題,請及時與我們聯(lián)系,謝謝!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 電機控制
    +關(guān)注

    關(guān)注

    3559

    文章

    1937

    瀏覽量

    270635
  • 電機
    +關(guān)注

    關(guān)注

    143

    文章

    9212

    瀏覽量

    147823
  • 電機驅(qū)動
    +關(guān)注

    關(guān)注

    60

    文章

    1285

    瀏覽量

    87397
  • FOC控制
    +關(guān)注

    關(guān)注

    0

    文章

    47

    瀏覽量

    3067
收藏 人收藏

    評論

    相關(guān)推薦

    從零開始學電路基礎(chǔ)》(從零開始學電子技術(shù)叢書)

    電氣控制與PLC技術(shù)].劉建清.掃描版.pdf[從零開始學電子測量技術(shù)].李建清.掃描版.pdf[從零開始學CPLD和Verilog.HDL編程技術(shù)].李建清.掃描版.pdf[從零開始
    發(fā)表于 06-05 23:12

    labview從零開始

    怎么從零開始啊,哪位大神給個意見
    發(fā)表于 07-10 10:29

    從零開始學Zstack

    從零開始學Zstack四歡迎研究ZigBee的朋友和我交流。。。
    發(fā)表于 08-12 22:20

    從零開始學Zstack

    從零開始學Zstack五歡迎研究ZigBee的朋友和我交流。。。
    發(fā)表于 08-12 22:38

    從零開始學習Z-Stack

    從零開始學習Z-Stack六歡迎研究ZigBee的朋友和我交流。。。
    發(fā)表于 08-12 22:39

    從零開始學習Z-Stack

    從零開始學習Z-Stack七歡迎研究ZigBee的朋友和我交流。。。
    發(fā)表于 08-12 22:42

    從零開始學習Z-Stack8 -- 3Y 科技

    從零開始學習Z-Stack8 -- 3Y 科技
    發(fā)表于 08-12 22:57

    從零開始學習Z-Stack9 -- 3Y 科技

    從零開始學習Z-Stack9 -- 3Y 科技
    發(fā)表于 08-12 22:58

    從零開始學電子》叢書全套網(wǎng)盤分享

    /1okWVejCVM1A0y5HgWxU9Gw提取碼:vvsd【從零開始學電子叢書】從零開始學電動機控制與維修技術(shù)鏈接:https://pan.baidu.com/s/1WHS3onqXeyQH7B4yH1Jiuw提取
    發(fā)表于 06-28 18:45

    從零開始學電路基礎(chǔ)

    從零開始學電路基礎(chǔ) 電路基礎(chǔ)是學習電子技術(shù)的起步知識。本書就是為使初學者從零開始,快速掌握電路基礎(chǔ)知識而編寫的。與傳統(tǒng)的電路基礎(chǔ)教材不同的是,本書擯棄了
    發(fā)表于 03-15 16:12 ?0次下載

    電腦組裝從零開始

    電腦組裝從零開始問題解答
    發(fā)表于 06-29 17:34 ?148次下載

    從零開始搭建3D打印機

    從零開始搭建3D打印機從零開始搭建3D打印機
    發(fā)表于 01-15 16:35 ?0次下載

    [Arduino編程從零開始].[英].Simon.Monk

    Arduino編程從零開始
    發(fā)表于 01-22 13:47 ?13次下載

    從零開始android游戲編程

    從零開始android游戲編程
    發(fā)表于 03-19 11:23 ?3次下載

    STM32從零開始 - 前言:硬件準備

    STM32從零開始 - 前言:硬件準備
    發(fā)表于 11-23 17:51 ?10次下載
    STM32<b class='flag-5'>從零開始</b> - 前言:硬件準備