杜金財,尹建軍,賀 坤,余成超
(江蘇大學 現(xiàn)代農(nóng)業(yè)裝備與技術(shù)教育部重點實驗室,江蘇 鎮(zhèn)江 212013)
水果產(chǎn)業(yè)已經(jīng)躍居農(nóng)作物排行榜的第3位[1],葡萄作為水果產(chǎn)業(yè)的一種得到大家的廣泛喜愛。但是,葡萄采摘的季節(jié)性強、勞動強度大、成本高,成為了農(nóng)業(yè)生產(chǎn)鏈中最費時費力的環(huán)節(jié);再加上人口老齡化問題及農(nóng)村勞動力流失等問題,使得從事農(nóng)業(yè)生產(chǎn)的勞動力越來越少。因此,自動化采摘作業(yè)已經(jīng)成為設(shè)施農(nóng)業(yè)生產(chǎn)發(fā)展中的迫切需要[2-4]。
國內(nèi)外對于水果采摘機器人的設(shè)計已投入大量科研力量。早期日本近藤(KONTO)[5]等研制的番茄采摘機器人,采用了7自由度機械臂,成功率為70%左右,采摘速度大約是15s/個。但該機械手無法避開葉莖障礙物,被葉莖遮擋的成熟番茄未被采摘,需要在結(jié)構(gòu)和避障等方面加以改進。荷蘭IMAG研究所[6]開發(fā)了一種7自由度關(guān)節(jié)型機械臂,可實現(xiàn)收獲與摘葉同時進行,采摘速度為45s/根,采摘成功率為80%。我國開展水果采摘機器人的研究時間較晚,但目前科研力度的投入及成果已步入世界前列。桂林電子科技大學伍錫如、黃國明[7]等進行了新型蘋果采摘機器人的設(shè)計與試驗,采摘成功率為91.31%,平均采摘周期約為29s。中國農(nóng)業(yè)大學李偉[8]等開發(fā)的4自由度關(guān)節(jié)型機械臂平均采摘周期為28s,采摘成功率為86%;但視覺識別中陰影、遮擋、亮斑影響較大,末端執(zhí)行器對較粗果梗無法剪斷或容易造成果實的掉落。對于棚架栽培草莓的采摘,國家農(nóng)業(yè)智能裝備工程中心的馮青春[9]等研發(fā)了一種6自由度的關(guān)節(jié)式機械臂與雙目視覺系統(tǒng),平均采摘周期為22.3s,成功采摘周期為31.3s。郭素娜、張麗、劉志剛[10]等基于自主導航設(shè)計了一種6自由度葡萄采摘機器人,采用CAN(Controller Area Network)總線對運動進行控制,對葡萄樹的準確識別率達到95%以上,對成熟葡萄的識別率達到98%以上。盡管對于采摘機器人的研究取得了重大的進步,但同時也存在著結(jié)構(gòu)與控制復雜、制造成本高及采摘周期長等問題。
針對上述問題,筆者進行了葡萄采摘機器人機械臂各部分的結(jié)構(gòu)設(shè)計,通過SolidWorks軟件建立了葡萄采摘機器人機械臂的三維整體構(gòu)造模型,利用Matlab與ADAMS進行運動學與動力學仿真,根據(jù)仿真內(nèi)容進行基于時間的運動及動力分析,為葡萄采摘機器人機械臂的電機選型、調(diào)試和實際操作提供了依據(jù)。
以籬架整枝的食用葡萄為采摘對象,葡萄植株成行種植,一般位于距地面高1~1.8m之間,行距4~6m;植株行之間的壟道即為作業(yè)道,葡萄距AGV(Automated Guided Vehicle)小車位置為0.4~0.5m之間。由于小車可以實現(xiàn)前后移動,規(guī)定機械臂可采摘縱向深度為0.4m,則機械臂需要達到的工作空間為(0.5×0.4×0.8)m3。
機械臂的作用是為了通過編程使末端執(zhí)行器運動到指定位置完成采摘[11]。基于結(jié)構(gòu)簡單、易于控制的要求,葡萄采摘機械臂采用4 DOF(Degree of Freedom)關(guān)節(jié)型。基于中空走線要求、結(jié)構(gòu)的穩(wěn)定性及制造成本的高低,采用雙連桿薄壁結(jié)構(gòu),一側(cè)驅(qū)動,另一側(cè)走線,并對每個關(guān)節(jié)進行穿線孔設(shè)計。
圖1為本文設(shè)計的具有4自由度的關(guān)節(jié)型機械臂結(jié)構(gòu)圖。該機械臂主要由腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)和腕關(guān)節(jié)4部分組成,其工作原理設(shè)計為:腰關(guān)節(jié)通過底板與AGV小車相連,腕關(guān)節(jié)通過連接卡盤與末端執(zhí)行器連接,當AGV小車接收到采摘命令運動到目標位置時,機械臂按規(guī)劃好的路徑通過腰關(guān)節(jié)、肩關(guān)節(jié)及肘關(guān)節(jié)的旋轉(zhuǎn)將末端執(zhí)行器輸送到指定位置,然后通過腕關(guān)節(jié)的旋轉(zhuǎn)調(diào)整末端執(zhí)行器的姿態(tài),完成采摘要求,最后回到初始位置。

1.腰關(guān)節(jié) 2.肩關(guān)節(jié) 3.肘關(guān)節(jié) 4.腕關(guān)節(jié)
以腰關(guān)節(jié)與肩關(guān)節(jié)的結(jié)構(gòu)設(shè)計為例,圖2為本文機械臂設(shè)計中腰關(guān)節(jié)與肩關(guān)節(jié)的結(jié)構(gòu)圖。其中心基座固定在底板上,與AGV小車固連;腰關(guān)節(jié)電機通過腰關(guān)節(jié)小圓柱齒輪將動力傳遞到大圓柱齒輪,進而帶動腰關(guān)節(jié)動力法蘭盤以及U型架的旋轉(zhuǎn),實現(xiàn)腰關(guān)節(jié)的回轉(zhuǎn)運動。肩關(guān)節(jié)主要包括動力模塊和從動模塊兩部分:動力模塊為電機通過驅(qū)動動力法蘭盤進而帶動主動臂運動,實現(xiàn)肩關(guān)節(jié)的仰俯;從動模塊為法蘭盤借助軸承與從動臂相連,從而使從動臂與主動臂實現(xiàn)同步運動。腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)、腕關(guān)節(jié)均設(shè)有中心穿線孔,其電機電源線與數(shù)據(jù)線及末端執(zhí)行器電機和傳感器的電源線與數(shù)據(jù)線均從中心穿線孔穿過,接入到AGV小車內(nèi)部。

1.腰關(guān)節(jié)電機 2.腰關(guān)節(jié)穿線孔 3.中心基座 4.底板 5.腰關(guān)節(jié)大圓柱齒輪 6.腰關(guān)節(jié)動力法蘭盤 7.U型架 8.肩關(guān)節(jié)動力模塊 9.肩關(guān)節(jié)軸 10.肩關(guān)節(jié)電機 11.肩關(guān)節(jié)從動模塊 12.肩關(guān)節(jié)穿線孔 13.腰關(guān)節(jié)小圓柱齒輪
機械臂運動學研究的是各關(guān)節(jié)的變量與末端執(zhí)行器在空間上的位置、姿態(tài)之間的關(guān)系,并為后期的機械臂軌跡規(guī)劃提供良好的理論依據(jù)和研究方法[12],主要分為正運動學及逆運動學兩大類問題。其中,正運動學是解決已知各連桿的幾何關(guān)系及關(guān)節(jié)角矢量,求末端執(zhí)行器相對于基坐標系的位置的姿態(tài)問題;逆運動學是解決已知末端執(zhí)行器相對于基坐標系的位置和姿態(tài),求滿足運動到指定位置和姿態(tài)時各連桿的幾何關(guān)系及關(guān)節(jié)角矢量[13]。
本文中的4自由度關(guān)節(jié)型串聯(lián)機械臂由腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)及腕關(guān)節(jié)組成,且4個關(guān)節(jié)均為旋轉(zhuǎn)關(guān)節(jié)。為了完成該機械臂數(shù)學模型的建立,利用D-H表示法[14]來對機械臂的各關(guān)節(jié)添加參考坐標系。同時,為使運算簡單,將第1關(guān)節(jié)坐標系與基坐標系重合,建立機械臂的連桿坐標系,如圖3所示。
其中,確定Zi軸的基本原則是Zi軸沿關(guān)節(jié)i的軸向;確定原點Oi的基本原則是Oi在過Zi和Zi+1軸的公垂線上;確定Xi軸的基本原則是Xi沿過Zi和Zi+1軸的公垂線方向,由Zi指向Zi+1;如果Zi和Zi+1軸相交,Xi軸垂直于Zi和Zi+1軸所在的平面。連桿長度Li定義為:沿Xi軸、從Zi移動到Zi+1的距離;連桿轉(zhuǎn)角αi定義為:沿Xi軸、從Zi旋轉(zhuǎn)到Zi+1的角度;關(guān)節(jié)偏距di定義為:沿Zi軸由Xi移動到Xi+1的距離;關(guān)節(jié)轉(zhuǎn)角θi定義為:沿Zi軸由從Xi-1旋轉(zhuǎn)到Xi的角度。

圖3 機械臂的連桿坐標系
前面已經(jīng)對全部連桿規(guī)定坐標系,按由兩個旋轉(zhuǎn)和兩個平移順序來建立相鄰兩連桿i-1與i之間的相對關(guān)系[15]。這種關(guān)系可由表示連桿i對連桿i-1相對位置的4個齊次變換來描述,稱作Ai矩陣。此關(guān)系式為
Ai=Rot(z,θi)Trans(0,0,di)Trans(αi,0,0)Rot(x,αi)
(1)
機械手的末端裝置即為連桿4的坐標系,它與連桿i-1坐標系的關(guān)系可由i-1T4表示為
i-1T4=AiAi+1...A4
可得連桿變換通式為
(2)
機械臂末端執(zhí)行器的坐標系相對于基座標系的變換矩陣為
(3)
其中,c1=cosθ1,s1=sinθ1,c23=cos(θ2+θ3),s23=sin(θ2+θ3),以此類推。
1)各關(guān)節(jié)轉(zhuǎn)角范圍的確定。腰關(guān)節(jié)的作用是為了使機械臂實現(xiàn)回轉(zhuǎn)運動來達到采摘要求,理論上可取±180°,但實際裝配中考慮到雙目攝像頭的存在,故取轉(zhuǎn)角范圍為±170°;腕關(guān)節(jié)是為了調(diào)整末端執(zhí)行器的位姿,故其轉(zhuǎn)角范圍取±180°;由于葡萄采摘為高空作業(yè),故肩關(guān)節(jié)轉(zhuǎn)角范圍取0°~90°;因要保持末端執(zhí)行器水平采摘要求,根據(jù)幾何關(guān)系知肘關(guān)節(jié)轉(zhuǎn)角范圍為-90°~0°。
2)各連桿長度的確定。為了滿足機械臂工作空間為(500×400×800)mm3的采摘要求,結(jié)合機械臂的連桿坐標系以及轉(zhuǎn)角范圍可得不等式為
(4)
實際裝配時,腕關(guān)節(jié)長度a3和腰關(guān)節(jié)的高度d1與安裝尺寸要求有關(guān),取a3=310mm,d1=370mm。由式(4)可得:a2的取值范圍為a2>255.69mm,可取a2=300mm,通過工作空間進行驗證是否滿足采摘要求。
對于求解機器人機械臂工作空間的方法主要有解析法、數(shù)值法及圖解法。解析法是通過奇異曲面推導出工作空間界限曲面,是通過代數(shù)方法求解,但該方法十分繁瑣且直觀性不強。圖解法是通過幾何作圖原理求出工作空間剖切面,這種方法雖然直觀性強,但當機械臂自由度增加時分析就變得復雜了。數(shù)值法是以優(yōu)化方法與極值理論為基礎(chǔ),按一定的規(guī)律選取盡可能多的關(guān)節(jié)變量組合,末端執(zhí)行器參考點坐標值構(gòu)成的邊界曲面就為機械臂的工作空間[16]。數(shù)值法主要包括迭代法、搜索法及蒙特卡洛法。
采用的求解機械臂工作空間的方法為數(shù)值法里的蒙特卡洛法[17],是一種基于隨機數(shù)的計算機模擬法。工作原理為:給它一個數(shù)學問題,首先構(gòu)造一個概率過程,使其某些參數(shù)為所求問題的解;然后,根據(jù)生成的已知概率分布的隨機變量計算所求參數(shù)的統(tǒng)計特征;最后,求得所求問題的解,通常求得的解為在規(guī)定誤差范圍內(nèi)的近似解。
利用數(shù)值算法,在MatLab中編寫簡單的程序進行工作空間的仿真。N值越大,生成的機械臂的工作空間點越多,得到的工作空間越精確,工作空間邊界越清晰。考慮到仿真速度的影響,選取樣本n=1000,得到機械臂的工作空間三維點云圖及工作空間分別在xoy、xoz、yoz平面上的投影圖,如圖4所示。

圖4 機械臂工作空間點云圖
由圖4可知:機械臂的工作空間近似為一個橢球體,且因為工作范圍的約束,該橢球體存在一個扇形的缺口,還有一個靠近z軸的空心區(qū)域。此空心區(qū)域是由于機械尺寸的限制,對實際的采摘效果沒有影響。該工作空間覆蓋了機械臂所要求的(0.5×0.4×0.8)m3的任務(wù)空間,獲得的采摘機械臂D-H參數(shù)如表1所示。
對于機械臂的逆運動學求解,可以考慮依次將位姿矩陣的逆矩陣左乘機器人的運動學方程,使矩陣的左右兩端只包含一個或兩個待求關(guān)節(jié)角度變量,通過對應(yīng)位置相等來求出各關(guān)節(jié)角度變量。


(5)
展開得
為使表達清楚,記(i,j)L為等式左邊矩陣的第i行第j列元素,(i,j)R為等式右邊矩陣的第i行第j列元素。根據(jù)式(5)的(2,4)L=(2,4)R,可得
c1py-s1px=d2=0
(6)
由式(6)可得
θ1=arctan2(py,px)
(7)
同理,可求出
由表1知,θ2只能取正值,則
(8)
θ3=-arccos(-az)-θ2
(9)
(10)
其中,式(7)~式(10)為機械臂運動學逆解表示。
借用Robotics Toolbox中的ikine( )函數(shù),可以對機械臂逆運動學進行求解,調(diào)用格式為Qi=ikine(R,T,Q,M)。其中,R為機械臂對象,T為要求的反解變換矩陣,Q為初始點的關(guān)節(jié)向量,M與機械臂自由度有關(guān)。由于本文機械臂自由度小于6,所以M=[1 1 1 1 0 0 ]。為此,定義機械臂的初始位置A的關(guān)節(jié)向量q=[0 0 0 0],要求的機械臂終點B的坐標變換為

在MatLab中調(diào)用Qi=ikine(R,T,Q,M)函數(shù),得到要求的機械臂終點B的關(guān)節(jié)向量qb=[-0.3491 0.5236 -0.6283 0]。然后,將終點B的齊次變換矩陣T的數(shù)值帶入到運動學逆解中,求得關(guān)節(jié)向量相同,表明逆解求解正確。
為提高采摘效率,基于路徑最短進行如圖5(a)所示的末端直線路徑規(guī)劃:①采用插補法選取初始點到終止點之間的40個軌跡點;②為使關(guān)節(jié)運動平緩,設(shè)置腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)的角速度如圖5(b)所示,角加速度如圖5(c)所示;③利用MatLab/Robotics Toolbox中的jtraj函數(shù)進行機械臂的空間直線軌跡規(guī)劃,獲得各關(guān)節(jié)角位移與軌跡點的關(guān)系。
jtraj函數(shù)調(diào)用格式為[q,qd,qdd] =jtraj(init_ang,targ_ang,step),jtraj函數(shù)采用的是7次多項式插值算法,且默認初始以及終止的速度為0。其中,q為從初始位置到終點位置的關(guān)節(jié)空間軌跡,qd為規(guī)劃軌跡運動的關(guān)節(jié)角速度,qdd為規(guī)劃軌跡運動的角加速度,init_ang為初始位置時各關(guān)節(jié)角度,targ_ang為終點位置時各關(guān)節(jié)角度,step為軌跡規(guī)劃點。本文取初始位置A的關(guān)節(jié)向量init_ang=[pi/3 -pi/4pi/6 0],終點位置B的關(guān)節(jié)向量targ_ang=[-pi/9pi/6 -pi/5 0]。圖6為腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)轉(zhuǎn)角與軌跡點數(shù)的曲線關(guān)系。

圖5 軌跡規(guī)劃條件圖

圖6 腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)轉(zhuǎn)角與軌跡點數(shù)的曲線關(guān)系
通過軌跡規(guī)劃仿真,可以得到腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)角位移與軌跡點數(shù)的曲線關(guān)系,為ADAMS虛擬樣機技術(shù)的機械臂采摘葡萄仿真提供依據(jù)。表2為腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)部分軌跡點所對應(yīng)的角位移。
表2 腰關(guān)節(jié)、肩關(guān)節(jié)、肘關(guān)節(jié)部分角位移與軌跡點的關(guān)系
Table 2 The relationship between angular displacement and trajectory points of lumbar, shoulder, and elbow joints rad

為獲得樣機在采摘葡萄過程中的受力及運動情況,為物理樣機的設(shè)計與制造提供各種參數(shù)依據(jù)(包括電機的選型),借助虛擬樣機技術(shù)中的ADAMS[18-19]軟件來完成動力學的仿真。利用ADAMS進行動力學仿真的一般步驟為:①通過solidwords進行三維建模;②將三維模型導入到adams中;③進行工作環(huán)境、零件屬性的設(shè)置;④添加約束、驅(qū)動、負載等,本文選取的負載為重2kg的葡萄;⑤進行動力學仿真分析,得到輸出角速度、轉(zhuǎn)矩等曲線圖。
模擬葡萄采摘情況,結(jié)合表2中腰關(guān)節(jié)、肩關(guān)節(jié)及肘關(guān)節(jié)軌跡點所對應(yīng)的角位移,通過添加step驅(qū)動函數(shù),進行葡萄采摘的動力學仿真。圖7、圖8為負載為2kg時末端執(zhí)行器的直線軌跡及數(shù)據(jù)。

圖7 Adams軌跡仿真實驗Fig.7 Adams trajectory simulation experiment

圖8 4自由度機械臂模擬葡萄采摘虛擬樣機仿真數(shù)據(jù)
由圖8分析可知:①各關(guān)節(jié)運動較平滑,無運動沖擊,末端執(zhí)行器能夠按規(guī)定直線路徑到達指定位置;②各關(guān)節(jié)所需驅(qū)動力矩腰關(guān)節(jié)最大,腕關(guān)節(jié)最小。其中,腰關(guān)節(jié)所需最小驅(qū)動力矩約為95N·m,肩關(guān)節(jié)所需最小驅(qū)動力矩約為52N·m,肘關(guān)節(jié)所需最小驅(qū)動力矩約為48N·m,腕關(guān)節(jié)所需最小驅(qū)動力矩約為12N·m。
為使機械臂能夠按照規(guī)劃好的路徑進行運動,完成采摘要求,結(jié)合仿真所得各關(guān)節(jié)所需最小驅(qū)動力矩,進行電機與減速器的選型。本文選擇安川伺服器與伺服電機進行驅(qū)動,并配套以行星齒輪減速器。表3為本文所選伺服電機與減速器參數(shù)。

表3 伺服電機與減速器參數(shù)表
由表3知:腰關(guān)節(jié)電機輸出力矩是所需力矩的1.67倍,肩關(guān)節(jié)電機輸出力矩是所需力矩的2.44倍,肘關(guān)節(jié)電機輸出力矩是所需力矩的1.32倍,腕關(guān)節(jié)電機輸出力矩是所需力矩的2.65倍,滿足采摘要求,電機與減速器選型合理。
1)基于中空走線要求設(shè)計了關(guān)節(jié)型4自由度葡萄采摘機械臂,應(yīng)用D-H法確定了滿足葡萄采摘空間要求的各關(guān)節(jié)參數(shù)。
2)應(yīng)用MatLab/Robotics Toolbox獲得機械臂末端走直線軌跡的各關(guān)節(jié)轉(zhuǎn)角,聯(lián)合ADAMS虛擬樣機技術(shù)仿真了機械臂末端夾持葡萄的采摘運動過程,獲得夾持2kg葡萄時腰關(guān)節(jié)、肩關(guān)節(jié)及肘關(guān)節(jié)所需驅(qū)動力矩分別為95、52、48、12N·m,可指導關(guān)節(jié)驅(qū)動電機與減速器選型,為采摘機械臂的物理樣機制造與采摘試驗提供技術(shù)參考。