劉楚天,陳曉瀚,胡嘉成
(廣東工業大學 機電工程學院,廣東 廣州 510006)
視覺傳感器搭配機械臂進行作業在整個工業生產中是很常見的。傳統的基于視覺傳感器的控制方式多是基于位置的視覺伺服方式,這種方式一般都需要對系統進行標定,需要標定的部分包括相機內部參數、機器人運動學參數以及相機與機器人之間的手眼關系。通常這種方式要求工作環境與標定環境一致,但在有毒、高溫、水下等環境中都沒有辦法進行標定操作。標定的過程是非常繁瑣的,對操作人員有一定要求,且標定過的系統結構發生了變化其參數也會發生變化,需要重新進行標定。為了解決這些問題,免標定視覺伺服的方式被提出,例如使用神經網絡去擬合手眼關系、基于卡爾曼濾波估計圖像雅克比矩陣、基于自抗擾控制器(Auto Disturbance Rejection Controller)的免標定視覺伺服控制等[1]。
所謂的免標定視覺伺服是指在不進行相機以及手眼標定的情況下,利用視覺系統控制機器人完成目標任務的方法。基于圖像的視覺伺服常用于免標定的視覺伺服控制中[2,3]。基于圖像的視覺伺服是需要圖像特征的,通常控制六軸機器人需要四個特征點,但在某些情況下目標可能并沒有豐富的圖像特征,如軌跡跟蹤[4]。因此,需要一種在少特征的情況下也能進行免標定視覺伺服的方法。本文提出了一種雙目免標定視覺伺服系統,并從系統的軟硬件設計、系統圖像雅克比矩陣估計算法、控制器算法三方面展開論述,最后通過定位實驗說明本系統的可行性和有效性。
雙目免標定視覺伺服系統主要由三部分組成,分別是機器人執行部分、視覺傳感部分以及控制器部分。整個系統的硬件部分包括視覺傳感器、六軸機械臂以及上位機。雙目免標定視覺伺服系統結構框圖如圖1所示。

圖1 雙目免標定視覺伺服系統結構框圖
六軸機械臂作為系統的執行機構,實時地接收上位機發送的控制指令,在接收指令之后其內部關節速度控制器控制各關節達到指令設定值。視覺傳感器利用其自身可以通過光學元件感知外界信息的特點為系統提供豐富的信息。上位機是整個系統的大腦,系統的圖像雅克比矩陣估計算法、圖像特征提取算法、機器人的控制算法都是在其中進行的。上位機與機器人之間的硬件連結是由雙絞線完成的,軟件上的通信是由socket實現的,視覺傳感器和電腦的信息傳輸是通過USB數據線完成的,各個算法以及模塊之間的信息交換也都是在上位機上完成的。
為了使各個模塊之間相互獨立,本系統采用多線程的方式,以降低圖像處理時耗長對整個系統的不利影響。圖像處理模塊實時地對視覺傳感器獲得的圖片進行圖像處理,包括濾波、二值化、邊緣檢測、目標提取等,并將獲得的信息構造成圖像的特征向量發送給另外兩個模塊。圖像雅克比矩陣估計模塊會實時地接收圖像處理模塊發送的圖像特征向量信息以及機器人發送的關節角信息,通過算法結合上述的信息估算出系統下一步的圖像雅克比矩陣并發送給控制模塊。控制模塊實時接收上面兩個模塊發送的信息,并計算出機械臂關節的運動速度,實時調整機械臂的運動控制機器人完成定位任務。
(1)

(2)
其中:s(t)和s(d)分別為當前圖像特征和期望圖像特征。
在絕大多數機器人系統中,控制兩輸入的都是關節運動速度。對于這樣的系統,我們可以建立如下微分映射關系,即:
(3)


(4)
其中:J=JpJr為系統的圖像雅克比矩陣。
圖像雅克比矩陣實質上是對非線性的手眼映射關系在某一時刻線性逼近,這就需要對每一時刻的圖像雅克比矩陣進行在線估計。本文選擇線性離散卡爾曼濾波算法對系統的圖像雅克比矩陣進行實時在線估計。
將系統的圖像雅克比矩陣的各個元素看成是某一線性離散系統的狀態變量,定義系統的狀態變量為:
(5)

根據卡爾曼濾波算法基本理論和濾波公式,首先對系統的狀態進行先驗估計:
(6)

計算先驗誤差協方差矩陣:
(7)

獲取卡爾曼增益:
(8)
其中:K(k)為k時刻的最優卡爾曼增益;C(k)為k時刻的測量矩陣;Rv為測量噪聲方差陣,一般是常量,取Rv=0.5I8。
矯正狀態估計誤差方差陣:
(9)

獲取系統狀態的最優估計:
(10)

x(0)是初始圖像雅克比矩陣所轉換的初始向量。初始圖像雅克比矩陣獲取方法是在機器人的初始位置任意給定l步線性無關的試探運動(l即為機器人的自由度,本文為6),得到相鄰兩次的機器人的關節角變化,Δp1,…,Δpl,并在每次運動時觀察相應的軌跡起始端的像素坐標變化Δf1,…,Δfl,從而獲取初始的圖像雅克比矩陣估計值J(0),即:
(11)
定義系統誤差為圖像誤差e(t)=s(d)-s(t)。在跟蹤過程中,為了加速系統響應,引入了比例控制策略:
va=c1J+e(t).
(12)
其中:va為機器人的關節角速度;c1為比例控制系數;J+為J的偽逆矩陣。
通過李雅普諾夫函數來驗證系統的穩定性[5]:
(13)
考慮到系統的圖像雅克比矩陣模型式(4)和圖像誤差e(t),則式(13)的導數為:
(14)
由李雅普諾夫穩定性理論可知:當JJ+正定時,閉環控制系統逐漸趨于穩定;當JJ+半正定時,該系統無法通過李雅普諾夫函數判斷是否是穩定的。
在實際的系統中,可以通過合理地選擇圖像特征以及限制機械臂的關節運動范圍來使JJ+保持正定,從而避免系統的不收斂。基于圖像的免標定視覺伺服系統控制原理框圖如圖2所示。

圖2 基于圖像的免標定視覺伺服系統控制原理框圖
本文通過機械臂末端定位實驗對所提出的雙目免標定視覺伺服系統的可行性進行了驗證,搭建的系統實物圖如圖3所示。

圖3 搭建的系統實物圖
本系統選擇六自由度協作型操作臂作為執行模塊,其控制器通過雙絞線與上位機相連,并實時地將機器人的關節角信息發送給上位機。將兩臺工業相機安裝在操作臂末端使其固連,可以保證兩臺相機與機器人末端的速度是一致的。這兩臺相機實時地獲取目標點的圖片并通過USB數據線發送給上位機。上位機接收到圖片信息以及其機器人關節角信息后會調用圖像處理算法、系統的圖像雅克比矩陣估計算法、控制算法并將處理后得到的信息發送給機器人控制器驅動機器人進行運動。本實驗的圖像目標是兩個點,用以驗證少目標點的情況下本系統可以完成機器人的視覺免標定定位實驗。整個實驗都是在沒有進行相機、手眼以及機器人運動學參數標定的情況下進行的。
本實驗的目標是將機器人從初始位置移動到期望位置,即將圖像中的目標點從初始位置移動到期望位置。初始的圖像特征向量為:
s=[u11,v11,u12,v12,u21,v21,u22,v22]T=
[450,320,504,312,186,352,281,345]T.
(15)
其中:(u11,v11)為相機1中第1個特征點初始位置的像素坐標;(u12,v12)為相機1中第2個特征點初始位置的像素坐標;(u21,v21)為相機2中第1個特征點初始位置的像素坐標;(u22,v22)為相機2中第2個特征點初始位置的像素坐標。
期望的圖像特征向量為:

[400,212,451,205,137,160,241,151]T.
(16)

本系統所選用的噪聲值是通過多次實驗效果確定的,上文已介紹,這里不過多贅述。
經過多次重復實驗,可以證明本系統可以達到預計目標。其中一次的實驗初始圖像、期望圖像以及經過實驗后的最終圖像如圖4所示,可以看出實驗后的圖像與期望圖像是很相近的。在定位過程中各圖像中圖像特征點的圖像誤差變化過程如圖5所示。由圖5可以看出:每個點都是從一開始就朝著縮小圖像誤差的方向運動,直到最后收斂到0附近。

圖4 實驗前、后的圖像

圖5 兩個相機中的兩個圖像特征點的誤差變化過程
本文提出了一種雙目免標定視覺伺服系統,并介紹了系統實現的理論原理:本系統使用的是基于圖像的視覺伺服方法,采用圖像雅克比矩陣的方法代替傳統的手模型,通過卡爾曼濾波對圖像雅克比矩陣進行估計并更新,最后通過比例控制法控制機器人到達目標位置。定位實驗驗證了本系統的可行性。