周愛美,王 飛
(浙江廣廈建設(shè)職業(yè)技術(shù)大學(xué)智能制造學(xué)院,浙江東陽 322100)
工程生產(chǎn)過程中不可避免地會遇到各種類型的控制對象,其中有一類控制對象系統(tǒng)模型存在不確定性或是有些控制對象甚至無法精確建模,針對這種未建模動力學(xué)系統(tǒng)及模型不確定性動力學(xué)系統(tǒng),可以使用一類數(shù)據(jù)驅(qū)動的控制方法,但是這類方法由于在初始階段會出現(xiàn)較大的誤差,從而系統(tǒng)收斂、鎮(zhèn)定過程會比較長,控制系統(tǒng)的實時性達不到要求[1];另外,有些算法精確性不高,滿足不了工業(yè)生產(chǎn)的精度要求,以焊接機器人控制系統(tǒng)設(shè)計為例,其末端執(zhí)行器的軌跡控制精度要求很高,需要實現(xiàn)精確跟蹤[1-2]。迭代學(xué)習(xí)控制也是一類不需要精確建模的控制算法[3],而且其產(chǎn)生的背景就是處理工業(yè)生產(chǎn)中的重復(fù)運行,因此,工業(yè)機器人的重復(fù)控制問題可以采用迭代學(xué)習(xí)控制加以解決:采用K時刻之前產(chǎn)生的輸出誤差對K時刻運行及K+時刻運行的控制輸入量進行修正,而系統(tǒng)當(dāng)前控制指令u(k)是在之前迭代步控制指令u(k- 1)的基礎(chǔ)上,根據(jù)相應(yīng)的偏差e(k- 1)做出調(diào)整得到[4]。
基于這一“在重復(fù)中學(xué)習(xí)”的思想,經(jīng)過多次迭代,從而滿足控制的精確跟蹤要求??刂葡到y(tǒng)的另一項指標時效性要求則需要選擇不同的迭代學(xué)習(xí)算法,整定出最優(yōu)的參數(shù)。鑒于此,本文在傳統(tǒng)迭代學(xué)習(xí)控制的基礎(chǔ)上,提出了一種分數(shù)階微分Dλ型迭代學(xué)習(xí)算法,這類算法可以很好地滿足時效性和精確性要求,可以有效解決誤差的微分量和積分量的計算分析,從而減輕測量噪聲的影響。同時,在Dλ型迭代學(xué)習(xí)算法基礎(chǔ)上,設(shè)計了一種自適應(yīng)Dλ型迭代學(xué)習(xí)算法,增加迭代學(xué)習(xí)控制算法的應(yīng)用場景。
迭代學(xué)習(xí)控制核心思想是基于誤差來迭代修正輸入。為了有效增加控制算法收斂速度、提升控制精確,作為輸入量,除了誤差值外,還包括獲取誤差的微分項和積分項,并通過參數(shù)整定的方式,獲得最優(yōu)的控制規(guī)律,以滿足控制系統(tǒng)相對應(yīng)的任務(wù)要求。總體而言,迭代學(xué)習(xí)控制只需要利用相對少的先驗知識,通過不斷的迭代循環(huán)計算,就可以完成精確跟蹤[1]。
常見的迭代學(xué)習(xí)控制原理如圖1 所示,其中迭代步數(shù)(0,Λj, ΛJ)為系統(tǒng)當(dāng)前重復(fù)次數(shù),每個重復(fù)周期∕迭代步數(shù)被分割成有限個采樣點(1,Λk,ΛK)。迭代學(xué)習(xí)算法將前一個迭代步j(luò)-1的偏差送入學(xué)習(xí)函數(shù)L進行處理,和前一個迭代步j(luò)-1控制指令相加后生成當(dāng)前迭代步j(luò)控制指令。即系統(tǒng)當(dāng)前控制指令u(k)是在之前迭代步控制指令u(k- 1)的基礎(chǔ)上,根據(jù)相應(yīng)的偏差e(k- 1)做出調(diào)整得到:如果以前迭代步中的控制指令已經(jīng)能達到相對較好的效果,那么當(dāng)前控制指令只需在以前的基礎(chǔ)上微調(diào);如果以前迭代步中的控制效果不好,當(dāng)前控制指令則需要做出相對較大的調(diào)整。
圖1 迭代學(xué)習(xí)控制原理
學(xué)習(xí)函數(shù)L的選擇具有較大的自由度,可以是線性或者非線性算子,學(xué)習(xí)函數(shù)L的形式?jīng)Q定了偏差信息以不同的方式反饋到控制指令中,因此,學(xué)習(xí)函數(shù)L的選取關(guān)系到迭代學(xué)習(xí)算法的收斂速度和控制精度等,因此,學(xué)習(xí)函數(shù)的選取以及參數(shù)的整定是算法設(shè)計的核心。
濾波器Q的設(shè)計需要綜合考慮系統(tǒng)的穩(wěn)定性、控制精確以及實時性要求[5]。如果將濾波函數(shù)Q選為1,表示歷史信息百分百利用,即先前控制指令和對應(yīng)偏差信息計算出來的當(dāng)前控制指令被直接輸入到被控對象P,這種濾波器Q的設(shè)計可以實現(xiàn)理論上的控制輸出精確跟蹤參考軌跡;而對于存在未知非周期性干擾的被控系統(tǒng)而言,由于歷史信息包含隨機誤差,因此,會導(dǎo)致被控系統(tǒng)不穩(wěn)定或出現(xiàn)振蕩,這種情況下,可以將濾波函數(shù)Q設(shè)計成為低通濾波器,但是這樣歷史信息被沒有被全部利用,控制系統(tǒng)在滿足穩(wěn)定性的前提下,控制精度和收斂速度將會受到一定的影響。
除了適應(yīng)具有重復(fù)運動性質(zhì)的被控對象外,迭代學(xué)習(xí)控制算法對于被控對象的數(shù)學(xué)模型的依賴性也比較低,鑒于此,迭代學(xué)習(xí)控制算法可以在工業(yè)機器人控制系統(tǒng)中被廣泛應(yīng)用。從而可以以較為簡單的算法實現(xiàn)不確定性較高的非線性強耦合動態(tài)系統(tǒng)的控制,并高精度跟蹤給定期望軌跡。
迭代學(xué)習(xí)的控制律用最簡單的表述方式就是:
式中:uk(t)、uk+1(t)分別表示k、k+ 1時刻的控制信號;L為學(xué)習(xí)函數(shù),常見的有PID型,PD型等。
D型迭代學(xué)習(xí)算法首先被構(gòu)造出來,其形式為:
D型迭代學(xué)習(xí)算法,即微分型迭代學(xué)習(xí)算法,是指通過誤差的導(dǎo)數(shù)e.
k(t)的迭代,但e.k(t)在實際應(yīng)用中難以直接測量。為了解決這一問題,采用Dλ型迭代學(xué)習(xí)算法。
Dλ型迭代學(xué)習(xí)控制算法形式為:
式中:為誤差的分數(shù)階導(dǎo)數(shù)。
分數(shù)階微分系統(tǒng)與整數(shù)階系統(tǒng)相比,有優(yōu)點如下:(1)分數(shù)階微分是整數(shù)階微分的一種特例,這種算子除了具有整數(shù)階微分的性質(zhì)外,還具有一些其他的性質(zhì),比如,分數(shù)階微分具有一定的記憶功能;(2)分數(shù)階微分和整數(shù)階微分相比,多了一個分數(shù)階系數(shù),因此,可以通過選取合適的系數(shù)得到更多的性能效果。
利用Grunwald-Letnikov 定義方法求解分數(shù)階微積分的數(shù)值方法為:由于
則有:
則式(4)可以寫為:
可由下面的遞推公式得出,= 1,=(1-
Dλ學(xué)習(xí)控制結(jié)構(gòu)如圖2 所示,利用學(xué)習(xí)過程中保存下來的輸出誤差ek(t)及期望控制ud(t),計算出分數(shù)階Dλ控制器的增益矩陣。將此Dλ控制器加入到控制系統(tǒng)中,可以得設(shè)計出性能滿足要求的控制系統(tǒng)。但是此類方法的魯棒性較差,對于存在隨機擾動較大的系統(tǒng),這種方法存在局限性。
圖2 Dλ學(xué)習(xí)控制結(jié)構(gòu)
定理1:對于線性離散系統(tǒng),即
誤差模型Ek=AΞk,采用迭代學(xué)習(xí)律Uk+1=Uk+BEλk,如果通過恰當(dāng)設(shè)計學(xué)習(xí)矩陣B,使得如下矩陣不等式
成立,其中γ為任意小的正數(shù);P∈RN×N為正定對稱常矩陣,那么系統(tǒng)誤差Ek將收斂至零,控制輸入Uk也將收斂至期望值Ud。
證明:定義Lypaunov函數(shù),即
由此可知,通過恰當(dāng)設(shè)計迭代學(xué)習(xí)矩陣B,使得矩陣不等式成立。那么Vk+1-Vk≤0,當(dāng)Vk+1-Vk= 0定理1,證明完畢。
為了進一步驗證本文方法的有效性,設(shè)計如下仿真模型。
有高階差分形式的線性離散系統(tǒng)[3]:
在實際控制中,考慮系統(tǒng)的不確定性,設(shè)系統(tǒng)參數(shù)的估計區(qū)間分別為:a0∈[2,8];a1∈[0,3];a2∈[0,3];a3∈[0,1];a0∈[0,1.6]。
系統(tǒng)期望軌跡設(shè)為:yd(i) = 2 + 0.5 sin(iπ∕500)
對比D型和Dλ型迭代學(xué)習(xí)控制算法,通過MATLAB仿真,仿真結(jié)果如圖3~4所示。
圖3 普通D型迭代學(xué)習(xí)控制第5次迭代仿真效果
仿真分析時選?。?/p>
分數(shù)階微分Dλ中λ參數(shù)通過參數(shù)整定的方法獲得最佳值,進行本次仿真時,根據(jù)工程經(jīng)驗,選取λ= 1.25。這樣可以得到相應(yīng)的仿真結(jié)果。通過對比圖3、圖4可以看出,本文提出的分數(shù)階迭代控制的精度要高出一個數(shù)量級,同時,Dλ迭代學(xué)習(xí)控制具有更好的收斂特性。
圖4 Dλ迭代學(xué)習(xí)控制第5次迭代仿真效果
從仿真成果還可以看出在最后的幾個采樣周期,輸出誤差略為增大,這是由于可利用的誤差項減少。為了解決這一問題,可以利用前面的誤差項來進行多次迭代加以解決。
在Dλ型迭代學(xué)習(xí)控制算法的基礎(chǔ)上,提出了一種Dλ迭代學(xué)習(xí)算法。理論與仿真結(jié)果均表明本文提出的Dλ迭代學(xué)習(xí)控制方法更加適用于工業(yè)機器人控制過程中,不僅不需要精確的機器人數(shù)學(xué)模型,而且相對于D型迭代學(xué)習(xí)控制算法控制效果更加精確,具有很好的收斂特性和穩(wěn)定性。但是工業(yè)機器人運行環(huán)境比較復(fù)雜,當(dāng)存在不確定干擾時,這種Dλ迭代學(xué)習(xí)控制算法不具有較強的魯棒性,因此,需要將Dλ迭代學(xué)習(xí)控制算法和其他魯棒性較強的算法相結(jié)合,比如自適應(yīng)控制算法等,從而適應(yīng)更多的工業(yè)機器人應(yīng)用環(huán)境[6-7]。
自適應(yīng)控制是一類魯棒性很強的控制系統(tǒng),因此,設(shè)計了一種基于自適應(yīng)控制律的Dλ型迭代學(xué)習(xí)控制算法,原理框圖如圖5 所示,即在Dλ型迭代學(xué)習(xí)控制算法的基礎(chǔ)上,引入一個自適應(yīng)迭代項,通過這樣的結(jié)合,自適應(yīng)Dλ型迭代學(xué)習(xí)控制算法既可以完成機器人重復(fù)任務(wù)中的精確軌跡跟蹤,又可以適應(yīng)未知打擾動,從而增加控制系統(tǒng)的魯棒性[8-10]。
圖5 一類自適應(yīng)Dλ型迭代學(xué)習(xí)控制算法原理
根據(jù)原理框圖,算法執(zhí)行簡單流程為:在有效時間范圍[ ]
0,t,將k-1 步通過迭代計算得到的自適應(yīng)參數(shù)估計值和第k步的系統(tǒng)誤差ek(t)代入到自適應(yīng)律,計算本次迭代的自適應(yīng)參數(shù)估計值再將自適應(yīng)參數(shù)估計值和系統(tǒng)誤差ek(t)帶入到控制律中,從而計算得出控制量uk(t);控制量uk(t)作用于被控對象,得出實際輸出,若輸出滿足性能指標要求,則迭代結(jié)束,反之,繼續(xù)迭代學(xué)習(xí)直到達到性能指標要求為止[5]。
假設(shè)有機械人機械臂系統(tǒng)[5],其數(shù)學(xué)模型可以使用朗格朗日形式表示為:
針對式(13)所示的機器人機器臂數(shù)學(xué)模型,設(shè)計自適應(yīng)Dλ迭代學(xué)習(xí)控制律為[13]:
式中:ek(t)為角位移誤差。
式(14)~(15)設(shè)計的控制律將自適應(yīng)控制方法運用用到Dλ迭代學(xué)習(xí)控制系統(tǒng)中,這樣其應(yīng)用將更加廣泛,特別是對于非線性不確定系統(tǒng)而言,可以很好地實現(xiàn)迭代學(xué)習(xí)控制和自適應(yīng)控制都無法單獨處理的控制任務(wù)。從實際工程應(yīng)用的角度來看,迭代學(xué)習(xí)控制是依靠重復(fù)相同的控制任務(wù)來實現(xiàn)迭代軸上的精確跟蹤,自適應(yīng)控制用來保證時間軸上的漸近跟蹤。這樣,一個控制效果良好且穩(wěn)定的控制器的設(shè)計會變得比較容易,因為在設(shè)計控制器時有兩個可以努力的方向(時間域和迭代域)來穩(wěn)定系統(tǒng)和調(diào)節(jié)控制效果[14-15]。
分析工業(yè)機器人的工作環(huán)境及工作方式,不難發(fā)現(xiàn),工業(yè)機器人大都執(zhí)行的是具有重復(fù)性質(zhì)的任務(wù),基于此,在選擇控制算法時,迭代學(xué)習(xí)控制算法顯得特別合適,這類控制算法既可以避免求取工業(yè)機器人的精確模型,又可以在重復(fù)任務(wù)中通過誤差迭代的方式完成精確控制任務(wù)。
本文以工業(yè)機器人的控制系統(tǒng)設(shè)計作為研究對象,在D型迭代學(xué)習(xí)算法的基礎(chǔ)上,將其擴展到分數(shù)階微分領(lǐng)域,提出了一種Dλ迭代學(xué)習(xí)控制算法,進行了穩(wěn)定性證明和仿真分析。仿真結(jié)果表明,Dλ迭代學(xué)習(xí)控制算法通過參數(shù)λ的整定可以實現(xiàn)跟蹤誤差更小,收斂速度更快。同時為了使Dλ迭代學(xué)習(xí)控制算法更加具有適用性,將Dλ迭代學(xué)習(xí)控制算法和自適應(yīng)控制算法相結(jié)合,設(shè)計了一種自適應(yīng)Dλ型迭代學(xué)習(xí)控制算法,此類方法兼具了二者的優(yōu)勢。但是從目前的工程實際情況來看,很難找到普遍適用的自適應(yīng)律,想要更好地實現(xiàn)工業(yè)機器人的自適應(yīng)性,還需要大量的控制理論研究和工程實現(xiàn)。