趙聰慧,趙長海,朱明超
(1.中國科學院 長春光學精密機械與物理研究所,吉林 長春 130033;2.中國科學院大學 材料科學與光電技術學院,北京 100049 )
目前,機械臂被廣泛應用于工業自動化生產線,數控加工等領域。由于傳統機械臂構型不可改變,在面對多變化、小批量的生產需求時,存在設計周期長、生產成本高的問題。為此,模塊化機械臂以其構型可重構、模塊可替換等特點,已經成為替代傳統機械臂的首選方案[1-3]。目前,模塊化機械臂被廣泛應用在工業生產、林業建筑、農業采摘、航天作業等各個領域[4-5]。
CHEN、YANG[6]在1996年提出了一種新型的模塊化可重構機器人系統,其特點是將模塊數量作為設計變量,用盡量少的模塊滿足任務要求。該系統基于搭積木原理,所有的模塊被設計為立方體的形式,可以在立方體不同的方向上進行連接。這種類型的機械臂模塊具有很好的通用性,但在面向具體任務進行機械臂構型設計時專用性不強,且構型設計過程中構型的表示方式較為復雜。
近年來,模塊化機械臂的研究方向多集中在模塊設計、構型設計、運動學和動力學模型、控制系統等幾個方面[7]。模塊化機械臂的設計都是面向給定任務的,設計的參數是機械臂的完整構型[8],可以用連桿裝配矩陣、有根樹狀拓撲結構圖[9-10]、Denavit-Hartenberg參數(DH矩陣)[11]等方式表示。在對模塊化機械臂構型進行優化設計時,常用遺傳算法、模擬退火法、粒子群算法和枚舉法等優化方法對構型進行尋優和選取。同時,為保證機械臂的綜合性能,CHOI[12]提出了采用動力學和運動學指標相結合的多目標加權融合方法,作為機械臂構型優劣的判斷標準。但對模塊化機械臂而言,由于構型是根據給定模塊靈活組合而成的,系統動力學模型很難獲得[13],這就使得針對動力學性能的構型評價指標難以獲取。
為了提升構型設計效率,筆者提出一種基于重力勢能的多目標機械臂構型設計方法,在保證機械臂靈活性的同時,能夠減小自重對機械臂輸出精度的影響。
為采用模塊化機械臂設計方案,首先須建立模塊化機械臂模塊庫,主要包括關節模塊和連桿模塊。
(1)關節模塊。作為機械臂最基礎的模塊,關節模塊為機械臂的運動提供驅動力,其簡圖如圖1所示。

圖1 關節模塊
筆者選擇兩種轉動關節模塊,分別為水平型和豎直型,關節轉角范圍為±120°,質量為4.8 kg。
(2)連桿模塊。連桿模塊連接相鄰的關節模塊,用來固定關節的相對位置。當關節模塊種類較少時,可以通過選用軸線方向不同的連桿模塊來改變關節的轉動方向[14-16],從而增加機械臂構型的種類。
為了保證關節之間的每種連接都能實現,連桿模塊如圖2所示。

圖2 連桿模塊
筆者選取的連桿模塊有兩種類型,每種連桿模塊有4種不同的長度。圓柱型連桿長度為0.06 m、0.11 m、0.16 m和0.21 m,拐角型連桿長度為0.09 m、0.17 m、0.25 m和0.33 m。模塊庫中所有模塊的接口都是相同的,能夠滿足裝配關系。
筆者將機械臂坐標系建立在機械臂的每個關節處,機械臂構型可以由改進DH矩陣表示;為了便于構型的進一步優化設計,對模塊進行編碼,其示意圖如圖3所示。

圖3 編碼示意圖
n自由度的機械臂構型可以由6n位二進制字符串表示,字符串分為n組,每組有6位二進制字符,每組字符串的第1位表示關節模塊的類型,包括水平型(J1)和豎直型(J2);第2和第3位表示機械臂當前關節與前一個關節的相對位置關系(第1個關節的2、3位表示機械臂第一關節與大地坐標系z軸的關系),分為關節軸線平行(0°、180°)和關節軸線垂直(-90°、90°)兩種;第4位表示連接當前關節與下一個關節的連桿類型,包括圓柱型(L0)和拐角型(L1);第5和第6位表示連桿的長度(L01~L04,L11~L14)。
2.1.1 評價函數
在對模塊化機械臂進行構型設計時,需要設定評價標準用以判斷機械臂的優劣。模塊化機械臂的構型設計都是面向任務的,對構型優劣的評價標準也要根據任務設定。一般任務要求下的構型評價標準有:
(1)可操作度。
可操作度是評價機械臂靈活性的常用指標。為保證機械臂靈活性,通過機械臂關節空間的運動控制機械臂末端的運動時,須使機械臂在末端空間每一個方向上的運動能力是相同的,即機械臂關節空間速度轉換為末端速度時,末端各個方向上速度的轉換能力相同。
機械臂的運行學特征方程可以表示為:

(1)

一般情況下,選用雅克比矩陣的條件數表示機械臂的可操作度。對于機械臂運動學傳遞(1)來說,可操作度的值越大,機械臂關節空間的靈活性越好;但當可操作度趨于無窮大時,即:
(2)
此時,機械臂末端速度的各向同性變差,機械臂末端某些方向的速度將不受關節空間速度的影響,此時的機械臂處于奇異位姿。
機械臂可操作度作為評價函數可以表示為:
(3)
E1≤ε
(4)
式中:n—給定任務點數;Ji—機械臂在第i個任務點處的雅克比矩陣;cond(J(q)i)—機械臂在第i個任務點處雅克比矩陣的條件數;ε—雅克比矩陣允許的最大奇異值,一般取ε=100。
(2)在任務點處所需克服重力。
對于處于完整約束的機械臂系統,可以用拉格朗日方程來描述該系統隨時間的變化。拉格朗日函數定義為:
L=K-P
(5)
式中:L—拉格朗日函數;K—系統總動能;P—系統總勢能。
系統的拉格朗日-歐拉方程可以表示為:
(6)

將拉格朗日-歐拉方程展開可以得到:
(7)
式中:D—機械臂系統的能量損耗。
在不考慮能耗時,拉格朗日-歐拉方程可以表示為:
(8)
對于工業機械臂而言,其關節變量可以通過電位計、軸角編碼器等傳感器測量得到,所以工業機械臂的廣義坐標可以由機械臂的關節變量來表示。對于一個n自由度機械臂系統,其機械臂運動學轉換關系為:
(9)
其動能可以表示為:
(10)
式中:D(q)—機械臂慣性矩陣;vi—第i個關節質心的速度。
系統勢能可以表示為:
(11)
式中:hi—第i個關節質心到參考平面的高度。
將式(5~11)進行整理,可以得到如下表達式:

(12)

由力矩方程可知:影響力矩的因素,除了機械臂角速度和角加速度以外,主要是機械臂自身的構型參數。對于工業機械臂來說,如果在其運動過程中所需克服的重力過大,不僅會增加機械臂的運動能耗,還會降低機械臂的輸出精度。
筆者對機械臂力矩重力項進行優化,選用機械臂在任務點處運動所需克服重力作為評價標準。對于給定空間任務的機械臂,在執行任務過程中,機械臂滿足軌跡規劃終端條件,即在任務點處有:

(13)

(14)
此時,機械臂力矩全部用來克服自身重力,機械臂傳遞函數為:
T1=A1
(15)
Ti=Ti-1A2
(16)
式中:Ai—機械臂第i個關節的連桿變換矩陣;Ti—機械臂第i個連桿末端位置相對于世界坐標系的變換矩陣。
以機械臂在任務點處所需克服的重力作為評價函數,可以表示為:
(17)
式中:[Ti]34—機械臂第i個關節的高度位置坐標(下標34表示傳遞函數矩陣第3行第4列的元素);mi—機械臂第i個連桿的質量;—機械臂第i個關節的質量。
根據可重構機械臂構型設計特點,多目標構型優化設計評價函數定義為,可操作度和目標點處所需克服重力加權求差,即:
E=α1E1-α2E2
(18)
式中:α1,α2—評價標準的權重參數。
2.1.2 約束條件
(1)在機械臂面向任務進行構型設計時,為了保證機械臂執行器能夠順利到達目標點,需要考慮機械臂末端執行器對任務點的可達性,即機械臂的誤差值需小于允許的最大誤差,即:
max(Δi+δi)≤σ
(19)
式中:Δi,δi—第i個目標點處的位置誤差和姿態誤差;σ—機械臂所允許的最大誤差值。
(2)為了使機械臂能夠在完成任務的過程中避開機械奇異點,對機械臂進行構型設計時,需要考慮機械臂每個關節的轉角范圍,機械臂的轉角需滿足如下約束:
ai≤qi≤bi
(20)
式中:qi—機械臂第i個關節的關節角;ai,bi—第i個關節的轉角范圍。
在進行機械臂構型設計時,首先要根據任務特點選擇適應度值評價標準,適應度評估的標準決定了機械臂對給定任務的適應性。
適應度評估流程如圖4所示。

圖4 適應度評估流程
在進行適應度值計算之前,須先驗證該構型是否滿足約束條件。對滿足約束條件的構型,用式(3,7,18)計算機械臂的適應度值。
對于模塊種類少且所需自由度少的機械臂,可以用枚舉法列舉出所有構型并逐一分析;但當模塊變量較多或自由度需求較大時,需要借助優化算法進行構型設計。
常用的優化算法有模擬退火法、粒子群算法和遺傳算法。其中:(1)模擬退火法。初始溫度設置較為復雜,設置溫度過高會使計算時間過長,設置溫度過低搜索易陷入局部最優;(2)粒子群算法。主要應用在連續問題中,應用于機械臂構型設計時容易陷入局部最優;(3)遺傳算法。是一種全局算法,在構型設計時能夠得到一組最優解的集合,在得到全局最優解的同時增加構型的選擇性。
所以筆者采用遺傳算法對構型進行優化設計,其構型設計流程如圖5所示。

圖5 構型設計流程
在遺傳算法中,機械臂構型的初始種群是根據編碼形式隨機生成的,通過交叉變異運算和最優值保存策略,可使設計結果具有全局性和收斂性。
給定一個噴涂路徑,按照路徑順序選取10個空間點作為目標任務點,如表1所示。

表1 目標任務點
設計一個噴涂機械臂,要求設計得到的機械臂末端能夠依次經過給定任務點。對于給定的空間噴涂任務來說,只要設計得到的機械臂末端能夠到達目標位置,對于機械臂末端姿態沒有要求,所以可以確定設計機械臂為三自由度。
要使設計的機械臂更好地滿足任務要求,還需要在上述基礎上,考慮機械臂在任務點處的可操作度和所需克服的重力,采用運動學和動力學相結合的多目標評價標準,選用遺傳算法對機械臂構型進行優化設計。
筆者設定遺傳算法中每代機械臂種群大小為50,優化代數為100,交叉概率為0.2,變異概率為0.05,適應度權重參數為α1=0.5,α2=0.5。優化設計結果

機械臂DH參數如表2所示。

表2 機械臂DH參數
θi—機械臂第i個關節的關節變量
機械臂模型示意圖如圖6所示。

圖6 機械臂模型示意圖
該機械臂由3個旋轉關節組成,機械臂第一個關節坐標系與地面坐標系重合,第三連桿末端連接執行器模塊。
此時得到的機械臂構型滿足可達性和關節角度約束,可以滿足給定任務要求。
其適應度變化曲線如圖7所示。

圖7 適應度變化曲線
由圖7可以看出:在第10代左右出現了能夠滿足任務要求的機械臂構型;在第28代出現了滿足任務要求的最優構型;此后適應度值最大的機械臂構型由最優值保留策略保存下來;滿足任務的最優構型的適應度為28.963 8。
綜上所述,綜合考慮機械臂靈活性和所需克服重力,在滿足任務要求的前提下最后得到的構型擁有最優性能,既保證了機械臂的靈活性,又使得機械臂在完成任務過程中所需克服的重力最小。
面對模塊化機械臂構型設計時減小自重的需求,筆者提出了一種基于重力勢能的多目標機械臂構型設計方法,采用遺傳算法對機械臂進行了優化設計,并通過焊接機械臂實例驗證了該設計方法的可行性;為了保證機械臂在減小自重的同時擁有更好的靈活性,選用機械臂在任務點處的可操作度和機械臂在運動過程中所需要克服的重力,作為綜合定量指標;為了保證優化結果的全局性,選用遺傳算法對機械臂構型進行了優化設計。
仿真結果表明:滿足任務的最優構型適應度為28.963 8,說明經過優化設計所得到的機械臂,在滿足任務要求的基礎上,能夠擁有更好的靈活性和更小的自重。