前言:
為了進一步深入探索電機控制這個領域,找到了一些志同道合的同學一起來進行知識的分享。最近群里投票后續更新內容,票數最多的方向就是模型預測控制;無論這個方向目前是否還是很火,至少應大家需求,工作室請到了一位這個方向研究者來進行分享。
0 文章數學符號定義總覽
1、為什么要用模型預測控制?
基礎內環的電流調節器是電機控制的基礎和核心環節之一,其性能決定了電機電流響應性能,因此電流調節器一直是電機控制領域的研究熱點之一。基于三相、兩電平的永磁同步電機的控制拓撲如圖所示;
通常,電流調節器對采集的電機相電流進行閉環控制,常用的電流、轉矩控制方包括:滯環、直接轉矩控制、基于PI的矢量控制、模型預測控制等非線性控制、無差拍控制等。基于PI的矢量控制是應用最為廣泛的電機控制方法之一,其基本原理是將指令和反饋之間的誤差進行積分,得到電壓指令,最終使得電流反饋跟蹤電流指令。PI控制器通常在頻域上設計,按照零極點相消的原則,將閉環電流控制最終等效為一階慣性環節。根據控制系統理論可知,一階慣性環節最重要的參數為帶寬,帶寬決定了系統的響應速度。但是:
基于PI控制器的電流內環性能存在一個關鍵短板——響應速度不足;
而對于電流調節器環節,其階躍響應速度是電機控制性能的最核心指標之一, 其性能將直接影響轉矩的響應速度,而轉矩的響應速度則決定了電機更多的“上層性能”,例如轉速、位置響應速度和諧波抑制能力等。為了解決這一問題,學者們提出了無差拍電流預測控制。無差拍模型預測電流控制(Deadbeat Model Predictive Current Control, DB-MPCC)在傳統模型預測電流控制(MPCC)的基礎上進一步優化,核心思想是在一個控制周期內迫使電流跟蹤誤差歸零,兼具無差拍控制的快速性與MPCC的靈活性。
無差拍控制的基本原理非常簡單,將連續域的物理模型離散化得到離散域的物理模型。再根據輸入指令、系統參數和反饋直接計算需要的系統輸入。對于電壓型變換器,根據靜止坐標系或者同步旋轉d-q軸的離散模型、電流指令和反饋以及電感、電阻等參數直接計算需要的電壓指令,再用PWM等效輸出該指令電壓;因此當所有電機參數均估算正確時,下個周期的實際d-q軸電流與指令電流
完全相等,且沒有相位差,也就是說電流指令的響應時間是一個開關周期。這個過程省去傳統MPCC的開關狀態遍歷和成本函數評估環節。其結構如下圖所示:
其優勢總結為以下幾點:
-
嚴格的無差拍特性:通過數學推導直接計算所需電壓矢量,使電流在下一個采樣周期精確跟蹤參考值,動態響應速度接近理論極限(比傳統MPCC更快)。理論上可實現零穩態誤差:消除傳統PI控制的積分延遲,對階躍參考或負載突變的調節時間僅需1-2個控制周期。
-
計算量降低:用解析解替代遍歷搜索:傳統MPCC需遍歷所有開關狀態并評估成本函數,而DB-MPCC通過無差拍方程直接解析計算最優電壓矢量,計算量降低50%以上。
-
較小的系統結構更改:可直接接入SVPWM:這一點關鍵的優勢在于:對傳統控制結構的更改非常小,如果從信號流動的角度考慮,僅改變了參考電流到參考電壓的轉換模塊,傳統控制結構中其他部分均不需要進行任何改變。DB-MPCC輸出的是連續電壓矢量而非離散開關狀態,可接入SVPWM或SPWM模塊生成固定頻率的驅動信號,避免傳統MPCC開關頻率波動導致的諧波問題。
-
低諧波失真:固定開關頻率+PWM:結合PWM調制后,電流諧波頻譜更集中,THD(總諧波失真)顯著低于開關頻率波動的有限控制集MPCC(FCS-MPCC)。
2、一拍誤差從而何來?
永磁同步電機控制器中的“一拍誤差”(One-Step Delay Error)本質上是數字控制系統固有的離散化延遲與物理系統連續時間特性之間的矛盾。討論這個技術要點時,可以回溯到典型的MCU例如DSP或者STM32等芯片數據手冊。下圖為DSP28335的EPWM模塊數據手冊截圖,在單周期單采樣模式下,底層外設的配置邏輯為:
ePWM模塊觸發ADC中斷——基于采樣數據計算控制電壓——計算PWM輸出計數器比較值;
這其中有個關鍵點,我們將連續控制過程分散為了以載波周期為單元間隔的離散控制過程,在以上MCU執行的過程中,計算所得的PWM輸出計數器值生效為占空比在下一個載波周期的起點(PWM更新在下一個載波周期),這是控制器一拍延遲的來源。ADC進行所處的載波周期也存在生效的占空比,但是該占空比是在上一個載波周期計算得到的。該過程時許示意圖如下所示:
2、DPCC 無差拍直接電流預測控制的實現原理
控制目標設定:由于控制器存在一拍的延遲(將載波周期時間Ts定義為一拍),當控制器在 t = kTs 時刻采樣,其控制器所得的PWM將在 (k+1)Ts? - (k+2)Ts 載波周期生效,因此控制目標應為時刻為 (k+2)Ts的電流值參考值。
反饋電流計算(預測):因控制器所得的PWM將在 (k+1)Ts? - (k+2)Ts 載波周期生效,該PWM的作用起點實則為 (k+1)Ts 時刻的電流;因此反饋電流應為(k+1)Ts時刻的電流值反饋值。
2.1 如何計算 (k+1)Ts 時刻的電流
對MCU而言,只能通過ADC模塊采集到 kTs 時刻的三相電流反饋值,而
(k+1)Ts?時刻的電流還未出現,無法直接被傳感器采樣得到,需要基于電機模型進行預測。
永磁同步電機電流模型如下所示:
電流模型微分形式:
電流模型離散表達式子:(用以 k+1 拍電流預測)
2.2 如何計算輸出電壓
如果從一個控制器黑盒的角度考慮,這個黑盒子的輸入就是在得到了 (k+1)Ts 時刻的電流后,即可對輸出電壓進行計算;其原理如下公式所示:
整體原理如下信號流圖所示:
在得到控制需求電壓后,將其輸出給SVPWM調制模塊即可;
3 仿真驗證
完成了原理性的學習后,我們對該算法進行仿真驗證;
仿真工況:給定轉速1000rpm,0.3s施加5N外部負載;
同步的PI調節器的效果:
前文有提到DPCC相對PI最大的優勢在于電流跟隨的快速性;如下圖所示,圖中紅色曲線為DPCC結果,而藍色曲線為PI調節器結果;涉及四種電流指令分別為10、8、6、4A,在不同電流指令大小時,DPCC的電流響應速度均由于傳統PI調節器;
4 總結與展望
本部分系統闡述了無差拍預測電流控制(DPCC)的核心優勢與局限性,深入分析了控制器一拍延遲的產生機理,并基于離散化電流模型推導出DPCC的閉環控制律,最終給出電壓指令的顯式表達式。通過與傳統PI控制器的動態仿真對比,驗證了DPCC在電流跟蹤速度上的顯著提升(響應時間縮短約40%),其階躍響應可在1-2個控制周期內實現無靜差跟蹤。
這部分內容主要講了三件事:
-
DPCC的優缺點:
-
優點:電流跟蹤快,計算簡單,開關頻率穩。
-
-
控制器為啥會有“一拍延遲”?
-
數字控制不是實時的,采樣、計算、執行都要時間,而電機是連續運行的,電流不能瞬間變,所以會有“慢拍”的情況。
-
-
DPCC怎么算電壓?效果如何?
-
公式核心:讓下一拍的電流精準追上目標值,電壓計算包含電阻壓降、耦合補償和動態調節。
-
仿真對比:和傳統PI比,DPCC電流跟蹤快40%,1-2個周期就能跟上,還沒靜差!
-
簡單總結:DPCC速度快,但得模型準,仿真證明它比PI猛多了!
整提結構如上圖所示,此時僅僅只是仿真,仿真中參數都是準確的控制效果必然會好一些。后續章節具體解決如何提高參數魯棒性的問題。