(貴州省機械工業(yè)學校,貴州貴陽550004)
迭代學習控制算法的最初是由日本的Arimoto學者提出的一種智能學習控制方法,這種方法當時主要是為了解決在機器人系統(tǒng)中對于重復軌跡的跟蹤問題[1]。從迭代學習控制算法的本質上來說,它其實是一種基于前饋的重復軌跡跟蹤控制方法。近幾十年來,隨著技術的不斷推進,迭代學習控制更是由于其不依賴于模型的特性被廣泛用于各種控制系統(tǒng),如機器人系統(tǒng)[2]、過程控制系統(tǒng)[3-4]、隨機時滯系統(tǒng)[5-6]等。
迭代學習控制方法之所以對于重復信號能有較好的跟蹤性能,是由于它充分利用了系統(tǒng)在過去的一段時間內,對過去的控制信息不斷的學習迭代,從中找到一組最適合系統(tǒng)的控制信號。這種方法不需要系統(tǒng)精確的數學模型,因而對于某些具有強非線性、強耦合、難以建模的系統(tǒng)有較高的優(yōu)勢[7-10]。就目前的形式來看,迭代學習控制已經逐漸成為了智能控制領域中一種尤為重要的控制方法,比如在理論分析方面,迭代學習控制算法的魯棒性和收斂速度等的分析都已經取得了豐富的成果[11-13]。
本文主要是針對某機械伺服系統(tǒng)中,系統(tǒng)跟蹤重復的軌跡信號時,由于存在摩擦等非線性擾動的影響,采用傳統(tǒng)的線性控制方法(PID),難以準確跟蹤參考軌跡的問題,提出了一種帶有遺忘因子的PID型改進迭代學習方法,并從理論上給出了系統(tǒng)收斂的條件。最后的仿真結果表明,所提出的這種控制算法有利于系統(tǒng)消除擾動,提高跟蹤重復軌跡信號的跟蹤精度。
在某機械系統(tǒng)中,其傳動裝置主要由電機、驅動器、編碼器和負載組成,其動力學模型建立如下:
(1)
其中:θ(t)表示機械系統(tǒng)中負載運動的角位置;ω(t)表示機械系統(tǒng)運動時的角速度;i代表電機的輸入電流;J被用來表示機械系統(tǒng)中驅動電機轉子轉動慣量與負載的轉動慣量之和;kt代表電機的力矩常數;Bv表示負載的阻尼系數;f(t,ω)表示系統(tǒng)受到的摩擦力。
根據系統(tǒng)動力學模型,我們可將其寫為狀態(tài)空間方程的形式:
yk=Cxk
(2)
針對該帶摩擦力擾動的控制系統(tǒng),我們首先作如下假設:
假設1:對于該機械系統(tǒng)2見公式(2)(以下類同),存在這樣一個理想的輸入信號ud(t),能夠使得系統(tǒng)跟蹤上理想的軌跡yd(t)。即:
yd=Cxd
(3)
假設2:對于該機械系統(tǒng)(2),每次迭代開始時的初始狀態(tài)是一樣的。即:
xd(0)=xk(0),k=1,2,3…
(4)
對于系統(tǒng)(2),本文設計了一種帶有遺忘因子的PID型改進的迭代學習控制器。之所以在該控制器中引入一個遺忘因子,主要是為了增加系統(tǒng)抑制噪聲、初始誤差及系統(tǒng)模型波動的魯棒性[14]。該迭代學習控制器如下:
(5)
定理1:對于該機械系統(tǒng)(2),當采用了帶有遺忘因子的迭代學習控制器結構如公式(4)所示時,如果能滿足條件:
(6)
則當k→∞時,yk(t)→yd(t)(t∈[0,T])。
證明:由系統(tǒng)(2)及控制器(4)可知:
(7)
根據系統(tǒng)(2)及(3),可以得到:
(8)
將(8)式帶入等式(7)中,則有:
(9)
對(9)式兩邊取范數,則有:
(10)
(10)式兩端同時乘以e-λt,λ>0則有:
(11)
對(11)上式兩端同時取λ范數,這里λ>a0,則有:
(12)
其中:
(13)
根據假設2,我們可以得到如下關系:
(14)
令:
(15)
則:
(16)
(17)
從而根據前面的分析,可知:
(18)
將上式帶入,可得:
(19)
則系統(tǒng)的誤差:
(20)
當選取一個足夠大的常數λ,使得λ滿足λ遠大于a0時,可以知道:
(21)
因此,定理得證。
對于如公式(1)所示的機械系統(tǒng),它的模型參數如下:
J=0.03 kg·cm2,B=0.98,kt=28.89 N·m
其中f(t,ω),這里近似引入白噪聲來代替。系統(tǒng)跟蹤的軌跡為θ=sin(0.5t),采樣時間為0.001。對于該機械系統(tǒng),本文分別針對其設計了兩種不同的控制器來進行比較。
1)PID控制器。經過經驗試湊,選擇PID的參數分別為:比例增益Kp=1185,積分增益Ki=0.85,微分增益Kd=0.5。跟蹤結果如圖1所示??梢钥吹讲捎肞ID控制器時,系統(tǒng)能夠很快收斂,最大誤差為0.1987,均方誤差為0.0630。
圖1 PID控制器跟蹤結果
2)帶遺忘因子的改進型迭代學習控制器。選擇遺忘因子為α=0.5,L=40,Γ=0.4,Ψ=0.01。跟蹤結果如圖2所示,當迭代次數k≥8時,系統(tǒng)的輸出軌跡已經能基本跟上理想信號,且收斂到最小誤差后,系統(tǒng)的最大誤差為0.0885,均方誤差為0.0351。相比傳統(tǒng)的PID控制器,系統(tǒng)的跟蹤誤差減小了一倍以上。這說明所提出的帶遺忘因子的迭代學習控制器對帶擾動信號的系統(tǒng),跟蹤重復軌跡信號時,有著優(yōu)秀的跟蹤能力。
圖2 帶遺忘因子的改進迭代學習控制器跟蹤結果
對比兩種控制器的跟蹤結果,可以發(fā)現,PID控制器收斂到最小誤差所需的時間較短,而相比傳統(tǒng)的PID控制器,帶有遺忘因子的改性迭代學習控制器的需要迭代到第8次以上,系統(tǒng)能收斂到最小誤差。但是,從系統(tǒng)跟蹤的精度來看,采用帶有遺忘因子的改進迭代學習控制器時,系統(tǒng)的誤差減小了一倍以上。這說明所提出的帶遺忘因子的迭代學習控制器對帶擾動信號的系統(tǒng),跟蹤重復軌跡信號時,有著優(yōu)秀的跟蹤能力。
表1兩種控制器跟蹤誤差
針對帶有未知擾動的某機械系統(tǒng),提出了一種帶有遺忘因子的PID型改進迭代學習控制器。并給出了該機械系統(tǒng)達到最優(yōu)控制信號的收斂條件。通過與傳統(tǒng)的PID控制器數值仿真對比,證實了所提出的帶有遺忘因子的改進迭代學習控制器對于該機械系統(tǒng)有著較好控制性能,系統(tǒng)的誤差最大值及均方值均減小了一倍,提高了系統(tǒng)的跟蹤精度。下一步計劃將該種控制器用于實際的控制系統(tǒng)并進行試驗研究。