(北京理工大學(xué)自動(dòng)化學(xué)院, 北京100081)
迭代學(xué)習(xí)控制的思想最先是由日本學(xué)者Uchiyama[1]提出的,只是未引起人們廣泛的關(guān)注。一般認(rèn)為,Arimoto在1984年提出的學(xué)習(xí)算法被認(rèn)為是關(guān)于迭代學(xué)習(xí)控制的開創(chuàng)性研究。
迭代學(xué)習(xí)控制適合于一類具有重復(fù)運(yùn)行特性的被控對(duì)象,其任務(wù)是尋找控制輸入,使得被控系統(tǒng)的實(shí)際輸出軌跡在有限時(shí)間區(qū)間上沿整個(gè)期望輸出軌跡實(shí)現(xiàn)零誤差的完全跟蹤,并且整個(gè)控制過(guò)程要求快速完成[2-4]。
迭代學(xué)習(xí)控制經(jīng)過(guò)近20年的發(fā)展,無(wú)論在理論還是在應(yīng)用上都取得了豐碩的成果。近些年來(lái)提出的基于系統(tǒng)逆的迭代學(xué)習(xí)控制(IIC)[5]技術(shù)提供了一種直接的方式來(lái)量化和說(shuō)明系統(tǒng)動(dòng)態(tài)不確定性對(duì)迭代學(xué)習(xí)控制性能的影響, 從而達(dá)到迭代控制輸入的快速收斂[6-7]。然而, 這種方法仍然需要?jiǎng)恿W(xué)模型和建模過(guò)程,模型質(zhì)量直接限制了IIC技術(shù)的性能。MIIFC算法消除動(dòng)力學(xué)建模過(guò)程,并顯著提高跟蹤性能[8]。在相關(guān)研究的基礎(chǔ)上,提出了一種新型的MIIFC控制結(jié)構(gòu),分析了存在外界干擾下控制器的性能,與傳統(tǒng)的ILC控制相比,加快了系統(tǒng)收斂的速度,改變了控制量對(duì)誤差的補(bǔ)償方式;配合一般的PID控制器,可以省略繁瑣的PID參數(shù)整定過(guò)程,在粗略給出PID參數(shù)的情況下通過(guò)迭代學(xué)習(xí)達(dá)到精確的軌跡跟蹤。通過(guò)電液伺服系統(tǒng)的跟隨給定實(shí)驗(yàn),表明了該控制方法的有效性。
MIIFC算法如下:
u0(jω)=αyd(jω),k=0,
(1)
算法的迭代學(xué)習(xí)需要一組初始的輸入輸出數(shù)據(jù)u0(jω)、y0(jω),初始控制量u0(jω)可由給定軌跡yd(jω)乘以一個(gè)系數(shù)α獲得,α可以選取系統(tǒng)增益的倒數(shù)。
考慮一種存在輸出干擾的情況:
y(jω)=yl(jω)+yn(jω)
(2)
其中,yl(jω)為由控制輸入得到的輸出,yn(jω)則代表了輸出干擾項(xiàng)。
定義NSR(noise/disturbance to signal ratio)為噪聲與信號(hào)的比值。算法收斂性與跟蹤性能的優(yōu)劣由NSR的值來(lái)確定。
為了驗(yàn)證算法的收斂性和對(duì)跟蹤性能的提升,定義在k次迭代過(guò)程中迭代控制輸入和期望輸入的比值為:
(3)
其中,pk(jω) 是在頻率ω下,過(guò)去所有迭代過(guò)程中NSR的乘積,Sk(jω)則是pk(jω)的累加[3]。
推論:當(dāng)NSR的值小于一個(gè)常數(shù)時(shí),可以保證迭代學(xué)習(xí)算法的收斂性;通過(guò)進(jìn)一步界定NSR的值,可以使跟蹤性能得到顯著提高。
(5)
由式(5),可以得到隨著迭代次數(shù)增加,迭代輸入與期望的輸入比值為:
(6)
若每次迭代過(guò)程中NSR的值滿足小于一個(gè)正數(shù)ε,ε的范圍為:
(7)
則S∞(jω)是有界的:
(8)
聯(lián)合式(6),系統(tǒng)的相對(duì)跟蹤誤差為:
(9)
將式(8)的結(jié)果代入式(9)中,有:
(10)
至此,迭代學(xué)習(xí)的收斂性得到證明。同時(shí),圖1描述了不同NSR取值下系統(tǒng)的相對(duì)跟蹤誤差。
圖1 不同NSR取值下的相對(duì)跟蹤誤差
可以看出,如果在某特定頻率ω下NSR滿足:
(11)
則該頻率ω處的跟蹤誤差的頻率分量小于期望的輸出的頻率分量,跟蹤性能得到提升:
(12)
本研究中采用的控制對(duì)象為電液伺服閥控缸位置控制系統(tǒng),系統(tǒng)空載時(shí)的傳遞函數(shù)為:
(13)
式中,Ap—— 液壓缸的有效作用面積
Kq—— 流量增益
開環(huán)系統(tǒng)的傳遞函數(shù)是一個(gè)積分環(huán)節(jié),存在位于原點(diǎn)的極點(diǎn),因此系統(tǒng)是不穩(wěn)定的[9-10]。
MIIFC是一種開環(huán)控制,它并不能使系統(tǒng)鎮(zhèn)定,所以在許多迭代學(xué)習(xí)控制設(shè)計(jì)中總是假設(shè)系統(tǒng)是穩(wěn)定的,或者反饋控制器已經(jīng)存在[11]。如果考慮受控對(duì)象不穩(wěn)定或具有模型不確定與非重復(fù)擾動(dòng)時(shí),就應(yīng)該考慮設(shè)計(jì)一個(gè)能使系統(tǒng)鎮(zhèn)定的反饋控制器[12-13]。因此,引入圖2中虛線框內(nèi)的輸出反饋對(duì)系統(tǒng)進(jìn)行鎮(zhèn)定。
圖2 MIIFC控制框圖
其中,uk(jw),yk(jw),yk,n(jw)分別為第k次迭代學(xué)習(xí)控制的控制量uk(t)、系統(tǒng)輸出yk(t)、外界干擾yk,n(t)的傅立葉變換;uk+1(jw)為第k+1次迭代學(xué)習(xí)控制器的輸出uk+1(t)的傅立葉變換;yd(jw)為系統(tǒng)期望輸出yd(t)的傅立葉變換。MIIFC控制器根據(jù)第k次迭代過(guò)程中一定長(zhǎng)度(通常為重復(fù)給定軌跡的一個(gè)周期)的數(shù)據(jù),在頻域內(nèi)計(jì)算出k+1次迭代過(guò)程的控制量,然后通過(guò)逆傅立葉變換到時(shí)域,并開環(huán)給出;接下來(lái),該控制量由PID環(huán)節(jié)進(jìn)行逐點(diǎn)的閉環(huán)控制。
通常情況下,PID控制器要想達(dá)到精確的控制效果,需要一個(gè)反復(fù)調(diào)節(jié)PID參數(shù)的過(guò)程。如果PID控制器沒有經(jīng)過(guò)參數(shù)整定,那么跟蹤結(jié)果一般會(huì)存在靜差。為了省略復(fù)雜的參數(shù)整定過(guò)程,消除PID控制存在的靜差,從而精確的跟蹤給定曲線,加入MIIFC控制器來(lái)進(jìn)行迭代學(xué)習(xí)控制。具體控制過(guò)程如下:第一步,先根據(jù)經(jīng)驗(yàn)預(yù)估一組PID參數(shù),之后由PID單獨(dú)進(jìn)行控制,待運(yùn)行結(jié)果穩(wěn)定,截取一組原始的輸入輸出數(shù)據(jù),因?yàn)镻ID控制器未經(jīng)參數(shù)整定,所以這組數(shù)據(jù)是帶有靜差的。第二步,通過(guò)MIIFC控制器不斷迭代學(xué)習(xí),對(duì)靜差進(jìn)行修正直到收斂。可以看出,PID控制器和MIIFC是配合使用的,其中,PID主要用于系統(tǒng)鎮(zhèn)定,使跟蹤結(jié)果穩(wěn)定不發(fā)散即可,由于未經(jīng)參數(shù)整定,因此其消除誤差的作用有限,尤其是當(dāng)干擾較大或者誤差較大時(shí),僅依靠PID控制依然會(huì)存在很大的靜差,因此主要的誤差消除工作仍需MIIFC迭代學(xué)習(xí)控制來(lái)完成。此外,PID控制作為反饋控制器,本身存在固有的滯后現(xiàn)象,對(duì)于高頻信號(hào)尤為明顯。而加入MIIFC前饋控制之后,通過(guò)上一迭代周期的迭代控制器輸出、被控對(duì)象輸出和給定軌跡離線計(jì)算出下一個(gè)迭代周期的控制量,可以對(duì)滯后現(xiàn)象帶來(lái)的誤差進(jìn)行補(bǔ)償。
實(shí)驗(yàn)中參考輸入為不同頻率、不同幅值的正弦信號(hào),被控對(duì)象為電液伺服閥控缸系統(tǒng)。
以單個(gè)對(duì)稱伺服閥控制非對(duì)稱缸系統(tǒng)為研究對(duì)象,整體的實(shí)驗(yàn)平臺(tái)主要由泵站、閥控缸、工控機(jī)組成。閥控缸系統(tǒng)由慣性負(fù)載、彈性負(fù)載、控制器、1個(gè)四通伺服閥、1個(gè)非對(duì)稱液壓缸、1個(gè)活塞桿位置傳感器以及其他附件和液壓管路組成。工控機(jī)采用主從機(jī)結(jié)構(gòu),主機(jī)為1臺(tái)筆記本電腦,從機(jī)是NI公司的8101機(jī)箱,裝載有PXI-6251采集卡,具有16路16位模擬輸入,單通道采樣率最大可達(dá)1.25 MS/s,用于數(shù)據(jù)采集、AD/DA轉(zhuǎn)換和控制算法的實(shí)現(xiàn)。終端安裝有NI LabVIEW的實(shí)時(shí)系統(tǒng)(Real-time System),可以在指定時(shí)間內(nèi)完成規(guī)定操作,具有很高的時(shí)間精度和可靠度,保證了實(shí)時(shí)信號(hào)不間斷采集存儲(chǔ)和傳輸。開發(fā)環(huán)境為L(zhǎng)abVIEW 2012,MIIFC控制器采用MATLAB編寫,包括傅立葉變換以及算法具體的計(jì)算過(guò)程,縮短了控制周期。
實(shí)驗(yàn)中,使液壓缸分別跟隨幅值為10 mm、頻率為1 Hz和幅值為2 mm、頻率為10 Hz的正弦給定曲線。首先初步估計(jì)PID控制器參數(shù),并使系統(tǒng)在PID控制下跟蹤正弦曲線,得到初始的輸入輸出數(shù)據(jù);之后開始MIIFC迭代控制過(guò)程。
圖3a為單純的采用估計(jì)PID參數(shù)進(jìn)行控制的位移y跟蹤1 Hz、10 mm正弦曲線;圖3b為在圖3a的基礎(chǔ)上,利用MIIFC迭代5次之后液壓缸的跟蹤給定曲線;圖4a為單純的采用估計(jì)PID參數(shù)進(jìn)行控制的位移y跟蹤10 Hz、2 mm正弦曲線;圖4b為在圖4a的基礎(chǔ)上,利用MIIFC迭代5次之后液壓缸的跟蹤給定曲線;可以看出,MIIFC迭代控制器可以消除原有的跟蹤誤差,實(shí)現(xiàn)對(duì)給定曲線的精確跟蹤,并且有較快的收斂速度。
圖3 1 Hz,10 mm正弦跟蹤實(shí)驗(yàn)曲線
在實(shí)際工況中,如果開始運(yùn)行時(shí)通過(guò)PID控制能穩(wěn)定的話,那么接下來(lái)的擾動(dòng)一般是緩慢變化的,帶來(lái)的誤差可以通過(guò)迭代逐漸消除;假如出現(xiàn)大擾動(dòng)的情況,可能會(huì)破壞系統(tǒng)的穩(wěn)定性而導(dǎo)致發(fā)散,那么就需要重新進(jìn)行迭代找到新的控制量。
圖4 10 Hz,2 mm正弦跟蹤實(shí)驗(yàn)曲線
設(shè)計(jì)的MIIFC迭代控制器,結(jié)構(gòu)簡(jiǎn)單,易于實(shí)現(xiàn);省去了相關(guān)的建模過(guò)程, 減少了模型不確定度帶來(lái)的誤差;應(yīng)用NSR考慮了可能存在的外界噪聲的范圍,并理論證明了預(yù)期達(dá)到的控制精度;通過(guò)迭代學(xué)習(xí)對(duì)跟蹤誤差進(jìn)行了準(zhǔn)確的補(bǔ)償,省略了反復(fù)的PID參數(shù)整定過(guò)程。實(shí)驗(yàn)表明,基于逆的迭代控制具有快速的收斂性和跟蹤精度,是一種簡(jiǎn)單有效的迭代控制算法。