作者:龐云亭;黃強(qiáng);鄭娟;胡章豐 來源:伺服控制
視覺是人類感知外界信息的重要手段,視覺伺服系統(tǒng)是機(jī)器人獲取環(huán)境信息的關(guān)鍵組成部分。本文主要討論仿人機(jī)器人BHR-1的視覺伺服系統(tǒng)。首先介紹機(jī)器人頭部的視覺總體結(jié)構(gòu)方案,然后論述了基于立體視覺的信息處理和頭部運動控制,最后通過目標(biāo)跟蹤和物體抓取實驗說明了系統(tǒng)的可行性。
總體方案及控制系統(tǒng)仿人機(jī)器人的視覺伺服系統(tǒng)要求能夠根據(jù)具體環(huán)境和具體情況進(jìn)行主動搜索,實時將攝像頭轉(zhuǎn)向目標(biāo),實現(xiàn)對空間目標(biāo)的實時跟蹤并獲取物體的三維位置信息,從而控制手臂實現(xiàn)對物體的準(zhǔn)確抓取。BHR-1)的頭部有2個自由度,面部放置兩只CCD攝像頭作為視覺傳感器來模擬人的眼睛。機(jī)器人的手臂也是模仿人類的上肢設(shè)計的,具有7個自由度,肩關(guān)節(jié)3個自由度,肘關(guān)節(jié)2個自由度,腕關(guān)節(jié)2個自由度,可以實現(xiàn)人類上肢的各種動作。機(jī)器人根據(jù)目標(biāo)的三維位置信息實現(xiàn)對物體的抓取。
仿人機(jī)器人BHR-1的總體設(shè)計方案如圖2所示。為了實現(xiàn)物體的快速定位,需要完成圖像處理和運動控制的任務(wù)。一臺計算機(jī)將難以滿足快速定位的實時性要求,因此本文采用了雙計算機(jī)處理和Memolink通信方式的系統(tǒng)結(jié)構(gòu),使用兩臺計算機(jī)分別負(fù)責(zé)雙目立體視覺的信息處理和機(jī)器人的運動控制。Memolink是系統(tǒng)間進(jìn)行快速通信的一種有效解決方案。
機(jī)器人的視覺跟蹤以及目標(biāo)抓取的實現(xiàn)都依賴運動控制計算機(jī)對機(jī)器人的運動控制。運動控制系統(tǒng)根據(jù)視覺處理系統(tǒng)的處理結(jié)果,控制機(jī)器人采取相應(yīng)決策。例如:頭部的兩自由度轉(zhuǎn)動,以跟蹤目標(biāo)的運動或者上肢手臂去抓取目標(biāo)。運動控制子系統(tǒng)以RT-Linux實時操作操作系統(tǒng)作為軟件平臺,保證了機(jī)器人控制系統(tǒng)的實時性。
圖2 系統(tǒng)總體方案
機(jī)器人的運動控制子系統(tǒng)的被控對象是機(jī)器人的各關(guān)節(jié)的角度,而關(guān)節(jié)是由電機(jī)帶動的,因此被控對象實際上是帶動關(guān)節(jié)轉(zhuǎn)動的電機(jī)轉(zhuǎn)動的角度,是一個位置伺服系統(tǒng)。
系統(tǒng)使用了一套多功能接口板,將所有的A/D轉(zhuǎn)換、D/A轉(zhuǎn)換、ENC、PWM、32位IO等多種功能都集成在該接口板上,提高了系統(tǒng)的集成性并減小了系統(tǒng)體積和重量。
在控制信號的輸入方面,由于控制的目的是為了機(jī)器人的頭部能夠跟蹤運動的目標(biāo),因此實際上輸入量就是根據(jù)圖像處理子系統(tǒng)的處理結(jié)果得到的,在圖像處理的過程中,最終求得的目標(biāo)的位置就是后面運動控制子系統(tǒng)的輸入量。由于圖像處理子系統(tǒng)的處理結(jié)果本身就是數(shù)字量,運動控制子系統(tǒng)所得到的位置信息也是數(shù)字信號,因此,這里不需要模數(shù)轉(zhuǎn)換的過程。
在反饋信號的輸入方面,因為被控對象是電機(jī),確切的說是電機(jī)轉(zhuǎn)動的角度,是位置控制,因此可以用電機(jī)上面的軸角編碼器的輸出作為反饋信號。軸角編碼器是一個測量電機(jī)所轉(zhuǎn)過的角度的器件,它以脈沖的方式來反饋電機(jī)轉(zhuǎn)過的角度,電機(jī)轉(zhuǎn)過的角度越大,它輸出的脈沖個數(shù)就越多,反之,輸出的脈沖個數(shù)就越少。因此我們采用了接口板上的ENC(encoder)
接口來作為反饋信號的輸入通道,它可以測量軸角編碼器的脈沖輸出個數(shù)。機(jī)器人頭部的運動控制子系統(tǒng)的結(jié)構(gòu)框圖如圖3所示。
基于立體視覺的視覺信息處理系統(tǒng)采用了基于立體視覺的解決方案,通過加入了深度信息,使得目標(biāo)的搜索結(jié)果更加準(zhǔn)確。系統(tǒng)使用了美國SRI人工智能中心所開發(fā)的一套高速的雙目立體視覺系統(tǒng)SVS(small vision system)。
圖像分割是物體識別的預(yù)處理階段,是機(jī)器人視覺伺服系統(tǒng)的關(guān)鍵技術(shù)之一。該系統(tǒng)采用了基于顏色信息的閾值分割方法。理論分析和實驗結(jié)果都表明,對同一顏色屬性的物體,在光源種類、照度、物體反射特性等不同條件下,測得的RGB顏色值分布很分散,很難確定識別RGB的閾值范圍。而HSV模型更接近人眼對顏色的感知,它將采集的顏色信息分為色調(diào)、飽和度和亮度三種屬性量化,色調(diào)屬性H能比較準(zhǔn)確地反映顏色種類,對外界光照條件的變化敏感程度低,因此,HSV較之RGB更適合于用做識別處理的基礎(chǔ)。本文采用HSV模型作為顏色識別處理的基礎(chǔ),選取其中的參數(shù)H和V作為識別處理的判別依據(jù)。RGB空間中一點到HSV空間中一點的具體轉(zhuǎn)化關(guān)系如下:
V=max(r,g,b),V′= min(r,g,b);
If V= 0orV = V′then H=0, S=0;
If r = V then H=(g-b)/(V-V′);
If g= V then H=2+ (b-r)/(V-V′);
If b = V then H=4+ (r-g)/(V-V′), H=H×60;
If H <0 then H=H+360, S=(V-V′)/V
系統(tǒng)首先離線采樣目標(biāo)圖像區(qū)域,將該局部彩色圖像從RGB模型轉(zhuǎn)化為HSV模型,對其中H、S兩個分量分別作直方圖,得到選定區(qū)域的H、S閾值,這是一個離線的學(xué)
圖4 視覺處理流程圖
習(xí)過程。在隨后的實時圖像識別中,H、S閾值根據(jù)前一個視覺周期的彩色圖像實時更新以適應(yīng)新的光照條件。
視覺處理系統(tǒng)的流程圖如圖4所示,系統(tǒng)使用攝像頭來采集圖像,在對圖像進(jìn)行一系列的預(yù)處理之后,對其進(jìn)行區(qū)域分割,以得到多個區(qū)域,再搜索這些區(qū)域,根據(jù)已知目標(biāo)特征找到目標(biāo)所在的區(qū)域。如果找到,則控制機(jī)器人頭部面向目標(biāo),同時更新目標(biāo)的特征,以用來在下次搜索時使用,如果沒有找到相匹配的目標(biāo),則可能目標(biāo)被暫時隱藏或丟失,這時開始下一次處理,以等待目標(biāo)再次出現(xiàn)。
因為視覺處理系統(tǒng)處理的是上一個周期的圖像,所以得到的目標(biāo)坐標(biāo)也是上一個周期的坐標(biāo),如果用此方向坐標(biāo)來作為運動控制的輸入,則頭部運動始終滯后一個周期。為了加快系統(tǒng)的速度,本文采用了比例微分控制,系統(tǒng)地輸入輸出函數(shù)為:
Iα(k+1)=kp eα(k)+kd(eα(k)-eα(k-1))
Iβ(k+1)=kp eβ(k)+kd(eβ(k)-eβ(k-1))
eα(k)=αk-αk’,eβ(k)=βk-βk’
式中Iα(k+1)和Iβ(k+1)為在t(k+1)時間上控制系統(tǒng)的輸出;(αk,βk)表示在時間 t(k)目標(biāo)的方向坐標(biāo);(αk’, βk’)該時刻二自由度機(jī)構(gòu)的方向坐標(biāo);eα(k)和eβ(k) 分別表示該時刻頭部位置與目標(biāo)位置之間的偏差;kp和kd分別為控制系統(tǒng)的比例系數(shù)和微分系數(shù)。通過實驗調(diào)節(jié)kp和kd,kd<<kp,系統(tǒng)可以既有較高的反應(yīng)速度,同時又具有穩(wěn)定性。 運動控制過程根據(jù)前面的敘述,計算機(jī)控制系統(tǒng)的工作過程是一個循環(huán)的實時數(shù)據(jù)采集,實時決策,實時控制的過程,在本系統(tǒng)中,根據(jù)所選用器件的具體情況,假設(shè)對所有的控制環(huán)完成這樣的一個循環(huán)大約需要m毫秒的時間左右。在視覺信息處理系統(tǒng)中,處理一幀圖像平均需要n毫秒左右的時間,由于視覺處理和運動控制任務(wù)的特點的不同,n>>m,也就是說視覺處理的周期要遠(yuǎn)遠(yuǎn)大于運動控制的周期。在一個視覺處理的周期內(nèi),系統(tǒng)可以完成多個控制周期的處理。因此在一個視覺處理周期之后,系統(tǒng)應(yīng)該做好下一個視覺處理周期之內(nèi)的運動規(guī)劃,也就是做好后面多個控制周期之內(nèi)的運動規(guī)劃,這樣才能保證機(jī)器人的頭部以均勻、平緩,同時又是準(zhǔn)確的速度來跟蹤目標(biāo)。
控制系統(tǒng)軟件流程如圖5所示。
在每一個運動控制周期內(nèi),程序都首先要查看Memolink,看視覺信息處理系統(tǒng)是否有新的處理結(jié)果通過Memolink傳遞到運動控制系統(tǒng),如果沒有,程序就按照預(yù)設(shè)的運動規(guī)劃來控制機(jī)器人運動;如
圖5 機(jī)器人運動控制的軟件流程
果有,程序就先要根據(jù)視覺系統(tǒng)的處理結(jié)果來修改運動規(guī)劃。為了使機(jī)器人頭部的運動平穩(wěn),我們把每次預(yù)設(shè)的運動規(guī)劃所規(guī)劃的時間定為略大于視覺處理的平均周期,這樣就能夠保證系統(tǒng)在每次新的視覺處理結(jié)果到來之時,原有的運動規(guī)劃還沒有執(zhí)行完。從而使只要目標(biāo)在不斷運動,機(jī)器人頭部便可以處于不斷運動過程中,避免了機(jī)器人頭部時轉(zhuǎn)時停的現(xiàn)象。隨后程序分別讀取規(guī)劃和反饋,根據(jù)兩者之差來求得控制量,再發(fā)出控制信號,控制機(jī)器人頭部的轉(zhuǎn)動。
對于控制量的求法程序采用了傳統(tǒng)的PID算法,設(shè)t(k)為第k個運動控制周期時刻,在t(k)時間上,系統(tǒng)的輸出量為Yk,運動規(guī)劃的規(guī)劃量為Xk,依據(jù)PID算法,在t(k+1)時間上,系統(tǒng)的輸出Yk+1為
Yk+1=KP(Xk-Yk)+Ki∑(Xk-Yk)+Kd(Xk-Yk-Xk-1+Yk-1)
上式中KP,Ki,Kd分別為比例系數(shù),積分系數(shù),微分系數(shù)。在一個控制系統(tǒng)中,一定大小積分系數(shù)可以使系統(tǒng)沒有殘差,但會降低響應(yīng)速度;而一定大小的比例系數(shù)可以加快系統(tǒng)的響應(yīng)速度,并能根據(jù)輸入的變化提前做出響應(yīng),但可能導(dǎo)致系統(tǒng)不穩(wěn)定。因此在結(jié)果可以接受的情況下,應(yīng)該只使用比例系數(shù),如果結(jié)果達(dá)不到要求再使用積分系數(shù)和微分系數(shù)。
實驗本系統(tǒng)中,視覺信息處理系統(tǒng)和運動控制系統(tǒng)分別適用Windows和RT-Linux作為軟件開發(fā)平臺。RT-Linux是實時操作系統(tǒng),使用它可以滿足運動控制的實時性,而Windows系統(tǒng)的強(qiáng)大的多媒體功能使其成為圖像處理的平臺。視覺信息處理計算機(jī)的CPU為PⅣ 2.4GB,內(nèi)存512M;運動控制計算機(jī)的CPU為PⅢ 700MHz,內(nèi)存256M;Memolink是連接視覺處理系統(tǒng)與運動控制系統(tǒng)的橋梁,我們選用的產(chǎn)品采用PCI接口,最大傳輸速率為1Mbytes/s。攝像頭為SVS視覺處理系統(tǒng),每秒鐘采樣15幀。
SVS視覺處理系統(tǒng)安裝才2自由度的運動機(jī)構(gòu)上,該機(jī)構(gòu)在2個自由度方向的運動足以使其指向任何方向,因此可以實現(xiàn)跟蹤物體。BHR-1的頭部的三維尺寸為寬19cm,高27cm,深19cm,重量2.8kg,以上數(shù)據(jù)包括機(jī)械結(jié)構(gòu)、軸承、電機(jī)、攝像機(jī)等。
利用該系統(tǒng)跟蹤和定位物體時,圖像的處理速度為每秒鐘10幀,視覺伺服周期為100ms左右,運動控制系統(tǒng)的伺服周期是3ms,近距離的定位精度較高,最高精度為1m處3‰。圖6為BHR-1的頭部跟蹤和物體定位實驗。為進(jìn)一步驗證本文提出的視覺定位與動作規(guī)劃的方法的有效性,BHR-1系統(tǒng)實現(xiàn)了對物體的抓取試驗(如圖7),機(jī)器人手臂是具有7個自由度的機(jī)器人的右臂,實驗過程中,視覺系統(tǒng)將目標(biāo)物體的三維信息通過memolink傳遞給運動控制計算機(jī),運動控制計算機(jī)根據(jù)上面提出的方法規(guī)劃數(shù)據(jù)并實現(xiàn)抓取物體。結(jié)語本文給出了一種基于雙目視覺的物體的跟蹤和定位方案。雙目視覺用于獲取目標(biāo)物體的三維空間信息,實現(xiàn)物體的定位。這個系統(tǒng)采用了雙計算機(jī)處理和Memolink 通訊方式,兩臺計算機(jī)分別進(jìn)行視覺信息處理和運動控制,保證了系統(tǒng)具有較高的響應(yīng)速度。
則比較:gt
-
控制系統(tǒng)
+關(guān)注
關(guān)注
41文章
6509瀏覽量
110381 -
機(jī)器人
+關(guān)注
關(guān)注
210文章
28102瀏覽量
205843 -
計算機(jī)
+關(guān)注
關(guān)注
19文章
7360瀏覽量
87632
發(fā)布評論請先 登錄
相關(guān)推薦
評論