PRUDNIKAU MIKALAI
摘 要:針對機器人操縱裝置或機器人路徑的平滑性研究,對軌跡節(jié)點的平滑離散是很有必要,此外,還建立了滿足標(biāo)準(zhǔn)平滑度的軌跡路徑。平滑起點和機器人的最終位置必須要精確定義,所以經(jīng)典最小二乘法是不適用的。為了解決這個問題,提出了一種改進(jìn)的最小二乘法。該方法要求首先建立一個平滑的運動軌跡,同時使其起點和終點保持一致,而且減小了機器人的驅(qū)動單元的動態(tài)負(fù)載和計算時間。
關(guān)鍵詞:路徑規(guī)劃 機器人 最小二乘法
中圖分類號:TP391.9 文獻(xiàn)標(biāo)識碼:A 文章編號:1672-3791(2015)04(c)-0218-02
目前用于創(chuàng)建一個平滑軌跡的方法比較多,例如:采用運動規(guī)劃的采集點,采用分段線性化的方法解決軌跡平滑性問題,該方法是用兩點之間的直線替代光滑曲線上兩點間的實際曲線,但這些算法往往沒有考慮障礙物等實際情況,而且在狹窄的空間中應(yīng)用不是很好[1-2]。其他的方法便是使用數(shù)值計算的方法[3-5],其中樣條函數(shù)是較為經(jīng)典的方法[6-8]。樣條函數(shù)可以很好地解決平面和空間路徑的任務(wù),該算法廣泛應(yīng)用于陸地、海水和空中運行的無人操作機器人等方面。GilimyanovR.F提出了遞歸的方法[9]。在他的工作基礎(chǔ)上,科技工作者開發(fā)了一個工作窗口,可以實時顯示、存儲有約束的長軌跡平滑曲率。
在出現(xiàn)大量實驗點時,因為插值函數(shù)的不穩(wěn)定性以及給定點的波動性太大,所以利用多項式插值計算平滑度是沒有意義的。常用的方法(例如樣條法)也不能給出較好的結(jié)果。因此,基于多項式的離散特定函數(shù)對軌跡平滑性研究有很大的幫助,其系數(shù)是通過平均積分點集的平滑函數(shù)的最小偏差來確定的,該方法稱為最小二乘法。
該文提出了一種改進(jìn)的最小二乘法。改進(jìn)點主要是需要保持軌跡的起點和終點不變。
1 運動學(xué)分析
沿著離散點和在特定障礙物環(huán)境中,機器人的運動方向會發(fā)生較大的變化。因此,機器人的動態(tài)負(fù)載增加較快,這樣就加快機械磨損速度,增加了能量消耗。這個問題的解決方案包括平滑離散軌跡規(guī)劃,以此來減少從初始位置到目標(biāo)位置運動過程中引起機器人的動態(tài)負(fù)載。
構(gòu)建軌跡必須滿足系統(tǒng)的約束,因為輪式機器人不能在橫向上運動或打滑,再加上車輪的旋轉(zhuǎn)角度和速度都是受限的。運動軌跡曲率不應(yīng)超過其最大值Kmax=1/Rmin,相應(yīng)地,車輪的最小轉(zhuǎn)彎半徑為Rmin。
機器人的運動學(xué)模型為:
(1)
其中:
-機器人的基準(zhǔn)點在坐標(biāo)系xOy中的坐標(biāo);
-機器人的速度矢量;
-機器人的速度矢量與x軸正向之間的角度;
-分別是左、右輪的角速度;
-車輪的半徑。
輸入的數(shù)據(jù)是一個在三維空間中的初始軌跡的n個節(jié)點的序列。
(2)
其中,-軌跡點的坐標(biāo);
-節(jié)點數(shù)。
用一個序列替換(2)的點序列,進(jìn)行平滑軌跡,
(3)
其中,-平滑軌跡點的坐標(biāo)。
平滑后軌跡的起點和終點保持不變,即滿足條件:
(4)
此外,平滑的軌跡要盡可能接近原來的軌跡路徑,同時要保證避開障礙物。
2 改進(jìn)的最小二乘法
根據(jù)最小二乘法[10],為了得到平滑路徑,可以通過多項式Fm(i)得到:
(5)
其中,m-多項式的階數(shù);
K-多項式系數(shù)的個數(shù);
ak-多項式的系數(shù),可從線性代數(shù)方程組系統(tǒng)(SLAE)得到:
(6)
其中,j-系統(tǒng)方程的數(shù)目。
這里和下面的公式中,坐標(biāo)Y和Z是相同的。
將式(4)代入式(5)中可以得出:
(7)
根據(jù)條件(7),方程式(6)可寫成:
(8)
為了滿足方程式(4),必須要根據(jù)方程(7)替換(8)中的任意兩個方程。例如,更換方程式(7)中的第M和M-1個方程,SLAE的形式為:
(9)
SLAE的矩陣形式為:
(10)
其中:—矩陣SLAE;
—自由變量;
—多項式方程(5)中的系數(shù)變量。
偏離初始軌跡的最大允許偏離度不應(yīng)超過,本標(biāo)準(zhǔn)可用于多項式要求度的自動選擇。
通過生成和求解系統(tǒng)方程來尋找X,Y和Z的軌跡分量:
(11)
由上述公式可知平滑性軌跡偏離初始軌跡的最大偏差量如下:
1.平滑軌跡被分割成一序列在時間上均勻地分布的節(jié)點,節(jié)點數(shù)目與初始軌跡節(jié)點數(shù)目相等。
2.搜尋初始軌跡和平滑軌跡節(jié)點之間的最大距離。
該算法的結(jié)果較好,因為各個節(jié)點之間的距離小于初始軌跡節(jié)點到平滑軌跡節(jié)點之間的距離。此外,尋找空間上兩點之間的距離要比從初始軌跡節(jié)點到平滑軌跡節(jié)點的距離更容易、更快,而且這種替代使最大允許偏差的標(biāo)準(zhǔn)更為規(guī)范,并減少了搜索時間。
3 仿真結(jié)果
通過MATLAB程序進(jìn)行以上算法的數(shù)值仿真,在實驗中,假設(shè)(機器人)初始軌跡由虛線表示,其坐標(biāo)值在表1中給出。在有障礙物的環(huán)境下運動時,將會導(dǎo)致其在運動方向上發(fā)生較大變化,進(jìn)而使機器人驅(qū)動單元動態(tài)負(fù)載過大。
從圖2可以看出平滑計算需要較少的時間;從圖3可以看出,改進(jìn)的方法要求平滑前后軌跡的起點和終點保持不變,且平滑性較好。
程序會自動計算得到,當(dāng)M=6時的多項式的平滑度最高,進(jìn)而進(jìn)行軌跡規(guī)劃。同時使得從給定的點(xi,yi)到(xi,y(n)(xi))的距離的平方和最小。
為了確保多項式是獨一無二的,所以多項式的次數(shù)必須小于給定點的數(shù)量。例如,如果有三個點,多項式可以是零階或一級(直線)或拋物線來近似運算。此外,拋物線將完全通過已知的三點,即距離的平方和等于零,因為二次多項式的三個系數(shù)可以通過給定的三個點唯一確定。這并不是數(shù)據(jù)近似求解,而是數(shù)據(jù)插值。
用Matlab進(jìn)行數(shù)據(jù)擬合,在使用最小二乘法進(jìn)行擬合時,經(jīng)常使用“polyfit()”函數(shù)。根據(jù)給定的點找出被刪除的多項式曲線圖離給定的距離是多少,在數(shù)據(jù)擬合處理時,“polyfit()”函數(shù)需要兩個輸出參數(shù),分別與多項式系數(shù),近似值相關(guān)。
可以從多項式P的系數(shù)可得到,用R,Df和normr表示的S也可以得到。normr是擬合誤差:
(12)
Df:表示了點的數(shù)目和多項式系數(shù)數(shù)目之間的差值。
增加多項式的階數(shù)可以減小誤差,但近似值的準(zhǔn)確度并不會一直提高。
例如,對于所給定的數(shù)據(jù),六階多項式會產(chǎn)生誤差normr=0,1442。
此外,將沿原軌跡走過的路徑長度與沿著平滑的軌跡走過的路徑長度進(jìn)行比較,發(fā)現(xiàn)路徑長度可減少15%,從而減少運動時間,節(jié)約能源。因此,沿著平滑的軌跡移動所需要的能量(由實線表示)要比沿初始軌跡移動的能量少得多。
4 結(jié)語
針對于平滑離散軌跡提出的改進(jìn)最小二乘法,該方法是在MATLAB中實現(xiàn)的。具有以下優(yōu)點:
1.構(gòu)建平滑運動路徑,消耗能量較少,運動路徑的所消耗時間減少。
2.顯著降低在機器人作業(yè)時的動態(tài)負(fù)載。
在程序運行過程中可知,當(dāng)M=6時的多項式的平滑度最高,進(jìn)而進(jìn)行軌跡規(guī)劃,六階多項式產(chǎn)生的擬合誤差為normr=0.1442,并縮短路徑長度15%,這極大地縮短了運動時間,減少了能量消耗。
與經(jīng)典的最小二乘法相比,該算法增加了初始軌跡和平滑軌跡二者之間的重合度,節(jié)省計算機資源。為機器人機械手的工作路徑平滑性研究和軌跡規(guī)劃提供了依據(jù)。
參考文獻(xiàn)
[1] Hauser,K.&V.Ng-Thow-Hing.Fast smoothing of manipulator trajectories using optimal bounded-acceleration shortcuts [J]. In Proceedings of International Conference on Robotics and Automation,2010,12(2):774-786.
[2] Yang, K. & S. Sukkarieh.3d smooth path planning for a uav in cluttered natural environment [J].In Proceedings of International Conference on Intelligent robots and systems,2008(2):794-800.
[3] Ratliff, N.,Zucker M. & S. Srinivasa. Chomp:Gradient optimization techniques for efficient motion planning [J].In Proceedings of International Conference on Robotics and Automation,2009(5):472-476.