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