王安然, 金曉怡*, 奚 鷹
(1.上海工程技術大學 機械與汽車工程學院, 上海 201620; 2.同濟大學 機械與能源工程學院, 上海 201804)
隨著工業加工領域自動化程度的不斷提高,手工上下料已經無法滿足目前的加工效率的要求,所以自動上下料機械手越來越多的投入到機械生產中,如此一來機械手的移動空間的研究具有重要意義[1-4]。目前已有很多學者針對上下料機械手進行了研究[5-8]。傳統機械手的運動軌跡規劃方法通常對其運動時間和沖擊程度進行優化,針對運動空間的優化較少。課題組結合PSO算法以運動空間作為目標函數進行優化,可優化機器人的工作空間,滿足各種復雜的工作空間要求。
機器人軌跡的相關優化是機器人實際生產中的關鍵環節[9]。我們需要根據不同的機器人初始位置與終止位置結合特定的加工要求和阻礙因子對機器人的運動軌跡進行規劃及優化[10]。在路徑優化過程中我們對各關節分別進行研究,將平動和旋轉關節的最大移動空間作為目標函數,結合蒙特卡洛法得到機器人的整體移動空間,運用粒子群算法對行動軌跡進行優化設計。與傳統路徑規劃方式以末端加持器的移動軌跡作為研究對象不同,課題組對各個關節進行基于粒子群算法的多目標函數優化,并利用五次多項式插值運動軌跡對速度和加速度進行平滑處理,實現整體路徑規劃。課題組對機械手的整體研究更加全面。
課題組以6自由度機器人作為研究對象,末端球型腕和機械手相連接可實現對零件的抓取和放置等工作;以表殼作為研究零件,表殼零件需要車床對其進行拋光打磨等加工工序,該步驟人工上下料的效率低且對工人的身體健康有損害,故設計自動上下料裝置以代替人工,提高加工效率和自動化程度。具體布置方案如圖1所示:①機械手在配料盤上抓取加工零件;②通過整體移動框架將機械手移動到車床加工中心位置上方,通過豎直方向移動裝置將機械手移動到與加工中心水平位置;③通過機械手的肘部關節進行短距離推進實現下料,待零件加工完成后將其取下;④腕部關節旋轉90°將新零件安裝到車床卡盤上進行新一輪加工。

圖1 機械手布置方案Figure 1 Manipulator layout plan
該上下料機械手的自由度分布為RR+PRPP。機械手分為肩部、肘部和腕部3部分,且由6關節6自由度組成。其中前2個為平動關節主要實現X軸和Y軸方向的進給,其他平動及旋轉關節實現對末端執行器位姿的調整。機械手結構如圖2所示。由圖2我們可以得出機械手的D-H參數表,進而得到機械手的正運動學解。

圖2 機械手結構Figure 2 Manipulator structure
由圖2中的運動形式和機械手的加工要求可求得機械手的D-H參數如表1所示。

表1 機械手D-H參數表
表1中:θi表示第i個關節繞其Z軸的旋轉角度;di表示第i個關節在其Z軸方向上與前一個關節的X軸之間的公垂線上的距離;ai表示第i個關節在Z軸方向上與前一個關節的Z軸之間的直線距離;αi表示第i個關節與前一個關節之間的夾角。
由表1可得出機械手在上下料加工過程中的正運動解為:
(1)
式中:
G=cosα1cosα3cosα4+sinα1sinα4;
H=cosα1sinα1sinα4-cosα1sinα4;
I=cosα1cosα3sinα4-sinα1cosα4;
E=a3cosα1cosα3-sinα1d3+a2cosα1+a1cosα1;
F=a3cosα3sinα1+cosα1d3+a2sinα1+a1sinα1;
J=cosα3sinα1sinα4+cosα1cosα4。
公式(1)中連桿偏置和關節旋轉角度為關節變量分別為θ1,θ2,θ3,d3,d5。其中:θi為角度變量,di為平動關節變量。
我們采用幾何法對機械手進行逆運動學求解,首先將機械手運動關節分為2部分,將前3個關節的運動按照關節型位形進行求解,由幾何法和前面的正運動學解我們可以得出前3個關節的關節角為:
θ1=Atan 2(xc,yc);
Atan 2(a2+a3cosα4,a3sinα4);
式中:xc,yc,zc分別為末端執行器距離坐標系中心的X軸、Y軸和Z軸方向的距離。
(2)
我們將平動關節也按照幾何法可求得其平動關節
(3)
由于其他平動關節為普通平動關節不涉及關節角度的變化,所以其他平動距離為已知量。結合公式(2)與公式(3),我們可以得到相應的加工空間方程,并與圖3所示的CNC車床實際加工空間比較,判斷是否會出現干涉現象。

圖3 CNC車床實際加工空間Figure 3 Actual processing space of CNC lathe
PSO粒子群算法是模擬鳥群覓食行為又稱為微粒群算法,其覓食決策的產生來源于兩方面:一方面是自身的判斷;另一方面是對于群體決策趨勢的思考[11-13]。粒子群算法通過個體對環境的適應度作為進化依據,將適應性強的個體移動到備選區域,借此尋找到最優的位置[14-15]。每個粒子都具有一定的初始速度和位置,每次迭代都會根據自身的經驗和群體的經驗進行速度和位置的調整,改變其自身的速度和位置[11]258。粒子的速度更新公式為:
(4)

(5)

vj(k+1)=慣性部分+認知部分+社會部分。
式中:vj(k+1)為第j個粒子在第k+1次迭代后的速度。
粒子的位置更新為:
圖4中,x(k)為該粒子k次迭代后的位置;v(k)為當前速度;PBest為粒子在k次迭代后的歷史最優位置;P為粒子可能出現的位置偏差。結合相關運動關節的

圖4 PSO算法速度更新方程組成Figure 4 Velocity update equation of PSO algorithm
函數方程式,我們將在坐標系上各方向的移動參數作為自變量,運用PSO算法對關節運動空間進行迭代規劃,PSO算法相關參數如表2所示。

表2 粒子群算法參數表
運用MATLAB軟件對關節參數進行迭代得到其在限定范圍內的最大運動空間,得到相應的優化結果如表3所示,相應迭代效果如圖5~6所示。

表3 迭代計算各關節參數

圖5 各關節尋優狀態圖Figure 5 Optimization diagram of each joint

圖6 各關節迭代效果圖Figure 6 Iteration renderings of each joint
課題組以機械手的移動空間作為目標函數,在已知起始點和終止點位姿的情況下通過幾何法和代入法相結合對機械手的行動軌跡進行反解,得出機械手的行動空間方程,并結合粒子群算法通過對適應度函數的計算添加相應的約束條件得出最大的工作空間范圍。
上文中我們通過PSO粒子群算法得到了各關節的相應工作空間,我們通過MATLAB robotic toolbox工具箱結合D-H參數表對機械手的初始狀態進行建模仿真,得到相應的機械手初始工作狀態如圖7所示。

圖7 機械手初始狀態仿真圖Figure 7 Initial state simulation of manipulator
蒙特卡洛法又稱統計試驗或隨機抽樣方法,是利用概率模型結合隨機抽樣的方法得到各種概率分布抽樣,并建立各種估計值[16-17]。
具體算法流程如下:
1) 在已知的機械手MATLAB仿真模型基礎上設置給關節的參數限制。
2) 隨機獲取在參數限制范圍內的3 000個點作為示范隨機分布的情況。
3) 各關節分別隨機取得范圍內參數。
4)在MATLAB robotic toolbox工具箱的模擬仿真情況下按照獲得的隨機參數進行動畫演示并且畫出范圍內選取的相關點。
結合上文中利用PSO粒子群算法對關節空間的優化,并通過MATLAB robotic toolbox工具箱仿真得出圖8所示仿真過程。

圖8 仿真流程圖Figure 8 Simulation flow chart
將由PSO算法迭代得到的各關節最大移動空間作為限制條件,隨機抽取3 000個隨機分布點,結合MATLAB robotic toolbox工具箱仿真的機械手結構進行模擬得出的工作空間如圖9所示。

圖9 機械手工作空間仿真Figure 9 Workspace simulation of manipulator
由圖9可知引入粒子群算法并以各關節的目標函數作為限制函數對加工空間進行優化,得到優化前后的加工空間仿真圖作為對比,可看出該優化方法可將加工空間大大縮小,并完全限制在加工范圍內。該研究方法以各關節的移動空間作為研究目標,利用粒子群優化算法求得各關節的最大工作空間,利用蒙特卡洛法及MATLAB robotic toolbox工具箱將各關節的移動空間與機械臂整體相結合,實現了機械手整體的工作空間優化。
課題組在已知機械手在上下料加工中的起始加工點的情況下,對機械手的行動軌跡進行設計與分析,進而得出其D-H參數表,運用機械手的運動學知識,分別求得各關節的正運動解。結合幾何法和代數法兩種逆運動學解法,我們得到旋轉關節和平動關節的相應函數表達式,再將坐標系內各方向上的移動變量作為自變量的情況下,引入PSO粒子群算法對其運動空間進行優化,最后利用蒙特卡洛法結合粒子群算法求得的優化結果得出了完整的工作空間范圍。
本研究對上下料機械手的軌跡優化更加完整,避免了僅對末端軌跡優化而造成的關節限制,并且得出的機械手加工空間范圍,也可作為在復雜加工空間下(如狹小的加工空間)不與加工機器發生干涉的重要依據。