劉懷周,王雙園,白國振,王鴻東
(1.上海理工大學 機械工程學院,上海 200093;2.上海交通大學 海洋智能裝備與系統(tǒng)教育部重點實驗室,上海 200240)
機器人不同關節(jié)運動所達到的末端執(zhí)行器的所有位置的集合,稱為可達工作空間[1]。工作空間的分析有圖解法、 數(shù)值法和解析法。圖解法和解析法只適合于自由度及桿件數(shù)目較少的機械臂的工作空間分析,而數(shù)值法需要大量的計算,計算公式復雜多變[2]。
工作空間體現(xiàn)了機械臂運動的范圍,其大小可以用截面積或者體積來表示,是結(jié)構(gòu)優(yōu)化的重要目標和參數(shù)。文獻[3]分析求解了一種3T1R并聯(lián)機構(gòu)的可達工作空間,并用天牛須搜索算法對其機構(gòu)尺寸進行了優(yōu)化設計;文獻[4]以工作空間密度函數(shù)的最大值的分布區(qū)域作為機械臂工作靈活區(qū)域的衡量標準,進行機械臂尺寸優(yōu)化;文獻[5] 提出一種綜合機器人靈巧度與工作空間利用率的全局混合性能指標,并利用粒子群算法對不同工況下機器人尺寸參數(shù)進行優(yōu)化;文獻[6]結(jié)合對于工作空間利用效率的考慮,提出了應用工作空間利用率及左側(cè)輪廓斜率絕對值評價機器人工作空間合理程度的方法;文獻[7]以有效工作空間體積相對最大為目標,對約束機構(gòu)的連桿長度和轉(zhuǎn)動副轉(zhuǎn)角數(shù)值范圍進行了優(yōu)化。
本研究利用解析法分析了串聯(lián)式機械臂的工作空間,并在此基礎上再次利用解析法建立有效工作空間的截面積模型,最后運用遺傳算法求得滿足約束條件下有效工作空間截面的最優(yōu)解和最優(yōu)結(jié)構(gòu)參數(shù)。
Denavit-Hartenberg提出的D-H坐標系已經(jīng)成為描述機械臂的常用坐標系。D-H坐標系規(guī)定:旋轉(zhuǎn)關節(jié)繞z軸轉(zhuǎn)動,x軸為兩相鄰z軸的公共法線,y軸則按右手法來確定。ai為連桿長度,即旋轉(zhuǎn)關節(jié)的旋轉(zhuǎn)軸之間公共法線長度;αi是連桿扭角,即一個關節(jié)的旋轉(zhuǎn)軸相對于另一個關節(jié)的旋轉(zhuǎn)軸繞公共法線旋轉(zhuǎn)的角度;di是連桿偏移,即一個關節(jié)與下一個關節(jié)的公共法線和其與上一個關節(jié)的公共法線沿這個旋轉(zhuǎn)軸的距離;θi是關節(jié)轉(zhuǎn)角,即一個關節(jié)與下一個關節(jié)的公共法線和其與上一個關節(jié)的公共法線繞這個旋轉(zhuǎn)軸的角度。
用于水下機器臂的模型如圖1所示。該機械臂為串聯(lián)式結(jié)構(gòu),共有5個自由度,每個自由度均為轉(zhuǎn)動關節(jié)。按照D-H坐標法在圖1中對各連桿分別建立1個坐標系,相應的連桿參數(shù)見表1。
圖1 串聯(lián)型機器臂的平面圖D-H坐標系
表1 串聯(lián)型機器臂連桿的D-H參數(shù)
式中,ci=cosθi;si=sinθi;i=1,2,3,4,5。
由各個坐標系的齊次變換矩陣可得,機械臂的運動學方程為(即基座與末端之間的總變換矩陣):
(1)
式中,N=(nx,ny,nz)T為末端的法向矢量;O=(ox,oy,oz)T為末端的端面矢量;A=(ax,ay,az)T為末端的逼近矢量;P=(px,py,pz)T為末端的中心位置矢量。
從式(1)中可以看出nx,ny,nz,ox,oy,oz,ax,ay,az為機械臂末端的姿態(tài),px,py,pz為末端的位置。由于機械臂工作空間的范圍大小由位置來確定,因此對機械臂的工作空間的分析僅需要計算出px,py,pz。經(jīng)計算可得:
(2)
式中,c234=cos(θ2+θ3+θ4);s234=sin(θ2+θ3+θ4)。由式(2)可得,串聯(lián)型機械臂末端的位置僅與前4個關節(jié)轉(zhuǎn)角有關,因此可將第4個連桿的末端作為機械臂的工作點,其全部到達的集合記為該機械臂的工作空間。
令θ1=0°,根據(jù)機器人工作空間的圖解法[8]可以得到機械臂在x2o2y2平面上的工作空間截面,即圖2中圓弧l1,l2,l3,l4所圍成的陰影區(qū)域。
圖2 機械臂在x2o2y2平面上的工作空間截面
串聯(lián)式機械臂在實際水下作業(yè)時,末端的有效運動范圍并不是機器臂整個工作空間,而只是整個工作空間的一部分。根據(jù)水下作業(yè)情況,假設機械臂以o2y2的水平線為基準,在L/3和3L/4深度之間時效率最高。如圖2所示,L=L2+L3+L4;A1A2,o2y2之間的距離為L/3;A3A4,o2y2之間的距離為3L/4,點A1,A2,A3,A4圍成的面積稱為有效工作空間的截面。
但是,由于各個關節(jié)角度的限制,機械臂的末端不能完全到達該區(qū)域,因此機械臂有效工作空間截面的目標函數(shù)為:
maxS(Y)=S1(X)-S2(Y)
(3)
約束條件為:
qimin≤qi≤qimaxi=2,3,4
Ljmin≤Lj≤Ljmaxj=2,3,4
式中,S1(X)表示點A1,A2,A3,A4圍成的面積;S2(Y)表示機械臂到達不了該區(qū)域的面積,即圓弧l3與線段A1A2圍成的面積;qi為關節(jié)的轉(zhuǎn)角;Lj表示連桿的長度;X=(L2,L3,L4);Y=(L2,L3,L4,q2,q3,q4);S1只與桿長L2,L3,L4有關,與角度q2,q3,q4無關;S2與桿長、角度都有關。
1) 連桿長度約束
考慮到機械臂水下作業(yè)的實際情況,連桿的長度不能過大或者過小,連桿的長度應先限定在一定的范圍內(nèi),因此按照設計要求設定200≤L2≤400 mm;500≤L3≤800 mm;200≤L4≤300 mm。
2) 關節(jié)轉(zhuǎn)角約束
根據(jù)包絡原理和圖2可知,如果機械臂各個連桿長度一定,各個關節(jié)的轉(zhuǎn)角大小一定,當機器人有效工作空間截面積最大時,需要o2,a1,a2,a3,在同一水平線上,此時θ3max=θ4max=0。
由于機械臂在水下作業(yè)的實際情況和結(jié)構(gòu)干涉問題,各個關節(jié)轉(zhuǎn)動范圍應該被限制,因此θ2∈[θ2min,θ2max],θ3≥θ3min,θ4≥θ4min,即θ2min≤θ2≤θ2max,θ3min≤θ3≤0,θ4min≤θ4≤0。
3) 內(nèi)部空洞約束
為了使有效空間截面積最大,則需要空洞的區(qū)域與機械臂有效活動區(qū)域產(chǎn)生更小的交集,此時需要圓弧l2和l4均在L/3之下,這時l3與水平線A1A2有2個交點a4,a5,如圖2所示,需滿足:
(L2+L3)sin(π/2-θ2max)+L4 (4) r1 (5) 此時: (6) h=L/3-L2sin(π/2-θ2max) (7) cosγ=h/r2 (8) d=r2sinγ (9) d1=d-L2cos(π/2-θ2max) (10) (11) (12) 式中,r2是a1,a23之間的距離;h是a1到A1A2的垂直距離;d是a4a5線段的1/2;γ是a1a4與h之間的夾角;d1是a5到x2o2的垂直距離;r1max是o2,a5之間的距離;β是r2與L3之間的夾角;r1是o2,a34之間的距離。 4) 目標函數(shù)求解 由目標函數(shù)式(3)可知,需要求解S1(X)和S2(Y)的面積。求解S1(X)面積如圖3所示: 圖3 機械臂有效工作空間截面圖 (14) (15) (16) (17) s1=πα1L2/360-h1(3L/4)/2 (18) s2=πα2L2/360-s1-h2(L/3)/2 (19) S1(X)=2s2 (20) 式中,h1為B2A3的長度;h2為B1A2的長度;α1為B3o2與A3o2之間的夾角;α2為B1o2與A2o2之間的夾角;s1為點B3,B2,A3圍成的面積;s2為點B1,B2,A3,A2圍成的面積。如圖2可知: (21) 因此: maxS(Y)=S1(X)-S2(Y) (22) 考慮到機械臂水下作業(yè)的實際情況和連桿干涉問題,關節(jié)轉(zhuǎn)角應有一定的限制,即-π/2≤θ2≤π/2,-π≤θ3≤0,-π≤θ4≤0。 遺傳算法產(chǎn)生于達爾文提出的進化論和自然選擇學說,可以模擬生物進化論和自然界遺傳機制,最大優(yōu)勢為可以避免所需優(yōu)化參數(shù)在優(yōu)化期間落入局部最優(yōu)點[9]。通過應用概率策略,遺傳算法可自動獲得并引導優(yōu)化的搜索空間,具有良好的全局優(yōu)化能力[10]。 遺傳算法主要包括3個步驟:選擇、交叉、變異[11]。通過遺傳操作,在解的范圍內(nèi)隨機選取適應度值較大的個體,淘汰適應度值小的個體,然后再進行一步一步的進化,從而使種群朝著較好的方向發(fā)展,最終求得最優(yōu)解和最優(yōu)個體。 為了得到最大的有效空間截面,本研究用S(Y)作為適應度函數(shù)。首先用隨機數(shù)初始化種群,接著在執(zhí)行遺傳算法步驟之前先把不滿足式(4)、式(5)空洞約束條件的個體淘汰掉,然后在計算適應度值S(Y),并且進行輪盤選擇,單點交叉,基本位變異等遺傳操作,經(jīng)過多次迭代,最后得到最大的截面積和機械臂結(jié)構(gòu)優(yōu)化參數(shù),圖4為遺傳算法最優(yōu)解求解過程[12]。 圖4 遺傳算法流程圖 由目標函數(shù)S(Y)=S1(X)-S2(Y)可知,當S2面積等于0時,即圓弧l3與線段A1A2相切,或者在線段A1A2之下。此時S的面積最大,即S(Y)=S1(X),由式(14)~ 式(20)可知,S1只與總桿長L有關,所以L增大時,理論最優(yōu)值S也會相應的增加。 在分析機械臂有效空間的截面時,可以得到影響截面積的參數(shù)變量,簡化為: k=[L2,L3,L4,q2max,q3min,q4min] 在遺傳算法中,每一個個體包含了6個參數(shù)變量。在初始化種群時,需要給出參數(shù)的搜索范圍,考慮到運動過程中所能達到的運動范圍受桿長、轉(zhuǎn)角以及干涉等條件的約束[12],使其: (23) (24) 在仿真時,設定種群大小為300,最大迭代次數(shù)為N=300,交叉概率為0.6,變異概率為0.005。圖5為種群最佳適應度的進化過程,大約迭代150次就可以接近最優(yōu)解和最優(yōu)個體。圖6為機械臂有效工作空間截面圖,陰影部分面積是有效空間截面的空洞區(qū)域。參數(shù)變量選取第300次迭代的仿真結(jié)果,最大截面積為1.5510×106mm2,最佳參數(shù)為L2=399.41 mm,L3=800 mm,L4=300 mm,q2max=1.57,q3min=-2.44,q4min=-3.02。由理論分析可得,總桿長越大越好,所以取各個桿長約束范圍內(nèi)的最大值,此時最大總桿長L=1500 mm,理論最優(yōu)值截面積S=1.5526×106mm2,理論最優(yōu)結(jié)構(gòu)參數(shù)為L2=400 mm,L3=800 mm,L4=300 mm。仿真結(jié)果的最大截面值與理論最優(yōu)值差值為1.6×103mm2,誤差為0.103%。 圖5 種群最佳適應度的進化過程 圖6 機械臂有效工作空間截面圖 在無其他約束的情況下,從理論分析上就可以得到最大截面積和最優(yōu)的桿長參數(shù)等于最大總桿長L。但是機械臂在實際的水下作業(yè)時,總桿長會被限制,并不是無限增大,若保持最大總桿長L為1500 mm不變,即: (L2+L3+L4)≤1500 (25) 在滿足桿長和干涉約束的條件下擴大一下變量的約束范圍,使: (26) 當把約束條件式(23)改為式(25)、式(26),遺傳算法各個參數(shù)不變,各個關節(jié)的角度范圍不變時,當?shù)螖?shù)從0開始依次增加到最大迭代次數(shù)N=300次時,其有效空間的截面積S變化如圖7所示,機械臂有效工作空間截面圖如圖8所示。陰影部分面積是有效空間截面的空洞區(qū)域。 圖7 種群最佳適應度的進化過程 圖8 機械臂有效工作空間截面圖 從圖7可以看出,隨著迭代次數(shù)的增加,截面積逐漸增大,當?shù)s250次時接近收斂到最優(yōu)值,當N=300時,L2=481.81 mm,L3=760.11 mm,L4=257.97 mm,q2max=1.55,q3min=-2.21,q4min=-3.03,S=1.5509×106mm2。從理論上分析,為使截面積最大,總桿長越大越好,因此取各個桿長約束邊界最大值,即L2=500 mm,L3=1000 mm,L4=500 mm,但是此時最大總桿長已大于1500 mm,不滿足式(25)的約束條件,從理論上不能得出最優(yōu)結(jié)構(gòu)參數(shù)。已知最大總桿長L=1500 mm,因此理論最大截面積也是1.5526×106mm2,仿真值差值ΔS=1.7×103mm2,誤差為0.109%。 對比圖5和圖7可知,當L一定時,N=300時計算得到的截面積與理論值誤差分別為0.103%,0.109%,通過對比最佳參數(shù)可以發(fā)現(xiàn),桿長在約束范圍內(nèi)并不是越大越好。由圖6和圖8也可以看出,有效空間的截面幾乎等于理論最優(yōu)值S1的面積。由圖7可知,當桿長約束條件變?yōu)槭?25)、式(26)時,此時理論分析不能得到最佳的結(jié)構(gòu)參數(shù),但利用遺傳算法可求最優(yōu)參數(shù)。綜上所述:理論分析和仿真結(jié)果驗證了有效空間截面模型的正確性,并且利用遺傳算法能有效的求解角度與運動約束下的串聯(lián)式機械臂結(jié)構(gòu)優(yōu)化問題。 本研究首先針對機械臂的結(jié)構(gòu)建立運動學模型,分析出影響機械臂有效工作空間的相關關節(jié);接著利用圖解法分析機械臂工作空間的邊界曲線,得到機械臂有效工作空間的截面;然后對截面建立數(shù)學解析模型;最后運用遺傳算法求得滿足約束條件下的有效工作空間截面最優(yōu)解和能實現(xiàn)水下作業(yè)的最優(yōu)參數(shù)結(jié)構(gòu)。仿真結(jié)果驗證了該模型的正確性,并且能夠有效求解角度與運動約束下的串聯(lián)式機械臂結(jié)構(gòu)優(yōu)化問題。3 遺傳算法與優(yōu)化
4 理論最優(yōu)值分析與仿真計算
4.1 理論最優(yōu)值分析
4.2 仿真計算
5 結(jié)論