黃 東,陳樂庚
(1. 桂林信息科技學院電子工程學院,廣西 桂林 541004;2. 桂林電子科技大學電子工程與自動化學院,廣西 桂林 541004)
隨著人們對高質量生活的不斷追求,機器人技術已經從工業領域擴展到醫療、教育、勘測等領域。在實際生活中,移動機器人無處不在。現階段,對機器人研究不只限于其自身特點,更要對如何解決生活中實際問題進行研究。機器人由先進智能系統組成,要實現其運動目標的跟蹤,需要了解所處環境的真實信息。障礙檢測是目標跟蹤的關鍵內容,在傳統算法中,因對環境的不確定性因素考慮不夠,常常導致跟蹤結果不準確。近年來,激光掃描以測距準確度高、實時性強等優勢在機器人移動目標檢測領域被廣泛使用。
文獻[1]提出基于感知代理與移動控制理論的移動目標跟蹤方法。首先構建機器人的代理模型與感知目標跟蹤模型,并提出分布式運動目標檢測,該方法由估計部分與一致性部分構成,經過這兩個階段的處理,目標狀態與協方差矩陣能夠達成一致,該方法提高了預測能力;確保機器人可以接近運動目標,避免與障礙物發生碰撞,實現對目標的跟蹤,但該方法對機器人目標運動速度設置較快,容易會出現跟蹤丟失,導致跟蹤精度較低。文獻[2]提出利用圖像特性為反饋的模糊控制策略,對運動目標進行跟蹤。在三軸直角坐標系內,將機器人、攝像機與計算機做為基礎,建立無標定視覺的跟蹤系統,該系統的工作原理為,利用攝像機對圖像信息進行采集,并經過定位處理,識別出運動目標與機器人的距離,并利用模糊控制系統控制機器人的運動狀態及軌跡,實時對圖像信息進行反饋,結合模糊推理規則,對系統誤差修正,最終達到穩定跟蹤的目的。但該方法對目標跟蹤的速度較慢,導致跟蹤效率較低。
基于上述方法中存在的問題,提出基于激光掃描的機器人運動目標跟蹤技術。通過對坐標系分析建立機器人運動模型;再根據障礙物的狀態,對運動目標進行檢測,確定機器人與目標之間的合適距離,利用卡爾曼濾波獲取目標運動矩陣,并對其進行跟蹤。與傳統方法相比本文方法通過對運動目標的多種處理,提升了運動目標控制的可靠性,提高了跟蹤精準度及效率。
在激光掃描過程中存在噪聲干擾因素,主要包括跟蹤環境中光源和激光光源相互干擾,導致像素混合;另一方面,測量目標的發射率過小或入射角過大導致數據丟失;由于障礙物的遮擋,產生掃描盲區;激光掃描線存在間隙,導致部分區域無法掃描。在對機器人進行導航時,由于上述干擾因素的存在,導致避障檢測不準確,所以需要對激光掃描的數據進行濾波處理[3,4]。
激光掃描測距信息主要表現為在全部極坐標測量方向上,鄰近時間點的測量數據存在相關性,并且在同一組測量中,鄰近掃描角度上的測量信息同樣具有較大相關性。所以,利用在線滾動動態自適應濾波去除在避障檢測中的干擾。采用極坐標呈現的激光掃描測距數據(ρi,j,λi,j),構建以ρi,j為中心的3×3的信息分析窗口

(1)
式中,ρi,j代表掃描中心到第j個障礙物之間的距離,λi,j為第j個障礙物的掃描位置與主掃描位置的角度值,下標i為測距信息的采樣時間點,j代表測距信息在同一在數據中的排列順序。因此,在該窗口中存在的9個數據在時間與空間上具有相關性,利用下述公式計算ρi.j和其相鄰的數據之差Δρmin
Δρmin=min{|ρi+t,j+s-ρi,j|
(2)
式中,t與s不能同時等于0,Δρmin為時間和空間上鄰近數據的最小差值,假設Δρmin>δd,此時,測量數據ρi,j可以看做測量噪聲值而不參與障礙檢測評估。δd代表激光雷掃描測距的標準差,在不同距離范圍內,激光掃描測距的信息統計表,利用DAF可以有效去除脈沖干擾噪聲和混合像素干擾,具體如表1 所示:

表1 不同距離標準差取值統計表
在對移動目標進行跟蹤時,常用坐標系統分為以下三種:第一種為機器人自身所在環境的全局坐標系[5],描述為(XG,YG,ZG),可以展示機器人在環境中位置變化情況;第二種為固定在機器人上的局部坐標系[6],描述為(XR,YR,ZR),第三種為通常情況下測距傳感器反饋給機器人的數據信息構成的極坐標系,描述為(ρ,θ),如圖1 所示。

圖1 機器人坐標示意圖
針對坐標位置為[x,y,θ]T的機器人來說,其運動學模型可以描述為

(3)
式中,ω表示機器人中心點的角速度,v為線速度,則上述公式必須符合非完整性的約束條件,即

(4)
在實際跟蹤過程中,機器人運動學參數受到動力約束[7]即
|v|≤vmax;|ω|≤ωmax
(5)
機器人在跟蹤時,控制左右輪速度,即

(6)
在上述公式基礎上,導出對應的離散化控制模型,即

(7)
當激光器與物體之間的差距大于三米時,數據點之間的距離明顯增加,對獲取目標數據信息產生不利影響。此時,只需要取三米之內的數據作為有效測量信息。并將存在不確定性因素信息剔除,可以減少計算機負擔。因此,需要在機器人前方構建具有一定半徑的滾動檢測視窗[8]。
在機器人前方擴展一個半徑為R的半圓檢測窗口,α和β分別代表此窗口起點與終點的調度值,則該窗口的數學模型描述為W(R,α,β),其中α=0°,β=180°,R=2m,R的取值和跟蹤時機器人與運動目標理想的距離有關。
在激光掃描線與物體發生碰撞時,抵達物體到傳感器位置的距離后dj返回,在窗口邊緣之外的數據,如果di>dmax,則取di=dmax,即

(8)
式中,dmax屬于視窗內運動目標實測距離最大值的閾值,dmax=R,dj表示構建視窗后第j個方向上的距離。
通過二維笛卡爾矩形柵格[9]展示雷達掃描到的跟蹤環境地圖,利用二維數據組記載該環境中相對的柵格是否存在障礙物。如果柵格只存在空閑與占據兩種情況,在已知每個柵格單元先驗機率的基礎上,采樣時間點結合激光掃描到信息記載已知柵格的占據狀態。
假設任意一個柵格存在障礙物且被掃描到,則該柵格的數據值設置為1。假設k-近臨差值,Δρk為觀測點(ρi,j,λi,j)中第k個鄰近極角上點(ρi,j+k,λi,j+k)的距離,則

(9)
將測距信息根據下述原則劃分成障礙區域,通過式(9)對比機器人在采樣時間為i時兩個鄰近障礙物的距離Δρk,j與k分別從0和1開始,當k到達一定數值時,其附近區域中的最小差值△ρmin低于預測的閾值△ρset,此時j從0開始,到k個鄰近角區域K中障礙全部當作同一類障礙。再從j+k開始,對障礙區域進行逐次聚類處理,在聚類后,任意一個障礙子集存在的特征表示為:
1)質心和質量屬性
障礙子集中質量被稱為子集On的柵格數量Mn,它取決于On的范圍與柵格精準度。子集On的質心則取決于測量值和平均極角值[10],即

(10)

(11)
Mn=k2-k1
(12)
根據機器人的位姿xrobot,yrobot,θrobot,將障礙集合On質心轉化成全局坐標形式的質心坐標,其表示為
xn=xrobot+ρncos(λn+θrobot)
(13)
yn=yrobot+ρnsin(λn+θrobot)
(14)
2)障礙子集的運動參數
利用數據關聯法則[11],對函數獲得的障礙信息進行評價,此時對障礙物運動速度評價表達式表示為
von=(On(i)-On(i-1))/Δt
(15)
式中,Δt表示采樣周期,獲取On的運動參數,對障礙物的運動狀態進行評價,為后續跟蹤提供依據。
結合上述思想,對運動目標的起始與終止角度掃描的范圍進行記載,并構建檢測模型為(fk,sk,dmin),f與s分別代表起始角與終止角,dmin為機器人和目標存在的最短距離。則該目標的位置坐標(xk,yk)的計算表達式為

(16)
獲得機器人中點(xr,yr)與目標中點(xk,yk)的距離表達式

(17)
在對運動目標檢測過程中,會存在誤差,根據下述公式可對誤差進行計算
σo=σd+σm
(18)
σm=(vr+vo)·(tsence+tprocess)
(19)
式中,σo為運動目標測量誤差,σd表示激光掃描誤差,vr代表機器人運動速度。在已知上述誤差后對其進行補償,從而提高跟蹤精準度。
卡爾曼濾波是對動態目標的狀態做線性最小誤差預測的方法。在本文中,激光掃描的運動目標在圖像中,可以將其視為勻速運動,通過卡爾曼濾波器完成運動目標的參數預測。
假設一個隨機動態系統的數學模型表示為
S(k+1)=H(k)S+n(k)
(20)
X(k)=F(k)S(k)+η(k)
(21)
式(20)屬于狀態方程,S(k)表示系統狀態矢量,H(k)代表狀態矩陣,n(k)表示噪聲向量;式(21)為觀測方程,F(k)是觀測數據矩陣。并且n(k)與η(k)為均值是零的白噪聲,滿足高斯分布[12]
E[n(k)]=0,E[n(k)nT(i)]=Qk,i=k
(22)
E[η(k)]=0,E[η(k)ηT(i)]=Λk,i=k
(23)
定義機器人系統狀態向量表示為X[x,y,vx,vy]T,x與y分別代表在x軸與y軸中坐標,vx和vy表示在兩個坐標軸上的速度。在添加高斯干擾白噪聲后獲得運動目標的狀態方程與觀測方程分別為
X(k)=A(k-1)X(k-1)+ω(k)
(24)
Z(k)=H(k)X(k)+v(k)
(25)
式中,A(k-1)是在T周期基礎上,從k+1時刻到k時刻的狀態轉移矩陣,其描述為

(26)

(27)
式中,狀態噪聲ω(k)與觀測噪聲v(k)均為零,即
ω(k)≈N(0,Q)
(28)
v(k)≈N(0,R)
(29)
為證明所提方法的合理性,設置仿真,并通過與感知代理和移動控制法則的分布式目標跟蹤和無標定視覺伺服機器人跟蹤控制的對比實驗,驗證方法的優越性。
本次仿真在MATLAB平臺上進行,操作系統為WINDOWSXP,系統運行內存為8GB,CPU為3.6GHz。
仿真參數設置如下:機器人運動速度為5m/s,運動目標速度是6m/s,掃描最遠距離50m,測量間隔時間是0.3s,測量距離噪聲0.2m,測量角度噪聲π/180,跟蹤范圍是200m×200m。
假設跟蹤的機器人表示為A,運動目標為B,當B從t0時間點沿y軸方向進行直線運動,當B與A的距離高于理想距離時,A開始對B進行跟蹤。采用不同方法對運動目標跟蹤的軌跡結果如圖2 所示。

圖2 不同方法跟蹤軌跡對比圖
從圖中可以看出,本文算法的跟蹤軌跡與運動目標軌跡更為接近,其它兩種方法都會出現在某一時間點偏離目標軌跡的現象,這是由于所提方法在對運動目標進行跟蹤時,將激光掃描技術中引入卡爾曼濾波的方法,降低了跟蹤過程中其它噪聲等因素的干擾,提升了所提方法的跟蹤精度。
為進一步驗證所提方法的可行性,實驗分析了所提方法、感知代理和移動控制法則的分布式目標跟蹤和無標定視覺伺服機器人跟蹤控制方法對運動目標跟蹤的效率,如圖3 所示:

圖3 不同方法跟蹤效率對比圖
分析圖3 可以看出,采用三種方法對運動目標進行跟蹤的效率不同。隨著跟蹤次數的改變,三種方法跟蹤效率始終呈現上升趨勢。其中,所提方法的跟蹤效率最高約為97%,而其它兩種方法的自動跟蹤效率始終低于所提方法,驗證了所提方法的可行性。
針對傳統機器人對運動目標進行跟蹤時精度低的缺陷,本文在激光掃描基礎上對機器人跟蹤技術進行研究。通過對機器人坐標系與運動模型的建立,利用卡爾曼濾波器對運動目標進行跟蹤,實現了機器人運動目標跟蹤。與傳統方法相比所提方法具有以下優勢:
1)采用所提方法對目標運行軌跡的跟蹤效果與實際運行效果較為接近,具有一定可信度;
2)采用所提方法對目標運行軌跡的跟蹤效率最高約為97%,具有一定可行性。