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