陳 靜,趙 晶
(長春電子科技學院機電工程學院,吉林長春130000;)
近年來,機械手裝置逐漸應用在軍事、醫療、食品、海洋等諸多行業。機械手包含了機械、控制和人工智能等多方面技術,是一種高科技自動化生產設備[1-2]。由于械手末端夾的多樣性和多功能等特點,機械手末端表現出欠驅動特征。大量學者通過構建機械手的結構模型,實現對機械手末端的控制。文獻[3]建立機械手的姿態空間模型,基于蜂群粒子群優化算法求解出慣性權值和最優粒子值,為了增強機械手的尋優性能,分類中間值,并對慣性權重進行權衡。實驗結果表明,該算法可以使機械手具有較強的搜索能力,但算法的求解速度有待提高。文獻[4]采用改進的神經網絡PID控制器,構建出機械手平面簡圖,并推導出機械手末端的運動狀態,得出了機械手的在線控制流程圖。實驗結果表明,該算法可以提高對機械手末端執行器軌跡跟蹤的精度,但推導過程較為繁瑣。文獻[5]提出基于改進的模糊PID控制方法,結合機械手運動方程,構建串聯機械手控制系統,控制機械手的角位移,實驗結果表明,該方法適應環境較強,能夠完成PID控制器參數的在線調解,然而搜索速度較慢,控制系統的輸出精度不高。
針對以上研究成果,本文提出結合PID與狀態觀測器的欠驅動機械手末端控制方法。通過慣性權重獲取PID的最佳響應參數,采用狀態觀測器完成對機械手狀態變量以及模型不確定因素的實時跟蹤。
PID廣泛應用于工業控制系統中,由于在各種不同性能需求下,PID控制都可以滿足要求且容易實現,因此是一種非常普遍的控制算法。PID控制器通過對比例、積分、微分參數的調節,獲得最佳響應值,完成控制系統的在線控制[6],PID控制結構如圖1所示。

圖1 PID控制結構圖
PID控制微分方程[7]可表示為
(1)
其中:e(t)表示輸出誤差,且e(t)=r(t)-y(t);Kpro表示比例系數;Kint表示積分系數;Kdif表示微分系數。通過誤差積分性能函數,提高PID控制對機械手的輸出精度,當PID控制器的各個參數達到最優解時,誤差積分函數的值最小,精度最高,誤差積分性能評價函數可表示為

(2)
為了方便調節PID各個參數更快地達到最優狀態,本文引入慣性權重gval,通過粒子群的差異狀態分類選擇不同的慣性權重,公式表示為

(3)


(4)

狀態觀測器是一種參數調節簡單、能夠抵制外部干擾的控制器核心組件[8]。狀態觀測器可以對狀態變量和模型的不確定因素進行實時跟蹤。為了更好的模擬機械手系統,需構建常量已知、擾動變量未知的不確定非線性系統,公式表示為
+ζun(t)+a0u(t)
(5)
其中,Fun[·]表示機械手系統中各個狀態的未知變化參數;ζun(t)表示機械手系統中的未知擾動變量;u(t)表示機械手系統中的控制變量;a0表示常數。令
(6)
其中,A(t)表示未知函數。構建非線性系統,公式表示為
(7)
其中,lnon_1(enon_1),…,lnon_n+1(enon_1)表示非線性系統的連續函數,由式(6)和式(7)聯立可得
(8)
其中,enon_i(t)=znon_i(t)-xun_non_i(t)。當非線性函數滿足enon_1·li(enon_i)>0時,對于在一定范圍內任意變化的未知函數A(t),系統都可以維持穩定狀態。在此系統的基礎上,將機械手的系統函數更新為狀態變量形式,公式可表示為
(9)


(10)
其中,α1、α2、α3、α4表示合適的參數值,只要對這四個參數值進行合適地選擇,系統便可以精確地估計出狀態變量,若系統存在擾動,則可在實時作用量中引入擾動量ξ(t),其公式表示為
xun_non_i4=Fun[xun_non_i1(t),xun_non_i2(t),ξ(t)]
(11)
綜上所述,只要作用量xun_non_i4有界,并通過選擇合適的參數值,系統的狀態觀測器便可以很好地預測出機械手的狀態變量。
目前對于抓取工作的機械手而言,一般都采用全驅動的設計方式,這樣不僅控制較為復雜,還造成資源浪費。針對這一問題,本文提出了一種基于欠驅動(驅動單元的個數小于所對應的自由度個數)的機械手,雖然欠驅動控制方式中的驅動個數小于自由度個數,但是仍然可以在相應約束條件下進行正常工作,不僅滿足了結構簡單的特點,還具有較好的適應性。
欠驅動機械手末端的控制過程比較復雜,欠驅動機械手由兩組串聯的四連桿構成,可完成對物體的抓取工作。然而精準的抓取動作主要由遠指節控制實現,在不考慮摩擦力影響時,機械手末端的力矩平衡原理可簡化為
(12)
其中,F表示機械手末端與物體之間的接觸力;lnear表示機械手末端離物體較近的近指節長度;lfast表示機械手末端離物體較遠的遠指節長度;φ表示連桿的轉角;dfast_mid表示遠指節和中指節關節點之間的距離;Tjoint表示機械手末端各個關節的力矩。機械手末端抓取力和驅動力矩一一對應,因此可以通過控制驅動力矩實現對抓取力的控制。然而在欠驅動機械手控制過程中存在靜力學問題,為了使力學系統保持靜平衡,本文引入虛功原理,公式為
(13)

(14)

(15)
其中,dF_i表示接觸力距離各個關節點間的距離。于是接觸力可以進一步表示為
(16)

圖2 四連桿機構
假設四連桿的各個長度分別為l1、l2、l3、l4,那么四連桿的分量形式可表示為
(17)
欠驅動機械手的驅動力矩Tdri是通過電動機產生的轉矩傳遞給絲杠螺母,再通過連桿傳遞給機械手末端。絲杠螺母產生的力用Fscr表示;連接桿上傳遞的力用Ftra表示;機械手末端的旋轉點到連接桿的距離用drot_joi表示。由力矩平衡原理可得
Tdri=Ftra·drot_joi
(18)
由絲杠螺母的推力公式[9]有
(19)
其中,ηtra表示絲杠螺母的傳遞效率;Tout表示電動機產生的力矩;dscr表示絲杠的螺距。對連接桿進行受力分析,可以得出
Fscr=Ftracosθ
(20)
將以上公式聯立可以得出
(21)
綜上所述,在電動機的輸出力矩已知的情況下,欠驅動機械手末端進行抓取工作時,可以通過公式精確地計算出各個關節的抓取力,完成對欠驅動機械手末端的精準控制。
為了驗證PID與狀態觀測器相結合方法對機械手末端的控制情況,本文基于MATLAB仿真軟件進行實驗測試。首先通過對PID參數不斷仿真,得出理想的參數值,如表1所示。將目標函數設置為cos2t、擾動設置為100cost,仿真機械手末端在空間坐標系中的跟蹤控制情況,并將本文算法與普通的PID控制方法進行實驗對比。仿真結果如圖3所示。

表1 PID理想參數表
圖3的a)~c)圖中,從上至下三條曲線依次為實際信號、本文跟蹤曲線和普通跟蹤曲線。對比可知,采用普通PID控制方法,機械手末端對三個坐標軸的跟蹤效果不理想,相對來說x軸和y軸的跟蹤效果還可以,但是z軸方向基本跟蹤不上目標函數,存在明顯的相位偏移和幅值偏差。采用本文方法的機械手末端能夠較好的跟蹤目標函數,不僅x軸和y軸跟蹤效果良好,z軸也可以很好的跟蹤目標函數,跟蹤誤差很小,相角和幅值誤差都得到顯著優化。

圖3 控制跟蹤曲線對比
為了進一步研究機械手末端抓取的運動規律,本文選擇邊長為30mm的方塊作為機械手的抓取對象。在不考慮各個關節間摩擦力的情況下,分析機械手的受力規律。圖4為遠指節運動的速度仿真曲線。

圖4 遠指節運動速度曲線
從圖中可以看出,當機械手末端沒有觸碰到物體小方塊時,遠指節的運動速度不斷增加,當機械手末端觸碰到物體小方塊時,遠指節的運動速度開始逐漸下降,當時間為75ms時,機械手末端的遠指節速度幾乎為0,表明機械手已達到平衡狀態。圖5為機械手末端抓取力仿真曲線。
從圖中可以看出,當機械手末端與物體小方塊剛開始接觸時,由于碰撞的存在,抓取力有些抖動,隨后在很短的時間內隨著抓取運動的進行,抓取力不斷增加,當時間為90ms時,抓取力為最大值,機械手達到平衡狀態。由此可知,通過本文方法所設計的欠驅動機械手可以完成對物體的精確抓取。
由于欠驅動機械手在運動過程中連桿所受的力矩和機械手末端各關節所受的彈簧力都在不斷地發生變化,導致機械手末端的抓取力也不斷地發生變化,因此本文通過仿真分析了機械手末端各關節的抓取力變化情況。圖6為機械手末端各關節的角速度仿真曲線。

圖6 機械手末端各關節的角速度曲線
從圖中可以看出,機械手末端各關節在沒有觸碰到物體小方塊前,在驅動力的作用下,近指節、中指節、遠指節角速度不斷增加;當近指節觸碰到物理小方塊后,角速度逐漸減小;隨之中指節、遠指節先后觸碰物體小方塊,角速度也隨之減小。當時間為2s時,各關節的角速度接近數值0,說明各關節已經達到了抓取的平衡狀態。圖7為機械手末端各關節受力仿真曲線。

圖7 機械手末端各關節受力仿真曲線
從圖中可以看出,機械手末端各個關節的抓取力相差較小,而且各個關節的受力情況沒有發生突變,說明采用本文方法設計的欠驅動機械手不僅可以滿足均勻受力的要求,還可以滿足穩定抓取物體的要求。
本文針對機械手末端控制提出了一種結合PID與狀態觀測器的控制方法,同時采用欠驅動方式對機械手進行控制設計。通過對機械手末端抓取工作的力學理論和靜力學理論分析,計算出各個關節的抓取力,完成對欠驅動機械手的精準控制。通過MATLAB仿真,證明本文提出的方法可以對目標函數進行準確跟蹤,跟蹤誤差維持在0.1mm之內。通過對機械手末端抓取物體運動規律的實驗,表明采用本文方法,機械手末端近指節、中指節、遠指節的抓取力相差較小,沒有發生抓取力突變的情況,可以滿足穩定抓取物體的要求,實現了對機械手末端的精準控制。