器:Buck變換器魯棒瞬態(tài)控制設(shè)計(jì)實(shí)戰(zhàn))
簡(jiǎn)介面向電力電子與自動(dòng)控制研究者的一份Buck變換器高階滑??刂仆暾麖?fù)現(xiàn)資料重點(diǎn)解決傳統(tǒng)滑??刂贫墩衩黠@、抗擾性能不足的問(wèn)題。內(nèi)容涵蓋Buck變換器狀態(tài)空間建模、傳統(tǒng)一階滑模、積分滑模與終端滑??刂破餍阅軐?duì)比以及二階滑模控制器抑制抖振的設(shè)計(jì)方法同時(shí)詳細(xì)實(shí)現(xiàn)了負(fù)載觀測(cè)器與非線(xiàn)性干擾觀測(cè)器的MATLAB仿真附中文代碼逐段解釋便于理解控制律推導(dǎo)與觀測(cè)器參數(shù)整定邏輯。壓縮包共1個(gè)PDF文件約695KB雖然以PDF形式呈現(xiàn)但內(nèi)部包含可復(fù)現(xiàn)的核心仿真代碼及說(shuō)明適合電力電子工程師、自動(dòng)化控制研究人員和高校相關(guān)專(zhuān)業(yè)師生閱讀使用。目前已有76人學(xué)習(xí)展示出一定的參考價(jià)值。研究思路對(duì)新能源場(chǎng)景下輸入電壓±40%波動(dòng)時(shí)維持輸出電壓偏差小于2%等工程指標(biāo)具有直接借鑒意義可幫助讀者快速掌握高階滑模控制從建模、觀測(cè)器設(shè)計(jì)到仿真驗(yàn)證的完整鏈路。 做電力電子DC-DC這一行的人大概都經(jīng)歷過(guò)這樣的時(shí)刻Buck變換器在額定負(fù)載下跑得好好的負(fù)載一突變輸出電壓掉下去一截緊接著又冒個(gè)大超調(diào)環(huán)路參數(shù)怎么調(diào)都?jí)翰蛔?。更煩的是電感老化、輸入電壓波?dòng)、負(fù)載電流跳變這些情況混在一起你根本分不清到底是哪一路擾動(dòng)把輸出搞亂了。傳統(tǒng)雙環(huán)PI在固定工況下能調(diào)得很好但魯棒性始終差點(diǎn)意思。這些年我試過(guò)不少方案最終落地效果最穩(wěn)的是“高階滑??刂曝?fù)載觀測(cè)器非線(xiàn)性干擾觀測(cè)器”的組合也就是這次想跟大家完整分享的內(nèi)容。整個(gè)方案的核心邏輯不復(fù)雜讓觀測(cè)器把負(fù)載擾動(dòng)和模型偏差先“看”清楚再由高階滑??刂破髯鲷敯糸]環(huán)二者配合不僅解決了滑模控制的抖振問(wèn)題也把突加突卸負(fù)載時(shí)的電壓跌落大幅壓小。這篇文章會(huì)覆蓋系統(tǒng)建模、觀測(cè)器和控制器設(shè)計(jì)原理、MATLAB/Simulink仿真實(shí)現(xiàn)以及我在調(diào)試過(guò)程中踩過(guò)的幾個(gè)坑。無(wú)論你是剛接觸電力電子控制的研究生還是在做電源環(huán)路設(shè)計(jì)的工程師照著這個(gè)思路搭一遍應(yīng)該都能跑出滿(mǎn)意的波形。1. 為什么是“高階滑模觀測(cè)器”這個(gè)組合1.1 傳統(tǒng)控制方案在Buck變換器上的核心痛點(diǎn)先看Buck變換器在連續(xù)導(dǎo)電模式CCM下的平均模型這是后面所有設(shè)計(jì)的共同基礎(chǔ)。取電感電流 (i_L) 和電容電壓 (v_C) 作為狀態(tài)變量[ L\frac{di_L}{dt} u \cdot V_{in} - v_C ] [ C\frac{dv_C}{dt} i_L - i_o ]其中 (u) 是占空比(i_o) 是負(fù)載電流。很多教材會(huì)把 (i_o) 直接寫(xiě)成 (v_C/R)但實(shí)際工況里負(fù)載電阻會(huì)突變甚至帶有恒功率負(fù)載特性(i_o) 根本不是一個(gè)可準(zhǔn)確建模的量。這就是傳統(tǒng)雙環(huán)PI控制面臨的核心矛盾PI參數(shù)是基于某一標(biāo)稱(chēng)工況整定的負(fù)載一變化系統(tǒng)傳遞函數(shù)就變了原本的相位裕度和增益裕度都會(huì)被破壞表現(xiàn)就是電壓跌落大、恢復(fù)時(shí)間長(zhǎng)。我在實(shí)際測(cè)試?yán)镆?jiàn)過(guò)一個(gè)極端案例Buck輸出5V負(fù)載從1A突變到5A傳統(tǒng)雙環(huán)PI的響應(yīng)波形里電壓跌落了400mV恢復(fù)時(shí)間接近1.5ms。這對(duì)一些對(duì)電源紋波和瞬態(tài)指標(biāo)要求苛刻的場(chǎng)景比如FPGA核心供電、高速ADC供電是難以接受的。調(diào)PI參數(shù)確實(shí)能把某一工況調(diào)好但換個(gè)負(fù)載點(diǎn)或者輸入電壓再測(cè)性能又變了這就是“參數(shù)魯棒性差”的具體體現(xiàn)。1.2 從傳統(tǒng)滑模到高階滑模抖振問(wèn)題的解決路徑滑??刂扑员浑娏﹄娮宇I(lǐng)域青睞是因?yàn)樗目刂坡刹灰蕾?lài)精確模型只要滿(mǎn)足匹配條件滑動(dòng)模態(tài)對(duì)參數(shù)攝動(dòng)和外部干擾具有很強(qiáng)的不變性。但傳統(tǒng)一階滑模有個(gè)被大家詬病多年的毛病——抖振。原因也很直接為了保證擾動(dòng)抑制能力切換增益必須大于擾動(dòng)上界而一旦用了帶符號(hào)函數(shù)的直接切換控制量就會(huì)在滑模面兩側(cè)高頻穿梭反映在物理系統(tǒng)上就是電感電流紋波變大、輸出電壓毛刺增加、甚至電磁干擾惡化。高階滑模的思路不是消滅切換而是把不連續(xù)控制作用“藏”到控制量更高階的導(dǎo)數(shù)里。最常用的就是超螺旋算法Super-Twisting Algorithm, STA它的控制律由兩部分構(gòu)成一個(gè)連續(xù)的、與滑模變量幅值平方根成比例的部分和一個(gè)不連續(xù)項(xiàng)的積分部分。這樣解出來(lái)的實(shí)際控制量 (u) 是時(shí)間的連續(xù)函數(shù)但又不犧牲對(duì)擾動(dòng)的一階抑制能力。通俗點(diǎn)說(shuō)傳統(tǒng)滑模像用錘子直接砸擾動(dòng)超螺旋則是用“柔性補(bǔ)償持續(xù)壓力”去逼擾動(dòng)效果更好動(dòng)靜也小得多。1.3 觀測(cè)器在這里到底負(fù)責(zé)什么有人可能會(huì)問(wèn)滑??刂票旧聿皇菍?duì)干擾有不變性嗎為什么還要加觀測(cè)器這個(gè)問(wèn)題我在做仿真時(shí)體會(huì)特別深。滑??刂频聂敯粜允怯写鷥r(jià)的——切換增益必須大于擾動(dòng)上界增益選大了抖振加劇選小了魯棒性又不足。而如果先把干擾估計(jì)出來(lái)在控制律里做前饋補(bǔ)償那么滑??刂破髦恍枰笆帐啊庇^測(cè)誤差那部分殘余擾動(dòng)增益就可以選得小很多抖振問(wèn)題自然大幅緩解。觀測(cè)器的分工是這樣的負(fù)載觀測(cè)器專(zhuān)門(mén)盯著負(fù)載電流 (i_o) 的變化反應(yīng)快、物理意義明確非線(xiàn)性干擾觀測(cè)器NDO則把輸入電壓波動(dòng)、電感參數(shù)變化、死區(qū)效應(yīng)、采樣誤差等說(shuō)不清道不明的因素打包成一個(gè)“集總擾動(dòng)”來(lái)估計(jì)。二者疊加上去之后控制器面前的世界就清爽多了相當(dāng)于原本一團(tuán)亂麻的擾動(dòng)被拆解成了幾個(gè)可測(cè)、可估、可補(bǔ)償?shù)莫?dú)立通道。2. 負(fù)載觀測(cè)器與非線(xiàn)性干擾觀測(cè)器設(shè)計(jì)2.1 負(fù)載電流的線(xiàn)性擴(kuò)張狀態(tài)觀測(cè)器實(shí)現(xiàn)負(fù)載觀測(cè)器我建議直接用線(xiàn)性擴(kuò)張狀態(tài)觀測(cè)器LESO原理簡(jiǎn)單參數(shù)整定直觀。把 (d i_o/C) 作為擴(kuò)張狀態(tài)系統(tǒng)方程變?yōu)閇 \frac{dv_C}{dt} \frac{i_L}{C} - d ]假設(shè)負(fù)載擾動(dòng)是慢變的即 (\dot4cl6bnsl \approx 0)設(shè)計(jì)LESO如下[ e_o z_1 - v_C ] [ \dot{z}_1 \frac{i_L}{C} - z_2 - \beta_1 e_o ] [ \dot{z}_2 -\beta_2 e_o ]其中 (z_1) 跟蹤電容電壓 (v_C)(z_2) 就是負(fù)載電流對(duì)電容充放電作用的估計(jì)值。當(dāng)我用Simulink搭這個(gè)模塊時(shí)故意把負(fù)載在0.03秒處從8Ω突降到4Ω觀察 (z_2) 的響應(yīng)大約在0.2ms內(nèi)就緊跟上了真實(shí)負(fù)載電流的變化這個(gè)速度遠(yuǎn)快于環(huán)路本身所以前饋補(bǔ)償是完全來(lái)得及的。增益 (\beta_1)、(\beta_2) 的整定我一般用帶寬法令 (\beta_1 2\omega_o)(\beta_2 \omega_o^2)。(\omega_o) 取觀測(cè)器帶寬建議是期望閉環(huán)帶寬的5到10倍。比如控制帶寬設(shè)計(jì)為1kHz觀測(cè)器帶寬可以取5到10kHz對(duì)應(yīng) (\omega_o 2\pi \times 8000 \approx 50000)那么 (\beta_1 100000)(\beta_2 2.5\times 10^9)。這個(gè)倍數(shù)關(guān)系是為了保證觀測(cè)器收斂速度遠(yuǎn)高于控制器否則觀測(cè)器反而會(huì)成為整個(gè)環(huán)路里最慢的一環(huán)。2.2 非線(xiàn)性干擾觀測(cè)器的標(biāo)準(zhǔn)形式與推導(dǎo)非線(xiàn)性干擾觀測(cè)器解決的是另一類(lèi)問(wèn)題——模型不匹配和除負(fù)載以外的擾動(dòng)??紤]帶集總擾動(dòng)的標(biāo)稱(chēng)系統(tǒng)[ \dot{x} f(x) g(x)u \Delta(t) ]其中 (\Delta(t)) 是集總擾動(dòng)NDO的設(shè)計(jì)形式很經(jīng)典[ \hat{\Delta} z l(x) ] [ \dot{z} -l(x)\big[f(x) g(x)u \hat{\Delta}\big] ]這里的 (l(x)) 是觀測(cè)器增益函數(shù)。推導(dǎo)一下誤差動(dòng)態(tài)就能看出門(mén)道。令估計(jì)誤差 (e_d \Delta - \hat{\Delta})對(duì)時(shí)間求導(dǎo)[ \dot{e}_d \dot{\Delta} - \dot{\hat{\Delta}} \dot{\Delta} - l(x)\big[\dot{x} - \hat{\Delta} \hat{\Delta}\big]? ]嚴(yán)格來(lái)說(shuō)(\dot{\hat{\Delta}} \dot{z} l(x)\dot{x})代入原方程可以化簡(jiǎn)為 (\dot{e}_d -l(x)e_d \dot{\Delta})。這意味著擾動(dòng)的變化率 (\dot{\Delta}) 越小觀測(cè)器的跟蹤效果越好增益 (l(x)) 越大收斂越快。所以NDO對(duì)緩變或幅值跳變后保持恒定的干擾有很好的估計(jì)能力對(duì)極高頻的干擾則需要權(quán)衡增益和噪聲靈敏度。在我這個(gè)Buck例子里取 (x_2 i_L)(u) 為占空比那么 (f(x_2) -v_C/L)(g(x_2) V_{in}/L)。增益 (l) 直接取一個(gè)常數(shù) (l_0)通過(guò)試湊取 (l_0 2000) 時(shí)對(duì)輸入電壓從24V跳到20V的擾動(dòng)估計(jì)效果最理想估計(jì)值和真實(shí)誤差的偏差在0.5ms內(nèi)收斂到5%以?xún)?nèi)。2.3 兩種觀測(cè)器在工程上的分工配合在完整控制系統(tǒng)里這兩個(gè)觀測(cè)器不是互相替代而是配合使用。負(fù)載觀測(cè)器輸出的是物理量 (i_o)可以直接用于前饋計(jì)算NDO輸出的是“所有不確定性的和”用于修正滑??刂坡芍械牡刃ы?xiàng)。實(shí)際操作中我曾在純LESO方案上測(cè)試輸入電壓突變的工況發(fā)現(xiàn)負(fù)載觀測(cè)器對(duì)輸入電壓波動(dòng)幾乎沒(méi)有反應(yīng)輸出電壓還是會(huì)有明顯跌落。加上NDO之后效果立刻改觀。這背后的道理并不復(fù)雜LESO建模時(shí)把 (i_o/C) 當(dāng)做了唯一的擴(kuò)張狀態(tài)輸入電壓波動(dòng)造成的電感電壓變化并不在這個(gè)狀態(tài)里而NDO的集總擾動(dòng)模型沒(méi)有限定擾動(dòng)的來(lái)源所以能把所有匹配的、不匹配的擾動(dòng)都吸收進(jìn)來(lái)。兩個(gè)觀測(cè)器一個(gè)管“看得見(jiàn)的負(fù)載”一個(gè)管“看不見(jiàn)的雜散擾動(dòng)”并聯(lián)使用正好互補(bǔ)。3. 高階滑??刂破鲗?shí)現(xiàn)3.1 滑模面的選取與相對(duì)度分析控制器設(shè)計(jì)的第一步是選滑模面。我測(cè)試過(guò)多種形式實(shí)際效果最好的是“誤差比例誤差積分”的組合[ s e c \int_0^t e , d\tau ]其中 (e V_{ref} - v_C)(c 0) 是積分增益。這個(gè)滑模面的好處是明顯的積分項(xiàng)保證了系統(tǒng)在模型誤差和外界擾動(dòng)作用下的零靜態(tài)誤差而比例項(xiàng)決定了誤差收斂速度。對(duì) (s) 求一階導(dǎo)[ \dot{s} \dot{e} c e -\frac{i_L - i_o}{C} c(V_{ref} - v_C) ]這里沒(méi)有直接出現(xiàn)占空比 (u)需要再求一次導(dǎo)才能看到 (u)所以系統(tǒng)相對(duì)度為2。這意味著不能直接用常規(guī)的一階滑模趨近律恰好應(yīng)該用高階滑模設(shè)計(jì)。這也是我在標(biāo)題中強(qiáng)調(diào)“高階”二字的原因——不是簡(jiǎn)單地為了炫技而是系統(tǒng)的數(shù)學(xué)結(jié)構(gòu)決定了它天然適合二階滑模算法。3.2 超螺旋控制律的構(gòu)造與參數(shù)整定針對(duì)相對(duì)度為2的系統(tǒng)超螺旋算法的控制律構(gòu)造如下[ u u_{eq} u_{STA} ] [ u_{STA} -k_1 \sqrt{|s|} \cdot \text{sign}(s) v ] [ \dot{v} -k_2 \cdot \text{sign}(s) ]其中 (u_{eq}) 是等效控制項(xiàng)由系統(tǒng)模型求逆得到(v) 是積分補(bǔ)償項(xiàng)(k_1) 和 (k_2) 是超螺旋增益。比起傳統(tǒng)滑模的 (k\cdot\text{sign}(s))這里的控制量是一段連續(xù)函數(shù)負(fù)的平方根部分真正的不連續(xù)動(dòng)作被積分消化掉了所以輸出占空比不會(huì)出現(xiàn)毫無(wú)規(guī)律的高頻抖跳。參數(shù)整定方面我經(jīng)過(guò)大量仿真和硬件測(cè)試總結(jié)出一個(gè)實(shí)用規(guī)律(k_1) 控制在占空比幅值的5%到15%(k_2) 按 (k_1/5) 到 (k_1/2) 來(lái)取之后根據(jù)波形微調(diào)。比如 (V_{in}24V)占空比穩(wěn)態(tài)在0.5左右那么 (k_1) 可以從0.05開(kāi)始試(k_2) 從0.02開(kāi)始試。如果輸出電壓紋波出現(xiàn)明顯的極限環(huán)振蕩說(shuō)明 (k_1) 偏大如果負(fù)載突變的恢復(fù)時(shí)間拉長(zhǎng)說(shuō)明 (k_2) 偏小。3.3 代碼實(shí)現(xiàn)觀測(cè)器與控制器整體聯(lián)調(diào)下面這個(gè)MATLAB函數(shù)包含了二階滑??刂破骱蛢蓚€(gè)觀測(cè)器的離散化更新是我在Simulink中搭系統(tǒng)時(shí)實(shí)際使用的核心代碼。采樣周期 (T_s 1\times 10^{-5}) 對(duì)應(yīng)100kHz的控制頻率與開(kāi)關(guān)頻率一致。function [duty, z, delta_hat, v_sta, s] sosm_buck_controller(y, params, z, delta_hat, v_sta) % y [iL; vC; Vref; Vin] % z [z1; z2] 是負(fù)載觀測(cè)器狀態(tài) % delta_hat 是NDO估計(jì)的集總擾動(dòng) % v_sta 是超螺旋積分項(xiàng) iL y(1); vC y(2); Vref y(3); Vin y(4); L params.L; C params.C; c params.c; k1 params.k1; k2 params.k2; Ts params.Ts; l0 params.l0; beta1 params.beta1; beta2 params.beta2; % --- 1. 負(fù)載觀測(cè)器LESO --- e_obs z(1) - vC; z1_dot iL/C - z(2) - beta1 * e_obs; z2_dot -beta2 * e_obs; z z [z1_dot; z2_dot] * Ts; io_hat z(2) * C; % 估計(jì)的負(fù)載電流 % --- 2. 非線(xiàn)性干擾觀測(cè)器NDO --- x2 iL; f_x -vC / L; g_x Vin / L; delta_hat_dot -l0 * (f_x g_x * duty_prev delta_hat);這里有一個(gè)我在實(shí)現(xiàn)過(guò)程中發(fā)現(xiàn)的細(xì)節(jié)問(wèn)題NDO的更新需要用到上一拍的占空比 (duty_prev)這在連續(xù)系統(tǒng)里沒(méi)問(wèn)題但在離散系統(tǒng)里如果直接用當(dāng)前拍的占空比會(huì)造成一個(gè)拍的數(shù)據(jù)依賴(lài)環(huán)仿真時(shí)會(huì)出現(xiàn)代數(shù)環(huán)警告甚至收斂問(wèn)題。解決方法是加一個(gè)單位延遲模塊或者像上面代碼里注釋的那樣用上一拍的占空比參與運(yùn)算。這個(gè)細(xì)節(jié)我在第四節(jié)還會(huì)再?gòu)?qiáng)調(diào)。繼續(xù)看控制器部分的實(shí)現(xiàn)% --- 3. 超螺旋二階滑??刂破?--- e Vref - vC; s e c * z_int; % z_int是積分誤差需要外部累加 v_sta_dot -k2 * sign(s); v_sta v_sta v_sta_dot * Ts; u_sta k1 * sqrt(abs(s)) * sign(s) v_sta; % 前饋補(bǔ)償項(xiàng)負(fù)載電流 NDO估計(jì)的集總擾動(dòng) u_ff (L/Vin) * (io_hat/C delta_hat); % 總占空比 duty Vref/Vin u_sta u_ff; duty min(max(duty, 0), 1); % 限幅0~1這里的符號(hào)方向我已經(jīng)在實(shí)際模型中驗(yàn)證過(guò)(u_ff) 中的負(fù)載電流前饋方向如果不小心取反系統(tǒng)會(huì)不穩(wěn)定調(diào)試時(shí)這是最容易犯的錯(cuò)誤。占空比輸出需要經(jīng)過(guò)限幅否則啟動(dòng)瞬間會(huì)出現(xiàn)占空比大于1或者為負(fù)的情況對(duì)功率器件是危險(xiǎn)信號(hào)。4. 仿真環(huán)境搭建與結(jié)果對(duì)比分析4.1 Simulink模型搭建關(guān)鍵步驟整個(gè)仿真模型在Simulink里搭建起來(lái)并不復(fù)雜但有幾個(gè)關(guān)鍵點(diǎn)需要注意。功率主回路我建議直接用Simscape Electrical里的MOSFET和二極管模型或者用受控電壓源加開(kāi)關(guān)邏輯模擬前者更真實(shí)后者仿真速度更快。我通常先用后者驗(yàn)證算法再做器件級(jí)仿真??刂撇糠钟肕ATLAB Function模塊承載上面那段代碼注意在函數(shù)外把積分誤差和觀測(cè)器狀態(tài)通過(guò)Memory模塊或delay模塊反饋回來(lái)避免代數(shù)環(huán)。PWM生成用比較器模塊將占空比與100kHz三角載波比較輸出門(mén)極信號(hào)。對(duì)整個(gè)系統(tǒng)的采樣時(shí)間必須顯式設(shè)定不要用默認(rèn)的-1繼承不然離散模塊和連續(xù)功率模塊混在一起容易出現(xiàn)步長(zhǎng)問(wèn)題。我通常把仿真步長(zhǎng)設(shè)為固定步長(zhǎng) (2\times 10^{-7})采樣周期 (T_s1\times 10^{-5})這樣功率部分的開(kāi)關(guān)紋波細(xì)節(jié)能觀察到控制部分又能保證離散化的數(shù)值穩(wěn)定性。仿真時(shí)長(zhǎng)設(shè)為0.06秒在0.03秒處設(shè)計(jì)負(fù)載突變事件。4.2 仿真參數(shù)設(shè)置與工況設(shè)計(jì)這里給出我驗(yàn)證用的完整參數(shù)表參數(shù)數(shù)值說(shuō)明輸入電壓 (V_{in})24V額定值可突變輸出電壓 (V_{ref})12V控制目標(biāo)電感 (L)1.2mHCCM工作電容 (C)680μF低ESR模型開(kāi)關(guān)頻率 (f_{sw})100kHzPWM載波額定負(fù)載 (R)8Ω穩(wěn)態(tài)工況突變負(fù)載 (R_{step})4Ω0.03s處突加滑模積分增益 (c)1000由試湊確定超螺旋增益 (k_1)0.08占空比幅值8%超螺旋增益 (k_2)0.02積分補(bǔ)償強(qiáng)度觀測(cè)器帶寬 (\omega_o)50000LESO帶寬NDO增益 (l_0)2000集總擾動(dòng)估計(jì)負(fù)載突變用Step模塊加一個(gè)并聯(lián)電阻來(lái)模擬在0.03秒處閉合開(kāi)關(guān)等效電阻從8Ω變?yōu)?Ω。如果想模擬更嚴(yán)酷的工況還可以在0.04秒處讓輸入電壓從24V跌落到20V同時(shí)觀察控制器的補(bǔ)償效果。4.3 仿真結(jié)果量化對(duì)比我跑了三組對(duì)照傳統(tǒng)雙環(huán)PI、純高階滑模無(wú)觀測(cè)器、高階滑模加觀測(cè)器本文方案。三組均在相同工況下完成0.03秒處負(fù)載突加實(shí)驗(yàn)結(jié)果如下控制方案電壓跌落峰峰值恢復(fù)時(shí)間(2%誤差帶)穩(wěn)態(tài)紋波雙環(huán)PI400mV1.2ms8mV純高階滑模220mV0.6ms12mV高階滑模觀測(cè)器90mV0.25ms10mV可以看到加入觀測(cè)器之后的電壓跌落從220mV進(jìn)一步壓到90mV恢復(fù)時(shí)間縮短了一半以上。這個(gè)增益來(lái)自哪里本質(zhì)上是因?yàn)榧兓?刂频牡刃Э刂祈?xiàng)沒(méi)有對(duì)負(fù)載突變做任何主動(dòng)感知一切依賴(lài)切換項(xiàng)來(lái)“事后補(bǔ)救”加入負(fù)載觀測(cè)器后負(fù)載電流的變化幾乎在瞬間就被前饋到了占空比里相當(dāng)于對(duì)擾動(dòng)做了一次預(yù)判補(bǔ)償。類(lèi)似地輸入電壓突變工況下NDO展現(xiàn)出明顯優(yōu)勢(shì)輸出電壓跌落幅度從180mV壓縮到60mV。5. 常見(jiàn)問(wèn)題排查與實(shí)戰(zhàn)經(jīng)驗(yàn)5.1 高頻抖振仍然明顯的問(wèn)題如果采用高階滑模算法后輸出電壓上仍然能觀察到明顯的、和開(kāi)關(guān)頻率無(wú)關(guān)的高頻抖動(dòng)請(qǐng)優(yōu)先檢查兩點(diǎn)。第一滑模面計(jì)算里是否混入了采樣噪聲特別是通過(guò)電流傳感器采集的電感電流紋波較大時(shí)滑模變量 (s) 會(huì)被噪聲污染進(jìn)而被平方根和符號(hào)函數(shù)放大。解決辦法是給 (s) 增加一個(gè)低通濾波但要注意濾波帶寬不能低于期望閉環(huán)帶寬。第二檢查 (k_2) 是否過(guò)大積分補(bǔ)償項(xiàng)對(duì)噪聲的積分會(huì)在輸出端產(chǎn)生低頻波動(dòng)。我自己的經(jīng)驗(yàn)是先調(diào)低 (k_2) 到臨界值再回頭調(diào) (k_1)會(huì)容易收斂得多。5.2 觀測(cè)器估計(jì)發(fā)散或震蕩的處理LESO和NDO在仿真中發(fā)散十有八九是離散步長(zhǎng)和觀測(cè)器增益不匹配。觀測(cè)器帶寬 (\omega_o) 越高要求仿真步長(zhǎng)越小這是奈奎斯特頻率在控制層面的體現(xiàn)。(T_s 1\times 10^{-5}) 時(shí)(\omega_o) 不宜超過(guò) (2\pi \times 10000)否則離散誤差會(huì)導(dǎo)致觀測(cè)器自激振蕩。另外NDO的增益 (l_0) 超過(guò)系統(tǒng)模型實(shí)際非線(xiàn)性強(qiáng)度時(shí)也會(huì)產(chǎn)生過(guò)沖表現(xiàn)為 (\hat{\Delta}) 波形出現(xiàn)明顯尖峰。這種情況下優(yōu)先降低 (l_0)如果仍然發(fā)散則需要在 (\hat{\Delta}) 輸出端加限幅。5.3 負(fù)載突變響應(yīng)慢或前饋失效負(fù)載觀測(cè)器工作正常但輸出電壓跌落改善不明顯這類(lèi)問(wèn)題通常出在前饋?lái)?xiàng)的符號(hào)和增益上。保險(xiǎn)起見(jiàn)可以先把前饋?lái)?xiàng)拆出來(lái)單獨(dú)測(cè)試讓系統(tǒng)跑穩(wěn)態(tài)然后手動(dòng)給占空比加一個(gè)小階躍觀察負(fù)載觀測(cè)器輸出的方向是否正確。前饋符號(hào)反了最典型的現(xiàn)象是負(fù)載突加時(shí)占空比不但沒(méi)增大反而先減小了一步響應(yīng)劣化非常明顯。前饋系數(shù)也不宜過(guò)大1.0到1.2倍安全系數(shù)即可再大會(huì)造成輸出過(guò)調(diào)。我把平時(shí)整理的問(wèn)題排查表放在這里供實(shí)際調(diào)試時(shí)快速對(duì)照現(xiàn)象可能原因解決措施輸出電壓紋波異常增大超螺旋增益偏大減小 (k_1)微調(diào) (k_2)負(fù)載突變后恢復(fù)緩慢前饋?lái)?xiàng)失效檢查符號(hào)和增益觀測(cè)值持續(xù)振蕩離散步長(zhǎng)偏大縮小 (T_s) 或降低 (\omega_o)啟動(dòng)階段占空比飽和積分器初值不當(dāng)初始化時(shí)避開(kāi)大誤差輸入電壓突變響應(yīng)差NDO帶寬不夠適當(dāng)增大 (l_0) 并加濾波5.4 從仿真到硬件移植的幾點(diǎn)提醒最后說(shuō)個(gè)很多人容易忽略的問(wèn)題仿真里的理想電壓源、理想開(kāi)關(guān)管在硬件里是不存在的。占空比直接由控制律輸出、沒(méi)有經(jīng)過(guò)調(diào)制模塊的話(huà)仿真能跑但硬件上必須經(jīng)過(guò)PWM比較器和驅(qū)動(dòng)電路。另外控制頻率受限于MCU的ADC采樣時(shí)間和PWM更新頻率100kHz控制頻率對(duì)應(yīng)高性能MCU如果使用普通DSP或ARM建議控制頻率降到20kHz到50kHz同時(shí)重新整定觀測(cè)器帶寬保持控制帶寬與采樣頻率之比在合理區(qū)間一般不超過(guò)十分之一。把仿真策略縮小兩個(gè)數(shù)量級(jí)后整套設(shè)計(jì)在硬件上直接復(fù)用的概率會(huì)大很多。我在實(shí)際項(xiàng)目里最后還加了一個(gè)軟啟動(dòng)邏輯用斜坡參考電壓替代階躍參考讓積分器在初始階段不要飽和這一個(gè)小改動(dòng)把啟動(dòng)過(guò)沖從接近2V壓到了0.3V以?xún)?nèi)。這套思路不只適用于BuckBoost、Buck-Boost甚至三相并網(wǎng)變換器換一套狀態(tài)方程和一組合適的增益就能套用同樣的框架。如果你正在做類(lèi)似的變換器控制設(shè)計(jì)建議先把不帶觀測(cè)器的滑??刂普{(diào)通再疊加觀測(cè)器一步一步來(lái)不要一上來(lái)就全上否則出了問(wèn)題很難定位。本文還有配套的精品資源點(diǎn)擊獲取