汪衛(wèi)兵,黃子琰,趙鵬兵
(1.西安科技大學機械工程學院,陜西 西安 710054;2.西安電子科技大學機電工程學院,陜西 西安 710071)
隨著社會的發(fā)展,許多行業(yè)如冶金、航空航天等領域的產品已經開始向大型、重型方向進行產業(yè)革新,如何實現安全有效的搬運和裝配成為亟待解決的問題,重載機械臂的發(fā)展為解決這些問題帶來轉機[1]。而現有重載機械臂普遍存在承載能力弱、功率密度低、工作范圍小、自由度較少、傳動不平穩(wěn)等缺陷,無法靈活的抓取和放置工件,工作效率較低[2]。在同等功率條件下,液壓傳動所產生的驅動力(力矩)大,其負荷-自重比具有顯著優(yōu)勢,并且具有結構緊湊、傳動平穩(wěn)等優(yōu)點[3]。
國內外基于液壓驅動已經研發(fā)出多款機器人。文獻[4]陸續(xù)研發(fā)了具有12 和16 自由度的Big Dog 和Petmen 機器人。文獻[5-6]設計了一款負重可達300公斤的液壓機械臂。國內中信重工研發(fā)了一款可舉三噸重物的液壓重載機械巨手,旨在解決工業(yè)領域中重型工件搬運、裝配以及重型裝備的維護作業(yè)等問題[7]。
這里針對六自由度液壓重載機械臂建立了末端執(zhí)行器的笛卡爾坐標空間與關節(jié)角度空間的聯系;利用ADAMS軟件對機械臂的動力學特性進行了分析,為后續(xù)液壓機械臂的控制系統設計提供了數學模型,并為液壓重載機械臂的研制提供了理論依據和技術支持[8-10]。
為使設計的機器人運動范圍廣,通用性強,選擇6個自由度作為機器人系統的自由度,分別為基座、前臂、后臂、橫擺、俯仰和末端夾持器,且均為轉動關節(jié)。
為簡化運動學模型,將中間三個轉動關節(jié)設置成旋轉方向相同。
機械臂部分參數如下:臂展2000mm,自重87kg,材料主要使用鋁和不銹鋼,手爪的開合范圍為(0~220)mm,液壓系統工作壓力為14MPa,最大長度下抓取重量為90kg。
手部運動包含執(zhí)行器的回轉和手爪的開合,為使得結構緊湊,將液壓缸進行自行設計,直接在液壓缸缸體外側設計一圈齒輪,通過電機齒輪嚙合運動實現缸體的轉動,與此同時,液壓缸活塞的直線運動為手爪的夾持提供動力,手部的機構運動簡圖,如圖1所示。
圖1 組合式手部的結構簡圖Fig.1 Schematic Diagram of Combined Hand
圖2 總體模型圖Fig.2 Overall Model Diagram
圖3 連桿坐標系Fig.3 Connecting Rod Coordinate System
其中夾持液壓缸的缸體和齒輪同軸且為同一構件,為此須對夾持液壓缸進行設計。
基座由上下兩部分組成,上部分帶動整個機械臂在水平面內做回轉運動,下部分為基礎支承,基礎支撐可與地面或者工作面進行固定,下部的液壓馬達輸出動力帶動上基座回轉。
上下兩部分通過一個推力軸承連接。前臂主要用于連接后臂與手部之間,手臂中部連接塊內部的兩個液壓馬達分別帶動手臂進行俯仰和橫擺運動,后臂是整個機械臂的關鍵支撐件,除此之外,這里設計的后臂上還具有兩個伸縮缸,通過這兩個缸的伸縮和擺動實現后臂和前臂的擺動。
液壓缸的選型根據機械臂結構模型,通過分析各關節(jié)在運動過程中所受到的最大負載,并確定負載力與旋轉角度的關系式,從而確定負載力的最大值,并確定液壓缸內徑、活塞外徑、行程,由于液壓缸隨前/后臂的相對位置變化而擺動,安裝方式是液壓缸尾部帶有耳軸的類型,液壓馬達的選型應先對負載轉矩分析,同時由工況估算系統效率,通過轉矩及效率計算液壓馬達工作時的排量大小,根據排量以及工作壓力等計算系統功率,從而選擇液壓馬達,最終選擇的液壓元件型號明細,如表1所示。
表1 液壓元件明細表Tab.1 List of Hydraulic Components
這里采用D-H法來建立機械臂運動學模型,該方法可以通過矩陣法將各個關節(jié)建立聯系并添加坐標系,如式(1)所示。空間姿態(tài)可以通過將連續(xù)的幾個齊次矩陣相乘得完成坐標系0到坐標系i的轉化,如式(2)所示。
式中:ci=cosθi,ci-1=cosαi-1,si=sinθi,si-1=sinαi-1,i=1,2,...
這里所設計的機械臂2,3,4關節(jié)的旋轉軸方向是平行的,將這三個矩陣利用式(2)相乘,可以簡化運動學模型:
之后再將其他關節(jié)的齊次矩陣利用式(2)相乘可得最終的變換矩陣;
式中:nx=c1s6s234-c6(s1s5-c1c5c234)
ny= c6(c1s5+c5c234s1)+s1s6s234
nz=c5c6s234-c234s6
ax=s6(s1s5-c1c5c234)+c1c6s234
ay=c6s1s234-s6(c1s5+c5c234s1)
az=-c6c234-c5s6s234
ox=-c5s1-c1c234s5
oy=c1c5-c234s1s5
oz=-s5s234
px=c1(a1+a2c2+a3c23)-d6(c5s1+c1c234s5)+a4c1c234-c1d5s234
py=s1(a1+a2c2+a3c23)+d6(c1c5-c234s1s5)+a4c234s1-d5s1s234
pz=a2s2+a3s23+a4s234+c234d5-d6s5s234
設θ1~θ6分別為{0°90°-90°0°-90°0°},以機械臂第一桿坐標系原點為整體模型的坐標原點,則坐標系6 的原點位姿可以表示為:
機械臂的逆運動學,是已知機械臂末端坐標系的齊次變換矩陣,求解所有關節(jié)的轉動角度,逆運動學可通過式(2)逆向求解,也就是所謂的代數法。由于,所以其式中左
右兩邊的元素存在著對應相等的關系。
由于篇幅有限,忽略計算過程,直接給出計算結果:
θ1= arctan((d6ay-py)/(d6ax-px))
θ5= arccos(c1ay-s1ax)
θ6= arctan((oxs1-c1oy)/(c1ny-nxs1))
θ234= arctan(az/(axc1+ays1))
θ3= arccos((x2+y2-a22-a3
2)/2a2a3)
θ2= arccos((mx+ny)/(m2+n2))
θ4=θ234-θ2-θ3
x=c1px+pys1-a1-a4c234+d5s234+c234d6s5
y=pz-c234d5-a4s234+d6s5s234
m=a2+a3c3;n=a3s3
根據關節(jié)轉動范圍和其公式可得八組解,其中θ1、θ6、θ234都具有兩組解,再結合能量消耗選擇相應的解。
將正運動和逆運動算法輸入到Matlab中進行計算,從D-H參數表中各關節(jié)變量的取值范圍中任意取值,將其代入編寫的Matlab正運動程序中,求得末端位姿矩陣,將此位姿矩陣代入逆運動程序中進而求得各關節(jié)變化量,根據表2的關節(jié)轉動范圍隨機選取一組關節(jié)角數據{36°50°-40°18°-70°83°}帶入式(3)。
表2 連桿參數表Tab.2 Parameters of Connecting Rod
要使末端連桿到達該位置,將該矩陣方程代入逆運動學方程,利用matlab 進行求解,可求得對應的解{35.997°49.9999°-40.0007° 18.0030° -69.9988° 83.0000°},還 有 一 組 相 似 解{35.997°49.9999°-40.0007°18.0030°-69.9988°-97.0000°}該解的位置相同,只是末端執(zhí)行器旋轉了180°,但由于執(zhí)行器的對稱性,可等效使用,其余的六組解不符合轉動角度范圍或后端求解的角度無解。
設計的機械臂結構復雜,自由度數比較多,所以導致搭建模型較為困難??梢栽赟olidworks 中根據模型之間是否會進行相對運動,將模型分為十幾個零件,逐個導入ADAMS中之后進行組裝,添加相應的轉動副和移動副及其材料屬性,為簡化模型,將機械臂的材料定義為鋁和不銹鋼,機械臂的整體質量為87kg。
在MATLAB中對其進行軌跡規(guī)劃,首先確認初始點和終止點的關節(jié)夾角,利用jtraj 函數計算出機械臂運行時六個關節(jié)角每個時刻的數值。導入Adams 時機械臂的初始關節(jié)角為{0°67.1°-84.4°0°-90°-15.2°},根據計算,機械臂的最長臂展關節(jié)角為{90°15°-45°30°-90°180°},設置仿真時間為5s,迭代次數為500,可以得到以0.01s 為間隔的各個關節(jié)的數據,仿真圖片,如圖4 所示。
圖4 關節(jié)軌跡規(guī)劃Fig.4 Joint Trajectory Planning
將得到的各關節(jié)角度實時變化量導出,其中關節(jié)2,3是由液壓缸來推動它們旋轉,所以需要將角度變化值轉變成液壓推桿的移動值,進行一定調整后再導入ADAMS里面將其變化成SPLINE曲線函數,將它作為仿真中關節(jié)旋轉時的驅動函數,則該模型的轉動值、角速度、角加速度,如圖4所示。并在夾持器末端使其夾持一個質量為90kg的圓柱體,仿真后可以得到驅動各關節(jié)轉動所需要的力或者力矩。
圖5 機械臂最長臂展Fig.5 The Longest Arm Span of the Mechanical Arm
圖6 關節(jié)1.4.5.6驅動所需扭矩Fig.6 Joint 1.4.5.6 Torque Required for Driving
圖中分別顯示了關節(jié)在XYZ方向的力矩及其合力矩的大小,力矩曲線可產生對應的角加速度曲線。關節(jié)4運動結束后仍需力矩來保持模型位姿。由于關節(jié)5在過程中未轉動,故而力矩值較小,另做一組仿真使其轉動22°,其最大力矩值為320N/m。
圖7 關節(jié)2.3驅動所需推力Fig.7 Thrust Required for Joint 2.3 Drive
可得從圖中可得各關節(jié)輸出的力矩在XYZ方向上均平滑變化,無突然波動情況出現,且關節(jié)運動結束后各方向的力矩均趨于平緩,說明機械臂仿真過程中運行平穩(wěn)。
模型中2,3關節(jié)所需的扭矩較大,故而采用液壓缸產生推力促使其轉動,液壓缸所產生的推力會隨著關節(jié)旋轉角度的變化而變化,推力最后都趨于平緩來平衡模型后端重力。
圖8 標記點時間-速度曲線Fig.8 Mark the Time-Velocity Curve of the Point
提取夾取物體質心的速度隨時間變化曲線,圖中顯示的為標記點分別在XYZ三個方向的時間-速度關系,從各方向的曲線可以看出,其速度變化連續(xù)緩和,運行平穩(wěn),沒有明顯的振動現象。
通過以上關節(jié)力矩和受力圖,可以看出,選用的液壓元件皆符合關節(jié)運行時所需的推力和力矩,軌跡也與MATLAB 仿真結果吻合,由此驗證了整個模型的正確性。
這里以六自由度液壓重載機械臂為研究對象,建立其D-H模型,得出其正逆運動學方程并進行了驗證;利用ADAMS軟件對機械臂進行了動力學仿真,得出了各關節(jié)的力矩變化情況,所選液壓元件皆滿足工作條件,這為后續(xù)機械臂控制系統的設計提供了數學模型和理論依據。