孫 娜,王 強(qiáng),賴淑惠
(1.寧夏理工學(xué)院,寧夏 石嘴山 753000;2.陜西科技大學(xué),陜西 西安 710021)
在工業(yè)生產(chǎn)中,快速抓取和精準(zhǔn)裝配等任務(wù)需要消耗大量的人力和物力。為了完成工作,并聯(lián)機(jī)器人必須將一些特定的工具裝配在手臂上,以實(shí)現(xiàn)小范圍內(nèi)的快速任務(wù)操作。與其他類型的機(jī)器人相比,并行機(jī)器人是一種非常簡(jiǎn)單且易于制造的機(jī)構(gòu),其重量輕,功耗低,自治性也是值得考慮的有趣因素[1-3]。六軸并聯(lián)機(jī)器人是一種具有高載荷自重比的封閉式運(yùn)動(dòng)結(jié)構(gòu),其適用于制造、飛行仿真系統(tǒng)和醫(yī)療機(jī)器人等領(lǐng)域。機(jī)械手是一組運(yùn)動(dòng)連桿或鏈條的集合,這些連桿或鏈條連接在一起形成一個(gè)能夠完成特定任務(wù)的機(jī)構(gòu)[4]。機(jī)器人具有串聯(lián)和并聯(lián)兩種基本設(shè)計(jì),在運(yùn)動(dòng)學(xué)上有明顯不同。雖然串行機(jī)械手的運(yùn)動(dòng)結(jié)構(gòu)是開環(huán)且更易于理解,但不適用于快速分揀、小范圍搬運(yùn)等場(chǎng)合。六軸并聯(lián)機(jī)器人是一種閉環(huán)運(yùn)動(dòng)結(jié)構(gòu),逆運(yùn)動(dòng)學(xué)求解容易,但正運(yùn)動(dòng)學(xué)相對(duì)較難。1947年,并行機(jī)器人的設(shè)計(jì)思想被首次提出,Stewart基于他的并行模型建造了飛行模擬器。Clavel于1989年提出了Delta結(jié)構(gòu),這是一種專用于高速應(yīng)用環(huán)境的并行機(jī)器人,其并聯(lián)操縱器具有高精度定位和定向的特點(diǎn),使其成為許多應(yīng)用的理想解決方案,目前已在工業(yè)中得到廣泛使用。
研究了6軸并行機(jī)器人的機(jī)械結(jié)構(gòu)和運(yùn)動(dòng)特性,其工作空間是一組點(diǎn)集。首先,介紹了并聯(lián)機(jī)器人的設(shè)計(jì)和運(yùn)動(dòng)學(xué)建模,利用牛頓修正優(yōu)化算法求解了正向運(yùn)動(dòng)學(xué)。再次,根據(jù)圖像學(xué)形態(tài)特征開發(fā)了從圖像信息中確定待抓取目標(biāo)的圖形特征,然后設(shè)計(jì)分揀抓取的功能模塊。最后利用實(shí)驗(yàn)驗(yàn)證了六軸并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)和視覺抓取模型的正確性,為后續(xù)六軸并聯(lián)機(jī)器人快速分揀提供了保障。
并行機(jī)器人已成為機(jī)器人領(lǐng)域的一大熱點(diǎn),與串行機(jī)器人相比,并行機(jī)器人在其整個(gè)工作空間中具有更大的負(fù)載能力,運(yùn)動(dòng)更快更準(zhǔn)確,剛度也更大的特點(diǎn),因此并行機(jī)器人的并行操縱器能夠執(zhí)行高精度的定位任務(wù)。六軸并聯(lián)機(jī)器人機(jī)械結(jié)構(gòu),平行結(jié)構(gòu)固有地通過致動(dòng)器分配扭矩,使機(jī)器人具有高帶寬動(dòng)態(tài)特性,如圖1所示。機(jī)器人本體采用六聯(lián)桿并聯(lián)驅(qū)動(dòng)結(jié)構(gòu),主要包括用于機(jī)器人及電機(jī)固定的安裝固定座,帶有絕對(duì)編碼器和制動(dòng)器的六個(gè)伺服直驅(qū)電機(jī),用于傳遞電機(jī)驅(qū)動(dòng)力六組連桿驅(qū)動(dòng)機(jī)構(gòu)。
圖1 六軸并聯(lián)機(jī)器人機(jī)械結(jié)構(gòu)Fig.1 Mechanical Structure of Six-Axis Parallel Robot
與串行機(jī)器人相比,并行機(jī)器人可提供更高的動(dòng)態(tài)能力,更高的剛度、承載能力和定位重復(fù)性。這些與并行機(jī)器人相關(guān)聯(lián)的屬性使它們?cè)趯?shí)際應(yīng)用中具有很大的吸引力。六軸并聯(lián)機(jī)器人如何實(shí)現(xiàn)在自動(dòng)裝配、快速分揀、高自重比和高精密機(jī)械加工中發(fā)揮作用就顯得尤為重要。
本研究使用了LabVIEW ver.7.1作為控制軟件[14]。以Vision Assistant 7.1 作為前端圖像處理軟件,將Vision Assistant 生成的圖像處理程序構(gòu)建在LabVIEW上進(jìn)行集成應(yīng)用[15-16]??刂葡到y(tǒng)由末端執(zhí)行器控制、圖像處理、機(jī)器人載體控制和中央控制單元四部分組成,并聯(lián)機(jī)器人系統(tǒng)程序架構(gòu),如圖2所示。
圖2 并聯(lián)機(jī)器人系統(tǒng)程序架構(gòu)Fig.2 Parallel Robot System Program Architecture
機(jī)器人載體控制指令讀寫采用LabVIEW VISA(虛擬儀器軟件架構(gòu))模塊進(jìn)行串口通信,首先讀取操作員的命令,判斷機(jī)器人載體是向前移動(dòng)還是垂直移動(dòng)。如果向前移動(dòng),機(jī)器人載體執(zhí)行向前動(dòng)作,判斷是否到達(dá)設(shè)定位置。如果沒有,它將繼續(xù)前進(jìn)如果向前動(dòng)作已經(jīng)到達(dá)位置,則該動(dòng)作流程就完成了。如果垂直移動(dòng),判斷運(yùn)行系統(tǒng)是上升還是下降。這個(gè)動(dòng)作流程將在它到達(dá)位置時(shí)結(jié)束。
六軸并聯(lián)機(jī)器人正解解決的是從機(jī)器人關(guān)節(jié)到機(jī)器人末端姿態(tài)的傳遞關(guān)系,反解解決的是從機(jī)器人末端姿態(tài)到機(jī)器人關(guān)節(jié)角的傳遞關(guān)系。正反解是解決機(jī)器人在空間運(yùn)動(dòng)的關(guān)節(jié)角和空間位姿的傳遞關(guān)系。求解運(yùn)動(dòng)學(xué)逆問題的兩種主要方法是解析法和數(shù)值法。
在第一類中,根據(jù)給定的位形數(shù)據(jù)對(duì)關(guān)節(jié)變量進(jìn)行解析求解。在第二類解中,基于數(shù)值技術(shù)得到了關(guān)節(jié)變量。在數(shù)學(xué)上,雖然六軸并聯(lián)機(jī)器人的運(yùn)動(dòng)學(xué)反解有一個(gè)封閉的數(shù)學(xué)解,但是運(yùn)動(dòng)學(xué)正解缺少一個(gè)封閉的解[9-10]。一般來說,方程的數(shù)量小于未知數(shù)的數(shù)量因此運(yùn)動(dòng)學(xué)正解表示一個(gè)待定問題。此外,運(yùn)動(dòng)學(xué)公式的高度非線性也增加了計(jì)算的復(fù)雜性。
通過逆運(yùn)動(dòng)學(xué)求解可以根據(jù)目標(biāo)位置來控制機(jī)器人各個(gè)關(guān)節(jié)角度的相對(duì)運(yùn)動(dòng)。使用末端執(zhí)行器的位置和方向滿足待抓取目標(biāo)位置和姿態(tài)。
3.1.1 坐標(biāo)系建模
六軸并聯(lián)機(jī)器人模型,如圖3所示。
圖3 六軸六軸并聯(lián)機(jī)器人正面模型圖Fig.3 Mechanism Diagram of Parallel Robot
圖中:0-X0Y0Z0—基坐標(biāo)系,位于基座上平面中心;P1-X1Y1Z1—中間坐標(biāo)系,沿基坐標(biāo)系Z0軸負(fù)方向平移H1距離;Pe-XeYeZe—末端坐標(biāo)系;P2-X2Y2Z2—中間坐標(biāo)系,沿末端坐標(biāo)系Ze軸正向平移H2距離。小臂長(zhǎng)度為L(zhǎng)A,大臂長(zhǎng)度為L(zhǎng)B,六個(gè)電機(jī)驅(qū)動(dòng)角分別為θi。假設(shè)1號(hào)電機(jī)驅(qū)動(dòng)點(diǎn)位于A1點(diǎn),Rb—中間坐標(biāo)系P1-X1Y1Z1原點(diǎn)到A1的距離;αb1—X1軸與P1A1間夾角;γ1—X1軸與電機(jī)軸線夾角;Rm—末端坐標(biāo)系Pe-XeYeZe原點(diǎn)到D1點(diǎn)在的距離;αm1—Xm軸與PeD1間夾角。
3.1.2 運(yùn)動(dòng)學(xué)反解
以第一連桿為例,B1點(diǎn)坐標(biāo)為(B1x,B1y,B1z),可以寫成如下形式:
把下角標(biāo)“1”改為“i”即為六個(gè)連桿通用的方程,組成方程組即可求出正反解。
目前六軸并聯(lián)機(jī)器人正解析解決辦法有分析方法、迭代方法、使用額外的傳感器和機(jī)器學(xué)習(xí)的方法等[11-13]。在并聯(lián)機(jī)械手末端安裝額外的傳感器,以獲得更多關(guān)于系統(tǒng)(機(jī)械手)狀態(tài)的信息,有助于快速方便地求解運(yùn)動(dòng)學(xué)正解,但是傳感器的額外成本讓這種方法的應(yīng)用受到限制。本節(jié)介紹的六軸并聯(lián)機(jī)器人構(gòu)型的神經(jīng)網(wǎng)絡(luò)和牛頓修正優(yōu)化求解運(yùn)動(dòng)學(xué)正解方案。比較兩個(gè)算法的優(yōu)劣性,發(fā)現(xiàn)這里的方法具有減少計(jì)算資源使用、實(shí)時(shí)快速執(zhí)行的優(yōu)點(diǎn)?;谏窠?jīng)網(wǎng)絡(luò)求解運(yùn)動(dòng)學(xué)正解的分析方法不僅限于六軸并聯(lián)機(jī)器人的特殊結(jié)構(gòu),也可以推廣到其他類型的六軸并聯(lián)機(jī)器人。神經(jīng)元處理單元對(duì)修改后的信號(hào)進(jìn)行求和,并將該值應(yīng)用于線性或非線性激活函數(shù),其產(chǎn)生的信號(hào)或值被傳送到輸出單元,輸入、權(quán)重、體系結(jié)構(gòu)和閾值都是神經(jīng)網(wǎng)絡(luò)器可以控制的參數(shù)。
根據(jù)上面所述的非線性方程組,采用三層BP神經(jīng)網(wǎng)絡(luò)方法對(duì)六軸并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)進(jìn)行正向求解。根據(jù)六軸并聯(lián)機(jī)器人的外觀結(jié)構(gòu),建立基于神經(jīng)網(wǎng)絡(luò)的六軸并聯(lián)機(jī)器人非線性方程。神經(jīng)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖4 所示。包括輸入層,隱層和輸出層??山?jīng)由下式將機(jī)器人正運(yùn)動(dòng)學(xué)的非線性映射轉(zhuǎn)換為線性映射,設(shè)N個(gè)樣本為(Pj,αj),其中j=1,2,···,N。Pj為網(wǎng)絡(luò)輸入向量,作為第j個(gè)位置樣本,αj作為第j個(gè)電機(jī)轉(zhuǎn)角為網(wǎng)絡(luò)輸出向量。
圖4 三層前向神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)Fig.4 Three-Layer Feedforward Neural Network Structure
將六軸并聯(lián)機(jī)器人運(yùn)動(dòng)控制過程中產(chǎn)生的位置和關(guān)節(jié)角度進(jìn)行保存,作為大量樣本輸入測(cè)試后,可以獲得機(jī)器人關(guān)節(jié)角度到機(jī)器人末端位置的運(yùn)動(dòng)學(xué)正描述,即可根據(jù)建立的非線性方程和權(quán)重得到六軸并聯(lián)機(jī)器人正解。
在迭代方法中,運(yùn)動(dòng)學(xué)問題被公式化,因此可以使用任何可用的數(shù)值技術(shù)來求解。這些數(shù)值技術(shù)是計(jì)算密集型的,可以實(shí)時(shí)的進(jìn)行正運(yùn)動(dòng)學(xué)的求解。牛頓修正法即把m步簡(jiǎn)化牛頓法合并,并作為基本牛頓法的一步來進(jìn)行計(jì)算,文中取m=2。
式中:X—位置和姿態(tài)值。
其余矩陣元素將上面6個(gè)等式中的αm1、αb1、γ1、θ1、LA1替換為αmi、αbi、γi、θi、LAi即可得出。
計(jì)算過程不斷循環(huán)下去,直到||ΔXk||<ε或||F(Xk)||<δ或計(jì)算周期大于N時(shí)(其中ε、δ為誤差容限,N為最大迭代次數(shù))輸出Xk值。
在并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)方程耦合、存在多解和奇異性的情況下,求解正運(yùn)動(dòng)學(xué)問題存在一定的困難。運(yùn)動(dòng)學(xué)正問題的數(shù)學(xué)解可能并不總是與物理解相對(duì)應(yīng),其求解方法取決于機(jī)器人的結(jié)構(gòu)。從算法的實(shí)時(shí)性和計(jì)算效率來說,牛頓修正優(yōu)化法是一個(gè)不錯(cuò)的選擇。
該系統(tǒng)可直接在真實(shí)的機(jī)器人平臺(tái)上解決涉及不確定性的聯(lián)合到達(dá)和抓取任務(wù)。即使具有最少的先驗(yàn)知識(shí),系統(tǒng)也可以在短時(shí)間內(nèi)學(xué)習(xí)且可靠地執(zhí)行其任務(wù)。此外,該系統(tǒng)也描述了控制系統(tǒng)對(duì)變化和錯(cuò)誤做出反應(yīng)的能力。
以LabVIEW為開發(fā)環(huán)境,通過LabVIEW的圖像處理工具包IMAQ(image AcQuisition)模塊的圖像采集卡對(duì)攝像頭進(jìn)行控制。在LabVIEW上開發(fā)了Vision Assistant 7.1的圖像處理程序,并進(jìn)行了集成應(yīng)用。首先,相機(jī)獲得良好的曝光圖像并進(jìn)行白平衡調(diào)整,從而獲得良好的圖像。該程序利用HSV的六棱錐模型,在圖像處理算法中,通過HSV顏色規(guī)范的二值化來識(shí)別特征,對(duì)待抓取目標(biāo)進(jìn)行分級(jí),然后在二維坐標(biāo)上分別搜索待抓取目標(biāo)的位置和外部特征。則從RGB到HSV的轉(zhuǎn)換及實(shí)現(xiàn)公式如下:
視覺處理系統(tǒng)流程,該流程中最重要的是識(shí)別目標(biāo)物體的特征,然后定位其中心位置以方便進(jìn)行抓取,如圖5所示。
圖5 視覺處理系統(tǒng)流程Fig.5 Visual Processing System Flow
為了獲得高質(zhì)量的目標(biāo)物體的圖像信息,正確地放置和安裝攝像機(jī)是非常關(guān)鍵的。如圖6所示,在該區(qū)域中所有棋盤的所有邊角都應(yīng)清晰可見,圖像處理軟件可直接檢測(cè)棋盤的所有角點(diǎn)。該區(qū)域由(9×7)正方形的圖案組成,由于外角不太可靠,可以有效地使用內(nèi)部(7×5)的正方形,且圖案的尺寸為(14×10)cm2,用高質(zhì)量打印機(jī)打印,然后放在玻璃上。
圖6 棋盤格Fig.6 The Checkerboard
在角點(diǎn)檢測(cè)之后,根據(jù)張正友標(biāo)定方法,工具箱用于執(zhí)行攝像機(jī)校準(zhǔn),并基于棋盤角點(diǎn)檢測(cè)提取相機(jī)的內(nèi)外固參數(shù),照相機(jī)捕獲了不同位置和方向的幾張棋盤圖像,然后通過此工具箱將其加載到計(jì)算機(jī)中。通過四次鼠標(biāo)單擊手動(dòng)定位每個(gè)棋盤方塊的極角,然后工具箱使用其角檢測(cè)算法找到角的位置。此時(shí)基于方程式(12)可以選擇其他選項(xiàng)來改善校準(zhǔn)結(jié)果,例如更改徑向失真系數(shù)的值。
校準(zhǔn)模型時(shí),假設(shè)制造商提供了相機(jī)的某些參數(shù),以減少估計(jì)的初步猜測(cè)。每個(gè)圖像需要n個(gè)特征點(diǎn)(n>8),并基于徑向?qū)R約束通過一組n個(gè)線性方程組解決了校準(zhǔn)問題。在不考慮偏心變形項(xiàng)的情況下,使用了二階徑向變形模型。兩步法可以處理3D或平面校準(zhǔn)網(wǎng)格的單個(gè)圖像或多個(gè)圖像。攝像機(jī)標(biāo)定涉及的其坐標(biāo)轉(zhuǎn)換關(guān)系,如圖7所示。
圖7 坐標(biāo)轉(zhuǎn)換關(guān)系圖Fig.7 Coordinate Transformation Diagram
式中:u—理想成像平面坐標(biāo);
d—實(shí)際的成像坐標(biāo)系;
(O,u,v)—計(jì)算機(jī)圖像坐標(biāo);
(cx,cy)—基準(zhǔn)點(diǎn);
f—攝像機(jī)的焦距;
k—徑向畸變系數(shù);
p—切向畸變系數(shù);
相機(jī)標(biāo)定校準(zhǔn)一直是相機(jī)參數(shù)測(cè)量的必要組成部分。
六軸并聯(lián)機(jī)器人待抓取的目標(biāo)是圓形彩色片,提取圓形樣本,在直角坐標(biāo)系中的圖像空間中的圓對(duì)應(yīng)著參數(shù)空間坐標(biāo)系中的一個(gè)點(diǎn),而直角坐標(biāo)系中的圖像空間中的一個(gè)點(diǎn)對(duì)應(yīng)著參數(shù)空間中一個(gè)三維直立圓錐,因此在確定直角坐標(biāo)系中的圓形,就可以在參數(shù)空間中求取各個(gè)圓相交的交點(diǎn),該點(diǎn)約束了通過該點(diǎn)一族圓的參數(shù)(a,b,r)。
圖8 點(diǎn)-線的對(duì)偶性Fig.8 The Duality of Point-Line
廣義Hough變換將輸入圖像中圓邊界上的點(diǎn)映射到三維的參數(shù)空間的錐面上去,最后這些圓錐就會(huì)相交于參數(shù)空間上某一點(diǎn)(a0,b0,r0),即可利用Hough變換檢測(cè)圓形。最后用一階矩M10和M01分別除以零階矩M00得到的是物體的質(zhì)心坐標(biāo)。
機(jī)器人運(yùn)動(dòng)學(xué)是對(duì)機(jī)器人機(jī)械手運(yùn)動(dòng)的分析研究。機(jī)器人運(yùn)動(dòng)學(xué)建模主要有兩種不同的空間,即笛卡爾空間和四元數(shù)空間。兩個(gè)笛卡爾坐標(biāo)系之間的變換可以分解為旋轉(zhuǎn)和平移。
各個(gè)軸軌跡曲線,如圖9所示。對(duì)機(jī)器人運(yùn)動(dòng)進(jìn)行輸入軌跡與輸出軌跡進(jìn)行驗(yàn)證,規(guī)劃曲線和實(shí)際曲線一致。
圖9 各個(gè)軸軌跡曲線Fig.9 Trajectory Curve of Each Axis
為了實(shí)際驗(yàn)證六軸并聯(lián)機(jī)器人運(yùn)動(dòng)控制正確性,六軸并聯(lián)機(jī)器人運(yùn)動(dòng)抓取示意圖,如圖10所示。六軸并聯(lián)機(jī)器人為生產(chǎn)線系統(tǒng)提供了穩(wěn)定運(yùn)動(dòng)控制功能,六軸并聯(lián)機(jī)器人準(zhǔn)確識(shí)別并同步跟蹤傳輸線上高速運(yùn)動(dòng)的產(chǎn)品,在高速運(yùn)動(dòng)中連續(xù)抓取待抓取目標(biāo),然后整齊的擺放到指定目標(biāo)。六軸并聯(lián)機(jī)器人準(zhǔn)確識(shí)別并同步跟蹤傳輸線上高速運(yùn)動(dòng)的產(chǎn)品,在高速運(yùn)動(dòng)中連續(xù)抓取多包產(chǎn)品,然后整齊的擺放到包裝箱中。
圖10 運(yùn)動(dòng)抓取示意圖Fig.10 Motion Grab Diagram
依靠千分表可以進(jìn)行測(cè)試,得出六軸并聯(lián)機(jī)器人重復(fù)定位精度為±0.05mm,運(yùn)動(dòng)速度快,拾放節(jié)拍為120次/分鐘,其位置和方向參數(shù)的精度分別接近0.008mm和0.0012°。
這里針對(duì)帶有六個(gè)自由度的并聯(lián)平臺(tái)的機(jī)械結(jié)構(gòu)的運(yùn)動(dòng)控制算法進(jìn)行了深入的研究。六軸并聯(lián)機(jī)器人致動(dòng)器通過萬向節(jié)連接到基座,并通過球形接頭連接到上平臺(tái)。六軸并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)正解的求解是閉環(huán)控制系統(tǒng)的關(guān)鍵,缺乏一種封閉形式的數(shù)學(xué)解。鑒于此,在本文的模型中,將運(yùn)動(dòng)學(xué)關(guān)系方程作為切入點(diǎn),提出了牛頓修正優(yōu)化法正運(yùn)動(dòng)學(xué)控制方法,根據(jù)圖像學(xué)形態(tài)特征開發(fā)了從圖像信息中確定待抓取目標(biāo)的圖形特征,然后對(duì)其進(jìn)行分揀抓取的功能模塊。最后,這里對(duì)六軸并聯(lián)機(jī)器人運(yùn)動(dòng)學(xué)和視覺抓取算法進(jìn)行了驗(yàn)證,其位置和方向參數(shù)的精度分別接近0.008 mm 和0.0012°。結(jié)果表明該方法運(yùn)動(dòng)速度快,拾放節(jié)拍110次/分鐘,驗(yàn)證了算法的有效性和正確性。