趙江波,修兵凱,王軍政,張新
(1. 北京理工大學(xué) 復(fù)雜系統(tǒng)智能控制與決策國家重點(diǎn)實(shí)驗(yàn)室,北京 100081;2. 北京理工大學(xué) 伺服運(yùn)動(dòng)系統(tǒng)驅(qū)動(dòng)與控制工信部重點(diǎn)實(shí)驗(yàn)室,北京 100081;3. 新興際華集團(tuán)有限公司技術(shù)中心,北京 100020)
我國是世界上發(fā)生自然災(zāi)害比較頻繁的國家, 當(dāng)前在地質(zhì)災(zāi)害救援工作中,多依賴大型工程機(jī)械設(shè)備,其機(jī)動(dòng)靈活性、工作效率、適應(yīng)能力的不足限制了救援的效率[1?3].
因此,高效率、靈活可靠以及能夠適應(yīng)復(fù)雜地形的救援機(jī)器人成為自然災(zāi)害救援中的急需. 本文的研究對象為一種基于六輪足運(yùn)動(dòng)平臺(tái)的雙臂救援機(jī)器人,運(yùn)動(dòng)平臺(tái)的腿部結(jié)構(gòu)采用倒置的并聯(lián)六自由度搖擺臺(tái),同時(shí)平臺(tái)具有輪式、足式和輪足復(fù)合式三種運(yùn)動(dòng)方式,提高了平臺(tái)運(yùn)動(dòng)的靈活性及適應(yīng)能力[4?5]. 此外,通過解決雙機(jī)械臂的結(jié)構(gòu)參數(shù)綜合優(yōu)化設(shè)計(jì)問題使得雙臂協(xié)同工作空間、機(jī)械臂末端運(yùn)動(dòng)速度以及機(jī)械臂負(fù)載能力得到優(yōu)化,從而滿足工作效率及可靠性的要求.
多目標(biāo)優(yōu)化是救援機(jī)器人設(shè)計(jì)的普遍手段[6?7].YAN 等[8]以空間機(jī)器人可操縱性最大化和基座擾動(dòng)最小化為目標(biāo),采用多目標(biāo)粒子群優(yōu)化算法得到最優(yōu)的結(jié)構(gòu)參數(shù);王鑫等[9]以機(jī)械臂各關(guān)節(jié)總功率、各關(guān)節(jié)角加速度以及各桿件總長的最小化為目標(biāo),利用多目標(biāo)遺傳優(yōu)化算法達(dá)到最優(yōu)目標(biāo);ZHEN 等[10]以空間六自由度并聯(lián)機(jī)器人系統(tǒng)剛度和靈巧度為目標(biāo)函數(shù),依靠遺傳算法和人工神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)了優(yōu)化目標(biāo);DAN 等[11]以并聯(lián)機(jī)器人最優(yōu)靈巧剛度和可達(dá)工作空間最大化為目標(biāo),利用粒子群算法對上述目標(biāo)函數(shù)進(jìn)行優(yōu)化,得到理想的實(shí)驗(yàn)效果. 可見,關(guān)于救援機(jī)器人多目標(biāo)優(yōu)化的研究已經(jīng)取得了一系列成果,但是還存在如下問題:①雙臂協(xié)同工作空間作為一個(gè)極其重要的性能指標(biāo),目前的研究多是將其作為已知量或者一個(gè)約束條件而很少作為一個(gè)獨(dú)立的優(yōu)化目標(biāo)函數(shù),然而當(dāng)其作為目標(biāo)函數(shù)時(shí),尚無法用明確的數(shù)學(xué)表達(dá)式對其進(jìn)行描述;②現(xiàn)有的多目標(biāo)優(yōu)化方法往往只是給出參數(shù)的帕累托解集,但實(shí)際救援問題對可靠性與快速性提出了要求,因此需要針對性地給出一組明確的優(yōu)化參數(shù).
針對上述不足,本文創(chuàng)新性地提出了一種多目標(biāo)優(yōu)化設(shè)計(jì)方法:①基于三重積分,將雙臂救援機(jī)器人協(xié)同工作空間作為一個(gè)獨(dú)立具體的目標(biāo)函數(shù)進(jìn)行詳細(xì)的數(shù)學(xué)描述;②基于模糊層次分析法[12],結(jié)合粒子群算法進(jìn)行目標(biāo)函數(shù)最優(yōu)值求解,得到一組明確的機(jī)械臂結(jié)構(gòu)優(yōu)化參數(shù).
運(yùn)動(dòng)學(xué)分析是驗(yàn)證機(jī)器人機(jī)構(gòu)、動(dòng)力學(xué)、軌跡規(guī)劃和位置控制的重要組成部分[13]. 本文雙臂救援機(jī)器人的仿真模型如圖1 所示.
圖1 雙臂機(jī)器人結(jié)構(gòu)模型Fig. 1 Dual-arm robot structure model
機(jī)器人的運(yùn)動(dòng)學(xué)描述需使用兩種坐標(biāo)系,局部坐標(biāo)系O0X0Y0Z0和全局坐標(biāo)系OXYZ,且雙臂局部坐標(biāo)系關(guān)于全局坐標(biāo)系對稱. 由基體向末端執(zhí)行器順序?qū)﹃P(guān)節(jié)和連桿進(jìn)行編號(hào),基體從0 開始,關(guān)節(jié)從1開始,根據(jù)D-H法則[14],建立雙臂救援機(jī)器人的D-H坐標(biāo)系,如圖2 所示.
圖2 雙臂救援機(jī)器人D-H 坐標(biāo)系Fig. 2 D-H coordinate system of dual-arm rescue robot
6 個(gè)相鄰關(guān)節(jié)的齊次變換矩陣如式(1)所示
雅可比矩陣作為操作空間與關(guān)節(jié)空間的樞紐,滿足
本文采用微分變換法[14]構(gòu)造雅可比矩陣,可得到如式(3)所示的雅可比矩陣
救援工作對于機(jī)械臂的協(xié)同工作空間有著極高要求,但協(xié)同工作空間很難進(jìn)行詳細(xì)的數(shù)學(xué)描述. 為了解決這個(gè)問題,本文首先基于蒙特卡洛法[15],借助式(4)對雙機(jī)械臂的可達(dá)運(yùn)動(dòng)空間進(jìn)行仿真
式中:unifrnd()為Matlab 中的均勻分布隨機(jī)數(shù)生成函數(shù); θ為 關(guān)節(jié)角的最小(大)值;N為常數(shù).
通過Matlab 仿真得到的雙臂工作空間如圖3所示.
圖3 中,兩個(gè)不規(guī)則球體分別代表兩臂各自的工作空間,二者的相交部分則是雙臂協(xié)同工作空間.上述的工作空間是不考慮基座體積情況下得到的理想工作空間,實(shí)際上應(yīng)保證雙臂機(jī)器人不與基座相碰.
圖3 雙臂協(xié)同工作空間仿真Fig. 3 Dual-arm collaborative workspace simulation
由圖3(b)可知,機(jī)械臂的協(xié)同工作空間在XOY面上的投影為一橢圓. 若用平行于XOY的平面去切割圖3(a)所示的空間體,會(huì)得到若干個(gè)大小不一的橢圓截面,其中兩端的橢圓面積最小,中間的橢圓面積最大.
若將最大橢圓與最小橢圓之間的部分分為n個(gè)大小不等的橢圓柱,每個(gè)橢圓底面的長軸lj與短軸sj可表示為
式中L為基座間距.
每個(gè)橢圓柱的底面積為
則每個(gè)橢圓柱的體積可以表示為
式中 dz為每個(gè)橢圓柱的高度.
基于這一思路,可以通過三重積分求體積的方法來表征雙臂的協(xié)同工作空間,即
式中;lmax、smax為 最大橢圓的長軸與短軸;lmin、smin為最小橢圓的長軸與短軸;zmax為 空間體在z軸上的最大值;Vw為實(shí)際工作空間;Vp為 基座所占空間,為常量;F1(γ)為救援機(jī)器人雙臂協(xié)同工作空間目標(biāo)函數(shù),
本文所研究的一類雙臂機(jī)器人D-H參數(shù)表如表1 所示.
表1 機(jī)械臂D-H 參數(shù)Tab. 1 D-H parameters of manipulators
由式(1)及雙臂機(jī)器人D-H參數(shù)表可知右左兩臂末端執(zhí)行器的位置坐標(biāo)表達(dá)式為
式中:s23=sin(θ2+θ3);c23=cos(θ2+θ3).
由式(5)、(8)及(9)可知,長軸lj與短軸sj進(jìn)一步表示為
進(jìn)一步可求zmax,lmax,lmin,smax,smin.
①zmax.
由式(8)、(9)可知,zmax可表示為
式中:f1(θ2,θ3)=dcos(θ2+θ3);f2(θ2)=?a2sinθ2.
根 據(jù) 表1, θ2∈[?30°,90°], θ3∈[?90°,90°]. 當(dāng)θ2+θ3=0 且 θ2=?30° 時(shí) ,f1(θ2,θ3)與f2(θ2)同時(shí)取得最大值,便可求得zmax.
因此z的最大值為
此時(shí), θ2=?30?, θ3=30?.
②lmax,lmin.
根據(jù)表1,θ2∈[?30°,90°],θ3∈[?90°,90°], 結(jié)合lj=|(a1+a2cosθ2+dsin(θ2+θ3))|可 知,當(dāng)θ2=0 且 θ3=90°時(shí),lj取得最大值
基于①分析, θ2=?30?, θ3=30?時(shí) 取得zmax,從而lj取得最小值,可得lmin為
③smax,smin.
根據(jù)②的分析,同理可得smax,smin為
執(zhí)行機(jī)構(gòu)的運(yùn)行速度,即機(jī)械臂末端運(yùn)動(dòng)速度是救援任務(wù)及時(shí)完成的直接保證. 本文采用可操作度來表征機(jī)械臂末端運(yùn)動(dòng)速度,可操作度最早由KLEIN 和YOSHIKAWA 定 義[16],可 由 機(jī) 械 臂 的 雅 可比矩陣表示,如式(16)所示
在笛卡爾空間中機(jī)械臂末端運(yùn)動(dòng)速度矢量為
式中:v為速度;tend為速度方向單位矢量.
式(17)可改寫為
由上式可知, det(JJT)越大,末端運(yùn)動(dòng)速度越大.為了評(píng)估機(jī)械臂末端在工作空間上的整體速度性能[17?18],定義機(jī)械臂全域末端運(yùn)動(dòng)速度目標(biāo)函數(shù)為
式中 γ=[aαdθ].
救援現(xiàn)場往往有重物需要搬運(yùn),這對機(jī)械臂的負(fù)載能力提出了考驗(yàn). 本文同樣采用可操作度來表征機(jī)械臂負(fù)載能力. 對機(jī)械臂受力分析可得
式中F、Fg、Fl為驅(qū)動(dòng)系統(tǒng)動(dòng)力、機(jī)械臂自身重力和機(jī)械臂負(fù)載能力.
在笛卡爾空間中機(jī)械臂負(fù)載力矢量為Fl=fltend,式(21)可改寫為
由上式可知, det(JJT)越小,機(jī)械臂負(fù)載能力越大. 同樣定義機(jī)械臂全域負(fù)載能力目標(biāo)函數(shù)為
① 實(shí)際工況下結(jié)構(gòu)參數(shù)約束.
受救援任務(wù)下實(shí)際工況的影響,機(jī)械臂結(jié)構(gòu)參數(shù)的范圍受到一定約束,即
②末端運(yùn)動(dòng)速度波動(dòng)約束.
救援工作要求末端運(yùn)動(dòng)速度不能有較大波動(dòng)[19].式(19)表征的是工作空間內(nèi)末端運(yùn)動(dòng)速度的平均值,不能提供速度的波動(dòng)信息. 因此定義 σspeed評(píng)估速度的波動(dòng)程度
為使機(jī)械臂末端運(yùn)動(dòng)速度穩(wěn)定,需 m in(σspeed).
③機(jī)械臂負(fù)載能力波動(dòng)約束.
同理,定義 σforce評(píng)估負(fù)載能力的波動(dòng)程度
同樣需 min(σforce).
④耦合約束.
定義若存在耦合區(qū)間,且Fij(γ)為 耦合區(qū)間內(nèi)第i個(gè)目標(biāo)函數(shù)的第j個(gè)極值,有
式 中: ε ∈(0,0.1);Fi(γ)ini、Fi(γ)end為耦合 區(qū) 間 端 點(diǎn) 的函數(shù)值. 則認(rèn)定該組耦合區(qū)間的耦合程度較低.由式(1)可知,ai∈[aimin,aimax],αi∈[αimin,αimax],di∈[dimin,dimax],θi∈[θimin,θimax], 對每個(gè)取值范圍n等分,每個(gè)參數(shù)均取一個(gè)等分的區(qū)間. 若所取區(qū)間滿足上述定義,則可作為耦合約束條件.
選擇符合要求的一組耦合區(qū)間如下
本文利用模糊層次分析法確定加權(quán)系數(shù),建立多目標(biāo)線性加權(quán)綜合優(yōu)化函數(shù),將多目標(biāo)函數(shù)轉(zhuǎn)化為單目標(biāo)函數(shù).
模糊層次分析法是用模糊數(shù)衡量目標(biāo)函數(shù)之間的關(guān)系.
其具體實(shí)現(xiàn)過程分為:層次模型、判斷矩陣、一致性檢驗(yàn)和確定權(quán)重[12].
① 層次模型.
圖4 為層次模型示意圖,最頂層是優(yōu)化目標(biāo),中間層是依據(jù)的準(zhǔn)則,最下層是三個(gè)目標(biāo)優(yōu)化函數(shù). 其中,下層影響上層,因此每一分支中,下層的權(quán)重和加起來等于上層的權(quán)重和.
圖4 層次模型Fig. 4 Hierarchical model
②判斷矩陣.
判斷矩陣是對三個(gè)元素進(jìn)行兩兩分析,從而確定目標(biāo)函數(shù)之間的重要程度. 兩元素間的重要程度以表2 中的標(biāo)度來衡量.
表2 標(biāo)度的含義Tab. 2 The meaning of scale
目標(biāo)層與準(zhǔn)則層之間的判斷矩陣一般可根據(jù)救援機(jī)器人的設(shè)計(jì)目標(biāo)要求以及專家經(jīng)驗(yàn)進(jìn)行建立.本文中,判斷矩陣取值為
③一致性檢驗(yàn).
Ⅰ)計(jì)算判斷矩陣最大的特征值 λmax和一致性指標(biāo)IC
Ⅱ)如表3,查找平均隨機(jī)一致性指標(biāo)IR
表3 隨機(jī)一致性指標(biāo)Tab. 3 Random consensus index
判斷矩陣維度為3,所以n= 3,則IR=0.52.
Ⅲ)計(jì)算一致性比例η
因此判斷矩陣的一致性在可接受范圍內(nèi).
④確定權(quán)重.
將判斷矩陣的每一列求和,得到如下向量
比較矩陣每個(gè)元素除以對應(yīng)列的列和
利用算術(shù)平均法求權(quán)重的均值,則計(jì)算的權(quán)重向量W1=[0.539 3 0.297 4 0.163 3].
按照上述步驟,便可以得到選擇層與準(zhǔn)則層之間的權(quán)重矩陣為
為了消除單目標(biāo)優(yōu)化存在的量綱問題,本文采用min-max 標(biāo)準(zhǔn)化方法對目標(biāo)函數(shù)進(jìn)行歸一化,經(jīng)過以上分析,可以確定優(yōu)化函數(shù)模型如下式
雙臂協(xié)同工作空間目標(biāo)函數(shù)F1(γ)與機(jī)械臂末端運(yùn)動(dòng)速度目標(biāo)函數(shù)F2(γ)是求極大值,機(jī)械臂負(fù)載能力目標(biāo)函數(shù)F3(γ)是求極小值,為了將三個(gè)目標(biāo)函數(shù)轉(zhuǎn)化為求極小值問題,將歸一化的F1(γ)和F2(γ)取相反值.
為了驗(yàn)證所提方法的有效性,利用實(shí)驗(yàn)室自行研制的機(jī)械臂平臺(tái)進(jìn)行實(shí)驗(yàn),如圖5 所示,該雙臂機(jī)器人的D-H參數(shù)如表1 所示. 以a1,a2,d4作為優(yōu)化變量, γ=[a1a2d4],可對應(yīng)得到實(shí)驗(yàn)室機(jī)械臂平臺(tái)的雙臂協(xié)同工作空間目標(biāo)函數(shù)、機(jī)械臂末端運(yùn)動(dòng)速度目標(biāo)函數(shù)以及機(jī)械臂負(fù)載能力目標(biāo)函數(shù)的表達(dá)式.
圖5 雙臂機(jī)器人Fig. 5 Dual-arm robot
本文采用粒子群優(yōu)化算法[20]對求得的3 個(gè)目標(biāo)函數(shù)解析式進(jìn)行優(yōu)化求解,設(shè)定粒子群規(guī)模為100,最大迭代次數(shù)為200,最小適應(yīng)值為?1,最大速度為0.01,最小速度為?0.01. 將式(38)所示的綜合目標(biāo)函數(shù)帶入算法中,得到的最優(yōu)值與最優(yōu)解如圖6 所示,此時(shí)最優(yōu)值為?0.892 3,最優(yōu)解a1= 1.598 5 m,a2=1.199 3 m,d=0.699 5 m.
圖6 最優(yōu)值與最優(yōu)解曲線Fig. 6 Optimal value and optimal solution curve
經(jīng)過粒子群優(yōu)化求解后,優(yōu)化前后的參數(shù)值如表4 所示,根據(jù)優(yōu)化后機(jī)械臂的三個(gè)結(jié)構(gòu)參數(shù)對雙臂機(jī)器人進(jìn)行改進(jìn).
表4 優(yōu)化前后的參數(shù)Tab. 4 Parameters before and after optimization
為了驗(yàn)證改進(jìn)后的雙臂機(jī)器人的各項(xiàng)指標(biāo),即:雙臂協(xié)同工作空間、末端運(yùn)動(dòng)速度以及機(jī)械臂負(fù)載能力得到了提升,分別對三項(xiàng)指標(biāo)進(jìn)行測試和計(jì)算.
①利用三重積分法求得改進(jìn)后的雙臂機(jī)器人的協(xié)同工作空間.
將改進(jìn)后的結(jié)構(gòu)參數(shù)a1,a2,d4代 入zmax,lmax,lmin,smax,smin中,進(jìn)而通過三重積分法求得協(xié)同工作空間的體積.
②計(jì)算求得機(jī)械臂末端運(yùn)動(dòng)速度.
為了得到優(yōu)化后的末端運(yùn)動(dòng)速度,機(jī)械臂末端的期望運(yùn)行軌跡設(shè)置為:左臂末端期望軌跡xdl=[0.6t?0.3 0.7]Tm,右臂末端期望軌跡xdr=[0.6t0.3 0.7]Tm,同時(shí)負(fù)載設(shè)置為132 kg(未優(yōu)化機(jī)械臂處于最長力臂狀態(tài)下的最大負(fù)載). 由于機(jī)械臂末端運(yùn)動(dòng)速度的測量可能受到噪聲的影響,會(huì)影響系統(tǒng)性能,甚至?xí)?dǎo)致系統(tǒng)的不穩(wěn)定,因此不可直接測量末端運(yùn)動(dòng)速度. 為了避免上述現(xiàn)象的發(fā)生,設(shè)計(jì)一個(gè)狀態(tài)觀測器[21]如下所示
③力傳感器測得機(jī)械臂負(fù)載能力.
負(fù)載能力指機(jī)械臂末端在工作范圍內(nèi)的任何位姿上所能承受的最大負(fù)載,為了得到優(yōu)化后的機(jī)械臂負(fù)載能力,設(shè)置機(jī)械臂處于最長力臂狀態(tài),利用安裝在末端的HPS-FT025 六維力傳感器(精度為0.001 N·m)測試末端在最長力臂狀態(tài)下所能承受的最大負(fù)載.
將計(jì)算得到的雙臂協(xié)同工作空間的體積和機(jī)械臂末端運(yùn)動(dòng)速度,以及通過安裝在機(jī)械臂末端的六維力傳感器測得的機(jī)械臂負(fù)載能力,記錄在表5 中.為了形成對比驗(yàn)證優(yōu)化效果,將原機(jī)器人的性能指標(biāo)值同樣記錄在表5 中.
表5 優(yōu)化前后的性能指標(biāo)Tab. 5 Performance indicators before and after optimization
通過對結(jié)構(gòu)參數(shù)優(yōu)化前后的雙臂機(jī)器人進(jìn)行對比測試,可以表明優(yōu)化后各項(xiàng)性能指標(biāo)有了較為明顯的提升,雙臂協(xié)同工作空間增加9.5%,末端運(yùn)動(dòng)速度提高7.8%,機(jī)械臂負(fù)載能力提升6.1%.
①本文對雙臂救援機(jī)器人進(jìn)行多目標(biāo)優(yōu)化研究,選取雙臂協(xié)同工作空間、末端運(yùn)動(dòng)速度和機(jī)械臂負(fù)載能力作為目標(biāo)函數(shù). 利用蒙特卡洛與三重積分相結(jié)合的方法求得工作空間,利用可操作度描述了機(jī)械臂末端運(yùn)動(dòng)速度與負(fù)載能力.
②為了達(dá)到綜合性能最優(yōu)化,以提出的三個(gè)目標(biāo)函數(shù)作為優(yōu)化目標(biāo),結(jié)合模糊層次分析法獲得的權(quán)重將多目標(biāo)優(yōu)化問題轉(zhuǎn)化為一個(gè)單目標(biāo)優(yōu)化模型,采用粒子群優(yōu)化算法對機(jī)械臂的結(jié)構(gòu)參數(shù)進(jìn)行優(yōu)化,得到了滿足實(shí)際需求的最優(yōu)解.
③通過與原設(shè)計(jì)比較表明優(yōu)化后的雙臂救援機(jī)器人工作空間增大、末端運(yùn)動(dòng)速度變快以及負(fù)載能力提高,從而驗(yàn)證了本文提出的優(yōu)化目標(biāo)和方法的有效性.