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