李迎光 陳仁義
摘? 要:文章針對一類具有時變性質(zhì)的受擾線性系統(tǒng),設(shè)計一種可實現(xiàn)干擾抑制的變增益自抗擾控制方法。通過設(shè)計時變增益的擴(kuò)張狀態(tài)觀測器,完成對系統(tǒng)的狀態(tài)觀測和擾動估計?;跔顟B(tài)反饋的控制律完成對總擾動的補(bǔ)償。最后,通過在MATLAB/Simulink中的數(shù)值仿真進(jìn)行了變增益自抗擾控制與線性自抗擾控制的對比實驗,仿真結(jié)果驗證了該文所提方法的有效性。
關(guān)鍵詞:時變系統(tǒng);干擾抑制;擴(kuò)張狀態(tài)觀測器;自抗擾控制;時變增益
中圖分類號:TP391;TP271? 文獻(xiàn)標(biāo)識碼:A? 文章編號:2096-4706(2023)06-0017-04
Variable-Gain Active Disturbance Rejection Control Method for a Class of
Time-Varying Systems
LI Yingguang, CHEN Renyi
(School of Electrical Engineering, North China University of Water Resources and Electric Power, Zhengzhou? 450045, China)
Abstract: In this paper, a variable gain active disturbance rejection control method for interference suppression is designed for a class of perturbed linear systems with time-varying characteristics. By designing an extended state observer with time-varying gain, the state observation and disturbance estimation of the system are completed. Complete the compensation on the total disturbance based on control law of state feedback. Finally, a comparative experiment between variable gain active disturbance rejection control and linear active disturbance rejection control is carried out by numerical simulation in MATLAB/Simulink, and the simulation results verify the effectiveness of the proposed method.
Keywords: time-varying system; disturbance rejection; extended state observer; active disturbance rejection control; time-varying gain
0? 引? 言
控制是指通過施加適當(dāng)?shù)妮斎胄盘?,使被控對象或過程自動地按預(yù)定規(guī)律運(yùn)行[1]。眾所周知,控制的主要的目的就是使系統(tǒng)不受外部干擾或非期望因素的影響,得到系統(tǒng)穩(wěn)定的最終結(jié)果。當(dāng)然,系統(tǒng)的設(shè)計的關(guān)鍵問題就是使系統(tǒng)性能滿足預(yù)期的要求,同時也要使系統(tǒng)在一些非期望因素影響的條件下保持或接近期望的狀態(tài)。系統(tǒng)的設(shè)計要求就是盡可能準(zhǔn)確且迅速地是被控系統(tǒng)的輸出可以與給定的輸入信號匹配。然而,被控系統(tǒng)中或許存在一些不確定性以及外部環(huán)境會對系統(tǒng)產(chǎn)生一定的干擾。如果被控系統(tǒng)的模型建立是十分精確的,就可以根據(jù)此數(shù)學(xué)模型并結(jié)合給定的輸入信號選擇合適的控制方法以滿足系統(tǒng)的設(shè)計要求。但是,無法避免的是系統(tǒng)的內(nèi)部不確定性和環(huán)境的外部干擾。因此,系統(tǒng)的實際控制設(shè)計過程中,需要重點考慮的就是選取合適的方法進(jìn)行擾動和不確定性的抑制,這無疑是系統(tǒng)設(shè)計中的核心問題。
反饋是自動控制領(lǐng)域的一個重要主題,精髓在于利用誤差來減少誤差。反饋控制可以根據(jù)系統(tǒng)的輸出與其相應(yīng)的期望值比較得到對應(yīng)的誤差,并利用此誤差反饋給控制器以達(dá)到消除誤差的目的。這種基于誤差消除誤差的思想在控制策略的發(fā)展中起到了至關(guān)重要的作用。
眾多抗擾控制策略都擁有一個共同的框架,就是基于觀測器的反饋控制思想,通過建立一個用于估計擾動和不確定性的觀測器,觀測器輸出用于控制器中的擾動補(bǔ)償,進(jìn)而減少或者消除擾動對系統(tǒng)產(chǎn)生的不利影響。主要有干擾適應(yīng)控制(Disturbance Accommodation Control, DAC)、基于擾動觀測器控制(Disturbance Observers, DOB)、自抗擾控制(Active Disturbance Rejection Control, ADRC)等。
自抗擾控制是一種優(yōu)秀的抗擾控制策略,是借鑒現(xiàn)代控制理論同時在經(jīng)典控制論思想精華的基礎(chǔ)上構(gòu)建的[2]。自抗擾控制提出將積分串聯(lián)環(huán)節(jié)視為一種標(biāo)準(zhǔn)型,將區(qū)別于系統(tǒng)標(biāo)準(zhǔn)型之外的部分視為總擾動,并將其擴(kuò)張為一個新的狀態(tài)。如果可以得到這個總擾動的估計值,就能在控制器的設(shè)計中完成擾動補(bǔ)償。因此,在觀測器的設(shè)計中,創(chuàng)新性地提出擴(kuò)張狀態(tài)觀測器以完成系統(tǒng)狀態(tài)和總擾動的觀測輸出估計,從而在控制器中完成對總擾動的消除。這種控制方法將復(fù)雜系統(tǒng)的設(shè)計簡單化,而且更加直觀地完成對系統(tǒng)的還原。它獨特的擾動估計和補(bǔ)償思想在很多領(lǐng)域都取得了顯著的成果。
自抗擾控制中的核心問題就是擴(kuò)張觀測器的設(shè)計,因為它關(guān)系到對系統(tǒng)狀態(tài)和總擾動的觀測估計,在控制律中起到關(guān)鍵作用。影響觀測器效果的主要因素就是觀測增益的選取,選擇合適的觀測器增益對控制系統(tǒng)設(shè)計起到至關(guān)重要的作用。因此,本文研究一種變增益自抗擾控制的設(shè)計方法,目的是針對一類時變受擾系統(tǒng),達(dá)到擾動抑制的效果。
1? 自抗擾控制
自抗擾控制是一種主動抗擾控制方法,在擾動影響系統(tǒng)輸出之前,主動進(jìn)行擾動抑制。這種控制機(jī)制可以從被控系統(tǒng)的輸入和輸出中建立觀測器完成對總擾動信息的觀測估計,并通過反饋控制器產(chǎn)生擾動補(bǔ)償?shù)目刂坡?,以達(dá)到抗擾和穩(wěn)定輸出的目的。自抗擾控制的基本框架圖如圖1所示。
自抗擾控制主要由控制器、被控對象和擴(kuò)張狀態(tài)觀測器組成[3]。該控制機(jī)制的主要思想就是把區(qū)別于標(biāo)準(zhǔn)積分系統(tǒng)以外的部分視為總擾動,并將其視為新的狀態(tài)變量,同時在觀測器的設(shè)計中加入對擴(kuò)張狀態(tài)的估計,最后在控制器的設(shè)計中完成對總擾動的補(bǔ)償。擴(kuò)張狀態(tài)觀測器是自抗擾控制機(jī)制中最重要的部分,它完美解決了抗擾控制中對擾動的觀測問題,其獨特的擴(kuò)張狀態(tài)觀測思想與傳統(tǒng)狀態(tài)觀測器結(jié)合,不依賴系統(tǒng)的模型,只需要系統(tǒng)的輸入和輸出就可以完成對擾動的觀測,進(jìn)一步得到相應(yīng)的觀測估計值。
控制器的設(shè)計可以分為線性控制器和非線性狀態(tài)控制器。針對一些非線性系統(tǒng),可以在控制器前面加入跟蹤微分器,安排參考輸入信號過渡而得到產(chǎn)生過渡過程的誤差信號、誤差微分信號、誤差積分信號,將三種信號組合起來,可以得到相似于PID控制的線性控制器或者組合為非線性控制器。然而,非線性自抗擾控制的結(jié)構(gòu)復(fù)雜且需調(diào)節(jié)參數(shù)過多,理論分析煩瑣,不利于工程應(yīng)用。針對這些不足,線性自抗擾控制被提出來解決了這些問題。線性機(jī)制下的控制器和擴(kuò)張狀態(tài)觀測器都是線性形式,同時實現(xiàn)了控制器帶寬和觀測器帶寬為參數(shù)變量,大大減少了調(diào)參的難度。ADRC線性化將其調(diào)整參數(shù)與帶寬相聯(lián)系,使ADRC參數(shù)概念更直觀,整定更加簡單,大大促進(jìn)了ADRC的推廣。在自抗擾控制的基礎(chǔ)上,也存在著許多改進(jìn)的控制方法,但是不變的就是擴(kuò)張狀態(tài)觀測器的存在。
首先,以二階系統(tǒng)為例,被控對象為:
(1)
式中,y和u分別為系統(tǒng)的輸入和輸出,w為外部擾動。a0和a1以及w均未知,b部分已知(記為b0),將式(1)改寫為:
(2)
其中f即為包含了內(nèi)擾和外擾的總擾動:
接下來選取狀態(tài)變量:
則被控對象式(2)轉(zhuǎn)換為新的連續(xù)的擴(kuò)張狀態(tài)空間描述為:
(3)
其中:
針對上面的擴(kuò)張系統(tǒng)式(3),可以設(shè)計對應(yīng)的擴(kuò)張狀態(tài)觀測器為:
(4)
其中? 是對x的估計,L是需要設(shè)計的觀測器增益。線性自抗擾為了使擴(kuò)張觀測器式(4)特征方程的極點位于同一極點處[4],即觀測器帶寬ω0,可以取觀測器增益為 可以保證? 這樣就簡化了觀測器的調(diào)參問題。
控制器的設(shè)計是基于觀測器狀態(tài)和擾動估計,對于上述的二階系統(tǒng),其形式為:
其中,r是給定的輸入值, 和? 是擴(kuò)張狀態(tài)觀測器的狀態(tài)估計, 是對總擾動的估計,k1和k2是需要設(shè)計的控制參數(shù)。同樣經(jīng)過參數(shù)化,可以將控制參數(shù)與控制器帶寬ωc相聯(lián)系:。
2? 變增益自抗擾控制設(shè)計
接下來,本文主要考慮一類新型的變增益自抗擾控制的設(shè)計方法。
針對一類具有周期時變性質(zhì)的系統(tǒng),以二階為例,形式為:
(5)
其中,a1(t)和a0(t)是以T為周期的時變參數(shù)。
離散控制器可以通過離散化連續(xù)控制器或者基于系統(tǒng)的離散化模型直接進(jìn)行理論設(shè)計。對ADRC設(shè)計離散控制器,有助于其在數(shù)字和計算機(jī)控制系統(tǒng)的廣泛應(yīng)用。線性自抗擾控制的離散化包括兩部分,為擴(kuò)張狀態(tài)觀測器和控制器的離散,其中控制器部分是擴(kuò)張狀態(tài)觀測器的觀測狀態(tài)輸出和觀測擾動輸出的組合,不同的組合方式得到不同形式的控制器。因此線性自抗擾控制的離散化主要是對擴(kuò)張狀態(tài)觀測器的離散設(shè)計。選用常用的離散化方法——當(dāng)前歐拉法對其系統(tǒng)式(5)進(jìn)行離散化設(shè)計:
將歐拉公式應(yīng)用到擴(kuò)張系統(tǒng)中,可以得到:
其中,h為離散系統(tǒng)的采樣周期。
將x3(t)+h(-a0(t)x2(t)-a1(t)x3(t)-a1(t)bu(t))和外部擾動w視為總擾動,接下來的任務(wù)是對擴(kuò)張后的狀態(tài)空間模型設(shè)計擴(kuò)張狀態(tài)觀測器,目標(biāo)是得到狀態(tài)變量和總擾動的估計值,進(jìn)一步設(shè)計觀測器為:
(6)
其中:
Lc為待設(shè)計的觀測器增益。與連續(xù)系統(tǒng)的觀測器增益設(shè)計相似,將特征方程的極點位于同一位置β處:
λ(z)=|zI-(Φ-LH)|=(z-β)3
可以求得:
離散觀測器極點與連續(xù)觀測器可以互相轉(zhuǎn)換,具有如下的關(guān)系:。
然而,本文考慮的系統(tǒng)具有周期參數(shù),在此設(shè)計一種變增益的觀測器,即擴(kuò)張狀態(tài)觀測器的極點也是與系統(tǒng)參數(shù)同周期變化的。在保證觀測器穩(wěn)定的前提下,得到時變的觀測器增益,這樣可以提高觀測器的估計精度。針對不同變化參數(shù)的系統(tǒng),可以通過選擇合適的觀測器極點,取得良好的控制效果。
3? 仿真分析
在上述分析的基礎(chǔ)上,本文選取一個如下的例子:
其中a0(t)和a1(t)是以3為周期的時變參數(shù):
外部擾動為t=5時的幅值為-2的階躍擾動,b=1。
接下來按照自抗擾控制的設(shè)計方法,將 視為總擾動,并將其擴(kuò)張為一個新的狀態(tài)。采樣時間h選取為0.001,利用歐拉法可以得到離散化后的系統(tǒng)。線性自抗擾控制選擇的觀測器帶寬和控制器帶寬分別為:ω0=60,ωc=15。控制器的設(shè)計是基于擴(kuò)張狀態(tài)觀測器的狀態(tài)輸出觀測和擾動輸出觀測。本文提出的變增益方法中選取同樣的控制器帶寬ωc,而對觀測器帶寬進(jìn)行改進(jìn)。顯而易見,被控系統(tǒng)中存在周期時變部分,采用變增益帶寬的形式可以取得更好的觀測效果,這里?。?/p>
在選取好參數(shù)后,在MATLAB/Simulink中搭建仿真模型如圖2所示。
仿真測試采用對比實驗,其中上面一部分采用線性自抗擾控制方法,下面一部分采用變增益自抗擾控制方法,在相同給定輸入和外部擾動的條件下,進(jìn)行比較。
其中DESO是采用Simulink中的離散狀態(tài)空間模塊DiscreteState-Space,其中的參數(shù)A,B,C,D設(shè)置為:
該模塊的輸入是控制量u和系統(tǒng)輸出y,模塊的輸出是觀測向量 。本文的方法設(shè)計為DESO1,由于涉及時變增益,采用S函數(shù)進(jìn)行編寫自定義模塊,實現(xiàn)相應(yīng)的功能。眾所周知,Simulink的連接是以模塊為單位的。在S函數(shù)的框架下,利用M語言或者C語言進(jìn)行對子方法的調(diào)用,與S-Function模塊共同構(gòu)成Simulink的自定義功能模塊,可以實現(xiàn)用戶期望的動作[5]。這樣得到的模塊與Simulink通用模塊庫里的模塊一樣,可以描述連續(xù)系統(tǒng)、離散系統(tǒng)或者混合系統(tǒng)。一個S函數(shù)由多個子函數(shù)組成,包括模塊初始化、采樣時刻計算、模塊輸出計算、離散狀態(tài)量的更新以及終止條件,等等。
本文的設(shè)計難點就是對變增益擴(kuò)張觀測器的模型建立。在此,為了實現(xiàn)周期時變增益的目的,利用S函數(shù)編寫自定義模塊,根據(jù)時間的變化先設(shè)置相應(yīng)周期的時變增益,并在對應(yīng)時刻賦值于擴(kuò)張狀態(tài)觀測器中,形成一個周期變增益觀測器,也進(jìn)一步達(dá)到了本文的設(shè)計目標(biāo)。仿真結(jié)果如圖3所示。
由圖3可以看出,給定的輸入值為5,實線輸出1是線性自抗擾控制方法下的系統(tǒng)輸出,虛線輸出2是本文所提出的變增益自抗擾控制方法下的系統(tǒng)輸出,在相同外部擾動情況下,變增益自抗擾控制方法的響應(yīng)時間和控制精度都要優(yōu)于線性自抗擾控制,其中在t為2時,擾動產(chǎn)生,系統(tǒng)很快恢復(fù)穩(wěn)定。圖4是兩種方法的擾動估計比較,兩種方法的觀測輸出估計均為總擾動。
4? 結(jié)? 論
本文設(shè)計了一種變增益自抗擾控制方法,有效地解決了一類時變系統(tǒng)的擾動抑制問題。針對一類具有特殊時變性質(zhì)的受擾線性系統(tǒng),首先對其進(jìn)行狀態(tài)擴(kuò)張,將內(nèi)部擾動和外部擾動視為總擾動,便于在控制器中消除這些因素對系統(tǒng)的影響。同時采用歐拉法對擴(kuò)張后的系統(tǒng)進(jìn)行離散化處理?;诰€性自抗擾控制的參數(shù)化增益設(shè)計思想,在觀測器設(shè)計中采取時變增益的形式,提高了觀測器的估計準(zhǔn)確性和系統(tǒng)的控制精度。基于狀態(tài)反饋的控制器完成對總擾動的補(bǔ)償。在仿真實驗中,本文提出的變增益方法要優(yōu)于傳統(tǒng)的自抗擾控制,具有一定的優(yōu)越性。
參考文獻(xiàn):
[1] 王璐.基于觀測器的抗干擾控制策略研究及性能評估 [D].上海:上海交通大學(xué),2015.
[2] 朱斌.自抗擾控制入門 [M].北京:北京航空航天大學(xué)出版社,2017.
[3] 韓京清.自抗擾控制技術(shù):估計補(bǔ)償不確定因素的控制技術(shù) [M].北京:國防工業(yè)出版社,2008.
[4] GAO Z Q. Scaling and bandwidth-parameterization based controller tuning [C]//Proceedings of the 2003 American Control Conference.Denver:IEEE,2003:4989-4996.
[5] 孫忠瀟.Simulink仿真及代碼生成技術(shù)入門到精通 [M].北京:北京航空航天大學(xué)出版社,2015.
作者簡介:李迎光(1998—),男,漢族,河南駐馬店人,碩士研究生在讀,研究方向:自抗擾控制;陳仁義(1995—),男,漢族,河南新鄉(xiāng)人,碩士研究生在讀,研究方向:自適應(yīng)控制。
收稿日期:2022-11-23