--- tags: 自己的東西, 實習 --- # 無刷馬達 - BLDC [TOC] # 基本結構 ![](https://www.orientalmotor.com.tw/om/knowledge/image/products/bl/bl_11.png) - 與有刷馬達一樣,讓與定子接觸的磁鐵產生互斥現象,讓轉子可以轉動。 - **差別在於**: - 有刷馬達:透過機械方式,透過電刷讓線圈產生磁場; - 無刷馬達:透過電的方式,讓周圍的定子產生磁場,讓中間的轉子互斥而轉動。 - 無刷電機的優點:**不易損壞、不易有電火花產生與EMI現象**。 - 無刷電機的缺點:**結構複雜、需要使用驅動板帶動馬達**。 - 回授訊號:無/霍爾感測器。 - 有回授訊號就可以知道目前轉子的相對位置,讓無刷馬達更準確的轉動。 ## 機械結構 - **轉子**:永久磁鐵,**定子**:線圈繞組。 - 分為內轉式與外轉式,差別在:**外轉式,轉子與定子的位置相反**。 - 由轉子與定子磁極同性互斥而產生轉距。 ## 電路架構 ![](https://i.imgur.com/oAQ3ywY.png) - 由6個MOSFET組成三相式電路,利用磁場讓中間的轉子轉動。 - 每兩個組成一半橋,總共三個半橋電路。 - 運作時,每個時脈 **僅有兩個** MOSFET被閉合。 - 在快速切換的狀況下,讓轉子與定子保持在「同性相斥」的狀態。 # 無刷馬達種類 ## 無刷直流馬達(BLDC Motor) - 額定電壓:與ESC控制器的最高頻率與負載有絕對關係 - 2212-850KV Motor + 1045螺旋槳:工作電壓為**11V** - 2212-850KV Motor + 7040螺旋槳:工作電壓為**22V** - KV值:RPM / 工作電壓 - 與電壓**呈正比**:電壓上升,轉數則線性上升 - 與匝數**呈反比**:匝數越小,轉數則變快 - 轉矩:馬達帶動負載的機械力矩。 - 轉速:馬達每分鐘的轉速。 - 轉數越高,轉矩越低,相反亦然。 - 若電壓提高,轉速也提高,在負載不變的情況,有機率**無法帶動負載**而**燒毀馬達**。 - 最大電流:馬達能承受的最大電流。 - 最大功率:馬達能承受的最大功率。 - 可以看成該馬達的**最大力量上限**,若超過此限制,有機率讓馬達燒毀。 - 槽數:定子上矽鋼片的槽數量。 - 級數:轉子上磁鐵的數量。 - 匝數:矽鋼片上面繞的銅芯圈數。 - 內轉子馬達多用於減速使用,所需轉數較高,所以級數都會在4以內。 ## 永磁同步馬達(PMS Motor) > 想到再補 # BLDC 運作方式 ![](https://pic4.zhimg.com/80/v2-0da2f2686724c2b2d001e7e202f3e697_720w.webp) - 兩個MOSEFT閉合時,會流過馬達形成迴路,透過安培右手定則,可將此迴路形成一磁場。 - 箭頭方向為S極、另一端則為N極。 - 轉子遇到同性及形成相斥,並轉動一個角度到下一位置。 ![](https://i.imgur.com/LqMDPzV.png) - MCU切換下一個MOSFET閉合邏輯,讓定子形成另一個磁場,將轉子移至下一位置,如此循環,讓馬達轉動。 ![](https://pic1.zhimg.com/80/v2-bc0091ec15f7bd19094e890bf3e90418_720w.webp) # [ESC](https://electronoobs.io/tutorial/1#) {%youtube -ymTE-Nivzw %} ## MOSFET Driver {%youtube DXyTHhUjxjk %} > [name=ChatGPT] * MOSFET的栅极(Gate)电容较大,直接由微控制器或其他低功率驱动信号驱动,可能导致开关速度慢、工作不稳定、损坏等问题 * 使用MOSFET驱动器可以提供以下优点: * 高速开关:减小MOSFET开关时的电压和电流损耗。 * 高功率:驅動器提供高电流和高电压的驱动信号,以确保MOSFET元件能够稳定、高效地工作。 * 保护功能:例如过流保护、过热保护、欠压保护等,以保护MOSFET和其他电路不受损害。 * 兼容性:可以兼容不同类型的MOSFET元件,使得设计更加灵活。 ## 電路圖 ![](https://i.imgur.com/CFtdszJ.png) # FOC vs ESC - 為「**帶動馬達旋轉的數學模型**」。 - FOC具有「**低轉速**」、「**馬達正反轉**」、「**低噪音**」等特性。 - FOC透過算法/感應器,得到當前馬達 **「準確」** 的位置。 - FOC可以實現馬達正反轉,同時利用能量回收,達到優良的煞車控制。 - FOC採用Sin波(正弦波)驅動馬達,相比ESC的方波噪音更小。 - FOC可透過「**電流(力矩)**」、「**速度**」、「**位置**」三種方式,以閉環控制馬達。 - ESC具有「**簡單**」、「**便宜**」、「**相容性高**」等特性。 - ESC由於只有簡單的方波控制,實現成本較FOC來說簡單許多。 - 驅動器成本方面,相較於FOC,ESC的所需材料也較為便宜。 - ESC不必特別做到為不同的馬達調整一次參數。 # FOC Pipeline ## 基本架構 ![](https://i.imgur.com/HQMV8JP.png) - Iq:馬達力矩,通常是一個常數 - 給多少力矩,讓定子產生多大的磁場強度帶動轉子旋轉 - I-Alpha & I-Beta:逆帕克變換後的兩相電流值 - ia & ib & ic:逆克拉克變換後的三相電流值 - 3 Phase Inverter (MOS):接收三項電流值,轉成開關訊號控制定子所屬磁場 :::warning * 通常馬達上面會有一顆編碼器,能夠偵測當前馬達所屬之電角度。 * 之後將電角度再回授給逆帕克變換進行計算。以此能得到更精確的控制。 ::: ## 克拉克(Clark)變換 - 將馬達輸出的三個相位波型做降維計算,使其變成兩個變數I-Alpha與I-Beta。 > [name=灯哥手把手教你写FOC算法 系列课程2] [![](https://i.imgur.com/YS7FgX8.png)](https://www.bilibili.com/video/BV1x84y1V76u) ### 算法與矩陣 1. 將三相Ia, Ib, 與Ic的數值變成向量,並且放到座標軸作投影變成直角坐標系。 ![](https://i.imgur.com/8bEHDQA.png) 2. 把投影的結果寫成矩陣乘法,即得到克拉克變換的基本公式。 ![](https://i.imgur.com/lxTiC1z.png) ### 等幅值克拉克(Clark)變換 1. 在論文上通常比較常見的公式。 2. 讓投影出來的I-Alpha變數可以符合原先向量的ia電流。 ![](https://i.imgur.com/wrQGedN.png) 3. 由於I-Alpha = ia,又因克西荷夫電流定律,可化簡成如下公式: <center> <img src="https://i.imgur.com/LYMEt5i.png" width=300 /> </center> <br> :::info - 由於克西荷夫電流定律,在硬體上只需知道兩相的電流(Sensor)即可求得最後一相電流。 - 呈上,可以減少硬體設計的成本。 ::: ### 逆克拉克(Clark)變換 - 將等幅值克拉克變換的公式反推,即可知道原本的三相電流,即為逆克拉克(Clark)變換。 ![](https://i.imgur.com/yPQWYZw.png) :::spoiler 等功率克拉克(Clark)變換 <center> <img src="https://i.imgur.com/IeUgXWI.png" /> </center> ::: ## 帕克(Park)變換 - 帕克(Park)變換是把馬達旋轉的物理狀態轉換成數學模型的算法。 - 需要知道I-Alpha與I-Beta電流規律,才能送給克拉克變換作降維。 ### 算法與矩陣 1. 將I-Alpha與I-Beta的坐標系上放上一個新的Q-D坐標系。 2. 並且將I-Alpha與I-Beta坐標系作降維,得到兩個值:**Iq**與**Id**。 ![](https://i.imgur.com/nnJOy8H.png) ![](https://i.imgur.com/C3W9W6d.png) :::info Alpha軸在q軸複負半軸,所以需要加一個負號。 ::: ### 逆帕克(Park)變換 - 將帕克變換取逆即可得到逆變換。 - Iq與Id兩變數升維變成I-Alpha與I-Beta。 ![](https://i.imgur.com/NfegwzW.png) ## 電流(力矩)閉環控制 ![](https://i.imgur.com/G7ejd3Z.png) ### 難處 - **無感**:獲取轉子角度 - **霍爾**:低速同步角度 - **編碼器**:提高控制精度與動態性能 # 解決方案 ## ADI Trinamic TMC4671 {%youtube -hhFyXe7TFc %} - 伺服馬達控制器IC - 磁場定向控制 FOC - 並行處理單元 - 高更新率 (~ 100KHz) - 過濾與數字插值 ### 方塊圖 ![](https://i.imgur.com/3nrv83j.png) - 四個數學變換控制器 - **克拉克 & 帕克控制器** - 解算當前馬達位置 - **反向克拉克 & 帕克控制器** - 對應馬達輸出的相電壓 - 兩個PID控制器 - **轉矩控制** - **磁通量控制** - 電流感測器 - 位置反饋系統(編碼器、霍爾感測器) # Reference - [亲手教你转起一台无刷电机 - EEworld China](http://bbs.eeworld.com.cn/thread-1181261-1-1.html) - [無刷馬達大小事 5分鐘就上手 - 東方馬達](https://www.orientalmotor.com.tw/om/knowledge/uroko_bl/bl02.html) - [直流無刷馬達原理與驅動控制 - 張雯翔、張家榮、許凱翔、常文峻](http://nfuee.nfu.edu.tw/ezfiles/42/1042/attach/81/pta_26435_4137435_05284.pdf) - [我又发现了超赞的软硬件项目,全部开源 - 面包板社区](https://mp.weixin.qq.com/s/db1xT_UNngHgE280UfIrIw?fbclid=IwAR2S4gKEkHrkj_XK-dou8nj0D63A8mj9__z3p1uaqPusMdBE1VRrPZG-W98) - [Benjamin Vedder Github Personal Page](https://github.com/vedderb) - [【自制FOC驱动器】深入浅出讲解FOC算法与SVPWM技术](https://zhuanlan.zhihu.com/p/147659820) - [Arduino Simple FOC library- 深入研究](https://docs.simplefoc.com/docs_chinese/digging_deeper) - [无刷直流电机 - 野火电机应用开发实战指南](https://doc.embedfire.com/motor/motor_tutorial/zh/latest/basis_part/brushless_DC_motor.html#id2) - [灯哥手把手教你写FOC算法 系列课程 - Bilibili](https://space.bilibili.com/493192058/channel/collectiondetail?sid=1104775)