田習(xí)文,祁宇明
(天津職業(yè)技術(shù)師范大學(xué)機(jī)械工程學(xué)院,天津30222)
近些年,機(jī)器人視覺(jué)被應(yīng)用在眾多領(lǐng)域。并聯(lián)機(jī)器人作為極具發(fā)展?jié)摿Φ囊环N類(lèi)型,相比串聯(lián)結(jié)構(gòu),在運(yùn)作中兼具精度高、速度快、動(dòng)態(tài)響應(yīng)好、承載能力強(qiáng)、結(jié)構(gòu)緊湊等優(yōu)點(diǎn),并聯(lián)結(jié)構(gòu)的博弈機(jī)器人就是在這個(gè)背景下衍生的。21世紀(jì)以來(lái),Delta系列機(jī)器人更呈現(xiàn)出高速、高精度、靈活性等發(fā)展方向,人工智能阿爾法狗的成功,把機(jī)器人博弈又推向了一個(gè)新高度,使得視覺(jué)識(shí)別更加精確,分析更加快捷成為產(chǎn)品具有競(jìng)爭(zhēng)性的重要指標(biāo),因此,深入探索并聯(lián)機(jī)器人的視覺(jué)和算法從而實(shí)現(xiàn)其視覺(jué)聯(lián)動(dòng)控制顯得尤為重要。將視覺(jué)系統(tǒng)應(yīng)用于并聯(lián)機(jī)器人,并加以?xún)?yōu)化,進(jìn)而實(shí)現(xiàn)并聯(lián)機(jī)器人的視覺(jué)聯(lián)動(dòng)是研究熱點(diǎn)。見(jiàn)圖1.
圖1 Delta并聯(lián)型人機(jī)對(duì)弈機(jī)器人的體系結(jié)構(gòu)
Delta并聯(lián)型人機(jī)博弈機(jī)器人通過(guò)真實(shí)的人機(jī)對(duì)弈,使青少年、老年等科普對(duì)象不僅享受博弈的樂(lè)趣,也能了解機(jī)器人組成,掌握基本的計(jì)算編程能力。它分為視覺(jué)識(shí)別子系統(tǒng)、棋盤(pán)執(zhí)行機(jī)構(gòu)子系統(tǒng)和博弈算法子系統(tǒng),本文就是對(duì)該視覺(jué)系統(tǒng)和算法進(jìn)行探索優(yōu)化,實(shí)現(xiàn)視覺(jué)聯(lián)動(dòng)控制。
棋盤(pán)執(zhí)行機(jī)構(gòu)子系統(tǒng)由棋盤(pán)主體機(jī)構(gòu)、三自由度并聯(lián)機(jī)械手、棋子棋盤(pán)三部分組成,實(shí)現(xiàn)自動(dòng)取子、下子、提子等功能。研究在現(xiàn)有自動(dòng)控制理論和技術(shù)基礎(chǔ)上,實(shí)現(xiàn)體積小、成本低、精度高的棋盤(pán)執(zhí)行機(jī)構(gòu),實(shí)現(xiàn)對(duì)棋子運(yùn)動(dòng)的精確控制。
機(jī)械手主要由靜平臺(tái)、動(dòng)平臺(tái)和連接兩平臺(tái)的三條支鏈組成,其中伺服電動(dòng)機(jī)與減速器安裝于靜平臺(tái)上,每條支鏈由主動(dòng)臂和從動(dòng)臂組成,依據(jù)運(yùn)動(dòng)學(xué)對(duì)三自由度的并聯(lián)機(jī)械手的機(jī)構(gòu)進(jìn)行分析及設(shè)計(jì)。見(jiàn)圖2.
圖2 并聯(lián)機(jī)械手機(jī)構(gòu)簡(jiǎn)圖
利用solidworks軟件建立Delta機(jī)器人各零件的三維模型,然后進(jìn)行裝配得到完整的Delta機(jī)器人的三維裝配體模型,如圖3所示。Delta機(jī)器人主要由靜平臺(tái)、動(dòng)平臺(tái)、主動(dòng)臂及從動(dòng)臂構(gòu)成,其中,靜平臺(tái)和每個(gè)主動(dòng)臂通過(guò)轉(zhuǎn)動(dòng)副聯(lián)接,主動(dòng)臂和從動(dòng)臂、從動(dòng)臂和動(dòng)平臺(tái)都通過(guò)球鉸聯(lián)接。該機(jī)構(gòu)由三條運(yùn)動(dòng)支鏈組成,并均勻分布于靜平臺(tái)上,每條運(yùn)動(dòng)支鏈都有一個(gè)主動(dòng)臂和一個(gè)閉環(huán)組成,此閉環(huán)是由從動(dòng)臂和四個(gè)球鉸組成的平行四邊形封閉結(jié)構(gòu),此結(jié)構(gòu)通過(guò)球鉸分別與主動(dòng)臂和動(dòng)平臺(tái)聯(lián)接。三組均勻分布的平行四邊形閉環(huán)結(jié)構(gòu)保證了靜平臺(tái)和動(dòng)平臺(tái)只能保持相對(duì)平行運(yùn)動(dòng),消除了動(dòng)平臺(tái)的三個(gè)轉(zhuǎn)動(dòng)自由度,保留了動(dòng)平臺(tái)三個(gè)方向的平行自由度。
圖3 Delta機(jī)器人并聯(lián)機(jī)構(gòu)的三維模型
機(jī)器人視覺(jué)并非真的視覺(jué),是通過(guò)在機(jī)器人上安裝視覺(jué)傳感器,捕捉獲取目標(biāo)的位置信息,經(jīng)過(guò)特征提取匹配等得到相對(duì)位姿量,計(jì)算機(jī)利用該信息,使機(jī)器人完成相應(yīng)操作。這種特點(diǎn),使得機(jī)器人能靈活自主地適應(yīng)所處的環(huán)境,代替人類(lèi)完成一些危險(xiǎn)或復(fù)雜的工作。在三維視覺(jué)系統(tǒng)中,采用數(shù)字信號(hào)處理器可以提高視覺(jué)信息的實(shí)時(shí)處理速度,因而信息采集子系統(tǒng)與數(shù)據(jù)信號(hào)處理器之間的傳輸方式對(duì)傳輸處理速度起到關(guān)鍵作用,而數(shù)據(jù)實(shí)時(shí)采集系統(tǒng)和計(jì)算機(jī)之間的數(shù)據(jù)傳輸方式同樣也是影響實(shí)時(shí)系統(tǒng)速度的重要因素。因此,選取適當(dāng)?shù)牟杉到y(tǒng)和數(shù)據(jù)傳輸方式,可以實(shí)現(xiàn)視覺(jué)實(shí)時(shí)系統(tǒng)的優(yōu)化。
數(shù)字信號(hào)處理器(DPS)是高速運(yùn)算處理器的一種,它的高數(shù)據(jù)傳輸速度和處理速度,以及在高速運(yùn)算實(shí)時(shí)處理系統(tǒng)中合理的傳輸分配適用于實(shí)時(shí)處理速度的優(yōu)化。采用TMS320C542的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)尋址改進(jìn)的哈佛結(jié)構(gòu)如圖4,類(lèi)似于樹(shù)枝分叉結(jié)構(gòu):三條獨(dú)立的數(shù)據(jù)線(xiàn)相較于樹(shù)枝和一條相較于樹(shù)干的程序總線(xiàn),所有指令可同時(shí)進(jìn)行,提高數(shù)據(jù)處理速度,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)處理[1]。
圖4 實(shí)時(shí)采集處理系統(tǒng)原理圖
DPS本身具有高速運(yùn)算能力,因而改善數(shù)據(jù)傳輸方式,可以對(duì)整個(gè)實(shí)時(shí)采集方案實(shí)現(xiàn)優(yōu)化。考慮用數(shù)據(jù)塊的方式與計(jì)算機(jī)之間進(jìn)行數(shù)據(jù)傳輸,提高使用效率。采用電路較為便捷的雙端口RAM來(lái)實(shí)現(xiàn)實(shí)時(shí)采集處理系統(tǒng)與計(jì)算機(jī)之間的數(shù)據(jù)傳輸,可以使計(jì)算機(jī)的CPU和DSP很容易實(shí)現(xiàn)同時(shí)訪(fǎng)問(wèn)雙端口RAM,傳輸數(shù)據(jù)量和速度可同時(shí)獲得優(yōu)化。
圖 2中的 A(15-0)、D(15-0)、R/W、IOSTRB、XF和INT(0-3)均是實(shí)時(shí)采集處理系統(tǒng)的內(nèi)部總線(xiàn)信號(hào)[2]。圖5信號(hào)采集子系統(tǒng)與C542之間的內(nèi)部總線(xiàn)連接。
圖5 信號(hào)采集子系統(tǒng)與C542之間的內(nèi)部總線(xiàn)連接
在機(jī)器人控制中,電機(jī)控制算法的種類(lèi)很多,通常是給定一個(gè)指令速度值,通過(guò)輸入的算法運(yùn)算后,提供相應(yīng)的電壓信號(hào)來(lái)驅(qū)動(dòng)電機(jī),使其平穩(wěn)快速地達(dá)到指令轉(zhuǎn)速值,并維持這個(gè)值。換言之,電機(jī)一旦達(dá)到了這個(gè)轉(zhuǎn)速值,不論在何種不利因素的環(huán)境下,都應(yīng)能保持這個(gè)值不變,因此,選擇合適的算法對(duì)提高機(jī)器人系統(tǒng)的控制精度十分必要。
控制算法是機(jī)器人閉環(huán)控制策略的核心,然而,并非越復(fù)雜、精度越高的算法就越好,因?yàn)閷?shí)際工作中,應(yīng)有良好的實(shí)時(shí)性,根據(jù)當(dāng)前的具體情況,機(jī)器人需要在非常短的時(shí)間內(nèi)做出靈敏的反應(yīng),因而,將多個(gè)因素拆解成若干單個(gè)目標(biāo),分別對(duì)每個(gè)單項(xiàng)目進(jìn)行算法的優(yōu)化,提高精準(zhǔn)度和靈敏度。優(yōu)化算法的類(lèi)別很多,關(guān)鍵是針對(duì)不同的優(yōu)化問(wèn)題,例如可行解變量的取值(連續(xù)還是離散)、目標(biāo)函數(shù)和約束條件的復(fù)雜程度(線(xiàn)性還是非線(xiàn)性)等,應(yīng)用不同的算法。綜合考慮,選擇粒子群優(yōu)化算法。
這種算法受啟發(fā)于對(duì)鳥(niǎo)類(lèi)捕食行為的一種研究[3],借此,將機(jī)器人重復(fù)同一動(dòng)作流程獲取的多個(gè)視覺(jué)信號(hào),利用算法函數(shù),尋找目標(biāo)函數(shù)的最優(yōu)值,通過(guò)求解,得到最優(yōu)解,從而實(shí)現(xiàn)對(duì)整體反饋速度的優(yōu)化。
系統(tǒng)若找到兩個(gè)最優(yōu)解,代入如下公式,即可得到新的速度值和位置解。
v[]=w*v[]+c1*rand()*(pbest[]-present[])+c2*rand()*(gbest[]-present[])(a)
present[]=present[]+v[](b)
式中,v[]是粒子的速度,w是慣性權(quán)重,present[]是當(dāng)前粒子的位置.pbest[]and gbest[]如前定義rand()是介于(0,1)之間的隨機(jī)數(shù).c1,c2 是學(xué)習(xí)因子.通常 c1=c2=2.
程序的偽代碼如下
For each particle
____Initialize particle
END
Do
____For each particle
________Calculate fitness value
________If the fitness value is better than the best fitness value(pBest)in history
____________set current value as the new pBest
____End
____Choose the particle with the best fitness value of all the particles as the gBest
____For each particle
________Calculate particle velocity according equation(a)
________Update particle position according equation(b)
____End
While maximum iterations or minimum error criteria is not attained
以Delta機(jī)器人為例,基于MATLAB和ADAMS對(duì)其視覺(jué)信息的采集及算法進(jìn)行視覺(jué)聯(lián)動(dòng)控制的仿真。主要是執(zhí)行識(shí)別物體,抓取和存放的操作任務(wù)。設(shè)計(jì)運(yùn)動(dòng)路徑,如圖6所示。
圖6 Delta機(jī)器人仿真運(yùn)動(dòng)路徑
路徑中不但要求運(yùn)動(dòng)精度穩(wěn)定高效,還要求抓取和釋放位置精確。Delta機(jī)器人的末端執(zhí)行器是運(yùn)動(dòng)分為:上升,下降,平移三段。設(shè)計(jì)任務(wù)是在一個(gè)100 mm×300 mm×100 mm的空間內(nèi)執(zhí)行抓取5 kg的物體,抓取過(guò)程中限制主動(dòng)臂最大角速度amax=190 rad/s2.將A0、A3點(diǎn)分別作為抓取點(diǎn)和放取點(diǎn),做完路徑規(guī)劃,在ADAMS中測(cè)取四個(gè)點(diǎn)的坐標(biāo)分別為A0(0,-820,0)、A1(0,-720,0)、A2(300,-720,0)、A3(300,-820,0)。利用 MATLAB 軟件的求解程序,求出四個(gè)點(diǎn)對(duì)應(yīng)的主動(dòng)臂驅(qū)動(dòng)角度。如表1所列。
表1 各路徑點(diǎn)對(duì)應(yīng)的主動(dòng)臂驅(qū)動(dòng)角度
在仿真時(shí)分別賦予主動(dòng)臂和靜平臺(tái)的三個(gè)轉(zhuǎn)動(dòng)副旋轉(zhuǎn)驅(qū)動(dòng),導(dǎo)入、仿真后如圖7~圖9所示。
圖7 主動(dòng)臂的角速度、角加速度隨時(shí)間變化曲線(xiàn)
圖8 末端執(zhí)行器速度、加速度隨時(shí)間變化曲線(xiàn)
圖9 末端執(zhí)行器的位置隨時(shí)間變化曲線(xiàn)
從圖6可以看出,末端執(zhí)行器并未嚴(yán)格按直線(xiàn)上升、平移、下降,在視覺(jué)識(shí)別及拐角處平滑過(guò)渡,機(jī)器人可平穩(wěn)運(yùn)行,完成停止、抓取的活動(dòng),同時(shí)完美避障。在X方向的最大偏差僅為5.6 mm,相對(duì)誤差為1.9%;Y方向的最大偏差僅為10.6 mm,相對(duì)誤差為10.6%;Z方向的最大偏差僅2.7 mm.
綜上分析得出:
(1)并聯(lián)機(jī)器人視覺(jué)系統(tǒng)和電機(jī)算法是實(shí)現(xiàn)聯(lián)動(dòng)控制的兩個(gè)關(guān)鍵環(huán)節(jié)。
(2)采用改進(jìn)的哈佛結(jié)構(gòu)尋址模式提高實(shí)時(shí)采集處理系統(tǒng)的處理速度,選擇雙端口RAM數(shù)據(jù)傳輸方式,可以對(duì)整個(gè)視覺(jué)系統(tǒng)起到優(yōu)化作用。
(3)粒子群優(yōu)化算法,能有效地對(duì)單個(gè)目標(biāo)函數(shù)求最優(yōu)解,實(shí)現(xiàn)單項(xiàng)目算法的優(yōu)化。