閆 照,辛大欣,曹鵬祥
(西安工業大學電子信息工程學院,陜西 西安 710021)
近年來,自動導引車(automatic guided vehicle,AGV)被廣泛應用到零部件裝配、倉儲物流、碼頭裝卸等需要頻繁運送物料的領域[1]。在貨物裝配運送過程中,AGV 與傳送帶、工作臺等進行近距離接駁。為保證裝卸時貨物不發生掉落,需盡量減少與工作臺之間的??烤嚯x[2]。但因為差速AGV無法橫向移動和物理尺寸的限制,停靠間隙往往過大,不能滿足裝卸貨物的精度要求。
針對這個問題,文獻[3]采用激光反射信標加測距光電的方法進行AGV的精確定位,并采用雙三角差分控制算法保證快速精確進入接駁位置,但該方法只適用于縱向接駁,具有很大的局限性。文獻[4]提出了通過雙磁釘絕對定位結合基于視覺的色帶導引定位方法,最終實現機器人的絕對定位。文獻[5]提出應用磁條導向,磁卡進行定位控制,最終采用專用的滾動導向組件完成二次補償,解決了AGV與工作平臺的精確接駁問題。但文獻[4,5]只適用于人工預設固定軌跡的情況,人工成本高、魯棒性差。文獻[6]提出了仿側方位停車的之字形控制方法,采用視覺定位結合重復原地旋轉加直線的橫向接駁軌跡解決了差速AGV無軌跡橫向接駁的問題。由于攝像頭視角限制,調整次數過多,且路徑曲率變化不平滑。雖然,針對AGV 接駁問題,學者們做了大量的研究,但是如何高效準確橫向接駁仍然是一個具有挑戰性和研究價值的問題。
本文提出一種基于激光雷達的AGV 精確接駁方法。接駁方法由精確定位和軌跡規劃兩部分組成。首先,對雷達數據的線段分割、特征識別和自定位確定AGV 在接駁過程中位姿。然后,采用基于最小接駁半徑的不等半徑算法,完成差速AGV近距離橫向接駁軌跡規劃。本文所提算法,可取代原有的人工裝卸,在快遞物流分揀和零部件裝配等領域的貨物自動裝卸中具有廣泛的應用前景。
工業生產中,AGV因載荷需求一般采用矩形差速六輪結構,其中,包括2 個主驅動輪,4 個隨動輪[7]。在與工作平臺橫向接駁過程中,如圖1(a)所示,AGV 居于兩側的差速驅動輪與前端輪廓相差了AGV 長度1/2 的距離。當AGV隨驅動輪作圓周轉向時,前端輪廓也在以更大的半徑做圓周運動,圖1(b)中陰影部分為前端輪廓所經過的區域。可以看到,前端輪廓軌跡明顯與運行軌跡存在偏差,即轉向偏差。

圖1 差速AGV模型分析
AGV的寬度為w,長度為l,AGV的整體的轉向半徑為r,外驅動輪的轉向半徑為r+w/2,轉向偏差為d,有
由式(1)可知,轉向偏差d與差速AGV 自身尺寸和轉向半徑有關。依據工業中AGV實際尺寸,最大轉向偏差范圍為0.18 ~0.59 m,而接駁??块g隙一般要求在0.1 m 以內,顯然并不能滿足裝卸貨物時接駁精度要求,故須精確接駁算法來完成差速AGV精確接駁。
2.1.1 總體定位算法
本文提出一種基于角點識別的精確定位算法,通過在接駁目標點前方放置矩形物體產生3個具有特定關系的角點特征,作為導引AGV 進入接駁位置的參考角點,如圖2所示。

圖2 AGV定位示意
定位算法分為3個步驟,首先,需要使用激光雷達掃描獲得的點集,通過計算斜率差[8]對其進行初步分割;然后,對分割后屬于同一直線特征的數據直線擬合,根據相鄰擬合直線間夾角和角點間距離篩選識別出特定參考角點[9];最后,根據直線角度偏差和參考角點坐標求取AGV 自身位姿。
2.1.2 線段分割
受文獻[10]啟發,提出了一種基于計算斜率差對雷達數據進行分割的方法,如圖3 所示,激光雷達數據是以O點為原點,逆時針等間隔依次排列的P1,P2,P3,…,對應的距離為d1,d2,d3,…。根據相鄰2個數據的距離大小,由距離短的點Pi向距離長的點Pi+1做垂線交于點P′i,則αi為障礙物與Pi+1P′i的夾角。

圖3 掃描點示意
由幾何關系可得
在近似時根據相鄰兩數據距離值選取其中較小值與間隔角度φ的弧長作為斜率的分母,減小了近似誤差。令ki=tanαi,則有
斜率差Δk計算公式為
當i點前后相鄰的數據點在同一條直線時,斜率差變化不大;而當i為角點時,該點的斜率差會因前后數據屬于不同的直線而產生較大的波動,即當|Δk(i)|>Δkth,|Δk(i)|>|Δk(i-1)|且|Δk(i)|>|Δk(i+1)|時,則認為i點即為分割點。其中,Δkth根據多次實驗驗證后取值為1.0。
對于圖4(a)所示的激光雷達原始數據,Δk(i)的值如圖4(b)所示??梢钥吹?,3 個數據點156,159 和168 在對應的Δk(i)有較明顯的峰值,將該3 個數據點作為數據分割點,對雷達數據進行分割。

圖4 環境測量原始數據與雷達數據分布
2.1.3 特征識別
經過數據分割后,采用最小二乘法[11]對激光雷達的數據擬合,設直線的方程為
式中αj為第j條擬合直線斜率;bj為第j條擬合直線截距。
將每一個激光點的極坐標系數據(di,θi)轉換為直角坐標系數據(xi,yi),求解方法為
式中θi為第i束激光的角度,di為第i束激光測得的距離。
求解以下最優化問題
其中,對αj,bj分別求偏導
解得
擬合后的直線集合表示為
對相鄰的直線求取直線間夾角
根據實際角點特征,通過90°+θth>θj>90°-θth篩除不符合條件的角點特征,將符合條件的角點特征對應的兩條直線聯立獲得交點坐標(xj,yj)作為真實角點坐標,然后通過角點間的距離進一步識別出特定的3個角點。
2.1.4 自定位
在AGV初始位置建立全局坐標系,此時激光雷達局部坐標系與全局坐標系重合,識別出的A,B和C3 個角點坐標即為該角點的全局坐標。在初始位置AGV 與工作平臺保持平行,AGV初始位姿(x0,y0,θ0)為(0,0,90°)。
在接駁過程中,可通過求取相同直線的角度變化求得AGV當前轉過的角度[12]。由式(10)可得,激光雷達局部坐標系下擬合線段AB和BC與X軸的夾角分別為
則k時刻AGV的姿態角度差值θΔk為
式中θAB0,θBC0為初始時刻線段AB和BC的角度;θABk,θBCk為k時刻線段AB和BC的角度。
角點A在全局坐標系下的坐標有(xA0,yA0),在k時刻雷達坐標系下坐標是(xAk,yAk)。則由A角點在全局坐標系下k時刻的位移(xA′k,yA′k)為
同理可得到角點B,C對應的位移。由式(13)和式(14)可得,在全局坐標系下,k時刻的AGV坐標(xk,yk,θk)為
為保證AGV可滿足接駁誤差要求實現橫向接駁且不發生碰撞,參照文獻[13]思想,本文提出了一種差速矩形AGV的不等半徑接駁算法。
2.2.1 軌跡規劃算法
針對AGV轉向偏差問題,本文提出最小接駁轉向半徑概念,即差速矩形AGV以圓弧軌跡橫向靠近工作平臺時,接駁轉向軌跡半徑必須滿足大于或等于的最小半徑。最小接駁轉向半徑Rcmin由式(1)可得
本文路徑規劃算法將接駁軌跡中的最小轉向半徑圓弧軌跡的替換為最小接駁轉向半徑圓弧軌跡,然后根據AGV起始位姿反向求得與最小接駁半徑圓弧相切且滿足約束條件的逼近軌跡圓弧。
改進不等轉彎半徑平行泊車的參考路徑如圖5 所示。AGV的初始位姿為S0(x0,y0,θ0),終點位姿為Sd(xd,yd,θd),其中θ0,θd均為π/2。首先以O1為圓心,R1為轉向半徑,轉過α角度到達點C。隨后再以O2為圓心,Rcmin(最小接駁轉彎半徑)為半徑作轉向運動,再次轉過相同角度最終到達目的地Sd(xd,yd,θd)。

圖5 軌跡規劃算法
由幾何分析可得
將自定位中獲取的AGV初始位姿和目標最終位姿,以及式(16)代入式(17)即可求得AGV所需轉過的角度α和第一段圓弧半徑R1的值,從而完成橫向接駁路徑規劃。
2.2.2 約束空間的生成
由于實際過程中可能會發生與工作平臺碰撞或者公式無解的情況,還需要對整個軌跡規劃添加約束[14]。
由于物料運送的需要和成本的考慮,僅在AGV前端設有一個激光雷達,掃描范圍為270°,且為提高AGV 在狹窄環境下的運動能力,一般與障礙物距離閾值為0.1 m[15]。為滿足定位要求和保證安全,在橫向逼近的過程中,運動方式只考慮前進和差速轉向,AGV 在橫向逼近的過程中,最小的轉彎半徑Rmin應為0.85 m。
不等轉彎半徑路徑規劃方法約束條件主要包括2 個:1)2個階段的轉彎半徑均需大于等于AGV 最小轉彎半徑Rmin,即R1&R2≥Rmin;2)在整個接駁的過程中,AGV的前端外頂點P(xp,yp)不能碰到工作臺,即xp<xA且yp<yA。在接駁過程中,只有同時滿足以上2 個條件的軌跡才能成功接駁。
研究選用激光雷達采集模擬環境數據,通過分析軟件對原始激光雷達數據進行分析。在室內中搭建模擬接駁環境,如圖6 所示,在接駁位置前方放置長為32 cm、寬為28 cm的矩形物體作為特定角點特征,實驗中各參數分別為:Δkth=0. 8,θth=3°,車長1 m,車寬0. 7 m,車輪半徑0.1 m,工作臺坐標范圍為(2 ~3,1)、(3,7.5 ~1),AGV 橫向接駁的??块g隙為0.05 m。

圖6 模擬接駁環境
如圖7(a)所示,可以看出,在非角點處兩算法斜率差相同,而在A,B,C對應的168,159,156 等處斜率變化劇烈的角點附近,本文算法較文獻[10]算法斜率差更大,角點特征更易識別分割。

圖7 精確定位結果
特別注意的是,155,156 點的|Δk(i)|均大于Δkth,且|Δk(155)-Δk(154)|>|Δk(156)-Δk(154)|,故真實的角點應當在155,156點之間,且離兩點均相對較遠,此時本文算法斜率差之差更加明顯。與文獻[10]算法相比,本文算法保持了計算簡單、計算量小的優點,更增加了抗干擾能力,更易分割。
對分割后的數據進行特征識別,結果如圖7(b)所示。在AGV接駁過程中的選中4 個不同位置進行A,B,C3 個角點特征的識別。為驗證定位精度,本文通過計算3 個角點間距離與真實值的誤差來評價定位效果。
如表1所示,AB距離的偏差范圍為[-0.008,0.009],BC距離的偏差范圍為[-0.004,0.004],AC距離的偏差范圍為[-0.003,0.005],偏差范圍和標準差都為最大的AB距離均小于0.01 m。
根據角點特征求取全局坐標系下激光雷達在4個不同位置位姿與實際位姿對比,定位誤差如表2所示,本文算法平均定位誤差在0.0072 m左右,最大定位誤差為0.009 4 m,也可以保證在0.01 m范圍內。由此可見,本文提出的基于角點特征精確定位算法誤差可以滿足AGV 在接駁過程的定位精度要求。

表2 本文算法定位誤差
如圖8所示,當使用最小轉向半徑作為最后階段的轉向半徑時,因轉向偏差大于??块g隙要求,導致在按照精度要求接駁時,AGV 前端輪廓與工作平臺發生碰撞,如圖8(a),(c)所示,文獻[13]算法無法完成橫向接駁;而本文算法規劃路徑根據自身物理尺寸和要求停靠間隙計算得最小接駁半徑,作為最后階段的轉向半徑,可根據AGV 當前位姿規劃一條轉向偏差小于??块g隙要求的路徑,如圖8(b),(d)所示,本文算法可成功完成橫向接駁。

圖8 算法規劃軌跡對比
本文介紹了一種基于激光雷達的差速AGV 定位接駁方法。通過實驗驗證了接駁算法中提出的數據分割算法在特征提取上的準確性和優越性,使得角點和AGV自身定位誤差均小于0.01 m,能夠滿足定位精度要求。再根據仿真對比,本文算法規劃出的接駁軌跡能夠實現差速AGV的近距離橫向接駁,驗證了本文所提出算法的可行性。