揭吁菡,熊麗婷
(華東交通大學(xué)理工學(xué)院,江西 南昌 330100)
在當(dāng)今計(jì)算機(jī)技術(shù)和電子技術(shù)迅速發(fā)展的時(shí)期,很多國家開始機(jī)器人方面的研究,在1962年美國研制了通用示教再現(xiàn)型機(jī)器人,標(biāo)志著機(jī)器人技術(shù)走向成熟[1]。國內(nèi)對(duì)機(jī)器人的研究始于20世紀(jì)70年代,在研究發(fā)展最迅速的時(shí)期,國內(nèi)成立了863高技術(shù)發(fā)展計(jì)劃,機(jī)器人技術(shù)是重要發(fā)展主題之一,這一舉措使得機(jī)器人技術(shù)得到了迅速發(fā)展[2]。
機(jī)器人技術(shù)發(fā)展至今,已日漸成熟,很多不同行業(yè)領(lǐng)域的智能機(jī)器人得以應(yīng)用,也有很多智能機(jī)器人被投入到工業(yè)生產(chǎn)中,解決了很多人力相關(guān)的問題[3]。這些智能機(jī)器人在未知環(huán)境中主要利用視覺信息完成導(dǎo)航,通過使用不同特性的傳感器采集機(jī)器人周圍不同種類的環(huán)境信息,令機(jī)器人按照規(guī)劃的路徑行駛或完成某項(xiàng)任務(wù)[4]。在利用視覺導(dǎo)航技術(shù)實(shí)現(xiàn)機(jī)器人的自主行動(dòng)時(shí),需應(yīng)用不同傳感器,其中光柵傳感器應(yīng)用最多,在機(jī)器人視覺導(dǎo)航中主要利用光柵反射信號(hào)或透射信號(hào)實(shí)現(xiàn)較大范圍內(nèi)的掃描和定位[5]。從上述內(nèi)容中可知傳感器光柵投射在機(jī)器人視覺導(dǎo)航中十分關(guān)鍵,當(dāng)傳感器光柵投射誤差比較大時(shí),嚴(yán)重影響機(jī)器人的導(dǎo)航性能,因此需使用校正方法來校正當(dāng)前實(shí)際應(yīng)用中出現(xiàn)的誤差。
傳統(tǒng)的校正仿真方法在識(shí)別傳感器光柵投射參數(shù)時(shí),主要采用非線性迭代方法,無法在辨識(shí)的同時(shí)保證誤差校正解的全局最優(yōu)性,很難達(dá)到高水平的誤差辨識(shí)能力,其分辨力和定位精度均存在不足[6-7]。因此,提出機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差校正方法,解決上述傳統(tǒng)方法中存在的問題。
機(jī)器人視覺導(dǎo)航中主要的數(shù)據(jù)源之一是場景數(shù)據(jù),在傳感器光柵投射誤差校正仿真中場景數(shù)據(jù)的仿真十分重要。針對(duì)機(jī)器人的運(yùn)動(dòng)環(huán)境,采用定性與定量相結(jié)合方法,建立仿真環(huán)境[8-9]。在建立過程中,將場景的高程離散到一張二維占據(jù)網(wǎng)格中。
仿真出的場景中所有物體均由三角形面片或四邊形面片構(gòu)成的,呈現(xiàn)出非均勻的特點(diǎn),場景在仿真中需用到幾千個(gè)面片,若在實(shí)際應(yīng)用中對(duì)每一個(gè)場景都檢測(cè)一遍,會(huì)嚴(yán)重影響機(jī)器人在行動(dòng)中的實(shí)時(shí)性。為更進(jìn)一步識(shí)別出導(dǎo)航傳感器光柵投射誤差,采用二維占據(jù)網(wǎng)格法表示場景的高程[10]。
假設(shè)場景由n個(gè)面片組成,一共有m個(gè)網(wǎng)格點(diǎn),計(jì)算的時(shí)間復(fù)雜度為T(m·n),在計(jì)算網(wǎng)格點(diǎn)的高程值時(shí),需對(duì)每個(gè)網(wǎng)格點(diǎn)進(jìn)行遍歷,所需時(shí)間比較多。若假設(shè)平均每個(gè)面片覆蓋c個(gè)網(wǎng)格點(diǎn),此時(shí)c 圖1 空間三角形向平面的投影示意圖 在完成投影后,計(jì)算投影到平面上的三角形或直線覆蓋的網(wǎng)格點(diǎn),考慮到場景中形狀的不確定,先計(jì)算落在網(wǎng)格點(diǎn)上的包圍三角形的最小正方形,判斷正方形網(wǎng)格點(diǎn)是否落在三角形內(nèi)部。 假設(shè)判斷點(diǎn)為E0,按照順序排列多邊形,表示為E1,E2,…,En,令η1=Ei-E0,i=1,2,…,n,ηn+1=η1,此時(shí)E0在多邊形內(nèi)部的充分必要條件就是叉積η1×ηi+1的符號(hào)相同。此時(shí)所有三角形覆蓋了整個(gè)場景,故每個(gè)網(wǎng)格點(diǎn)必落在一個(gè)或多個(gè)三角形內(nèi)部。假設(shè)網(wǎng)格點(diǎn)E的坐標(biāo)為(x0,0,z0),則經(jīng)過該點(diǎn)并且垂直于平面的空間直線方程為 X=Fs+X0 (1) 式中,F(xiàn)=(0,1,0),s代表直線方程的斜率,且s≥0,X0為網(wǎng)格點(diǎn)坐標(biāo),即X0=(x0,0,z0)。假設(shè)空間三角形的三個(gè)頂點(diǎn)為A(x1,y1,z1)、B(x2,y2,z2)、C(x3,y3,z3),則該三角形所在的空間平面方程為 H·X+d=0 (2) 式中H表示A點(diǎn)與B點(diǎn)連線和A點(diǎn)與C點(diǎn)連線的乘積,將已知的三個(gè)點(diǎn)代入到公式中,即可確定三角形所在位置d。當(dāng)乘積H的坐標(biāo)分量不等于0時(shí),搭建的三角形面片在平面上的投影同樣是三角形,此時(shí)利用求交算法計(jì)算點(diǎn)與平面區(qū)域的相交,判斷出網(wǎng)格點(diǎn)與三角形的位置關(guān)系,將式(1)代入到式(2)中,得到 H·(Fs+X0)+d=0 (3) 解得 (4) 此時(shí),即可計(jì)算出網(wǎng)格點(diǎn)的高程,完成場景數(shù)據(jù)的仿真。在此基礎(chǔ)上,識(shí)別出機(jī)器人視覺導(dǎo)航傳感器投射參數(shù)。 機(jī)器人視覺導(dǎo)航傳感器光柵投射產(chǎn)生的誤差為周期性的,按照傅里葉變換的思想,將誤差分離為多次諧波的疊加之和[12]。由此可知傳感器光柵投射參數(shù)中包含諧波幅值和相位,屬于高度非線性參數(shù),根據(jù)三角變化公式將其進(jìn)行線性化處理,令L=N,L表示測(cè)量位置,構(gòu)建兩個(gè)傳感器,依測(cè)量過程的進(jìn)行得到的測(cè)量值序列,計(jì)算諧波相位。計(jì)算公式為 式中θ表示某一位置的空間位置i的測(cè)量位置,θai和θbi表示兩個(gè)傳感器的讀數(shù),v表示諧波的階次,Rv、Qv、Uv和Wv分別表示諧波系數(shù)。隨著傳感器運(yùn)行獲取測(cè)量序列,依測(cè)量序列組成的方程組,得到序列的矩陣形式,經(jīng)過整理得到標(biāo)準(zhǔn)線性最小二乘形式 Δφ=χ×Coe (6) 式中χ表示兩個(gè)傳感器得到相應(yīng)的測(cè)量序列矩陣,Coe表示諧波系數(shù)組成的矩陣,當(dāng)傳感器光柵投射識(shí)別數(shù)據(jù)點(diǎn)數(shù)大于2(L+N)時(shí),使用簡單的最小二乘法獲得基于準(zhǔn)則 J=(Δφ-χ×Coe)T(Δφ-χ×Coe) (7) 當(dāng)J最小時(shí)的諧波參數(shù)的估計(jì)值為 Coe′=(χTχ)-1χΔφ (8) 隨著機(jī)器人視覺導(dǎo)航傳感器使用時(shí)間的增長,傳感器光柵投射產(chǎn)生的數(shù)據(jù)越來越多,在參數(shù)識(shí)別過程中需計(jì)算的量過于龐大,嚴(yán)重時(shí)甚至?xí)浪?,無法計(jì)算。因此,使用最小二乘參數(shù)估計(jì)遞推算法,依照數(shù)據(jù)采樣序列,對(duì)諧波參數(shù)進(jìn)行迭代辨識(shí),在傳感器相對(duì)穩(wěn)定的情況下,直接計(jì)算,對(duì)參數(shù)進(jìn)行實(shí)時(shí)的迭代辨識(shí) (9) (10) 式中α表示中間計(jì)算矩陣,下角標(biāo)l表示采集到l個(gè)數(shù)據(jù)時(shí)的情況。在識(shí)別出機(jī)器人視覺導(dǎo)航傳感器光柵投射參數(shù)后,校正投射誤差。 根據(jù)識(shí)別的實(shí)時(shí)參數(shù),獲得投射誤差數(shù)據(jù),將數(shù)據(jù)作為位移解算器的輸入,在位移解算器中進(jìn)行解算和誤差校正運(yùn)算。運(yùn)算流程如圖2所示。 圖2 位移解算與誤差校正 當(dāng)傳感器光柵出現(xiàn)誤差時(shí),經(jīng)過正余弦修正器生成校正后的正弦校正信號(hào)、余弦校正信號(hào),使用數(shù)字跟蹤角度對(duì)誤差進(jìn)行正余弦運(yùn)算,形成正弦數(shù)據(jù)和余弦數(shù)據(jù),再經(jīng)過兩級(jí)乘法運(yùn)算后得到修正信號(hào)。對(duì)兩個(gè)修正信號(hào)進(jìn)行求差運(yùn)算得到最終的合成信號(hào),對(duì)合成信號(hào)進(jìn)行低通濾波器濾除高頻周期信號(hào)成分得到校正信號(hào),此時(shí)掃描跟蹤鎖定傳感器光柵投射誤差,根據(jù)掃描跟蹤角度計(jì)算出投射誤差校正值,使用校正信號(hào)對(duì)傳感器光柵投射誤差進(jìn)行校正,得到最終的機(jī)器人視覺導(dǎo)航傳感器光柵投射測(cè)量結(jié)果,即為校正后的投射結(jié)果。至此,提出的機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差校正仿真方法設(shè)計(jì)完成。 為驗(yàn)證提出的誤差校正仿真方法的可行性,利用CIOMP-6光柵刻劃機(jī)分別刻劃兩塊光柵,分別是光柵A和光柵B,當(dāng)光柵刻劃機(jī)工作臺(tái)不進(jìn)行位置和擺角誤差的校正,光柵A則不采用雙壓電驅(qū)動(dòng)器控制工作臺(tái)刻劃,光柵B采用雙壓電驅(qū)動(dòng)器控制工作臺(tái)刻劃誤差,實(shí)驗(yàn)中光柵與傳感器同軸連接安裝。與此同時(shí),使用不同的誤差校正仿真方法處理誤差,實(shí)時(shí)獲得該光柵理論計(jì)算的分辨力值和定位精度。 實(shí)驗(yàn)中使用工業(yè)機(jī)器人、激光跟蹤儀、上位機(jī)和測(cè)量PC搭建實(shí)驗(yàn)平臺(tái)。通過激光跟蹤儀及其附屬的測(cè)量軟件建立一系列坐標(biāo)系,確定機(jī)器人和激光坐標(biāo)系之間的相對(duì)位置轉(zhuǎn)換關(guān)系。世界坐標(biāo)系是機(jī)器人行動(dòng)的全局坐標(biāo)系,將世界坐標(biāo)系作為固定坐標(biāo)系,用于多次實(shí)驗(yàn)中坐標(biāo)系的重建。在搭建坐標(biāo)系中,隨機(jī)選擇一個(gè)固定點(diǎn)作為坐標(biāo)系的原點(diǎn),從原點(diǎn)出發(fā),選取另一個(gè)點(diǎn)作為x軸線上的點(diǎn),剩余的固定點(diǎn)作為平面上的一點(diǎn)。建立世界坐標(biāo)系如圖3所示。 圖3 世界坐標(biāo)系 在完成世界坐標(biāo)系的建立后,借助測(cè)量軟件建立機(jī)器人測(cè)量基準(zhǔn)坐標(biāo)系,具體坐標(biāo)系如圖4所示。 圖4 機(jī)器人坐標(biāo)系 在完成實(shí)驗(yàn)平臺(tái)和坐標(biāo)系的準(zhǔn)備后,引用傳統(tǒng)的基于粒子群優(yōu)化的誤差校正仿真方法和基于聲光可調(diào)諧濾波器的誤差校正仿真方法,在相同的實(shí)驗(yàn)條件下驗(yàn)證不同誤差校正仿真方法的辨識(shí)能力。 在實(shí)驗(yàn)前,在實(shí)驗(yàn)平臺(tái)中模擬出機(jī)器人視覺導(dǎo)航傳感器光柵投射的誤差,面對(duì)相同誤差,采用不同的誤差校正方法后,得到分辨力,其值越高,校正精度越高。實(shí)驗(yàn)結(jié)果如下所示。 圖5 不同誤差校正仿真方法的分辨率比實(shí)驗(yàn)結(jié)果 圖5中顯示的是隨著實(shí)驗(yàn)時(shí)間的變化,不同誤差校正仿真方法的分辨力的變化情況。對(duì)比觀察圖中結(jié)果,從中可以看出,基于粒子群優(yōu)化的方法實(shí)驗(yàn)結(jié)果中分辨力整體呈下降的趨勢(shì),在有效的時(shí)間內(nèi),變化范圍在0.5~0.9之間;基于聲光可調(diào)諧濾波器的方法實(shí)驗(yàn)結(jié)果中分辨力整體水平較低,呈下降趨勢(shì),在有效時(shí)間內(nèi),變化范圍在0.3~0.7之間;提出的誤差校正仿真方法結(jié)果中分辨力變化相對(duì)穩(wěn)定,在有效的時(shí)間內(nèi),變化范圍在0.8~1.0之間,在時(shí)間截止時(shí),未呈現(xiàn)出下降的趨勢(shì)。綜上所述,提出的機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差校正仿真方法分辨力水平更高,對(duì)傳感器光柵投射誤差的辨識(shí)能力更強(qiáng)。 在定位精度實(shí)驗(yàn)中,使用機(jī)器人真實(shí)模擬傳感器光柵投射情況,設(shè)定相同的定位參數(shù),使用不同的誤差校正仿真方法對(duì)其進(jìn)行校正仿真,在此過程中,使用第三方插件計(jì)算不同方法的真實(shí)可達(dá)距離和定位精度。具體結(jié)果如表1所示。 表1 不同誤差校正方法的定位精度實(shí)驗(yàn)結(jié)果 對(duì)比觀察表中數(shù)據(jù)可知,與傳統(tǒng)的兩種誤差校正仿真方法相比,設(shè)計(jì)的誤差校正仿真方法真實(shí)可達(dá)距離遠(yuǎn),定位精度的最大值和平均值均高于傳統(tǒng)方法,再結(jié)合光柵分辨力實(shí)驗(yàn)結(jié)果可知,提出的機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差校正仿真方法分辨力水平高、定位精度滿足實(shí)際需求,該方法的具有更好的辨識(shí)能力,優(yōu)于傳統(tǒng)的誤差校正仿真方法。 在上述實(shí)驗(yàn)的基礎(chǔ)上,對(duì)比不同方法光柵投射誤差校正的效果,結(jié)果如圖2所示。 圖6 不同方法誤差校正效果比較 通過圖6可知,采用研究方法校正后,機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差率始終在4%以下,說明與傳統(tǒng)方法相比,所提方法有更好的誤差校正效果。 本文圍繞著機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差的校正仿真展開深入研究與探討,在大量研究資料的支持下,提出了機(jī)器人視覺導(dǎo)航傳感器光柵投射誤差校正仿真方法。在方法設(shè)計(jì)完成后,設(shè)計(jì)了多組對(duì)比實(shí)驗(yàn),以校正仿真方法的辨識(shí)能力作為衡量標(biāo)準(zhǔn),對(duì)不同方法進(jìn)行對(duì)比研究,實(shí)驗(yàn)結(jié)果證明了提出的誤差校正仿真方法的有效性和高辨識(shí)能力。但是在取得了一定成果的同時(shí),還存在不足之處,參數(shù)的辨識(shí)精度和計(jì)算效率問題并沒有深入了解和驗(yàn)證,在后續(xù)研究中可以從這一方面入手,提高機(jī)器人視覺導(dǎo)航傳感器光柵投射精度。2.2 參數(shù)實(shí)時(shí)識(shí)別
2.3 校正投射誤差
3 實(shí)驗(yàn)設(shè)計(jì)與結(jié)果分析
3.1 實(shí)驗(yàn)準(zhǔn)備
3.2 不同方法光柵分辨力對(duì)比分析
3.3 不同方法定位精度對(duì)比分析
4 結(jié)束語