李 斌 馬小瑞
(1.甘肅省工業(yè)和信息化廳信息中心,甘肅 蘭州 730000;2.甘肅省知識產(chǎn)權(quán)事務中心,甘肅 蘭州 730000)
隨著機械、自動控制、計算機、人工智能和傳感器等技術的飛速發(fā)展,機器人已進入人們的現(xiàn)實生活。目前,工業(yè)機器人已成為現(xiàn)代制造系統(tǒng)中不可或缺的一種自動化裝備,被廣泛地應用在汽車、飛機、電子產(chǎn)品等行業(yè)的制造中,機器人不僅被應用在軍事、航天等尖端領域,而且正逐步走向社會、家庭領域,服務機器人已經(jīng)進入人們的生活中。機器人技術已成為衡量一個國家綜合技術水平的標志之一。該文以雙臂機械手為例,首先確定機械手的動力學模型,根據(jù)已確定的被控對象進行控制方法的選擇和控制器的設計。由于機器人是高度非線性的不確定模型,因此采用李亞普諾夫穩(wěn)定性理論進行穩(wěn)定性分析和控制器設計。建立Lyapunov函數(shù)V,根據(jù)已經(jīng)提出的控制器結(jié)合被控對象模型證明V>0,V˙≤0,充分說明控制系統(tǒng)是全部或者局部漸進穩(wěn)定的;最后,利用S-函數(shù),在MATLAB的Simulink中設計控制系統(tǒng)主程序框圖,并且調(diào)用S-函數(shù)進行系統(tǒng)仿真或者利用純M文件編寫控制器和被控對象的命令函數(shù)。針對不同的控制方法構(gòu)建主程序,并結(jié)合輸出圖形進行穩(wěn)定性分析和控制性能比較。確定一個相同的雙臂機械手作為被控對象,利用不同的控制方法進行仿真比較,通過仿真結(jié)果比較得出各種控制方法的利弊。
S-函數(shù)模塊是整個Simulink動態(tài)系統(tǒng)的核心。Simulink在每個仿真階段都會對S-Function進行調(diào)用,不同的flag值調(diào)用不同的功能子函數(shù),參數(shù)flag與S-函數(shù)回調(diào)函數(shù)的關系見表1。
一個N關節(jié)機器人,其動態(tài)性能可由二階非線性微分方程描述:
公式(1)中,q∈Rn*n為關節(jié)角位移量;M(q)∈Rn*n為機器人的慣性矩陣;∈Rn表示離心力和哥氏力;G(q)∈Rn是重力項;∈Rn表示摩擦力矩;τ∈Rn為控制力矩;τd∈Rn為外加擾動。
當忽略重力和外力干擾時,采用獨立的PD控制,能滿足機器人定點控制的要求。
設雙臂機械手方程為:
主要對RBF網(wǎng)絡的基本原理、高斯基函數(shù)、網(wǎng)絡參數(shù)對逼近效果的影響以及基于RBF網(wǎng)絡逼近的Simulink連續(xù)系統(tǒng)仿真和M語言離散數(shù)字化仿真方法。
2.1.1 RBF網(wǎng)絡結(jié)構(gòu)
在RBF網(wǎng)絡結(jié)構(gòu)中,X=[x1,x2,…xn]T為網(wǎng)絡的輸入向量。設RBF網(wǎng)絡的徑向基向量H=[h1,h2,…h(huán)m]T,其中hj為高斯基函數(shù):
表1 參數(shù)flag與S-函數(shù)回調(diào)函數(shù)的關系
其中,網(wǎng)絡第 j個節(jié)點的中心矢量為cj=[cj1,…,cjn]。
設網(wǎng)絡的基寬向量為:
其中,bj為節(jié)點j的基寬度參數(shù),且為大于零的數(shù)。網(wǎng)絡的權(quán)向量為:
RBF網(wǎng)絡的輸出為:
因此,任意連續(xù)函數(shù)都能利用RBF網(wǎng)絡來逼近。
2.1.2 RBF網(wǎng)絡逼近模型不確定部分
RBF網(wǎng)絡算法為:
其中,x 為網(wǎng)絡的輸入信號;φ=[φ1,φ2,…,φn]為高斯基函數(shù)的輸出;θ為神經(jīng)網(wǎng)絡權(quán)值。
假設:
其中,θ*為n×n階矩陣,表示對f(x)最佳辨識的神經(jīng)網(wǎng)絡權(quán)值。
2.2.1 基于不確定補償?shù)臋C器人建模
在實際中,對公式(2)所示對象很難建立具體模型,只能建立理想的名義模型。分別用D0(q),,G0(q)來表示機器人的名義模型。
根據(jù)模型精確建模時設計的控制律,針對名義模型,控制律設計為:
將控制律公式(3)帶入公式(2)中,得:
取ΔD=D-D,ΔC=C-C,ΔG=G-G則:
由公式(5)可知,由于模型建模不精確會導致控制性能的下降。因此,需要對模型不精確的部分進行辨識。
則得到在控制律公式(5)下的誤差方程為:
其中
假設模型不確定項f已知,則修正的控制律為:
將控制律公式(7)帶入公式(2)中,得到穩(wěn)定的閉環(huán)系統(tǒng):
2.2.2 控制器的設計
控制器設計為:
其中,
取Lyapunov函數(shù)為:
可以采用2種自適應律設計方法。
2.2.2.1 自適應律之一
取自適應律為:
則
2.2.2.2 自適應律之二
取自適應律為:
則
這種方法可以保證權(quán)值的有界性。
2.2.3 仿真實例
以雙力臂機械手控制為例進行控制器的仿真和結(jié)果比較。
對于雙關節(jié)機器人系統(tǒng)(忽略摩擦力),其動力學模型為:
其中,
其中,v=13.33;q01=8.98;q02=8.75;g=9.8。
擾動誤差、位置指令和系統(tǒng)的初始狀態(tài)分別為:
位置指令為:
控制參數(shù)?。?/p>
運行Simulink仿真主程序圖如圖1所示。
仿真結(jié)果如圖2所示。
圖1 基于模型不確定補償?shù)腞BF網(wǎng)絡機器人自適應控制主程序圖
由仿真結(jié)果可知,采用此控制律可以保證權(quán)值的有界性,解決神經(jīng)網(wǎng)絡權(quán)值的UUB(Unknown Upper Bound)問題,同時對機器人的不確定部分進行了補償。通過改變一些控制參數(shù)的特征值大小,象Q的特征值越大,P的特征值越小,并且減小神經(jīng)網(wǎng)絡建模誤差η的上界,就可以使x的收斂半徑變小,從而達到改善跟蹤效果的目的。
2.3.1 基于分塊逼近的機器人建模
其中,ED、EC和EG分別為神經(jīng)網(wǎng)絡對D(q)、和G(q)的建模誤差。
2.3.2 控制律的設計
定義
其中,qd(t)為理想的位置指令;q(t)為實際的位置。
定義
則
其中,Λ>0。
設對神經(jīng)網(wǎng)絡建模項DSNN(q)、CDNN、GSNN(q)的估計值為:
控制律設計為:
其中,Kp>0 ;Ki>0。
自適應律設計為:
2.3.3 穩(wěn)定性分析
取Lyapunov函數(shù)為:
圖2 基于模型不確定補償?shù)腞BF網(wǎng)絡機器人自適應控制
其中,ΓDk,ΓCk,ΓGk為對稱正定矩陣;,
則
經(jīng)分析得到:
2.3.4 仿真實例
以雙力臂機械手控制為例進行仿真和比較。選二關節(jié)機器人系統(tǒng)(不考慮摩擦力和干擾),其動力學模型為:
其中,
取控制器參數(shù)為
仿真結(jié)果如圖4所示。
由仿真結(jié)果可知:各關節(jié)的位置均能跟蹤系統(tǒng)所給的理想軌跡??刂坡赡軌蛟谝欢ǖ姆秶鷥?nèi)有規(guī)律的變化??梢詫崿F(xiàn)對實際模型中未知部分D(q)、和G(q)的高效逼近。因此,基于模型分塊逼近的RBF神經(jīng)網(wǎng)絡自適應控制性能較好。
選擇雙力臂機械手作為被控對象。在不考慮摩擦力和外界干擾的情況下,其動力學模型為:
仿真中采用了MATLAB函數(shù)“ode45”積分求解。采樣時間取ts=0.001,將控制律公式(13)和自適應律公式(14)(15)(16)離散化,取,。取控制律參數(shù)為
位置指令為qd1=qd2=0.5si(n2πk·ts)。自適應中,神經(jīng)網(wǎng)絡權(quán)值調(diào)節(jié)矩陣ΓDk,ΓCk和ΓGk中的元素值分別取5、10、10。RBF網(wǎng)絡的隱含層節(jié)點數(shù)取5,用于逼近的,,的高斯基參數(shù)見控制器子程序。仿真結(jié)果分別如圖5和圖6所示。
由仿真結(jié)果可知:該例中RBF網(wǎng)絡隱含層節(jié)點采用了node=5,從t=1.25之后各關節(jié)的位置基本可以跟蹤理想軌跡;改變隱含層節(jié)點個數(shù),當node=2時,關節(jié)1和關節(jié)2均不能完全跟蹤理想軌跡;當node=3時,從t=1.5之后各關節(jié)的位置可以完全跟蹤理想軌跡;當node=10時,從t=0.75之后各關節(jié)的位置可以完全跟蹤理想軌跡。因此,基于RBF網(wǎng)絡的雙機械力臂自適應數(shù)字控制可以通過增加神經(jīng)網(wǎng)絡隱含層節(jié)點的個數(shù),達到更迅速更逼近的控制效果。同樣,隱含層節(jié)點的個數(shù)太多會增加網(wǎng)絡運算的復雜性。
圖3 基于模型分塊逼近的機器人RBF網(wǎng)絡自適應控制
圖4 基于模型分塊逼近的機器人RBF網(wǎng)絡自適應控制
該文在分析機器人雙臂機械手控制的基礎上,提出了機器人雙臂機械手的神經(jīng)網(wǎng)絡控制算法。在被控對象為非線性模型的情況下,利用RBF網(wǎng)絡自適應方法設計控制器。通過編寫控制器和被控對象的S-函數(shù)或M文件,運用仿真知識并對運行結(jié)果進行比較和穩(wěn)定性分析。
通過Lyapunov穩(wěn)定性理論得到的控制器可使系統(tǒng)要么達到局部漸進穩(wěn)定,要么達到全局漸進穩(wěn)定。采用RBF神經(jīng)網(wǎng)絡控制可以實現(xiàn)對機器人動力學方程中未知部分的在線精確逼近,從而可通過在線建模和前饋補償?shù)姆绞?,實現(xiàn)機器人的高精度跟蹤,其結(jié)果與被控對象已知時基本一致,控制性能良好。雙臂機械手是在單臂機械手的基礎上又增加了一維標量,它的控制方法與單臂類似。以此類推,以后多關節(jié)機械手的控制器設計,也可以認為是多個單臂的綜合,只是設計問題會隨著關節(jié)數(shù)的增多而變得更復雜、更困難。該文提出的RBF神經(jīng)網(wǎng)絡算法對機器人雙臂控制的仿真結(jié)果可以看出,該算法可以提升各關節(jié)的控制性能,使其更好地完成控制需求。
圖5 各關節(jié)的位置跟蹤
圖6 各關節(jié)的控制輸入