siemens x
機(jī)器視覺(jué)

基于圖像的機(jī)器人視覺(jué)伺服實(shí)驗(yàn)研究

2025China.cn   2012年08月07日

  制造出像人一樣具有智能的能替代人類(lèi)勞動(dòng)的機(jī)器人,一直是人類(lèi)的夢(mèng)想,人類(lèi)獲取的信息80%以上是通過(guò)視覺(jué)。因此,在智能機(jī)器人的研究中,具有視覺(jué)的機(jī)器人的研究也就成了第一位的。對(duì)機(jī)器人視覺(jué)伺服系統(tǒng)的研究是機(jī)器人領(lǐng)域中的重要內(nèi)容之一,其研究成果可應(yīng)用在機(jī)器人自動(dòng)避障、軌跡跟蹤和運(yùn)動(dòng)目標(biāo)跟蹤等問(wèn)題中。從反饋信息類(lèi)型的角度分類(lèi),機(jī)器人視覺(jué)伺服系統(tǒng)可分為基于位置的視覺(jué)伺服系統(tǒng)(position-base)和基于圖像的視覺(jué)伺服系統(tǒng)(image-base)[1]?;谖恢玫囊曈X(jué)伺服系統(tǒng)首先要估計(jì)目標(biāo)物體在直角坐標(biāo)空間中相對(duì)于攝像機(jī)的位置,其視覺(jué)伺服誤差定義在三維笛卡爾空間,視覺(jué)或特征信息用來(lái)估計(jì)機(jī)械手末端與目標(biāo)的相對(duì)位姿,這種方法需要對(duì)視覺(jué)系統(tǒng)和機(jī)器人進(jìn)行精確標(biāo)定,另外由于要對(duì)圖像進(jìn)行解釋?zhuān)蚨?jì)算量較大?;趫D像的視覺(jué)伺服系統(tǒng)的伺服誤差直接定義在圖像特征空間,即攝像機(jī)觀(guān)察到的特征信息直接用于反饋,不需要對(duì)三維姿態(tài)進(jìn)行估計(jì),但系統(tǒng)需在線(xiàn)計(jì)算圖像雅可比矩陣(圖像特征參數(shù)變化量與任務(wù)空間位姿變化量的關(guān)系矩陣)及其逆陣,而圖像雅可比矩陣跟許多實(shí)時(shí)變化的參數(shù)有關(guān),這是一個(gè)復(fù)雜的非線(xiàn)性過(guò)程,從理論上很難分析,并且對(duì)機(jī)器人的控制設(shè)計(jì)提出了較大的要求[2]。機(jī)器人視覺(jué)伺服系統(tǒng)是一個(gè)很復(fù)雜的系統(tǒng),綜合了許多學(xué)科的內(nèi)容,而各學(xué)科的發(fā)展又極不平衡,影響了其進(jìn)一步發(fā)展。正是基于此,機(jī)器人視覺(jué)伺服研究目前處于停滯不前的狀態(tài),國(guó)內(nèi)對(duì)此方面的研究大多只是進(jìn)行了仿真實(shí)驗(yàn),而未在實(shí)際機(jī)器人系統(tǒng)上實(shí)現(xiàn)。本文利用松下交流伺服系統(tǒng)、pmac運(yùn)動(dòng)控制卡、dsp圖像處理系統(tǒng)、工控機(jī)和機(jī)器人組成了伺服系統(tǒng),在具體機(jī)器人系統(tǒng)中對(duì)其進(jìn)行實(shí)驗(yàn)研究,探索基于圖像的機(jī)器人視覺(jué)伺服實(shí)現(xiàn)問(wèn)題。

機(jī)器人視覺(jué)伺服系統(tǒng)組成部分

  機(jī)器人系統(tǒng)及研究?jī)?nèi)容

  圖1是本實(shí)驗(yàn)的機(jī)器人系統(tǒng)硬件圖。二自由度平面機(jī)器人的第一關(guān)節(jié)垂直固定于工作平臺(tái)上,2個(gè)關(guān)節(jié)均由松下交流伺服電機(jī)驅(qū)動(dòng),且只能在水平平面內(nèi)轉(zhuǎn)動(dòng),固定于第二根桿末端的攝像頭為單目ccd攝像頭,用dsp圖像處理系統(tǒng)完成圖像采集、處理,提取目標(biāo)特征值作為視覺(jué)信息反饋量。本文選取圓形目標(biāo)物體的灰度質(zhì)心在圖像平面的坐標(biāo)值作為圖像特征[3]。本文研究的是基于圖像的機(jī)器人視覺(jué)伺服系統(tǒng)的伺服實(shí)現(xiàn)問(wèn)題,根據(jù)目標(biāo)物體圖像特征值的變化控制機(jī)器人兩關(guān)節(jié)的運(yùn)動(dòng)使其第二根桿末端能跟蹤到位于工作臺(tái)上的靜止或運(yùn)動(dòng)物體,對(duì)系統(tǒng)實(shí)現(xiàn)視覺(jué)伺服控制。

機(jī)器人視覺(jué)系統(tǒng)數(shù)學(xué)模型

  本文擬對(duì)系統(tǒng)進(jìn)行實(shí)驗(yàn)研究。建立機(jī)器人坐標(biāo)、攝像機(jī)坐標(biāo)、圖像坐標(biāo)和目標(biāo)點(diǎn)坐標(biāo)的坐標(biāo)變換關(guān)系。圖2是在機(jī)器人的第二根桿末端安裝一個(gè)攝像頭,形成eye-in-hand構(gòu)型而建立的坐標(biāo)變換關(guān)系圖。圖3是攝像機(jī)系統(tǒng)坐標(biāo)與圖像坐標(biāo)的關(guān)系及成像原理示意圖。

[DividePage:NextPage]

  設(shè)機(jī)器人第一關(guān)節(jié)和第二關(guān)節(jié)的轉(zhuǎn)角分別為θ1和θ2,第一根桿長(zhǎng)為l1,第二根桿長(zhǎng)為l2。選取圖2中o點(diǎn)作為基坐標(biāo)參考點(diǎn),用[x0 y0 z0]t表示,攝像機(jī)坐標(biāo)系用[xc yc zc]t表示,圖像坐標(biāo)系用[u w]t表示;機(jī)器人第一關(guān)節(jié)用[x1 y1 z1]t表示,第二關(guān)節(jié)用[x2 y2 z2]t表示,設(shè)固定的目標(biāo)點(diǎn)pc在攝像機(jī)坐標(biāo)系(c)的齊次坐標(biāo)為: pc =[xc yc zc1]t,在基坐標(biāo)系(o)的齊次坐標(biāo)為:p0=[x0 y0 z0 1]t,兩個(gè)坐標(biāo)系之間的變換關(guān)系為:p0=0tcpc。

  根據(jù)機(jī)器人運(yùn)動(dòng)學(xué)得到攝像機(jī)坐標(biāo)系與基坐標(biāo)系之間的變換矩陣如下:

松下交流伺服系統(tǒng)

  本實(shí)驗(yàn)中機(jī)器人兩個(gè)關(guān)節(jié)均是由松下交流伺服電機(jī)驅(qū)動(dòng),電機(jī)和其驅(qū)動(dòng)控制器共同構(gòu)成了松下交流伺服系統(tǒng)。松下minasa系列交流伺服系統(tǒng)由a系列驅(qū)動(dòng)器和配套交流伺服電機(jī)組成。其以三相交流伺服系統(tǒng)為基本原理[5],采用光電編碼器作為電機(jī)轉(zhuǎn)速和轉(zhuǎn)子磁極位置檢測(cè)單元,系統(tǒng)在驅(qū)動(dòng)器內(nèi)部集成了相關(guān)功能模塊,構(gòu)成了一個(gè)高集成度、高控制精度、數(shù)字化、智能化的閉環(huán)伺服控制系統(tǒng)。根據(jù)期望輸入指令值,按照已設(shè)定好的控制方式和各參數(shù)設(shè)定值,驅(qū)動(dòng)器控制各相關(guān)功能單元,產(chǎn)生出控制igbtpwm模塊的信號(hào),最終控制伺服電機(jī)按照期望值運(yùn)轉(zhuǎn)。系統(tǒng)具有分倍頻功能,可以以多種形式將反饋脈沖輸出給外部控制器或接收位置控制指令信號(hào)。系統(tǒng)具有多種控制模式,如速度和轉(zhuǎn)矩控制模式,以模擬信號(hào)作為輸入,本文采用的是轉(zhuǎn)矩控制模式[6]。

  pmac運(yùn)動(dòng)控制卡

  pmac運(yùn)動(dòng)控制卡是美國(guó)delta tau data systems公司生產(chǎn)的一種可編程、高性能伺服運(yùn)動(dòng)多軸控制器,采用motorola公司的數(shù)字信號(hào)處理芯片dsp56001作為cpu。

  pmac可認(rèn)為是一臺(tái)完整的計(jì)算機(jī),用dsp芯片作為主處理器,處理8個(gè)軸的所有計(jì)算并可同時(shí)控制8軸運(yùn)動(dòng),具有獨(dú)立的存儲(chǔ)空間、輸入輸出接口以及其他外圍擴(kuò)展電路。它可與各種類(lèi)型的主機(jī)、放大器、電機(jī)、傳感器結(jié)合完成各種類(lèi)型的功能,只要我們應(yīng)用好其硬件特性和軟件特性,依據(jù)特定的功能要求對(duì)其進(jìn)行設(shè)置,就能使它正常高效地工作。pmac卡為用戶(hù)提供了pwin32應(yīng)用軟件和pcomm32pro動(dòng)態(tài)鏈接庫(kù)。高級(jí)語(yǔ)言通過(guò)pcomm32pro動(dòng)態(tài)鏈接庫(kù),可以直接調(diào)用相關(guān)函數(shù)與pmac卡進(jìn)行通訊,從而實(shí)現(xiàn)對(duì)pmac卡的控制[7]。本文將它與松下交流伺服系統(tǒng)配合使用。

 

[DividePage:NextPage]

dsp圖像處理系統(tǒng)及圖像處理

  系統(tǒng)簡(jiǎn)介

  本實(shí)驗(yàn)中采用的是北京合眾達(dá)公司的seed-vpm642視頻處理系統(tǒng),該系統(tǒng)是一款專(zhuān)為各種視頻應(yīng)用而開(kāi)發(fā)的pci插卡或帶10/100m以太網(wǎng)接口的處理系統(tǒng)。它是在tms320dm642芯片基礎(chǔ)上通過(guò)外擴(kuò)容量為4m×64位的同步動(dòng)態(tài)存儲(chǔ)器sdram;容量為4m×8位的在線(xiàn)電可擦/寫(xiě)異步存儲(chǔ)器flash;可配置為rs232/rs422/rs485標(biāo)準(zhǔn)的兩路uart串行接口;4路pal/ntsc標(biāo)準(zhǔn)模擬視頻輸入,1路pal/ntsc標(biāo)準(zhǔn)模擬視頻輸出;4路立體聲音頻輸入/輸出;實(shí)時(shí)時(shí)鐘rtc和512×8位eeprom;32位的33mhz、支持主/從模式的pci接口或者10/100mbase-tx標(biāo)準(zhǔn)以太網(wǎng)接口;標(biāo)準(zhǔn)ata硬盤(pán)接口;以及esam硬件加密模塊。系統(tǒng)可實(shí)時(shí)實(shí)現(xiàn)多路數(shù)字視頻/音頻的編解碼運(yùn)算,如mpeg4、h.264、g.729等;可實(shí)時(shí)接收4路視頻/音頻輸入,并實(shí)時(shí)輸出。并能實(shí)現(xiàn)與其他io設(shè)備、計(jì)算機(jī)、存儲(chǔ)設(shè)備、以太網(wǎng)絡(luò)進(jìn)行實(shí)時(shí)數(shù)據(jù)的高速傳輸和處理。系統(tǒng)由實(shí)驗(yàn)箱體、ccd攝像頭、seed-vpm642處理板等組成。在箱體上已固定好兩個(gè)串行接口、硬盤(pán)接口、4路圖像輸入和輸出接口、液晶顯示器等[8]。

  圖像處理

  本實(shí)驗(yàn)圖像處理具體實(shí)現(xiàn)過(guò)程如圖4所示。

  由ccd攝像頭攝取的按4:2:2格式傳輸?shù)牟噬M視頻信號(hào)經(jīng)過(guò)解碼芯片的采集,對(duì)y、cb、cr信號(hào)按照2:1:1采樣率進(jìn)行采樣,并將它們分離開(kāi)來(lái)。在dsp系統(tǒng)中將彩色圖像轉(zhuǎn)變成灰度圖像,對(duì)該圖像進(jìn)行閾值二值化后變成二值圖像,然后經(jīng)過(guò)中值濾波濾除噪聲點(diǎn),使用sobel算子進(jìn)行邊界提取。對(duì)該邊界圖像信號(hào)使用點(diǎn)hough質(zhì)心求取算法求取質(zhì)心圖像坐標(biāo)[3],并通過(guò)串口通訊將質(zhì)心坐標(biāo)值傳遞給工控機(jī)程序;同時(shí),處理后的數(shù)字視頻信號(hào)經(jīng)過(guò)編碼芯片編碼后,送顯示設(shè)備實(shí)時(shí)顯示。

機(jī)器人視覺(jué)伺服系統(tǒng)工作流程

  硬件流程

  本實(shí)驗(yàn)系統(tǒng)由工控機(jī)、pmac運(yùn)動(dòng)控制卡、松下交流伺服系統(tǒng)、dsp圖像處理系統(tǒng)和機(jī)器人組成。了解和熟悉松下交流伺服系統(tǒng)的原理和功能后,調(diào)試機(jī)器人關(guān)節(jié)伺服電機(jī)的運(yùn)行,優(yōu)化相關(guān)控制參數(shù)以求獲得最好伺服效果;研究pmac運(yùn)動(dòng)控制卡的原理和功能,并與松下交流伺服系統(tǒng)配合,編寫(xiě)運(yùn)動(dòng)程序,不斷調(diào)整和優(yōu)化pmac卡的控制參數(shù),以求獲得滿(mǎn)意的運(yùn)動(dòng)控制效果;對(duì)seed-vpm642圖像處理系統(tǒng)進(jìn)行深入學(xué)習(xí)和研究后,開(kāi)發(fā)視頻圖像處理程序。組成該系統(tǒng)的硬件流程圖如圖5所示。

  pmac控制卡安裝在工控機(jī)中,它通過(guò)isa總線(xiàn)與工控機(jī)通訊。工控機(jī)主要運(yùn)行主控程序、pmac應(yīng)用程序、dsp應(yīng)用軟件ccs。seed-vpm642實(shí)驗(yàn)箱通過(guò)rs232串口數(shù)據(jù)線(xiàn)與工控機(jī)相連并進(jìn)行數(shù)據(jù)通訊。pmac控制卡通過(guò)電纜連接松下交流伺服系統(tǒng),接收松下伺服控制器輸出的編碼器信號(hào),輸出指令信號(hào)給松下交流伺服系統(tǒng)。ccd攝像頭攝取目標(biāo)物體圖像,輸出連續(xù)彩色視頻圖像給dsp圖像處理系統(tǒng)。seed-vpm642圖像處理系統(tǒng)處理攝像頭攝取的圖像,求取圓形物體的質(zhì)心圖像坐標(biāo),通過(guò)串口傳遞給工控機(jī)。

        系統(tǒng)工作流程

  給定期望目標(biāo)物體質(zhì)心圖像坐標(biāo),主控程序計(jì)算其與由dsp圖像處理系統(tǒng)反饋的質(zhì)心圖像坐標(biāo)值的差值,判斷系統(tǒng)是否已到達(dá)伺服位置,若已到達(dá),則結(jié)束伺服過(guò)程;否則,求解圖像雅可比矩陣的逆陣,得到機(jī)器人兩個(gè)關(guān)節(jié)應(yīng)轉(zhuǎn)動(dòng)的角度值,并將其輸出給pmac運(yùn)動(dòng)程序,pmac卡按運(yùn)動(dòng)程序計(jì)算并輸出轉(zhuǎn)矩指令給松下伺服控制器,由它直接控制機(jī)器人關(guān)節(jié)電機(jī)的運(yùn)轉(zhuǎn),通過(guò)編碼器檢測(cè)關(guān)節(jié)的位置,反饋給伺服控制器和pmac卡(伺服控制器對(duì)編碼器信號(hào)進(jìn)行處理后自身使用并可同時(shí)輸出)。ccd攝像頭跟隨機(jī)器人運(yùn)動(dòng),攝取目標(biāo)物體圖像,通過(guò)dsp圖像處理程序處理后求得目標(biāo)物體質(zhì)心圖像坐標(biāo),通過(guò)串口通訊傳遞給主控程序作為視覺(jué)反饋量,形成視覺(jué)伺服循環(huán)。

        實(shí)驗(yàn)結(jié)果

  基于上述系統(tǒng)原理,在vc++6.0環(huán)境下編寫(xiě)主控程序,主控程序主要包括界面的顯示和人機(jī)交互部分、圖像雅可比矩陣逆陣部分、pmac應(yīng)用程序部分,串口通信部分、數(shù)據(jù)存儲(chǔ)部分。程序運(yùn)行界面如圖6所示。

  程序界面能對(duì)期望像素值、實(shí)際像素值的初始值、增益矩陣、關(guān)節(jié)初始轉(zhuǎn)角、數(shù)據(jù)采集間隔等進(jìn)行設(shè)置。程序能夠?qū)?shí)際像素值、關(guān)節(jié)角度增量值和關(guān)節(jié)實(shí)際位置值等進(jìn)行實(shí)時(shí)顯示,并存儲(chǔ)相關(guān)數(shù)據(jù)。通過(guò)調(diào)用pmac動(dòng)態(tài)鏈接庫(kù)函數(shù),實(shí)現(xiàn)與pmac卡的通訊。增益矩陣為對(duì)角矩陣,用來(lái)設(shè)置關(guān)節(jié)角度變化的放大比例。程序設(shè)置了兩個(gè)定時(shí)器,一個(gè)用于采集兩個(gè)關(guān)節(jié)的實(shí)際位置值,另一個(gè)用于定時(shí)接收串口數(shù)據(jù)值、計(jì)算雅可比矩陣、與pmac卡通訊等,也即為系統(tǒng)的伺服周期。

 

[DividePage:NextPage]

 

  本實(shí)驗(yàn)利用兩個(gè)時(shí)刻的像素誤差作為控制量,來(lái)驗(yàn)證視覺(jué)伺服算法是否正確和上述系統(tǒng)是否實(shí)際可行。通過(guò)設(shè)置關(guān)節(jié)1、關(guān)節(jié)2的初始角度分別為0和0.2弧度,期望像素值u和w分別為200和110,實(shí)際像素u和w初始值分別為95和150,矩陣增益1和2分別為0.06和0.05,pmac卡采集時(shí)間設(shè)定為100ms,伺服周期設(shè)定為1.2s。下面兩表是根據(jù)以上設(shè)置進(jìn)行實(shí)驗(yàn)的一組數(shù)據(jù)。表1是物體質(zhì)心圖像坐標(biāo)兩相鄰時(shí)刻的變化值,表2是由程序計(jì)算出的機(jī)器人兩個(gè)關(guān)節(jié)角度變化值。

  根據(jù)以上數(shù)據(jù)運(yùn)用originpro軟件繪制的圖形如下:圖7是圖像坐標(biāo)兩相鄰時(shí)刻的變化值曲線(xiàn),圖8是機(jī)器人兩個(gè)關(guān)節(jié)角度變化值曲線(xiàn)。

  在實(shí)驗(yàn)中,根據(jù)目標(biāo)物體圖像坐標(biāo)像素的變化,得到機(jī)器人關(guān)節(jié)轉(zhuǎn)動(dòng)角度的變化,通過(guò)pmac卡和松下交流伺服系統(tǒng)的作用實(shí)現(xiàn)了機(jī)器人的視覺(jué)伺服運(yùn)動(dòng)。從上述兩表和兩圖可看出,圖像坐標(biāo)的變化和機(jī)器人關(guān)節(jié)角度值的變化是一種非常復(fù)雜的非線(xiàn)性關(guān)系,這也從另一方面證實(shí)了圖像雅可比矩陣的非線(xiàn)性關(guān)系和求解困難性。從公式(5)可看出,圖像雅可比矩陣既跟當(dāng)前時(shí)刻的像素值有關(guān),還與攝像機(jī)的相關(guān)參數(shù)、機(jī)器人的相關(guān)參數(shù)和關(guān)節(jié)的角度值有關(guān),是一個(gè)時(shí)時(shí)刻刻都隨這些量的變化而變化的矩陣,因而其非線(xiàn)性非常嚴(yán)重,求解也非常困難,本文中假定了機(jī)器人的轉(zhuǎn)動(dòng)角度初始值,才使得求解稍容易一點(diǎn)。本實(shí)驗(yàn)只是基于圖像的機(jī)器人視覺(jué)伺服實(shí)驗(yàn)研究的起始階段實(shí)驗(yàn),其效果并不太理想。本文系統(tǒng)的攝像頭是運(yùn)動(dòng)的,目標(biāo)物體是不動(dòng)的,所處理的圖像是動(dòng)態(tài)視頻圖像,這就對(duì)dsp系統(tǒng)和視頻圖像處理方法提出了較高要求;因而圖像處理算法還有待進(jìn)一步改進(jìn)和開(kāi)發(fā),并脫離dsp仿真環(huán)境下載到系統(tǒng)中運(yùn)行,也有待于對(duì)整個(gè)系統(tǒng)的伺服算法做更深入的研究。

結(jié)語(yǔ)

  本文分析了機(jī)器人視覺(jué)伺服系統(tǒng)的基本原理,采用基于圖像的視覺(jué)伺服方法,繞過(guò)三維空間重建和坐標(biāo)變換,建立了機(jī)器人視覺(jué)伺服系統(tǒng)的數(shù)學(xué)模型,并應(yīng)用到實(shí)際機(jī)器人系統(tǒng)中來(lái)。組建了由工控機(jī)、pmac運(yùn)動(dòng)控制卡、松下交流伺服系統(tǒng)、dsp圖像處理系統(tǒng)和兩桿平面機(jī)器人組成的視覺(jué)伺服機(jī)器人系統(tǒng),在對(duì)各子系統(tǒng)深入研究的基礎(chǔ)上,開(kāi)發(fā)了pmac運(yùn)動(dòng)程序、dsp圖像處理程序和工控機(jī)主控程序,在實(shí)際機(jī)器人系統(tǒng)中初步實(shí)現(xiàn)了視覺(jué)伺服控制,系統(tǒng)能根據(jù)目標(biāo)物體質(zhì)心圖像坐標(biāo)值的變化,求解出機(jī)器人兩關(guān)節(jié)應(yīng)運(yùn)動(dòng)的角度值,并控制機(jī)器人按相應(yīng)角度值運(yùn)動(dòng),實(shí)現(xiàn)視覺(jué)伺服。實(shí)驗(yàn)結(jié)果表明,系統(tǒng)初步實(shí)現(xiàn)了基于圖像的機(jī)器人視覺(jué)伺服在實(shí)際機(jī)器人系統(tǒng)中的實(shí)現(xiàn)。本實(shí)驗(yàn)只是該課題的起始階段實(shí)驗(yàn),其效果也不理想,下一步將對(duì)整個(gè)系統(tǒng)進(jìn)行更深入的研究。

(轉(zhuǎn)載)

標(biāo)簽:機(jī)器人 視覺(jué)伺服系統(tǒng) 松下 我要反饋 
2024世界人工智能大會(huì)專(zhuān)題
即刻點(diǎn)擊并下載ABB資料,好禮贏(yíng)不停~
優(yōu)傲機(jī)器人下載中心
西克
2024全景工博會(huì)
專(zhuān)題報(bào)道