徐 達(dá),帥 元,韓振飛,夏 祥
XU Da,SHUAI Yuan,HAN Zhen-fei,XIA Xiang
(裝甲兵工程學(xué)院,北京 100072)
智能體機(jī)器人(Agent)是機(jī)器人領(lǐng)域近年來十分熱點的問題,它以高度的靈活性、容錯性和魯棒性克服了以往集中式控制理念的不足,成為對機(jī)器人系統(tǒng)進(jìn)行系統(tǒng)分析和設(shè)計的強(qiáng)有力的一種方法。在一個復(fù)雜系統(tǒng)中,系統(tǒng)整體往往可由許多個智能體按一定規(guī)則結(jié)合而成,通過采用基于協(xié)商的決策這就是多智能體系統(tǒng)(Multi-Agent System,MAS),它能夠在相同環(huán)境中得到多種的解決問題方法,具有并行性、智能性和柔性。對于具有高智能特性的7自由度彈藥裝填機(jī)器人來講由于對機(jī)器人的魯棒性要求較高,所以運動控制的過程十分復(fù)雜。本文運用MAS方法,通過軟件對七自由度彈藥裝填機(jī)器人運動軌跡進(jìn)行了研究,得出了單關(guān)節(jié)失效時的運動軌跡。
研究彈藥裝填機(jī)器人運動控制最為主要的工作是關(guān)節(jié)空間位置、速度、加速度以及所形成的運行軌跡。彈藥裝填機(jī)器人結(jié)構(gòu)復(fù)雜普通關(guān)節(jié)空間地解算不利于快速和有效地克服關(guān)節(jié)故障產(chǎn)生的運動退化,而MAS系統(tǒng)具備高度的錯容性,可以有針對性地對彈藥裝填機(jī)器人進(jìn)行運動控制。
對于彈藥裝填機(jī)器人的MAS系統(tǒng)來講,設(shè)計的根本意義就是簡化數(shù)學(xué)的模型,增加關(guān)節(jié)協(xié)作的次數(shù)從而達(dá)到克服故障的目的。這就要求將任務(wù)的目標(biāo)作為實時解算的根本依據(jù),所以首先要將任務(wù)進(jìn)行有效的區(qū)分。
1)協(xié)調(diào)任務(wù)目標(biāo):在整個協(xié)作過程中,除了必須存在多個參與協(xié)作實現(xiàn)協(xié)作目標(biāo)的參與者外,還存在負(fù)責(zé)MAS協(xié)作的協(xié)調(diào)者。協(xié)作協(xié)調(diào)者的任務(wù)主要是一方面提出協(xié)作需求,并對協(xié)作目標(biāo)進(jìn)行規(guī)劃;另一方面,協(xié)調(diào)者還負(fù)責(zé)根據(jù)競爭者的條件挑選恰當(dāng)?shù)膮f(xié)作伙伴。
2)控制任務(wù)目標(biāo):由協(xié)調(diào)Agent在特定的情況下產(chǎn)生。本文假設(shè)特定的情況為無法達(dá)到預(yù)定的裝填位置而采用保持空間中兩個坐標(biāo)不變,第三個坐標(biāo)微調(diào)適應(yīng)的原則。
3)實時任務(wù)目標(biāo):預(yù)定任務(wù)目標(biāo)是依賴于前面協(xié)調(diào)任務(wù)的結(jié)果而由產(chǎn)生的新的能達(dá)到預(yù)定目標(biāo)的實施方案,其具有實時的特性。
4)子任務(wù)目標(biāo):實時任務(wù)目標(biāo)體系內(nèi)獨立的Agent應(yīng)當(dāng)完成的任務(wù),以及當(dāng)完成的關(guān)聯(lián)協(xié)作。
5)預(yù)定目標(biāo):最終應(yīng)當(dāng)完成的裝填任務(wù)。
圖1 MAS設(shè)置方案
設(shè)計該模型主要的思路是功能和目標(biāo)分離,以目標(biāo)為主;規(guī)劃和目標(biāo)實時交互,突出規(guī)劃對于目標(biāo)的影響和指導(dǎo),體現(xiàn)目標(biāo)對于規(guī)劃的補(bǔ)充和延伸。
將整個彈藥裝填機(jī)器人臂手結(jié)構(gòu)設(shè)計成五個智能體和一個協(xié)調(diào)智能體,如圖1所示。
分別將各個智能的關(guān)節(jié)設(shè)計為簡單的反應(yīng)式Agent,分別是:
表1 智能體設(shè)置方案
圖2 控制體系
本文采用分布式的控制體系如圖2所示,主要思想就是:在協(xié)調(diào)SAgent收到工作的任務(wù)目標(biāo)的時候,通過知識庫得出各個Agent的子任務(wù)目標(biāo),以及各個Agent協(xié)調(diào)工作順序的相關(guān)信息,并立即將其傳遞給每一個Agent;然后單個Agent在自己的知識目標(biāo)中找到子任務(wù)目標(biāo),以及相關(guān)的規(guī)劃信息,根據(jù)當(dāng)前所有信息得出完成方案并執(zhí)行。執(zhí)行過程中實時的將信息傳遞到每個Agent以及SAgent處,實時的優(yōu)化運動方案。
各Agent在工作的過程中需要進(jìn)行實時協(xié)作,本文根據(jù)彈藥裝填機(jī)器人MAS系統(tǒng)各個智能體之間相互獨立,但是卻又共享協(xié)作的工作模式設(shè)計出基本的面向任務(wù)預(yù)的協(xié)作函數(shù),以及應(yīng)當(dāng)具備的協(xié)作策略。
協(xié)作方式可以分為兩類:單Agent協(xié)作方式以及MAS在SAgent協(xié)調(diào)下的聯(lián)合協(xié)作方式。單Agent協(xié)作主要是指進(jìn)行單個Agent之間的通信與協(xié)調(diào),而其他不相關(guān)Agent保持原來的狀態(tài)。MAS在SAgent協(xié)調(diào)下的聯(lián)合協(xié)作方式是指,SAgent進(jìn)行多個Agent同時協(xié)調(diào)控制。兩種控制方式具體通信過程如下:
1)單Agent協(xié)作方式:單個Agent和Agent之間的協(xié)作。首先由任務(wù)Agent向協(xié)作Agent發(fā)送指令,設(shè)置新的目標(biāo)位置或者查詢當(dāng)前位置,之后等待。協(xié)作Agent收到指令后必須應(yīng)答,任務(wù)Agent在收到應(yīng)答信息后才能發(fā)送新的指令或重發(fā)上一次的指令。任務(wù)Agent等待應(yīng)答的時間為1ms上限為,若超過此上限,則主計算機(jī)將發(fā)送新的指令或重發(fā)上一次的指令。
2)MAS在SAgent協(xié)調(diào)下的聯(lián)合協(xié)作方式是指:進(jìn)行位置控制時,SAgent首先依次對單獨的Agent控制器設(shè)置任務(wù),每一次只和某個Agent通信,當(dāng)確認(rèn)所有應(yīng)答無誤時,主計算機(jī)采用廣播方式發(fā)送一條啟動指令,命令所有Agent按預(yù)定指示開始工作。
7自由度彈藥裝填機(jī)器人如圖3所示,之間的關(guān)節(jié)角為θp(p=1,2,......,n)記末端的執(zhí)行機(jī)構(gòu)的坐標(biāo)為E(xe,ye,ze)末端執(zhí)行器期望軌跡上任意一個點T(xd,yd,zd)利用齊次變換矩陣的方法可以得出關(guān)于執(zhí)行機(jī)構(gòu)的坐標(biāo)和各個關(guān)節(jié)角之間的關(guān)系:
圖3 彈藥裝填機(jī)器人機(jī)構(gòu)簡圖
我們?nèi)∠鄬Φ奈灰撇畹玫剑?/p>
理論上是當(dāng)D(δx,δy,δz)=0時彈藥裝填機(jī)器人的任務(wù)才算是完成,即末端執(zhí)行器已經(jīng)到達(dá)了指定的位置。假設(shè)三個坐標(biāo)軸的方向上的相對距離θp的梯度分別為Gxp(θp)、Gyp(θp)和Gzp(θp)。在迭代求解過程中,采用的決策應(yīng)保證D(δx,δy,δz)沿其梯度方向減小,否則θp應(yīng)保持靜止。
在研究的過程中發(fā)現(xiàn)機(jī)器人的工作過程中受到了空間和關(guān)節(jié)角度的影響,其運動能力應(yīng)當(dāng)出現(xiàn)一定的退化所以本文構(gòu)造簡易的車內(nèi)空間假設(shè)在裝填彈藥的過程中只要能夠滿足z坐標(biāo),x和y坐標(biāo)能有微小的變化就能完成彈藥的裝填。
采用簡單的控制策略為:
式中:θp,max和θp,min分別為機(jī)器人的第p個關(guān)節(jié)角動作范圍上、下限;αp為動態(tài)步進(jìn)角,即:
λp為定常的正值比例系數(shù),用以將:
設(shè)計時鐘變量timer()進(jìn)行實時的跟蹤可設(shè)時間間隔為1s,在SAgent變量中設(shè)計多種規(guī)劃為裝填位置沿y軸方向上的每隔5mm的一個目標(biāo)集合G={g0,g1,g2,...,gn}優(yōu)選順序為:
其中g(shù)0是預(yù)定的無故障平臺時候的裝填機(jī)器人軌跡。然后通信各個Agent接收到SAgent發(fā)送的gi信號后得出自己的子任務(wù),然后按照預(yù)定的計劃完成任務(wù)。通過仿真得出一下結(jié)果如圖4所示
圖4 無故障平臺時的位置軌跡
圖5 軌道失效退化后的位置軌跡
圖6 基座失效后的位置軌跡
從圖5軌道Agent失效后彈藥裝填機(jī)器人的退化后的軌跡和實時姿態(tài)可以看出軌道故障后彈藥裝填機(jī)器人仍然能夠到達(dá)預(yù)定的裝填位置完成裝填的任務(wù)。
基座Agent失效后彈藥裝填機(jī)器人退化后無法達(dá)到預(yù)定的位置,此時SAgent在收到信息后根據(jù)算法給出另外的目標(biāo)Si,然后各個子Agent得出運行軌跡如圖6所示。
圖7 大臂失效后位置軌跡
根據(jù)圖像顯示根據(jù),基于MAS的運動控制方法能夠簡單的進(jìn)行柔性控制達(dá)到機(jī)器人整體魯棒性能的提高。
本文提出了一種基于MAS的具有較高錯容性的彈藥裝填機(jī)器人運動控制方法,將彈藥裝填機(jī)器人看成是由MAS系統(tǒng)組成,同時由一個協(xié)調(diào)SAgent進(jìn)行協(xié)調(diào)控制運動。彈藥裝填機(jī)器人完成預(yù)定的裝填目標(biāo)時,將裝填任務(wù)分解各個Agent的子任務(wù),而各個Agent又獨立完成子任務(wù)并由SAgent進(jìn)行時鐘協(xié)調(diào)運動控制最終完成預(yù)定目標(biāo)。這種方法的好處有以下四點:
1)彈藥裝填系統(tǒng)的工作能力可以通過增加預(yù)定的規(guī)劃數(shù)量,就可以在彈藥裝填機(jī)器人可達(dá)空間內(nèi)增加工作方案;
2)在MAS系統(tǒng)內(nèi),可以有效的進(jìn)行規(guī)避障礙物和克服關(guān)節(jié)故障帶來工作難題,提高彈藥裝填機(jī)器人的柔性和魯棒性;
3)該方法比較過去的并行控制的模式具有更高的靈活性和可靠性;
4)通過仿真實驗,MAS系統(tǒng)具有很好的環(huán)境適應(yīng)能力,魯棒性較好,能夠保證在動態(tài)、不確定環(huán)境下實時地進(jìn)行運動控制。
[1] 王中盛.彈藥裝填機(jī)器人軌跡規(guī)劃及動力學(xué)分析[D].裝甲兵工程學(xué)院,2008.
[2] 寧可軍,楊汝清.基于多智能體的機(jī)械臂嵌入系統(tǒng)控制[J].上海交通大學(xué)學(xué)報,2005.
[3] 王汝傳.智能體技術(shù)在信息網(wǎng)絡(luò)中的應(yīng)用[M].工業(yè)出版社,2006.
[4] Jorge Angeles theory,technique and arithmetic of mechanical System[M].機(jī)械工業(yè)出版社,2008.
[5] 劉金坤.機(jī)器人控制系統(tǒng)的設(shè)計與仿真[M].清華大學(xué)出版社,2008.