李永杰,臧 琛,邱繼紅
(1.烏海職業(yè)技術(shù)學(xué)院,內(nèi)蒙古 烏蘭察布 016000;2.內(nèi)蒙古工業(yè)大學(xué),內(nèi)蒙古 呼和浩特 010051;3.中國科學(xué)院沈陽自動化研究所,遼寧 沈陽 110016)
隨著工業(yè)機器人的發(fā)展,六自由度噴涂機器人的產(chǎn)品已經(jīng)趨于成熟,但相較于國外廠商,國內(nèi)噴涂機器人產(chǎn)品的自主研發(fā)水平仍相對落后。有別于傳統(tǒng)六軸機器人,國外廠商均采用斜交末端型機構(gòu),可以在避免內(nèi)部管線打結(jié)的同時增強末端手腕的靈活性。
斜交末端機構(gòu)在開發(fā)過程上主要難點在于逆運動學(xué)運算難度。六自由度機器人的逆運動學(xué)結(jié)果具有封閉解的充分條件在學(xué)術(shù)界已經(jīng)達成共識,即其機構(gòu)符合如下兩個條件之一[1]:
(1)相鄰的三個轉(zhuǎn)動關(guān)節(jié)的軸線交于一點;
(2)相鄰的三個轉(zhuǎn)動關(guān)節(jié)的軸線之間相互平行。
噴涂機器人手腕不符合上述準則,其運動學(xué)不具有封閉逆解。作為噴涂機器人的底層核心算法,運動學(xué)逆解是必需的[2]。對噴涂機器人運動學(xué)問題的研究,學(xué)術(shù)界已經(jīng)取得了一定成果。文獻[3],對非正交手腕機構(gòu),利用方向余弦建立了各個關(guān)節(jié)運動學(xué)方程,并對其正、逆運動學(xué)進行了分析。文獻[4]通過對奇異位置的處理和阻尼因子的調(diào)整,改善了阻尼最小二乘DLS算法,實現(xiàn)了實時運動學(xué)求解。文獻[5]通過降低系統(tǒng)維度的方法,通過對運動學(xué)方程進行消元處理,將逆運動學(xué)求解的問題轉(zhuǎn)變?yōu)橐粋€一元十六次方程。
以六自由度噴涂機器人為實際背景,對其機械結(jié)構(gòu)特征進行分析,通過D-H法建立了關(guān)節(jié)坐標系,通過數(shù)值迭代算法完成了逆運動學(xué)求解。算法將運動學(xué)問題的求解控制在毫秒級,確保了機器人逆解的實時性,并使用MATLAB驗證了其有效性。最后部分闡述了視覺補償?shù)膶崿F(xiàn)方法及其在噴涂機器人運動控制中的主要作用。
六自由度噴涂機器人的運動學(xué)建模就是建立各個關(guān)節(jié)與末端執(zhí)行器之間的位姿映射關(guān)系。根據(jù)機器人的關(guān)節(jié)分布特性繪制的機器人各個局部坐標系分布圖[6],如圖1所示。
圖1 固定在連桿上的坐標系分布圖Fig.1 Structure of Coordinate System on Connecting Rod
噴涂機器人的運動學(xué)正解問題解決的通過電機轉(zhuǎn)角,求得機械臂的末端位姿矩陣[6]。其最終變換矩陣為:
D-H的相關(guān)參數(shù),如表1所示。
表1 機械臂的連桿D-H參數(shù)Tab.1 Mechanical Arm Connecting Rod D-H Parameters
根據(jù)以上這些參數(shù)可以得到各個關(guān)節(jié)之間的變換矩陣,令:
最后,得到六個連桿齊次變換矩陣的乘積:
矩陣中各元素如下所示。
由上述方程組可以得到,機械臂末端位置僅與第一到第四關(guān)節(jié)的轉(zhuǎn)角相關(guān),第五、六關(guān)節(jié)轉(zhuǎn)角僅影響末端姿態(tài)。為了驗證求解的有效性,選取 θ1=0°;θ2=0°;θ3=0°;θ4=0°;θ5=0°;θ6=0°,可得到結(jié)果為:
根據(jù)關(guān)節(jié)坐標系分布圖可知結(jié)論正確。
六自由度噴涂機器人運動學(xué)逆解問題是機械本體傳動裝置末端位姿來求解機械臂各關(guān)解轉(zhuǎn)角的過程,機械臂的軌跡跟蹤和示教作業(yè)功能均依賴于此過程逆解結(jié)果可根據(jù)關(guān)節(jié)運動范圍和象限特征等舍棄不符合實際工況的結(jié)果[6]。
2.2.1 擬牛頓迭代法
式中:F(X(k))—第k次迭代中方程組對應(yīng)的雅可比矩陣。對于雅可比矩陣不可逆的情況,其牛頓迭代格式可推廣為:
式中:F(X(k))+—第k次迭代時雅可比矩陣的最小范數(shù)廣義逆。
2.2.2 迭代過程推導(dǎo)
通過對運動學(xué)方程組的處理可得到六個方程。
由于o向量為單位正交向量可簡化為四個方程。
其對應(yīng)雅可比矩陣J∈R4×4如下。
在通常情況下 F(X(k))+與 F(X(k))-1等價;當機器人末端軌跡穿過奇異位置時,雅可比矩陣不再可逆,采用上述迭代格式可適配極端情況。
噴涂機器人在工作場景下通常需要往復(fù)運動于待噴灑工件表面附近,規(guī)劃機器人末端軌跡為類正弦曲線,根據(jù)運動學(xué)逆解算法計算出各關(guān)節(jié)角度值,并將上面正弦曲線逆解求取出的一系列關(guān)節(jié)值代入正解運算公式中,求解出對應(yīng)的一系列p向量,將逆解得到的p向量與初始位置p向量對比結(jié)果,如圖2所示。
圖2 運動學(xué)算法仿真驗證Fig.2 Kinematics Algorithm Simulation Verification
圖中其中一條曲線代表規(guī)劃器所生成的位置,另一條曲線代表通過逆解后機器人末端的實際軌跡位置。從圖中可看出兩條曲線處于重合狀態(tài),足以滿足實際機器人控制系統(tǒng)的精度要求。對于姿態(tài)的跟蹤精度分別選取n、o、a三個向量進行比較。將計算后的姿態(tài)向量與規(guī)劃器生成的姿態(tài)位置向量對比,如圖3~圖5所示。
圖3 姿態(tài)n仿真驗證Fig.3 Simulation Verification of Posture Vector n
圖4 姿態(tài)o仿真驗證Fig.4 Simulation Verification of Posture Vector o
圖5 姿態(tài)a仿真驗證Fig.5 Simulation Verification of Posture Vector a
由圖3、圖4和圖5易知,軌跡將部分完全覆蓋,且在軌跡跟蹤的全過程中,三個姿態(tài)向量的變化范圍始終小于0.0001,完全符合實際機器人控制系統(tǒng)對精度的要求。噴涂機器人在實際工作過程中需要重復(fù)運動于工件表面上方,需規(guī)劃類正弦曲線的軌跡用以覆蓋噴灑區(qū)域。本次仿真中以類正弦曲線為例,分別對位置和姿態(tài)進行仿真跟蹤,易見本算法對于位置和姿態(tài)的跟蹤效果較好,對于每個向量的各個分量的跟蹤誤差均小于0.0001,滿足了實際機器人的精度要求。
針對噴涂機器人工作環(huán)境,首先利用工業(yè)相機對待涂裝工件進行拍攝,獲取工件數(shù)字圖像信息,利用特征法對采集的圖像信息進行分析,計算得出工件的質(zhì)心,并與噴涂系統(tǒng)的坐標系進行整合換算得出工件的笛卡爾空間位置,最后引導(dǎo)噴涂機器人末端噴槍完成對工件表面的涂裝工作。
通過處理從攝像機采集到的數(shù)字圖像,通過采集到工件的空間坐標信息,實現(xiàn)對工件的重構(gòu)和識別[7]。將機器視覺應(yīng)用于工業(yè)生產(chǎn)線必須首先進行對攝像機的標定操作。本系統(tǒng)的開發(fā)采用了張正友標定法,選擇小孔成像為標定算法模型。根據(jù)圖像點之間對應(yīng)關(guān)系即可標定出攝像機內(nèi)參數(shù)與外參數(shù),此過程僅需拍攝2張相片[8]。本實驗選用DALAS-GM1400工業(yè)相機,相機內(nèi)參數(shù)如下:焦距:4.2864mm;精度:1.3020mm/pixel(長)、精度:0.9765 mm/pixel(寬);焦距:5mm;精度:1.116mm/pixel。攝像機標定結(jié)果,如圖6所示。
圖6 攝像機標定實驗結(jié)果Fig.6 The Experimental Results of Camera Calibration
本實驗拍攝了7幅(1280×960)分辨率的高質(zhì)量圖像用以提高標定的精度[8],標定結(jié)果為:攝像機參數(shù)為fx=2241.1510,fy=2213.0495,u0=681.86539,v0=478.60121;攝像機畸變參數(shù)為 k1=0.053131,k2=0.944376,p1=0.001223,p2=0.001319。
本實驗所采用的張正友標定法是一種介于傳統(tǒng)標定法和自定標法之間的方法,其應(yīng)用較為廣泛。該方法選擇棋盤格作為模板進行標定,實現(xiàn)的必要條件為需從不同角度拍攝2幅以上圖片。為提高標定的精確度,本實驗通過攝像機采集7個不同方向位置的數(shù)字圖像,并根據(jù)圖像與標定板之間的映射關(guān)系解算出攝像機內(nèi)、外參數(shù)等信息,最后將參數(shù)輸入到相關(guān)模型中。通過采集不同方向標定板中標定點的像素坐標,將其一一與世界坐標建立對應(yīng)關(guān)系,實現(xiàn)將空間坐標系變換到圖像坐標系,得到二維圖像對應(yīng)的三維空間信息,從而完成攝像機的標定。
由于實際使用中存在相機鏡頭自身性能和工作環(huán)境的限制,工業(yè)相機拍攝所得的圖像必然存在著不可消除的在噪聲,進而使得圖像存在模糊的情況,對圖像進行濾波處理可使其特征更加明顯[9]。本實驗選擇高斯濾波方法對采集結(jié)果進行濾波處理。其模板取值,如式(3)所示。
其中,σ決定模板的寬度,作用于的寬度與σ的取值正相關(guān),即取較大的σ值可使利用此模板的窗口擴大。
首先,將目標工件進行過圖像預(yù)處理,其次,要針對靜態(tài)工件的特征提取,最后,根據(jù)提取結(jié)果進行分類。特征提取旨在通過提取不同種類的工件的特征信息,作為識別工件的基本條件。特征匹配的方法中灰度直方圖匹配和輪廓匹配應(yīng)用較為廣泛[8]。灰度直方圖方法忽略所采集圖像中的空間信息,而導(dǎo)致實際應(yīng)用中定位精度較低[9]。
圖像的邊緣輪廓作為數(shù)字圖像中最基本的特征之一,是圖像中固有信息的一種重要表示,其不變性多種條件均適用,并且其具有對噪聲不敏感的優(yōu)秀特性[9]。輪廓匹配是基于圖像中工件的邊緣特征來識別圖像。輪廓匹配方法能夠在縮小數(shù)據(jù)計算量的基礎(chǔ)上,盡可能地保留圖像中的結(jié)構(gòu)信息,忽略次要信息從而準確地對工件進行識別。工件特征提取結(jié)果,如圖7所示。
圖7 特征提取Fig.7 Feature Extractions
處理過程中,通常對數(shù)字圖像矩陣整體進行研究,按照此方式對于圖像的分析每次均需要掃描整個圖像。這樣會嚴重降低算法的實時性,識別的準確率也急劇下降。本實驗通過對多個目標進行分塊處理[10],不同目標塊用 BlockN(i,j)表示。對目標圖像采用此種處理方式,運算只需要針對單一目標塊來進行,增強了算法的效率。分塊處理后,多目標工件的特征識別的效果圖,如圖8所示。從圖中易對待噴漆目標進行分類捕捉,然后噴成不同顏色。
圖8 目標識別Fig.8 Target Recognition
對工件的目標位置進行定位,通常采用目標工件的質(zhì)心作為圖像信息的綜合表征。
定義圖像的(p+q)階矩,如式(4)所示。
式中:f(i,j)—像素點的質(zhì)量;
Mpq—圖像的矩。
質(zhì)心的位置可通過中心矩來求解,可得零階矩M00、i軸慣性矩M01和j軸慣性矩M10。
可得質(zhì)心坐標為:(M10/M00,M01/M00)
首先以斜交末端六自由度噴涂機器人的應(yīng)用背景,通過DH方法建立了機械臂的關(guān)節(jié)坐標系,并構(gòu)建了其運動學(xué)方程組。通過對運動學(xué)方程的分析,可得到以下規(guī)律:
(1)噴涂機器人末端位置僅與前四關(guān)節(jié)相關(guān);
(2)根據(jù)機構(gòu)特性可將逆解牛頓迭代格式中雅克比矩陣的階數(shù)由6降至4,通過將姿態(tài)與位置分離的運算方式減小了運算量級;
(3)逆解迭代過程中雅克比矩陣的階數(shù)與運算誤差正相關(guān),通過雅克比矩陣降階,可減小計算誤差,同時提高逆解的精度位數(shù)。
其次,從算法上實現(xiàn)噴涂機器人連續(xù)軌跡跟蹤,并通過MATLAB仿真軟件對算法進行驗證,其正確性和精確性均得以確認,使得算法具有一定實際工業(yè)應(yīng)用的價值和前景。
最后,在視覺系統(tǒng)中研究中,為減小計算開銷、降低識別過程的錯誤率,使得基于視覺補償?shù)膰娡肯到y(tǒng)響應(yīng)更加及時,工作流程更加可靠、穩(wěn)定。
采用了如下方法:
(1)通過提取圖像特征信息的方式對目標進行了識別和匹配;
(2)為增強算法的實時性并且減小識別過程中由于數(shù)據(jù)量巨大而帶來的誤差,采用對于多目標進行分塊處理的方式。
綜上所述,提出一種運動學(xué)算法和視覺補償相結(jié)合的方法,使得噴涂機器人對于待涂裝目標的捕捉更加智能、靈活,同時提高了機器人涂裝過程的精確度。在精確控制機器人末端跟蹤軌跡的同時,通過視覺補償?shù)妮o助反饋信息,構(gòu)建了待涂裝工件與機器人末端的精準映射關(guān)系,運動算法和視覺識別的有效性分別通過仿真及實驗得到驗證。