賀紅林 劉文光 汪 洋
1.南昌航空大學(xué),南昌,330063 2.中國科學(xué)技術(shù)大學(xué),合肥,230026
機(jī)器人軌跡跟蹤控制的基本要求是精密性和魯棒性,但因機(jī)器人是高度非線性強(qiáng)耦合系統(tǒng),要實(shí)現(xiàn)上述目標(biāo)并非易事,對于直接驅(qū)動機(jī)器人(direct drive robot,DDR)則更是如此,這是因?yàn)樵贒DR中并無減速機(jī)構(gòu)可對其外部擾動與關(guān)節(jié)間的非線性耦合進(jìn)行衰減。要實(shí)現(xiàn)DDR精密控制就必須針對其非線性動力學(xué)特性設(shè)計(jì)控制器,設(shè)計(jì)方法有兩種:一是利用線性化模型替代DDR的非線性模型;二是采用反饋線性化法將機(jī)器人模型進(jìn)行線性化[1]。前者完全忽略關(guān)節(jié)間的耦合,控制精度低;后者根據(jù)機(jī)器人模型并利用反饋線性化去除關(guān)節(jié)間的動力耦合,計(jì)算力矩(CT)法即為此類方法。在機(jī)器人精確建模的前提下,CT法可實(shí)現(xiàn)精密軌跡跟蹤。然而機(jī)器人的精確模型卻很難得到,一方面是因DDR臂桿系統(tǒng)的實(shí)際參數(shù),如臂桿質(zhì)心位置、轉(zhuǎn)動慣量和負(fù)載難以確知,存在參數(shù)不確定性;另一方面,機(jī)器人的外部擾動和摩擦過程更難把握,存在非參數(shù)不確定性。DDR控制的關(guān)鍵就在于消除兩類不確定性。目前針對前者的主要措施是自適應(yīng)技術(shù);針對后者則是通過提高系統(tǒng)魯棒性來容忍它。在上述解決方法的框架下,人們提出了多種算法,其中較典型的是各種基于CT的自適應(yīng)法,這些方法兼具CT與自適應(yīng)控制的優(yōu)點(diǎn),但它們或要求加速度可測或要求機(jī)器人慣性陣可逆,從而影響了其應(yīng)用[2-4]。
近年來人們將人工神經(jīng)網(wǎng)絡(luò)(ANN)引入機(jī)器人,推出了許多新的控制方法[5-8]。這些方法大多利用ANN逼近機(jī)器人的整個動力學(xué)模型,也有少數(shù)方法保留機(jī)器人標(biāo)稱模型而采用ANN補(bǔ)償模型的不確定部分,但它們或要求慣性陣精確已知,或要求加速度反饋,有的甚至還要求ANN上的權(quán)值具有已知上界。這些方法通常都采用了多層前饋ANN,計(jì)算量大、實(shí)時性差、不利于在線實(shí)現(xiàn)。針對這些問題,本文在DDR上引入函數(shù)鏈神經(jīng)網(wǎng)絡(luò)(functional link neural network,F(xiàn)LNN)與PD復(fù)合的方法并利用FLNN逼近機(jī)器人的模型,實(shí)現(xiàn)了機(jī)器人的精密控制。
DDR的臂桿系統(tǒng)由多根連桿構(gòu)成,系統(tǒng)的各關(guān)節(jié)均通過直接驅(qū)動電機(jī)進(jìn)行驅(qū)動。對于自由度為n的 DDR,其動力學(xué)模型可根據(jù) Euler-Lagrange 方程推導(dǎo)出[9],即
式中,pc、pv分別為關(guān)節(jié)系統(tǒng)的庫侖摩擦力矩和黏性摩擦力矩;ps為黏滯 - 滑動摩擦矢量;ψi(i=1,2,…,n)為常系數(shù)。
對于直接驅(qū)動機(jī)器人而言,pc、pv、ps具有較大的不確定性。
作為拉格朗日系統(tǒng),DDR的動力學(xué)模型存在一定的結(jié)構(gòu)特性。在設(shè)計(jì)機(jī)器人控制器時需利用這些特性及下面的合理性假定。
特性1 D(θ)具有一致有界,即總存在正常數(shù) μ2> μ1> 0,使 μ1≤ ‖D(θ)‖ ≤ μ2。
假定1 機(jī)器人的重力矩 G(θ)有界,即‖G(θ)‖ ≤ gB,其中,gB為常數(shù)。
為了設(shè)計(jì)機(jī)器人精密軌跡跟蹤控制器,有必要引入廣義軌跡跟蹤誤差,即令
式中,θd∈Rn為機(jī)器人在關(guān)節(jié)空間內(nèi)的期望軌跡;e∈Rn為關(guān)節(jié)位置偏差為角速度偏差,λ∈Rn×n為適當(dāng)取定的常值正定陣。
機(jī)器人的軌跡跟蹤控制器設(shè)計(jì)就是要確定控制力矩τ的適當(dāng)形式,使機(jī)器人的實(shí)際運(yùn)行軌跡θ(t)→θd(t)。引入了廣義跟蹤誤差后,機(jī)器人控制即是要使
為實(shí)現(xiàn)關(guān)節(jié)系統(tǒng)的控制,本文在機(jī)器人上引入一個由PD控制器和神經(jīng)網(wǎng)絡(luò)組成的復(fù)合控制器,并為其構(gòu)建圖1所示的控制系統(tǒng)。根據(jù)該系統(tǒng)的結(jié)構(gòu),并利用式(1)和式(2)中的關(guān)系,可推導(dǎo)出該系統(tǒng)的誤差動力學(xué)方程
圖1 機(jī)器人的神經(jīng)網(wǎng)絡(luò)控制系統(tǒng)
根據(jù)圖1給出的系統(tǒng)控制邏輯,可以寫出該機(jī)器人關(guān)節(jié)控制力矩的輸出形式[8]
其中,τL為線性控制器的輸出;KL∈Rn×n為適當(dāng)取定的正定增益陣;τN為函數(shù)鏈神經(jīng)網(wǎng)絡(luò)的輸出,該網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)由圖2給出,其輸出形式為
式中,W為網(wǎng)絡(luò)的理想權(quán)值陣;φ(·)∈Rl為神經(jīng)元激活函數(shù);l為隱層節(jié)點(diǎn)數(shù)。
圖2 函數(shù)鏈神經(jīng)網(wǎng)絡(luò)
本文引入FLNN的目的在于對Fs(xs)進(jìn)行估值。由于FLNN中只有W可調(diào),故它不像多層前饋網(wǎng)絡(luò)那樣具有廣泛的函數(shù)逼近能力,但FLNN結(jié)構(gòu)簡單、運(yùn)行效率高,特別是當(dāng)φ(·)取定為基函數(shù)向量時,它同樣具有較強(qiáng)的函數(shù)逼近能力。φ(·)成為基函數(shù)的條件是:設(shè)D是關(guān)于機(jī)器人關(guān)節(jié)運(yùn)動狀態(tài)變量的xs上的列緊子集,映射φ:D→Rn有界可積。若存在有限維數(shù) FLNN,使得C2n(D)內(nèi)的函數(shù)可表示成式(7)形式且使網(wǎng)絡(luò)輸出在C2n(D)中是稠密的。那么φ(·)為C2n(D)中的一組基。
如果φ(·)取為基函數(shù),則對于機(jī)器人動力學(xué)函數(shù)Fs(xs)∈C2n(D),總存在一定拓?fù)湫问降腇LNN,該FLNN能以給定精度εN對Fs(xs)進(jìn)行逼近,即總存在以下關(guān)系
式中,ε為函數(shù)估值誤差。
FLNN的基函數(shù)可取sigmoid函數(shù)或徑向基函數(shù)。本文根據(jù)基函數(shù)條件自行設(shè)計(jì)基函數(shù)。
FLNN控制器設(shè)計(jì)的關(guān)鍵在于其權(quán)值學(xué)習(xí)律的確定。網(wǎng)絡(luò)權(quán)值的學(xué)習(xí)不僅應(yīng)使系統(tǒng)跟蹤誤差足夠小,而且應(yīng)保證權(quán)值的有界性。為了設(shè)計(jì)權(quán)值學(xué)習(xí)律,構(gòu)建如下Lyapunov能量函數(shù):
將式(10)對時間進(jìn)行求導(dǎo),可得
將式(9)、式(8)、式(6)、式(4)代入式(11)并考慮機(jī)器人的斜對稱特性,可得
在式(12)中,若令網(wǎng)絡(luò)權(quán)值按下式調(diào)整:
這里的ρ是適當(dāng)取定的較小正數(shù)。這樣便可將式(12)將改寫成以下形式:
由于式(14)中的方陣求跡運(yùn)算滿足
因此,若將式(15)代入式(14)則將得到
式中,KL_min為矩陣KL中的最小元素的值;dB為系統(tǒng)外部擾動量的上界。
式(16)表明,一旦軌跡跟蹤誤差越界,即當(dāng)
或當(dāng)網(wǎng)絡(luò)權(quán)值偏差出現(xiàn)以下情況:
網(wǎng)絡(luò)權(quán)值的初始化是FLNN控制器設(shè)計(jì)中必須考慮的重要問題。但本文的控制系統(tǒng)按式(6)的形式確定機(jī)器人的控制作用時,其網(wǎng)絡(luò)的初始權(quán)值可全部設(shè)為0。之所以可作這種簡單處理,主要是因?yàn)樵诒疚牡南到y(tǒng)中,除了設(shè)置有FLNN控制器之外,還引入了一個PD線性反饋補(bǔ)償器。在系統(tǒng)啟動工作初期,由于網(wǎng)絡(luò)權(quán)值為0,因此FLNN基本上不起控制作用,此時系統(tǒng)通過PD控制器實(shí)施控制,但FLNN在經(jīng)過短暫的權(quán)值學(xué)習(xí)后將逐漸發(fā)揮作用,并將最終主導(dǎo)機(jī)器人的控制。
式中,xD、xH、xG、xF分別表示各 FLNN子網(wǎng)的輸入;εD、εH、εG、εF表示各子網(wǎng)的估值誤差。
當(dāng)采用子網(wǎng)對Fs(x)進(jìn)行估值時,估值誤差即為各子網(wǎng)估值誤差的和。
求解式(16)便得到系統(tǒng)的仿真實(shí)現(xiàn)形式:
為驗(yàn)證上述控制算法的可行性及有效性,針對圖3所示機(jī)器人臂桿系統(tǒng)進(jìn)行了控制仿真。該系統(tǒng)由4根臂桿組成,自由度為2。圖3標(biāo)示出桿i的桿長li、質(zhì)量mi、質(zhì)心位置lci以及繞自身質(zhì)心的轉(zhuǎn)動慣量Ii。該機(jī)器人的運(yùn)動方程為
圖3中各臂桿的質(zhì)心位置及其轉(zhuǎn)動慣量無法確知,即動力學(xué)模型中的 σx1、σx2、σx3、σx4、σx5存在一定不確定性。但在系統(tǒng)仿真時,可設(shè)定其真值為
圖3 仿真實(shí)驗(yàn)用機(jī)器人臂桿系統(tǒng)
仿真用機(jī)器人的摩擦特性參數(shù)的真值、目標(biāo)軌跡θd(t)和外力矩?cái)_動τd分別按下式取定:
根據(jù)式(18)中各動力學(xué)項(xiàng)的結(jié)構(gòu),可以設(shè)計(jì)出其相應(yīng)的FLNN子網(wǎng)的拓?fù)浼盎瘮?shù)結(jié)構(gòu)。本文設(shè)計(jì)的用于逼近Fs(x)中4個分量的子網(wǎng)的結(jié)構(gòu)如圖 4所示(? 表示乘法器),圖中,ζ=[ζ1ζ2],對應(yīng)的基函數(shù)向量分別為
圖4 二自由度直接驅(qū)動機(jī)器人的FLNN子網(wǎng)
圖6給出了按系統(tǒng)標(biāo)稱模型(σ0=[6 0.2 4 13 4]T)進(jìn)行控制仿真時的結(jié)果,不難看出雖然該系統(tǒng)動力學(xué)模型的標(biāo)稱值與真值之間的差距較大,但按模型的標(biāo)稱值和真值進(jìn)行仿真時,其軌跡跟蹤精度并無多大差別,之所以如此,主要是因?yàn)橄到y(tǒng)能通過調(diào)整權(quán)值,較好地減小臂桿系統(tǒng)的參數(shù)誤差所帶來的影響。
圖7給出了系統(tǒng)無外部擾動時的FLNN-PD控制結(jié)果。從圖7可見,無擾動時的系統(tǒng)軌跡跟蹤誤差與系統(tǒng)存在擾動時的跟蹤誤差比較接近,它說明該復(fù)合控制算法對系統(tǒng)的外部擾動具有較好的魯棒性。
圖8給出了機(jī)器人系統(tǒng)在PD控制器單獨(dú)作用時的控制結(jié)果,此時系統(tǒng)的轉(zhuǎn)角誤差和角速度誤差均比較低。造成這種情況的原因主要是因?yàn)榫€性的PD反饋控制器的參數(shù)自適應(yīng)能力較差,故無法很好地減小系統(tǒng)參數(shù)不確定性所引入的控制誤差。
圖9給出了系統(tǒng)在FLNN單獨(dú)控制時的結(jié)果,從圖可見,其轉(zhuǎn)角誤差和角速度誤差比采用FLNN-PD時稍低一些,但卻明顯高于單獨(dú)采用PD時的控制精度。
圖5 存在外部擾動時的FLNN-PD控制結(jié)果
圖6 基于系統(tǒng)標(biāo)稱模型仿真的結(jié)果
圖7 不存在外部擾動時的FLNN-PD控制結(jié)果
針對直接驅(qū)動機(jī)器人動力學(xué)模型的高度非線性、強(qiáng)耦合及其存在的參數(shù)和非參數(shù)不確定性,為了實(shí)現(xiàn)機(jī)器人的精密軌跡跟蹤控制,本文引入函數(shù)鏈神經(jīng)網(wǎng)絡(luò)對機(jī)器人的非確定性動力學(xué)量進(jìn)行逼近,并在此基礎(chǔ)上構(gòu)建出了基于FLNN-PD控制器的機(jī)器人雙閉環(huán)控制系統(tǒng)。通過復(fù)合控制結(jié)構(gòu)來減小機(jī)器人的非確定性動力學(xué)量帶來的控制誤差,以提高系統(tǒng)的控制精度。文中推導(dǎo)了該系統(tǒng)的控制算法,給出了函數(shù)鏈神經(jīng)網(wǎng)絡(luò)控制器的權(quán)值學(xué)習(xí)律,并從理論上證明了FLNN-PD控制器的收斂性及控制系統(tǒng)跟蹤誤差的收斂性和趨零性。對機(jī)器人系統(tǒng)進(jìn)行了控制仿真,結(jié)果顯示,采用FLNN-PD控制器可使系統(tǒng)的轉(zhuǎn)角誤差和角速度誤差控制在±0.002rad和±0.1rad/s之內(nèi),并且該控制器對系統(tǒng)的系統(tǒng)參數(shù)變化及外部擾動具有較強(qiáng)的自適應(yīng)性和魯棒性。研究表明,本文提出的FLNN-PD控制方案既能實(shí)現(xiàn)機(jī)器人的精密軌跡跟蹤,又便于系統(tǒng)的實(shí)現(xiàn),它是一種頗具應(yīng)用前景的機(jī)器人控制方法。
圖8 系統(tǒng)單獨(dú)采用PD時的控制結(jié)果(有擾動)
圖9 有擾動且單獨(dú)采用FLNN控制時的結(jié)果
[1]譚偉.直接驅(qū)動機(jī)器人高性能控制器研究[D].上海:上海交通大學(xué),2000.
[2]Colbaugh R,Glass K.Adaptive Tracking Control of Manipulators:Theory and Experiments[C]//1994 IEEE International Conference on Robotics and Automation.San Diego,CA,USA:2292-2299.
[3]唐曉騰,陳力.自由漂浮雙臂空間機(jī)器人基聯(lián)坐標(biāo)系內(nèi)的一種增廣變結(jié)構(gòu)魯棒控制方法[J].中國機(jī)械工程,2008,19(19):2278-2282.
[4]張文輝,齊乃明,尹洪亮.不確定機(jī)器人的神經(jīng)網(wǎng)絡(luò)軌跡控制[J].自動化與儀表,2010,22(5):22-25.
[5]Cheah C C,Slotine J J E.Adaptive Tracking Control for Robots with Uncertainties in Kinematic,Dynamic and Actuator Models[J].IEEE Transactions on Automatic Control,2006,51(6):1024-1029.
[6]Barambones O,Etxebarra V.Robust Neural Control for Robotic Manipulators[J].Automatica,2002,38(2):235-242.
[7]Patino H D,Carelli R,Kuchen B R.Neural Networks for Advanced Control of Robot Manipulators[J].IEEE Transactions on Neural Networks,2002,13(2):343-354.
[8]Patino D,Liu D.Neural Network-based Model Reference Adaptive Control System[J].IEEE Transactions on System,Man,and Cybernetics,Part B:Cybernetics,2000,30(1):198-204.
[9]Jiang Zhaohui,Ishita Taiki.A Neural Network Controller for Trajectory Control of Industrial Robot Manipulators[J].Journal of Computers,2008,3(8):1-8.
[10]De Wit C C.Robust Control for Servo-mechanism under Inexact Friction Compensation[J].Automatics,1993,29(3):757-761.