User Tools

Site Tools

blog:2024-04-25_share_foc直流無刷馬達控制演算法_理論



2024-04-25 Share: FOC直流無刷馬達控制演算法—理論

Local Backup

1, FOC直流無刷馬達控制演算法—理論

1.1 FOC由來

  • 什麼是FOC?
  • FOC英文全程為field-oriented control,即磁場定向控制,也稱為向量控制,主要應用於直流無刷馬達的控制,透過此控制演算法可實現對直流無刷馬達的精確控制。
  • 那麼怎麼才能稱之為精確控制,FOC和普通的六步換相控制有什麼不同呢?
  • 對於直流無刷馬達的控制,採用六步換相確實可以驅動馬達運轉,但是如果從原理上深入理解一下便可以發現其缺陷,六步換相技術通過感測器檢測(通常為霍爾)當前轉子磁場位置,之後控制三相輸出產生合成磁場,透過此合成磁場吸引轉子磁場轉動,從而實現馬達的驅動。此方法的缺點是:由於只能產生六種固定的合成磁場,轉子磁場所處位置不同,所受磁力不一致,因此此方法的缺點便是對於電機力矩控制不穩定(在電機轉速較低時更加明顯),效率低(磁場產生的吸引力不能成90°完全做功)
  • 針對六步換向存在的這些缺陷,偉大的前輩們便思考出了FOC這種控制演算法。

1.2 FOC框圖

  • 以下便是FOC的控制框圖
  • FOC直流無刷馬達控制演算法-理論_框圖
  • 相信對於沒有接觸過FOC的同學,對於框圖中不懂的含義可以先不用糾結,此時只需要你對整個框圖有個大體的映像即可
  • 從框圖中大致可以看到FOC有幾個關鍵的點:
    • Park逆變換
    • Clarke逆變換
    • Park變換
    • Clarke變換
  • 大家先有映像,以上都會在接下來進行詳細講解

2、驅動電路介紹

  • 無論是直流有刷電機還是直流無刷電機,想要實現控制,根據歷史的經驗,我們都是透過工具+方法來實現。
  • 對於直流無刷電機,驅動電路由三個半橋控制電路組成,透過控制三個半橋的上下橋導通和關斷,實現逆變控制,將直流電變成交流電,簡單點理解就是可以實現流過馬達三相線圈的電流的流向控制。

  • FOC直流無刷馬達控制演算法-理論_正弦波_02
  • 上述驅動電路便是控制直流無刷馬達運轉的工具,那麼如何合理的使用此工具來實現我們的目的-驅動直流無刷的馬達呢?
  • 透過控制半橋上下橋臂在不同時刻的不同導通方式,可以實現對流過馬達三相繞組的電流控制,從而控制馬達內部合成特定角度的磁場完成馬達驅動
  • 我們先來看下六步換相控制是如何達成的,以下是六步換相的六種框圖:
  • FOC直流無刷馬達控制演算法-理論_座標變換_03

    • FOC直流無刷馬達控制演算法-理論_座標變換_04
  • 透過上述示意圖,我們應該可以清楚的理解六步換相的基本原理了,透過控制線圈的導電順序,根據右手螺旋定則產生合成磁場,根據磁鐵的異性相吸,同性相斥原理,吸引轉子磁場進行轉動
  • 而FOC最底層的原理和六步換相一致,也是透過控制線圈通電,從而控制合成的磁場方向吸引著轉子磁極;所不同的是,六步換相技術所產生的磁場固定為六個方向, FOC可以理解為將六步換相產生的任意幾個方向的磁場進行組合,合成一個新的磁場,使得合成的新的磁場始終與轉子磁場保持90°
  • 新的合成磁場角度與轉子磁場角度始終不變,磁力的大小也沒有變化,因此能確保力矩恆定; 新的合成磁場角度與轉子磁場角度始終為90°,可以確保合成磁場的力最大化做功,效率最大此外在驅動電機前我們首先需要知道一個知識:電動機與發動機的關係:電動機反過來即為發電機,透過外力轉動直流無刷電機,測量UVW三相之間任意兩相之間的電壓變化,我們可以看到輸出為三個相位相差120°的正弦波,

  • FOC直流無刷馬達控制演算法-理論_框圖_05
  • 因此如果需要驅動直流無刷電機,我們應該透過控制上述三個半橋電路,使得輸出到電機UVW三個相位相差120°的正弦波電流來驅動無刷電機。
  • 如何控制三個半橋電路產生三相相位相差120°的正弦波?以及如何實現合成磁場與轉子磁場始終保持90°相位差呢?這便是FOC所需要解決的問題了

3.FOC控制與六步換相控制比較

  • 剛剛我們從原理上簡單的講解了下FOC和六步換向的區別,而在實際控制中,FOC與六步換相還存在以下差異需要大家首先明確:
    • 控制訊號差異: FOC採用正弦波驅動,六步換相採用方波驅動
    • 控制方式區別: FOC控制中三個半橋的MOS採用三三導通,而六步換相採用兩兩導通三三導通:同一時刻有三個MOS管導通

  • FOC直流無刷馬達控制演算法-理論_座標變換_06
  • 兩兩導通:同一時刻有兩個MOS管導通

  • FOC直流無刷馬達控制演算法-理論_框圖_07

4.座標變換

  • 我們繼續看到最開始的FOC控制框圖

  • FOC直流無刷馬達控制演算法-理論_框圖_08
  • 整個控制框圖可以分成五個部分,分別對應上圖的① - ⑤,那為什麼需要做的這麼複雜呢?拿到馬達的三相電流之後直接做作為PID控制器回授輸入不好嗎?此圖看起來複雜了些,其實真正做到了化繁為簡

  • FOC直流無刷馬達控制演算法-理論_框圖_09
  • 根據我們先前的描述可知,我們從電機UVW三相檢測到的反饋電流為正弦波,同時處於靜止的abc三相坐標系,誰會願意在三相坐標系上去計算呢,受過九年義務教育的我們,都只喜歡在二維座標系上去進行簡單計算的嘛,聰明的先輩們也體會到計算的複雜性,太難的東西不利於推廣,因此經過先輩們的艱苦奮鬥,找到了一種巧妙的解決方式——座標變換。
  • 步驟①步:透過感測器取樣,得到三相電流,為了節省成本,亦可只採集其中任兩相的電流,之後根據基爾霍夫電流定律,流入節點電流等於流出節點電流,即Ia+Ib+ Ic=0 計算第三相電流,之後透過Clark變換,將靜止的三相a_b_c座標系轉換為靜止的兩相直角α_β座標系
  • Clark變換
    • 座標系:靜止三相座標系→ 靜止兩相直角座標系
    • 波形:正弦波→ 正弦波

    • FOC直流無刷馬達控制演算法-理論_框圖_10
  • 步驟②步:P輸入功率= P輸出功率+ P損耗功率

    • FOC直流無刷馬達控制演算法-理論_正弦波_11
  • 當三相繞組通以電流產生的合成磁場與轉子磁場成90°相切時, P輸出功率最大,P損耗功率最小,所產生的力效率最高;
  • 而當合成磁場與轉子磁場平行且反向時,電機會被吸住而無法運轉,P輸出功率最小,P損耗功率最大,此時馬達效率最低,同時由於損耗功率絕大部分作用於馬達的熱量損耗,因此此時電機溫升將極具增大,長時間容易燒毀電機
  • 因此在控制時,我們應盡可能的控制合成磁場與轉子磁場成90°,即上圖中的Q軸方向,而D軸方向的分量因盡可能為0(當然也有一種是控制D軸分量為負,利用同性磁極之間斥力進行作用的方法,此處不考慮)
  • 根據上述分析,我們可以隨著馬達轉動,轉子磁場不斷旋轉,合成磁場也應同步旋轉,因此便已轉子磁鐵作為參考建立D_Q軸旋轉座標系
  • 透過Park變換,將靜止兩相直角α_β座標系轉換為跟隨馬達旋轉的旋轉D_Q座標系,將正弦計算轉換為常數計算,旋轉座標系與靜止座標系的夾角為馬達此時的電角度

Park變化

  • 座標系:靜止的兩相直角座標系→ 旋轉的兩相直角座標系
  • 波形:正弦波→ 常數

  • FOC直流無刷馬達控制演算法-理論_正弦波_12
  • 2.第③步:進行PID計算,根據目標與偏差,在旋轉D_Q座標系上計算得到輸出
  • 3.第④步:透過反Park變換,將輸出所在的D_Q旋轉座標系轉換為靜止的直角座標系,即進行Park變換的反運算
  • 4.第⑤步:透過SVPWM技術,將輸出轉換為馬鞍波,UVW對地波形分別為馬鞍波,UVW三相任兩相相減得到正弦波,驅動馬達運轉

TAGS

  • 91 person(s) visited this page until now.

Permalink blog/2024-04-25_share_foc直流無刷馬達控制演算法_理論.txt · Last modified: 2024/04/25 08:48 by jethro

oeffentlich