變換到電流環(huán)整定)
簡介《現(xiàn)代永磁同步電機控制原理及MATLAB仿真》系袁雷編著的隨書配套仿真資料面向電機控制方向?qū)W生、工程師及從事PMSM算法驗證的研發(fā)人員。壓縮包共61個文件內(nèi)含36個Simulink模型slx、19個MATLAB腳本m、3個圖窗fig、2個仿真模型mdl及原書PDF整體約50.33MB按章節(jié)組織便于對應(yīng)學(xué)習(xí)。內(nèi)容覆蓋PMSM建模、Clark/Park坐標(biāo)變換、SVPWM與SPWM調(diào)制、矢量控制、直接轉(zhuǎn)矩控制、參數(shù)辨識、高頻注入及滑模/自適應(yīng)觀測器等多個典型章節(jié)每個模型均配有可運行的仿真代碼和繪圖腳本能直觀呈現(xiàn)控制算法的動態(tài)響應(yīng)與諧波特性。對于初學(xué)者可結(jié)合原書逐步搭建并理解控制原理對于工程人員可直接修改參數(shù)復(fù)用模型節(jié)省建模時間。資源已有2542人次學(xué)習(xí)適合作為課程設(shè)計、畢業(yè)設(shè)計或電機控制預(yù)研項目的參考模板。1. 同一套PI參數(shù)仿真穩(wěn)定、實物卻振蕩永磁同步電機控制差在哪一層做過永磁同步電機MATLAB仿真的人幾乎都撞過這堵墻在Simulink里調(diào)好的電流環(huán)PI參數(shù)波形漂亮得能當(dāng)教科書插圖——電流無超調(diào)、轉(zhuǎn)速穩(wěn)如直線、轉(zhuǎn)矩響應(yīng)快得像切菜??梢坏┌堰@組參數(shù)搬到實物平臺上電流紋波變大、噪聲刺耳甚至直接發(fā)散去炸管子。這是玄學(xué)嗎不是。這背后是「仿真模型里被省略的延遲」和「教科書沒寫透的離散化機制」在起作用。仿真不是實物但一個設(shè)計良好的仿真模型應(yīng)該在機制層面與你期望的物理系統(tǒng)同構(gòu)電流采樣延遲、PWM更新時機、積分飽和、死區(qū)效應(yīng)這些控制回路里的真實環(huán)節(jié)才是決定系統(tǒng)穩(wěn)不穩(wěn)的底層變量。這本書的實戰(zhàn)價值正在于此——它不只給公式還把坐標(biāo)變換、電流環(huán)整定、SVPWM調(diào)制這些環(huán)節(jié)在MATLAB里如何準(zhǔn)確建模的問題講透了。想搞懂為什么「仿真能work、實物卻翻車」就得從電機數(shù)學(xué)模型的建立那一層開始重新審視。2. dq坐標(biāo)下的真相Clark/Park變換為何是矢量控制的地基2.1 三相繞組里的「看得到、控制不住」問題永磁同步電機的定子繞組是三相空間上互差120度分布的三相電流 ia、ib、ic 在時間上互差120度電角度。你直接去控制三相電流面臨的是三個耦合的交流量它們的幅值在變、頻率在變而且磁鏈在每一相繞組上產(chǎn)生的反電動勢還與轉(zhuǎn)子位置有關(guān)。更麻煩的是轉(zhuǎn)矩并不是由某一相電流單獨決定的而是三相互相疊加的結(jié)果。在abc坐標(biāo)系下寫轉(zhuǎn)矩方程表達(dá)式是一堆正弦函數(shù)的乘積和控制上幾乎無法直接設(shè)計線性調(diào)節(jié)器。這種「物理清晰、數(shù)學(xué)混亂」的局面就是坐標(biāo)變換存在的根本理由。控制理論處理線性時不變系統(tǒng)是成熟的所以先想辦法把一個交流、耦合、時變的三相系統(tǒng)變換成一個直流、解耦、時不變的二相系統(tǒng)——這就是Clark變換和Park變換干的事。理解的鑰匙在于這兩級變換都不是物理上的繞組重組而是數(shù)學(xué)上對同一矢量的不同投影坐標(biāo)系。2.2 Clark變換從abc到αβ的投影Clark變換把三相靜止坐標(biāo)系abc投影到兩相靜止坐標(biāo)系αβα軸與a軸重合β軸超前α軸90度。等幅值約束下變換式如下function [i_alpha, i_beta] clark_transform(ia, ib, ic) % 等幅值Clark變換把三相電流投影到兩相靜止坐標(biāo)系 % 系數(shù)2/3保證變換前后電流幅值不變等幅值約束 i_alpha (2/3) * (ia - 0.5*ib - 0.5*ic); i_beta (2/3) * (sqrt(3)/2 * (ib - ic)); end注意那行注釋里的玄機。2/3這個系數(shù)對應(yīng)的是等幅值變換如果你看到哪個文獻(xiàn)用sqrt(2/3)那是在做等功率變換。兩種約束下的Park變換公式和轉(zhuǎn)矩表達(dá)式系數(shù)會不同用混了仿真里轉(zhuǎn)矩數(shù)值會差一個sqrt(3/2)的倍數(shù)但波形形狀一樣——這個錯誤極難排查因為它不報錯只讓結(jié)果「看起來有點不對」。實際工程里推薦全程統(tǒng)一用等幅值約束因為在SVPWM調(diào)制環(huán)節(jié)里電壓幅值直接對應(yīng)母線電壓等幅值約東下算出來的調(diào)制比更直觀。Clark變換之后三相交流變成了兩相交流頻率和幅值信息還在但依然隨時間變化。2.3 Park變換把「旋轉(zhuǎn)」變成「靜止」Park變換是坐標(biāo)變換的點睛之筆。它把αβ靜止坐標(biāo)系旋轉(zhuǎn)到與轉(zhuǎn)子磁極同步旋轉(zhuǎn)的dq坐標(biāo)系旋轉(zhuǎn)角度取轉(zhuǎn)子電角度θe。變換式是function [id, iq] park_transform(i_alpha, i_beta, theta_e) % Park變換從靜止兩相坐標(biāo)到旋轉(zhuǎn)dq坐標(biāo) % theta_e 電角度 極對數(shù) * 機械角度 id i_alpha * cos(theta_e) i_beta * sin(theta_e); iq -i_alpha * sin(theta_e) i_beta * cos(theta_e); end做完這一步永磁同步電機的電流從此變成了兩個直流量id 是沿轉(zhuǎn)子磁極軸線d軸的分量iq 是垂直于磁極軸線q軸的分量。關(guān)鍵在于電角度 θe 必須實時跟隨轉(zhuǎn)子位置——這就是編碼器存在的意義。也因此坐標(biāo)變換的性能直接取決于角度反饋的準(zhǔn)確性角度有偏差解耦就不徹底dq軸會出現(xiàn)殘余耦合表現(xiàn)在運行上就是電流波形里有固定頻率的脈動。這就是矢量控制的全部秘密所謂矢量控制本質(zhì)上就是「在旋轉(zhuǎn)坐標(biāo)下控制兩臺直流電機」——d軸勵磁通道和q軸轉(zhuǎn)矩通道。物理上還是那臺交流電機數(shù)學(xué)模型上已經(jīng)被你改造成了直流電機。2.4 電壓方程與轉(zhuǎn)矩方程dq域中的那一堆耦合項在dq坐標(biāo)系下表貼式永磁同步電機的定子電壓方程寫為ud Rs·id Ls·did/dt ? ωe·Lq·iq uq Rs·iq Ls·diq/dt ωe·(Ld·id ψf)方程里的 ?ωe·Lq·iq 和 ωe·Ld·id 就是交叉耦合電動勢項。轉(zhuǎn)速越高這兩項越大它們會干擾你設(shè)計的電流環(huán)帶寬。教科書里經(jīng)常用「電壓前饋解耦」來處理它把這兩項補償進(jìn)電流環(huán)的輸出里讓電流環(huán)面對的是一個更接近純一階慣性環(huán)節(jié)的控制對象。轉(zhuǎn)矩方程表貼式LdLq簡化為Te 1.5·pn·ψf·iq這就是「id0控制」能用「線性轉(zhuǎn)矩」的根源只要你把id控到0轉(zhuǎn)矩與iq嚴(yán)格成正比控制轉(zhuǎn)矩就是控制iq控制iq就是控制一個直流量線性PI調(diào)節(jié)器可以深度優(yōu)化。所以理解dq變換不只是學(xué)會兩行代碼而是要推導(dǎo)出「id0為什么能線性化轉(zhuǎn)矩」這個結(jié)論。3. 電流環(huán)PI帶寬整定、零極點對消與那一拍延遲3.1 電流環(huán)的控制對象其實是「R-L串聯(lián)回路」從電壓方程往下看如果忽略反電動勢交叉耦合項的擾動dq軸電流環(huán)的控制對象就是L·di/dt u ? R·i這個一階RL網(wǎng)絡(luò)的傳遞函數(shù)是 1/(LsR)它只有一個極點位于 s?R/L。電氣時間常數(shù) τe L/R在表貼式電機上大約是幾毫秒量級——這個極點決定了對電流指令的響應(yīng)速度。設(shè)計電流環(huán)PI調(diào)節(jié)器的教科書方法是讓PI的零點對消對象的極點也就是把PI調(diào)節(jié)器的零點放在 s?R/L 上。數(shù)學(xué)上這樣寫C(s) Kp Ki/s Kp·(s Ki/Kp)/s令 Ki/Kp R/L對象變成 1/(LsR)對消后開環(huán)傳函近似為 Kp/(Ls)。閉環(huán)傳函就化簡成了典型一階慣性G_cl(s) ≈ 1/(s/(Kp/L) 1)所以電流環(huán)帶寬與Kp的關(guān)系一清二楚ωc Kp/L而Ki由對消關(guān)系自動確定Ki Kp·R/L ωc·R。3.2 Kp和Ki的物理解釋不是調(diào)出來的是算出來的把上面的推導(dǎo)變成可落地的方法就是帶寬法整定。目標(biāo)帶寬ωc取多大取決于你期望的電流響應(yīng)速度以及一個硬約束帶寬不能超過開關(guān)頻率的1/10到1/5。舉個Simulink仿真實例取某表貼式永磁同步電機參數(shù)Rs2.875ΩLs0.0085H極對數(shù)5開關(guān)頻率10kHz。目標(biāo)電流環(huán)帶寬取1200rad/s左右。計算如下% 電流環(huán)PI參數(shù)計算帶寬法 % 對消關(guān)系 Ki/Kp Rs/Ls閉環(huán)帶寬 omega_c Kp/Ls Rs 2.875; % 定子電阻單位歐姆 Ls 0.0085; % 定子電感單位亨 omega_c 1200 * (2*pi/1000); % 目標(biāo)帶寬這里取約1200rad/s Kp omega_c * Ls; % 比例增益單位V/A Ki omega_c * Rs; % 積分增益單位V/(A*s) % 輸出 Kp 10.2; % 對應(yīng)典型仿真取值 Ki 68.7;Kp的物理意義是「每安培電流誤差對應(yīng)多少伏特電壓修正」。Kp越大電流響應(yīng)越快但太大時抗噪聲能力差而且數(shù)字控制延遲會在高帶寬下導(dǎo)致相位裕度顯著下降最后振蕩。Ki的物理意義是「穩(wěn)態(tài)誤差的積分速度」。把Ki提太高積分器會搶在電感電流還沒爬到位之前就大量累積導(dǎo)致超調(diào)與振蕩。做仿真時最常犯的毛病是先調(diào)Kp到波形看起來尖利再補Ki消除穩(wěn)態(tài)靜差——其實正確的順序是先定目標(biāo)帶寬ωc然后Kp和Ki同時算出來再看波形微調(diào)。那種「手動試探調(diào)到不炸」的玩法到了實物上必然翻車因為你調(diào)出來的參數(shù)大概率不在解耦條件上抗擾動能力完全失控。3.3 數(shù)字控制中的那一拍延遲仿真忽略它就是自欺欺人前面帶寬法的推導(dǎo)默認(rèn)電流環(huán)是連續(xù)時間系統(tǒng)。但真實的數(shù)字控制器里電流采樣、PWM占空比更新都帶著離散化延遲。MATLAB仿真里如果你用理想連續(xù)模塊搭電流環(huán)Kp取大一點波形依然完美但實物上電流反饋要經(jīng)過ADC采樣、運算、再等下一個PWM周期才生效——這就多出一拍周期Ts的純延遲可以建模為 e^(-sTs)近似為一階慣性環(huán)節(jié) 1/(sTs1)。這一拍延遲會直接吃掉相位裕度。假設(shè)Ts1e-4秒10kHz采樣僅為該延遲在目標(biāo)帶寬1200rad/s下產(chǎn)生的延遲角約為1200×1e-40.12rad換算約7度。再疊加濾波器延遲和計算延遲相位裕度可能從60度被蠶食到不足30度——臨界振蕩的邊緣。所以一個「仿真與實物一致性」好的模型在Simulink里必須把采樣保持器Zero-Order Hold、PWM更新延遲通常用Transport Delay或單位延遲模塊、濾波器延遲都模擬出來。仿真里看不到震蕩是因為這些延遲模塊缺失系統(tǒng)看起來帶寬極高、極其穩(wěn)定。3.4 積分飽和與反算積分鉗位仿真里最容易完美、實物里最致命的環(huán)節(jié)另一個Simulink仿真里被忽視、實物中幾乎必炸的細(xì)節(jié)是積分飽和。電流環(huán)PI輸出后面跟著SVPWM調(diào)制限幅你最大只能輸出母線電壓映射出來的相電壓幅值。當(dāng)PI輸出頂?shù)较薹禃r誤差依舊很大積分器還在繼續(xù)累積把輸出推到離限幅值很遠(yuǎn)的地方——這就是windup。一旦擾動解除誤差反號積分器還得先把這幾倍的累積量泄掉輸出才會脫離飽和這段時間系統(tǒng)完全失控電流會出現(xiàn)大幅回落或沖擊。常見的抗積分飽和方案是條件積分或反算法。反算法在仿真里實現(xiàn)起來非常直觀且有效function [y, anti_windup_state] pi_with_anti_windup(ek, state, Kp, Ki, Ts, y_max) % 帶反算法抗積分飽和的PI調(diào)節(jié)器 % 核心當(dāng)輸出飽和時把積分器額外回調(diào)防止積分器沖得太遠(yuǎn) persistent integrator; % 持久變量保存積分狀態(tài) if isempty(integrator), integrator 0; end integrator integrator Ki * ek * Ts; % 先正常積分 y Kp * ek integrator; % 計算總輸出 if y y_max integrator integrator (y_max - y); % 反算鉗位把超出的部分吐回去 y y_max; elseif y -y_max integrator integrator (-y_max - y); y -y_max; end anti_windup_state integrator; end這段代碼里最值得品味的不是積分本身而是那句吐回去( y_max ? y )的修正——它讓積分器永遠(yuǎn)停在「正好讓輸出到達(dá)限幅值」的位置。仿真里如果不做這一步限幅時積分器會在飽和值之上繼續(xù)堆疊等你要從飽和中退出時系統(tǒng)要花數(shù)倍時間恢復(fù)起動時刻轉(zhuǎn)速超調(diào)會非??鋸垺T赟imulink里你可以用飽和模塊后接一個減法器反饋到積分器輸入端實現(xiàn)相同的反算鉗位。這類環(huán)節(jié)在實物上是穩(wěn)定性剛需而不是錦上添花。4. SVPWM八個開關(guān)狀態(tài)如何平均出一個連續(xù)電壓4.1 逆變器的八個狀態(tài)每個都是電壓矢量SVPWM輸入的是一條d/q電壓指令經(jīng)過反Park變換得到vα、vβ輸出是逆變器六個功率管的開關(guān)占空比。逆變器只有六只管子三組上下橋臂每組只允許上管開或下管開——這就決定了共8種開關(guān)狀態(tài)。每種狀態(tài)都對應(yīng)一個確定的相電壓組合映射到αβ坐標(biāo)系成一個空間電壓矢量。其中6個非零矢量V1到V6幅值均為(2/3)·Udc空間上均勻分布成六邊形角度間隔60度。剩下兩個零矢量V0和V7輸出零電壓。任何你想要的參考電壓矢量v_ref只要它落在由這6個非零矢量圍成的正六邊形內(nèi)部就可以用相鄰兩個非零矢量和零矢量在時間上加權(quán)平均出來。這個「用開關(guān)狀態(tài)的占空比組合時間平均地合成連續(xù)電壓」的思想就是SVPWM的全部核心。跟SPWM相比它的母線電壓利用率高了15.47%這個15.47%不是一個玄學(xué)數(shù)字而是來自一個幾何事實SPWM能合成的最大相電壓幅值是Udc/2而SVPWM的6個基本矢量幅值是(2/3)·Udc圓形軌跡內(nèi)切于六邊形可合成的最大相電壓幅值可以達(dá)到Udc/√3兩者之比正好是2/√3 ≈ 1.1547。4.2 扇區(qū)判斷與作用時間計算用代碼理解SVPWM骨架SVPWM的實現(xiàn)三件事判斷參考矢量落在哪個扇區(qū)計算相鄰矢量作用時間最后映射成三相PWM占空比。function [Ta, Tb, Tc] svpwm_calc(v_alpha, v_beta, Udc, Ts) % SVPWM核心計算輸入αβ軸電壓輸出三相占空比 % 第一步根據(jù)v_alpha/v_beta決定扇區(qū)編號 % 判據(jù)本質(zhì)是三個中間變量與0的大小關(guān)系 v1 v_beta; v2 (sqrt(3)/2) * v_alpha - 0.5 * v_beta; v3 -v2 - v_beta; if v1 0.0, A 1; else, A 0; end if v2 0.0, B 1; else, B 0; end if v3 0.0, C 1; else, C 0; end sector A 2*B 4*C; % 經(jīng)典扇區(qū)編碼 % 第二步計算X/Y/Z中間變量 X (sqrt(3)/2) * v_alpha - 0.5 * v_beta; Y v_beta; % 注意扇區(qū)不同時X/Y/Z的選取不同便宜寫法見下 Z -(sqrt(3)/2) * v_alpha - 0.5 * v_beta; ... end扇區(qū)判斷的本質(zhì)是把αβ平面按60度分成6份每條扇區(qū)邊界對應(yīng)一個中間變量等于0的直線條件。這三個中間變量兩兩組合正好把整個平面切出6個60度楔形區(qū)域。作用時間計算則是根據(jù)伏秒平衡方程V_ref·Ts V_a·T_a V_b·T_b V_0·T_0其中T_a、T_b是相鄰兩個基本矢量的作用時間T_0是零矢量填充時間。這個方程解出來就是簡單的代數(shù)式但要注意當(dāng)T_a T_b 超過Ts時發(fā)生過調(diào)制需要對時間做等比例縮放否則實際輸出的電壓會發(fā)生畸變。許多仿真模型不處理過調(diào)制結(jié)果在高速大扭矩工況下電流波形出現(xiàn)削頂失真。4.3 死區(qū)時間平均模型與開關(guān)模型的差異根源逆變器的上下橋臂不能同時導(dǎo)通否則直通炸毀。所以換流時要插入一個死區(qū)時間典型2到4微秒在這個時間里上下管全關(guān)。死區(qū)使得實際輸出電壓與指令電壓產(chǎn)生偏差偏差大小與電流方向有關(guān)——電流方向決定是不起電流繼續(xù)通過續(xù)流二極管續(xù)流還是被強制換向。結(jié)果就是電流過零點附近出現(xiàn)電壓畸變產(chǎn)生額外諧波和轉(zhuǎn)矩脈動嚴(yán)重時會產(chǎn)生噪音和低速抖動。在Simulink里用平均值模型等效為一個增益加限幅的環(huán)節(jié)搭逆變器死區(qū)效應(yīng)完全不可見而用帶開關(guān)管和死區(qū)時間的模型才能看到過零畸變。仿真階段的分析思路應(yīng)該是先用平均模型驗證控制算法收斂再切換成帶死區(qū)的開關(guān)模型來評估實際損耗和電流畸變最后才是實物驗證。跳過第二步直接拿平均模型的波形去對比實物大概率會對不上。5. 仿真踩坑排查五種最常翻車的PMSM模型細(xì)節(jié)5.1 現(xiàn)象PI參數(shù)與帶寬計算值一致但電流發(fā)散原因大多是電機參數(shù)標(biāo)稱值與模型實際參數(shù)不一致——對不對消不重要重要的是你用的電阻/電感是不是模型里真實值。如果模型中L0.0085H而整定時用了標(biāo)稱值0.0085H但實際Simulink模塊中寫的是0.006H極點對消失效系統(tǒng)相位裕度不可測。解決直接在MATLAB工作區(qū)里讀模型參數(shù)用同一個變量去算PI參數(shù)而不是手抄數(shù)值。把 Rs、Ls 定義成腳本變量模型參數(shù)與整定參數(shù)共用同一變量就徹底杜絕了這個隱患。5.2 現(xiàn)象電流波形有鋸齒狀毛刺FFT顯示諧波很大原因仿真步長太大。SVPWM開關(guān)頻率10kHz如果你用變步長求解器搭配默認(rèn)容忍度步長可能超過PWM周期的十分之一采樣點不足電流紋波被混疊成鋸齒還會帶來虛假的高頻諧波。解決改用固定步長離散求解器步長設(shè)為一個開關(guān)周期能整除的數(shù)值比如10kHz對應(yīng)Ts1e-4取步長1e-4或更小一個數(shù)量級。速度環(huán)帶寬低所以可以用插值步進(jìn)但電流環(huán)所在的PWM與逆變器部分必須固定步長離散求解器如ode3或ode4否則仿真結(jié)果是不可信的。5.3 現(xiàn)象電機負(fù)載正常但轉(zhuǎn)速一直上不去或者轉(zhuǎn)矩反向原因Park變換里的角度用了機械角度而不是電角度——漏了極對數(shù)乘子。極對數(shù)5的電機機械角度轉(zhuǎn)一圈電角度要走五圈。電角度錯了dq軸解耦全錯控制相當(dāng)于在對看不見的坐標(biāo)系做閉環(huán)表現(xiàn)就是轉(zhuǎn)矩命令與實際轉(zhuǎn)矩完全對不上。解決theta_e 極對數(shù) × 轉(zhuǎn)子機械角度。在Simulink里用增益模塊乘上極對數(shù)再送入Park變換。同時檢查Park變換里的符號約定——不同的文獻(xiàn)中id/iq公式中正負(fù)號約定不同混用會導(dǎo)致d軸和q軸顛倒現(xiàn)象同樣是轉(zhuǎn)矩反饋不一致。5.4 現(xiàn)象起動瞬間電流尖峰巨大轉(zhuǎn)速超調(diào)超過30%原因沒做積分限幅或反算抗飽和起動時PI積分器瘋狂累積電流指令已經(jīng)超過最大允許值轉(zhuǎn)矩曲線被限幅后積分器處于飽和狀態(tài)轉(zhuǎn)速沖過頭后再反向修正造成大幅震蕩。仿真里如果發(fā)現(xiàn)電流指令被限幅的時間超過一個數(shù)學(xué)時間常數(shù)就要去查積分飽和。解決給電流環(huán)PI模塊加輸出限幅參數(shù)yt_max并把限幅后的誤差回送到積分器輸入反算法。這個方法在仿真里用的是一個零階保持模塊取反饋差值在代碼里用5.4里展示的matlab函數(shù)實現(xiàn)。效果立竿見影起動電流尖峰能被壓在限幅值上平滑過渡。5.5 現(xiàn)象仿真結(jié)果與MATLAB版本升級后對不上了舊.mdl邏輯在新版里出現(xiàn)代數(shù)環(huán)報錯原因不同版本Simulink對代數(shù)環(huán)的求解策略不同而代數(shù)環(huán)的產(chǎn)生往往是因為信號直接反饋而中間沒有單位延遲或狀態(tài)模塊。電流環(huán)的采樣延遲用單位延遲模塊避免純前饋回路出現(xiàn)代數(shù)環(huán)如果你直接用一個增益模塊從電流反饋連到PWM指令而不經(jīng)過延遲或狀態(tài)舊版可能容忍新版直接報虛警或給出奇怪結(jié)果。解決把PWM調(diào)制前的信號路徑全部經(jīng)過Unit Delay模塊或離散采樣保持器使其物理意義為「本拍的輸出基于上一拍的采樣值」。同時讓模型里狀態(tài)數(shù)盡量少——每個閉環(huán)回路至少有一個狀態(tài)變量積分器或延遲這是仿真模型與真實因果關(guān)系對齊的底線要求。6. id0之外MTPA與弱磁控制的設(shè)計取舍6.1 為什么默認(rèn)方案是id0以及它讓渡了什么id0控制的核心動機在第二章里推導(dǎo)過表貼式永磁同步電機Ld≈Lq轉(zhuǎn)矩與iq線性掛鉤id0就是效率最優(yōu)解。對于凸極永磁同步電機Ld明顯小于Lq磁阻轉(zhuǎn)矩(Ld?Lq)·id·iq不為零id0等于放棄了這筆天然紅利。此時真正的最優(yōu)方案是MTPA最大轉(zhuǎn)矩電流比在輸出某轉(zhuǎn)矩的最少電流組合中id和iq的關(guān)系是id?(Ld?Lq)·iq/ψf之類的代數(shù)方程比id0更加繞但同一轉(zhuǎn)矩下電流更小銅耗更低。設(shè)計的取舍點在于MTPA雖然省電但需要精確知道Ld、Lq、ψf而這些參數(shù)在運行中會因溫升、磁飽和而變化。id0對這些偏差幾乎是免疫的魯棒性極強。所以工程實用的思路是低速區(qū)先用id0控制在生產(chǎn)高端產(chǎn)品并且標(biāo)定資源充足時才切換到MTPA查表方案。6.2 弱磁控制電壓極限下的最后一根稻草當(dāng)轉(zhuǎn)速升高到反電動勢接近母線電壓上限時電流環(huán)的輸出將觸及限幅轉(zhuǎn)矩能力急劇下降。弱磁控制的本質(zhì)是注入負(fù)id用d軸磁動勢抵消部分永磁體磁鏈從而在電壓受限條件下提高可運行的最高轉(zhuǎn)速。從數(shù)學(xué)角度看電壓極限方程是 (Ld·idψf)2 (Lq·iq)2 ≤ (Umax/ωe)2。要為iq騰出空間就必須壓小id或讓(Ld·idψf)變小。注入負(fù)id就是直接沿這條邊界運行。這一段控制策略的門道在于弱磁深度越大電流越大、鐵耗越大、效率越差而且參數(shù)偏差導(dǎo)致的性能退化更敏感。所以控制策略設(shè)計的取舍本質(zhì)是對效率和寬調(diào)速范圍的權(quán)衡。把這套思想落地驗證的方法很樸素先在MATLAB里搭一套帶MTPA或弱磁算法的完整模型先仿真在額定轉(zhuǎn)速以下驗證電機效率對比曲線再模擬電壓跌落的極端工況。我習(xí)慣的做法是每一次修改控制策略都強制自己先在不開環(huán)、不加負(fù)載的條件下跑一遍無載起動觀察電流和轉(zhuǎn)速的對應(yīng)關(guān)系再加大負(fù)載。這一遍下來大多能提前發(fā)現(xiàn)坐標(biāo)變換或參數(shù)初始化的問題——比直接滿載跑要省心得多。仿真不是把控制器畫完就結(jié)束了而是要讓模型里的每一個延遲、每一個限幅都有物理解釋這一步做得越細(xì)你離「實物一次起動成功」就近一步。希望幫到你。本文還有配套的精品資源點擊獲取