張 辰, 張 華, 馮興華, 楊厚易
(西南科技大學(xué) 信息工程學(xué)院 特殊環(huán)境機器人技術(shù)四川省重點實驗室,四川 綿陽 621010)
視覺引導(dǎo)技術(shù)根據(jù)理論體系可分為基于學(xué)習(xí)的視覺引導(dǎo)技術(shù)和基于模型的視覺引導(dǎo)技術(shù)。基于學(xué)習(xí)的視覺引導(dǎo)技術(shù)在工業(yè)中還沒有得到實際的應(yīng)用,但學(xué)術(shù)成果頗為豐富,谷歌[1]和加州大學(xué)伯克利分校[2]的貢獻尤為突出。但基于學(xué)習(xí)的視覺引導(dǎo)技術(shù)對于工業(yè)應(yīng)用還尚不成熟,操作目標(biāo)的類型主要集中與輕質(zhì)物體。由于該種方式具有極強的非結(jié)構(gòu)化環(huán)境適應(yīng)能力,大量的研究者依然在不斷地對其進行完善。
基于模型的視覺引導(dǎo)技術(shù)相對成熟,在工業(yè)界已經(jīng)得到了一定程度的應(yīng)用,根據(jù)笛卡爾信息和關(guān)節(jié)空間信息可分為基于位置的視覺引導(dǎo)系統(tǒng)[3,4]和基于圖像的視覺引導(dǎo)系統(tǒng)[5,6],基于圖像的視覺引導(dǎo)系統(tǒng)的主要優(yōu)點在于控制過程為閉環(huán)控制,可實現(xiàn)較高的控制精度,但系統(tǒng)性能極度依賴對目標(biāo)特征點的提取準(zhǔn)確度和提取速度。對于工業(yè)中的工件來說,為每種工件找到穩(wěn)定的特征是比較困難的[7]。基于位置的視覺引導(dǎo)系統(tǒng)極度依賴于模型的標(biāo)定精度,使得系統(tǒng)誤差會受系統(tǒng)裝配誤差和老化的影響,但由于該種系統(tǒng)理論成熟,部署簡單,發(fā)展最為成熟。本文依據(jù)實際項目,通過基于位置的視覺引導(dǎo)技術(shù)來解決實際生產(chǎn)任務(wù)中的非結(jié)構(gòu)問題,針對平面關(guān)節(jié)型機器人(selective-compliance assembly robot arm,SCARA)的平面裝配任務(wù)提出了一種迭代線性手眼標(biāo)定方法,相對于傳統(tǒng)的線性標(biāo)定法,本文所用方法精度更高。手眼標(biāo)定完成后,通過解線性方程的思想計算裝配所需的末端位姿,實現(xiàn)了高精度裝配任務(wù),裝配成功率從83.2 %提升到了98.6 %。
由于SCARA主要完成的是平面作業(yè)任務(wù),在對其進行手眼標(biāo)定的過程中往往只關(guān)注各坐標(biāo)系之間在xoy平面內(nèi)的位姿關(guān)系。不管使用何種手眼標(biāo)定算法,求解的目標(biāo)可解釋為獲取機器人工具坐標(biāo)系TOOL與相機坐標(biāo)系CAM之間的關(guān)系,工具坐標(biāo)系TOOL和相機坐標(biāo)系CAM之間的位姿關(guān)系確認(rèn)之后,就可以通過相機對目標(biāo)工件進行定位并將其轉(zhuǎn)化到機器人基坐標(biāo)系BASE之中,最后向機器人發(fā)送位置信息完成對工件的作業(yè)任務(wù)。
通常使用線性標(biāo)定法[8]對SCARA機器人進行手眼標(biāo)定,線性標(biāo)定法的本質(zhì)其實是通過圖片信息建立超定方程組,通過求解超定方程組實現(xiàn)對解的最小二乘擬合。線性標(biāo)定法必須借助空間中的固定標(biāo)定板,通過記錄多組標(biāo)定板與工具坐標(biāo)系之間的位置關(guān)系求解模型參數(shù)。對標(biāo)定板的的拍攝過程如圖1所示。

圖1 8個不同姿態(tài)下拍攝的標(biāo)定板

(1)
(2)
本文的實際項目背景為自動化燃?xì)獗砩a(chǎn)線,在線性標(biāo)定法進行手眼標(biāo)定后,首先通過相機來對燃?xì)獗砹慵磸?fù)定位,其平均定位誤差為0.7 mm,最大定位誤差為1.1 mm,通過實際的裝配任務(wù)進行驗證,500次裝配的成功裝配次數(shù)為416次,裝配成功率為83.2 %,對于自動化生產(chǎn)線來說,這幾乎是災(zāi)難性的結(jié)果。
要實現(xiàn)高精度的視覺定位,需要保證對模型的高精度標(biāo)定,本文針對普通線性標(biāo)定法模型標(biāo)定精度較低的問題,提出了一種迭代線性標(biāo)定法。

(3)

(4)

(5)

(6)
(7)


圖2 算法流程
流水線上的裝配任務(wù)往往采用離線示教的方式來確定工件的抓取和放置位置,其前提是生產(chǎn)作業(yè)環(huán)境高度的結(jié)構(gòu)化,即待抓取的工件每次都能到達(dá)準(zhǔn)確的示教位置等待抓取,同時還要保證每次抓取過程不會發(fā)生工件與工具坐標(biāo)系之間的位姿偏移。但該條件是較為苛刻,且對于易形變的工件,這樣的生產(chǎn)裝配方式亦不可行。視覺引導(dǎo)技術(shù)則是應(yīng)對非結(jié)構(gòu)化生產(chǎn),將視覺引導(dǎo)技術(shù)引入到SCARA機器人的生產(chǎn)作業(yè)任務(wù)中,通過視覺對抓取結(jié)果進行感知,計算工件在基坐標(biāo)系下的位姿,推算完成裝配任務(wù)所需的末端姿態(tài)。系統(tǒng)工作示意如圖3所示。

圖3 系統(tǒng)工作示意

(8)

(9)

(10)
本文將迭代線性標(biāo)定法和末端姿態(tài)求解方法應(yīng)用于燃?xì)獗韷毫z測部件組裝生產(chǎn)線之上。SCARA機器人視覺引導(dǎo)系統(tǒng)的設(shè)計方案和末端執(zhí)行器設(shè)計方案如圖4所示,可知,視覺系統(tǒng)采用了兩個CCD相機,在CCD相機之下為一個部件抓取平臺。末端執(zhí)行器首先對目標(biāo)部件進行抓取,抓取的結(jié)果由相機進行測量并獲取目標(biāo)工件的位姿量,最后計算到達(dá)正確安裝位置所需的末端位姿量。

圖4 機器人與末端執(zhí)行機構(gòu)
迭代線性標(biāo)定法輸出每次迭代后的累積誤差和,迭代停止條件為前后兩次累積誤差和的差值小于0.001 mm,迭代在滿足300次迭代停止條件后停止,迭代結(jié)果如圖5所示。圖5截取了前50次的算法輸出結(jié)果,算法收斂且累積誤差逐漸減少。值得注意的是,隨著累積誤差的逐漸減少,每次輸出更小的累積誤差需要更多的迭代次數(shù)。

圖5 累積誤差迭代結(jié)果
手眼標(biāo)定完成后,本文通過讓兩個相機分別觀察已知距離的特征點來評估手眼標(biāo)定的準(zhǔn)確度。已知工件兩個特征點的直線距離D為56 mm,兩個CCD相機各觀察一個特征點,對特征點進行定位。將定位結(jié)果求差,獲得觀測距離D*。誤差E=|D-D*|,E越小,手眼標(biāo)定的精度越高。通過移動機械臂,對固定的特征點定位10次實驗結(jié)果如圖6所示,可知,本文提出的迭代線性法對特征點的距離測量結(jié)果更加接近真實值(56 mm),距離計算結(jié)果的波動比線性標(biāo)定法的結(jié)果更小。在對單個點進行定位時,平均誤差僅有0.3 mm,最大定位誤差為0.5 mm,相較于線性標(biāo)定法,平均定位誤差降低了0.4 mm,最大誤差降低了0.6 mm。

圖6 對特征點的測距結(jié)果
進行手眼標(biāo)定后,可通過CCD相機實現(xiàn)對目標(biāo)工件的高精度定位,要計算到達(dá)裝配位置的末端姿態(tài),還需要知道裝配位置的精確位置。對于要到達(dá)的裝配位置,可以采用離線標(biāo)定的方式獲取(如圖7(a)所示),通過在SCARA末端安裝同心的標(biāo)定錐接近裝配位置的兩個特征點,并記錄此時工具坐標(biāo)系的位置信息,通過兩點的位置信息,可以計算出關(guān)于基坐標(biāo)系的方向向量和兩點的中點位置,由此獲得裝配位置在機器人基坐標(biāo)系下的位姿。
通過反復(fù)抓取和裝配實驗,500次裝配任務(wù)中,通過線性標(biāo)定法后成功裝配次數(shù)為416次,裝配成功率為83.2 %,使用迭代線性標(biāo)定法后成功裝配的次數(shù)為493次,裝配成功率為98.6 %,裝配結(jié)果如圖7(b)所示。使用迭代線性標(biāo)定法進行手眼標(biāo)定,裝配成功率提高了15.4 %。

圖7 裝配位置特征點位置獲取與裝配結(jié)果
本文基于實際生產(chǎn)任務(wù)需求,將視覺引導(dǎo)技術(shù)與SCARA機器人相結(jié)合,解決了一個非結(jié)構(gòu)化生產(chǎn)裝配問題。對于視覺引導(dǎo)中的關(guān)鍵技術(shù),提出了一種迭代線性標(biāo)定法。該方法通過對單次線性標(biāo)定法的結(jié)果進行迭代,通過迭代降低累積誤差,實現(xiàn)了比傳統(tǒng)線性標(biāo)定法更高的工件定位精度。最后,通過解線性方程的思想計算放置位置的末端姿態(tài)。通過多次反復(fù)的抓取放置實驗,裝配成功率提高了15.4 %,實驗證明了本文所提出方法的有效性。