摘 要:在研究基于自抗擾控制器的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服方法的基礎(chǔ)上,提出了一種新的雙環(huán)結(jié)構(gòu)機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服控制方法。內(nèi)環(huán)采用Kalman濾波算法進(jìn)行圖像雅可比矩陣的在線辨識(shí),可較好地逼近真實(shí)模型;外環(huán)采用自抗擾控制器,利用非線性觀測(cè)器實(shí)時(shí)估計(jì)系統(tǒng)相對(duì)于當(dāng)前估計(jì)模型的總擾動(dòng),并在控制中加以動(dòng)態(tài)補(bǔ)償。針對(duì)六自由度工業(yè)機(jī)器人進(jìn)行了二維運(yùn)動(dòng)目標(biāo)的跟蹤實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明了該方法的可行性和有效性。
關(guān)鍵詞:Kalman濾波;自抗擾控制器;無(wú)標(biāo)定;視覺(jué)伺服
1 引言
近年來(lái),無(wú)標(biāo)定條件下的機(jī)器人視覺(jué)伺服控制以其靈活、魯棒等特點(diǎn),逐漸成為機(jī)器人視覺(jué)伺服控制領(lǐng)域的研究熱點(diǎn).所謂無(wú)標(biāo)定是指在未知手眼關(guān)系模型的情況下,直接利用系統(tǒng)圖像信息設(shè)計(jì)控制律,驅(qū)動(dòng)機(jī)器人運(yùn)動(dòng),實(shí)現(xiàn)對(duì)運(yùn)動(dòng)目標(biāo)的操作.要解決這個(gè)問(wèn)題首先必須知道機(jī)器人手眼之間的非線性映射關(guān)系,根據(jù)描述該非線性關(guān)系所用的模型的不同,可將現(xiàn)有的各種無(wú)標(biāo)定方法分為兩類.一類是基于圖像雅可比矩陣的方法,這是最基本的機(jī)器人無(wú)標(biāo)定視覺(jué)控制方法,其基本思想是:在每一個(gè)時(shí)刻,用線性圖像雅可比矩陣實(shí)時(shí)估計(jì)機(jī)器人手眼之間的非線性映射關(guān)系,據(jù)此得出機(jī)器人下一時(shí)刻的運(yùn)動(dòng)控制量;第二類是用神經(jīng)網(wǎng)絡(luò)的方法擬合機(jī)器人手眼之間的非線性映射關(guān)系,這種方法需要事先離線訓(xùn)練機(jī)器人運(yùn)動(dòng)空間內(nèi)的大量樣本點(diǎn),對(duì)于機(jī)器人的多自由度運(yùn)動(dòng)空間,有時(shí)難以獲得足夠樣本.蘇劍波等人 把無(wú)模型理論和自抗擾控制器(Auto Disturbance Rejection Controller,ADRC) 思想應(yīng)用于無(wú)標(biāo)定機(jī)器人視覺(jué)伺服領(lǐng)域,設(shè)計(jì)了不依賴于特定任務(wù)的廣泛意義下的手眼協(xié)調(diào)控制器,取得了良好的效果.但是ADRC的擾動(dòng)補(bǔ)償精度與系統(tǒng)估計(jì)模型和實(shí)際系統(tǒng)模型之間的差值有關(guān),差值越小,精度越高,差值越大,精度越低,甚至導(dǎo)致系統(tǒng)不穩(wěn)定.
基于以上原因,本文將圖像雅可比矩陣在線辨識(shí)方法與基于ADRC的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服方法相結(jié)合,提出了一種新的雙環(huán)結(jié)構(gòu)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服控制方法.
2 問(wèn)題描述
基于ADRC的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服控制,其基本思想是首先估計(jì)出系統(tǒng)的圖像雅可比矩陣初值,以此作為系統(tǒng)的近似線性模型并在運(yùn)動(dòng)過(guò)程中保持不變,而把這種近似所造成的非線性模型誤差(即系統(tǒng)內(nèi)擾)以及圖像檢測(cè)誤差、未知外部擾動(dòng)等之和(即系統(tǒng)外擾)看成是系統(tǒng)的總擾動(dòng)量,用一個(gè)非線性的狀態(tài)觀測(cè)器(Extended State Obse~er,ESO)實(shí)時(shí)估計(jì)并在控制中加以動(dòng)態(tài)補(bǔ)償 ,整個(gè)系統(tǒng)的結(jié)構(gòu)如圖1所示.
圖中(
)表示運(yùn)動(dòng)目標(biāo)的期望位置坐標(biāo),這可用如式(1)所示的一階預(yù)估獲得:
式中,
表示。(k)表示k時(shí)刻目標(biāo)在圖像坐標(biāo)系中的位置矢量.
)表示k時(shí)刻機(jī)器人手爪在圖像坐標(biāo)系中的位置坐,
)為目標(biāo)在空間坐標(biāo)系中的位置,Zx[sub]1[/sub]和Zx[sub]2[/sub]Zx2分別為x方向擴(kuò)張狀態(tài)觀測(cè)器ESO的輸出,Zy[sub]1[/sub]和Zy[sub]2[/sub]分別為y方向擴(kuò)張狀態(tài)觀測(cè)器ESO的輸出,Uox和Uoy分別為x,y方向非線性狀態(tài)誤差反饋控制器(Non.Linear States Error Feedback,NLSEF)的輸出,
為系統(tǒng)擾.采用圖像雅可比矩陣J,來(lái)描述機(jī)器人手眼之間的非線性映射關(guān)系,其中J,的定義
如式(2)所示.
式中,
為機(jī)器人手爪在機(jī)器人運(yùn)動(dòng)空間的運(yùn)動(dòng)速度,也就是機(jī)器人的運(yùn)動(dòng)控制量u,即
為其在圖像特征空間中的運(yùn)動(dòng)速度.離散化后為:
通過(guò)初始的試探運(yùn)動(dòng)可得到該矩陣的初始估計(jì)值
并在整個(gè)控制過(guò)程中保持不變.
實(shí)驗(yàn)表明當(dāng)J,的變化范圍較小時(shí),這種控制策略具有一定的魯棒性.但當(dāng)對(duì)象模型變化較大時(shí),整個(gè)系統(tǒng)的控制效果會(huì)變差.若受控對(duì)象有已知部分,把此部分補(bǔ)償給擴(kuò)張狀態(tài)觀測(cè)器輸入項(xiàng),只對(duì)不確定部分進(jìn)行估計(jì),則擴(kuò)張狀態(tài)觀測(cè)器的估計(jì)精度會(huì)提高.在本系統(tǒng)中,當(dāng)目標(biāo)靜止時(shí)J,的變化范圍較小,擴(kuò)張狀態(tài)觀測(cè)器能較好地估計(jì)出系統(tǒng)的實(shí)時(shí)擾動(dòng),系統(tǒng)具有較好的控制性能;當(dāng)目標(biāo)運(yùn)動(dòng)時(shí),實(shí)際的圖像雅可比矩陣變化范圍增大.目標(biāo)的運(yùn)動(dòng)速度越快,圖像雅可比矩陣變化就越明顯。如圖2所示.其中圖2(a)表示目標(biāo)和手爪在圖像平面的運(yùn)動(dòng)軌跡,圖2(b)為對(duì)應(yīng)的圖像雅可比矩陣值(以J[sub]11[/sub](k) J[sub]22[/sub](k)為例)的變化曲線.
此時(shí)若仍用初始試探運(yùn)動(dòng)所估計(jì)的圖像雅可比矩陣值作為系統(tǒng)的模型,會(huì)導(dǎo)致估計(jì)模型與實(shí)際系統(tǒng)模型之問(wèn)的差值過(guò)大,使得用來(lái)估計(jì)系統(tǒng)實(shí)時(shí)擾動(dòng)的擴(kuò)張狀態(tài)觀測(cè)器的估計(jì)精度降低,從而導(dǎo)致整個(gè)系統(tǒng)的控制性能下降.
3 基于雙環(huán)結(jié)構(gòu)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)
伺服控制原理由以上分析可以看出,如果我們能夠較準(zhǔn)確地估計(jì)出每個(gè)時(shí)刻的圖像雅可比矩陣的值:而不是用一個(gè)固定的圖像雅可比矩陣值來(lái)近似實(shí)時(shí)變化的系統(tǒng)模型,就可以減小估計(jì)模型與實(shí)際模型的差,提高擴(kuò)張狀態(tài)觀測(cè)器的估計(jì)精度,從而使之能夠較好地實(shí)時(shí)估計(jì)出系統(tǒng)相對(duì)于當(dāng)前估計(jì)模型的總擾動(dòng),提高補(bǔ)償精度,最終實(shí)現(xiàn)更高性能的目標(biāo)定位與跟蹤.基于此,本文將圖像雅可比矩陣在線辨識(shí)方法和基于ADRC的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服方法相結(jié)合,構(gòu)建了如圖3所示的雙環(huán)結(jié)構(gòu)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服控制系統(tǒng).內(nèi)環(huán)采用Kalman濾波算法進(jìn)行圖像雅可比矩陣在線辨識(shí),通過(guò)前幾個(gè)時(shí)刻的運(yùn)動(dòng)特征不斷估計(jì)更新當(dāng)前時(shí)刻的手眼關(guān)系模型,以較好地逼近真實(shí)模型.外環(huán)采用自抗擾控制器,這時(shí)由于內(nèi)環(huán)的作用,使得估計(jì)模型和實(shí)際模型的差值較小,非線性觀測(cè)器能夠更好地估計(jì)出系統(tǒng)相對(duì)于當(dāng)前估計(jì)模型的總擾動(dòng)并在控制中加以動(dòng)態(tài)補(bǔ)償,從而提高視覺(jué)伺服系統(tǒng)的性能.
對(duì)于單眼固定平面視覺(jué)伺服系統(tǒng)(u[sub]z[/sub]=0),當(dāng)目標(biāo)靜止或勻速運(yùn)動(dòng)時(shí)可將式(3)寫為:
式中,J[sub]11[/sub](k)、J[sub]22[/sub](k)由Kalman濾波算法進(jìn)行在線辨識(shí)
1為系統(tǒng)建模誤差與未知外部擾動(dòng)
之
和,稱之為系統(tǒng)的總擾動(dòng)量,用ESO實(shí)時(shí)估計(jì).與直接基于ADRC 時(shí)系統(tǒng)的總擾
考y ] 相 比,顯然,當(dāng)圖像雅可比矩陣變化明顯時(shí),系統(tǒng)的總擾動(dòng)量大大降低了.此時(shí),可設(shè)計(jì)出如下形式的基于雙環(huán)結(jié)構(gòu)的離散ESO 和非線性狀態(tài)誤差反饋律(NLSEF):
其中,h為采樣步長(zhǎng),非線性函數(shù)fal()的表達(dá)式如下:
式(4)中,圖像雅可比矩陣的在線辨識(shí)可用Kal—man濾波實(shí)現(xiàn),其基本思想是首先構(gòu)造一個(gè)線性時(shí)變系統(tǒng),以待估的圖像雅可比矩陣參數(shù)作為系統(tǒng)的狀態(tài),也就是把對(duì)圖像雅可比矩陣的估計(jì)轉(zhuǎn)化為對(duì)這個(gè)線性時(shí)變系統(tǒng)狀態(tài)的觀測(cè).然后,用Kalman濾波算法對(duì)此系統(tǒng)的狀態(tài)進(jìn)行觀測(cè),由于算法中考慮了噪聲對(duì)系統(tǒng)狀態(tài)觀測(cè)的影響,因此具有較強(qiáng)的魯棒性 J.該算法可簡(jiǎn)單描述如下:
stepl:構(gòu)造線性時(shí)變系統(tǒng)
定義系統(tǒng)的狀態(tài)為:
step2:按照Kahnan濾波估計(jì)算法,建立遞推估計(jì)
其中
為噪聲方差陣,根據(jù)實(shí)際的噪聲情況設(shè)定,P(k)為狀態(tài)估計(jì)誤差方差陣.而狀態(tài)估計(jì)的初始值量x(O)(即J(0))可利用初始的試探運(yùn)動(dòng)獲得,此后在雅可比矩陣的估計(jì)中直接使用機(jī)器人已完成的運(yùn)動(dòng)獲得的信息,無(wú)需再引入冗余的試探運(yùn)動(dòng).
4 實(shí)驗(yàn)研究
實(shí)驗(yàn)裝置如圖4所示,系統(tǒng)的硬件部分主要由:MOTOMANSV3機(jī)器人、SONY 1/3”彩色CCD攝像頭、機(jī)器人控制柜、控制計(jì)算機(jī)、北京微視圖像采集卡等組成,CCD攝像頭固定安裝于工作臺(tái)的正上方,可同時(shí)觀察機(jī)器人手爪和目標(biāo).CCD完成目標(biāo)和機(jī)器人手爪圖像的獲取,經(jīng)過(guò)圖像處理和識(shí)別得到目標(biāo)和機(jī)器人手爪在圖像中的位置.為簡(jiǎn)化圖像處理過(guò)程,攝像機(jī)使用兩種不同顏色的正方形色塊來(lái)區(qū)分手爪和目標(biāo),分別取兩顏色塊的質(zhì)心坐標(biāo)為手爪與目標(biāo)的圖像坐標(biāo).采用RS-232串口通信,采樣周期為500 ms.實(shí)驗(yàn)的任務(wù)是目標(biāo)在給定的機(jī)器人工作平面上做折線運(yùn)動(dòng),分別采用傳統(tǒng)的PI控制策略、基于ARDC的控制策略和本文所提出的基于雙環(huán)結(jié)構(gòu)的控制策略驅(qū)動(dòng)機(jī)器人手爪去跟蹤在機(jī)器人工作平面上做任意折線運(yùn)動(dòng)的目標(biāo),使兩者在圖像平面上達(dá)到重合.
實(shí)驗(yàn)1:基于PI的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服控制PI控制器參數(shù)設(shè)置如下:
比例系數(shù): 方向?yàn)?.28,Y方向?yàn)?.3,積分系數(shù): 方向?yàn)?.0008,Y方向?yàn)?.0012.
實(shí)驗(yàn)結(jié)果如圖5所示,其中圖5(a)、(b)分別表示目標(biāo)和手爪在圖像平面中 和Y方向上的運(yùn)動(dòng)軌跡.
實(shí)驗(yàn)2:基于ARDC的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服控制ADRC控制器參數(shù)設(shè)置如下:
實(shí)驗(yàn)結(jié)果如圖6所示,其中圖6(a)、(b)分別表示目標(biāo)和手爪在圖像平面中 和Y方向上的運(yùn)動(dòng)軌跡,圖6(c)表示控制過(guò)程中圖像雅可比矩陣的變化曲線(以J[sub]11[/sub](k)、J[sub]22[/sub](k)為例),圖6(d)表示系統(tǒng)內(nèi)擾
的變化曲線.實(shí)驗(yàn)結(jié)果表明,當(dāng)手眼關(guān)系參數(shù)變化較小且具有較強(qiáng)線性特性時(shí),采用PI控制和
ADRC控制都能達(dá)到較好的視覺(jué)跟蹤效果;當(dāng)手眼關(guān)系參數(shù)變化較大時(shí),兩者的跟蹤性能都會(huì)下降,但后者的跟蹤性能和對(duì)對(duì)象模型參數(shù)變化的魯棒性均強(qiáng)手前者.
實(shí)驗(yàn)3:基于雙環(huán)結(jié)構(gòu)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服控制
圖像雅可比矩陣在線辨識(shí)參數(shù)設(shè)置如下:
狀態(tài)噪聲方差陣
2為二維單位陣),圖像觀察噪聲方差陣
,狀態(tài)估計(jì)方差陣P(k)的初始值P(0)=10[sup]5[/sup]I[sub]2*2[/sub],通過(guò)初始的試探運(yùn)動(dòng)獲得狀態(tài)估計(jì)的初始值圣x(0)(即J(0))與實(shí)驗(yàn)2相同,仍為J。
ADRC控制器參數(shù)設(shè)置如下:
實(shí)驗(yàn)結(jié)果如圖7所示,其中圖7(a)、(b)分別表示目標(biāo)和手爪在圖像平面中 和Y方向上的運(yùn)動(dòng)軌跡,圖7(c)表示控制過(guò)程中圖像雅可比矩陣的變化曲線(以J[sub]11[/sub](k)、J[sub]22[/sub](k)為例),圖7(d)表示固定雅可比矩陣時(shí)系統(tǒng)內(nèi)擾口 (k)的變化曲線,圖7(e)表示引入雅可比矩陣在線辨識(shí)算法后系統(tǒng)內(nèi)擾
的變化曲線。
從實(shí)驗(yàn)結(jié)果可以看出,采用基于Kalman濾波在線辨識(shí)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服這種雙環(huán)結(jié)構(gòu)的控制方法后,因圖像雅可比矩陣變化帶來(lái)的系統(tǒng)內(nèi)擾量降低了,系統(tǒng)的控制性能得到了提高.同時(shí),在實(shí)驗(yàn)中我們也發(fā)現(xiàn),當(dāng)跟蹤快速運(yùn)動(dòng)的目標(biāo)時(shí),直接采用ADRC跟蹤性能會(huì)下降,但簡(jiǎn)單地將基于圖像雅可比矩陣在線辨識(shí)的無(wú)標(biāo)定視覺(jué)伺服方法和基于ADRC的無(wú)標(biāo)定視覺(jué)伺服方法相結(jié)合,并不能很好地改善系統(tǒng)的性能,原因是,雙環(huán)結(jié)構(gòu)減小了系統(tǒng)的建模誤差(即內(nèi)擾),此時(shí)若不相應(yīng)地減小ESO的參數(shù)(主要是用來(lái)估計(jì)系統(tǒng)實(shí)時(shí)擾動(dòng)量的參數(shù){bx[sub]2[/sub],by[sub]2[/sub] }),相當(dāng)于增大了{b加b }的值,從而導(dǎo)致估計(jì)值振蕩,同樣會(huì)使ESO的估計(jì)精度降低,進(jìn)而使整個(gè)系統(tǒng)的性能下降.ESO相關(guān)參數(shù)的減少量與內(nèi)擾量之間到底存在著什么樣的量化關(guān)系,有待于進(jìn)行進(jìn)一步的深入研究.但可以肯定的是,這種獨(dú)立于具體系統(tǒng)的關(guān)系一定是存在的,而且是非線性的.
5 結(jié)論
本文將圖像雅可比矩陣在線辨識(shí)方法與基于ADRC的機(jī)器人無(wú)標(biāo)定視覺(jué)伺服方法相結(jié)合,提出了雙環(huán)結(jié)構(gòu)的機(jī)器人無(wú)標(biāo)定自抗擾視覺(jué)伺服控制策略.內(nèi)環(huán)采用Kalman濾波算法進(jìn)行圖像雅可比矩陣在線辨識(shí),可較好地逼近真實(shí)的視覺(jué)映射模型.外環(huán)采用自抗擾控制器,利用非線性觀測(cè)器實(shí)時(shí)估計(jì)出系統(tǒng)相對(duì)于當(dāng)前估計(jì)模型的總擾動(dòng),并在控制中加以動(dòng)態(tài)補(bǔ)償.針對(duì)六自由度工業(yè)機(jī)器人進(jìn)行了二維運(yùn)動(dòng)目標(biāo)的跟蹤實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明該方法在一定程度上解決了當(dāng)目標(biāo)做大范圍運(yùn)動(dòng)時(shí),基于自抗擾控制器的無(wú)標(biāo)定視覺(jué)伺服系統(tǒng),由于估計(jì)模型和實(shí)際模型差值過(guò)大,導(dǎo)致控制器補(bǔ)償精度降低、系統(tǒng)控制性能下降的問(wèn)題.