,,
(哈爾濱工業(yè)大學(xué)機(jī)器人技術(shù)與系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,黑龍江 哈爾濱 150000)
工業(yè)機(jī)器人圓周鋪料路徑規(guī)劃研究
胡小田,曲東升,劉彥武
(哈爾濱工業(yè)大學(xué)機(jī)器人技術(shù)與系統(tǒng)國(guó)家重點(diǎn)實(shí)驗(yàn)室,黑龍江 哈爾濱 150000)
為滿足工業(yè)機(jī)器人圓周鋪料作業(yè)需求,應(yīng)對(duì)工業(yè)機(jī)器人末端的運(yùn)動(dòng)路徑進(jìn)行合理的規(guī)劃,保證工業(yè)機(jī)器人在作業(yè)時(shí)躲避障礙物并以最短路徑完成任務(wù)。
針對(duì)機(jī)器人的路徑規(guī)劃問題,前人已經(jīng)做了很多相關(guān)研究。賈慶軒[1]研究了基于A*算法的空間機(jī)械臂的避障路徑規(guī)劃,提出了球形障礙物包絡(luò)法,研究了各機(jī)械臂和障礙物發(fā)生碰撞的臨界位姿;Li P[2]研究了基于A*算法的動(dòng)態(tài)未知環(huán)境中移動(dòng)機(jī)器人路徑規(guī)劃;王俊龍[3]研究了改進(jìn)人工勢(shì)場(chǎng)法的機(jī)械臂路徑規(guī)劃,提出以機(jī)械臂各個(gè)關(guān)節(jié)角為對(duì)象建立引力函數(shù)和斥力函數(shù);莫棟成[4]研究了改進(jìn)的快速探索隨機(jī)樹雙足機(jī)器人路徑規(guī)劃算法,提出了任意時(shí)間快速探索隨機(jī)樹算法;劉傳領(lǐng)[5]研究了基于勢(shì)場(chǎng)法和遺傳算法的移動(dòng)機(jī)器人路徑規(guī)劃,提出了基于量子遺傳算法的移動(dòng)機(jī)器人路徑規(guī)劃方法;Francisco Rubio[6]對(duì)5種算法用于PUMA560機(jī)器人路徑規(guī)劃的效率進(jìn)行了研究。5種算法依次是迪杰特斯拉算法、A*算法、基于A*算法的2種改進(jìn)算法和遺傳算法,最后得出遺傳算法計(jì)算出的路徑最短,A*改進(jìn)算法的計(jì)算速度最快。總之,前人研究的工業(yè)機(jī)器人的避障路徑規(guī)劃中,沒有考慮末端操作手的外形對(duì)避障產(chǎn)生的影響,沒有考慮末端軸的旋轉(zhuǎn)引起的避障路徑規(guī)劃;前人研究的移動(dòng)機(jī)器人路徑規(guī)劃問題中,一般忽略機(jī)器人的形狀,通過設(shè)定安全距離的方式,進(jìn)行避障路徑規(guī)劃研究,并且涉及到的障礙物一般都是外凸型。研究工業(yè)機(jī)器人末端操作手的路徑規(guī)劃問題,著重考慮末端操作手的外形、機(jī)器人末端軸的旋轉(zhuǎn)以及凹形障礙物對(duì)避障路徑規(guī)劃的影響,對(duì)末端操作手的位置和姿態(tài)進(jìn)行合理的路徑規(guī)劃,可稱之為位姿路徑規(guī)劃。
工業(yè)機(jī)器人帶動(dòng)鋪料機(jī)構(gòu)在圓桶內(nèi)進(jìn)行圓周鋪料作業(yè)。在鋪料過程中,需要做到逐層均勻鋪料。
針對(duì)鋪料過程中出現(xiàn)的不均勻的區(qū)域,應(yīng)控制機(jī)器人帶動(dòng)鋪料機(jī)構(gòu)運(yùn)動(dòng)到相應(yīng)區(qū)域進(jìn)行補(bǔ)料動(dòng)作??紤]到鋪料機(jī)構(gòu)的尺寸、機(jī)器人末端軸運(yùn)動(dòng)的極限位置及凹形障礙物等因素,應(yīng)合理設(shè)計(jì)機(jī)器人末端的位姿序列,保證鋪料機(jī)構(gòu)不與圓桶內(nèi)壁發(fā)生碰撞而又能以最短的路徑運(yùn)動(dòng)到目標(biāo)位置。如圖1所示,設(shè)置鋪料機(jī)構(gòu)起始點(diǎn)為S,目標(biāo)點(diǎn)為G,O為圓桶中心位置,機(jī)器人末端軸的運(yùn)動(dòng)范圍為[-360°,360°]。若鋪料機(jī)構(gòu)沿路徑1運(yùn)動(dòng),鋪料機(jī)構(gòu)應(yīng)順時(shí)針轉(zhuǎn)動(dòng)以躲避障礙物,此時(shí)有可能導(dǎo)致機(jī)器人末端軸旋轉(zhuǎn)到極限位置。若出現(xiàn)這種情況,則應(yīng)控制末端軸逆時(shí)針運(yùn)動(dòng)。在逆時(shí)針運(yùn)動(dòng)過程中,為了保證鋪料機(jī)構(gòu)不和圓桶發(fā)生碰撞,鋪料機(jī)構(gòu)的運(yùn)動(dòng)軌跡應(yīng)近似于路徑2,其目的是用合適的算法規(guī)劃出路徑2,保證機(jī)器人以最短路徑完成補(bǔ)料動(dòng)作。
圖1 路徑規(guī)劃問題簡(jiǎn)化
鋪料機(jī)構(gòu)如圖2所示,圖中P點(diǎn)為機(jī)器人和鋪料機(jī)構(gòu)連接的中心位置,黑色區(qū)域?yàn)殇伭蠙C(jī)構(gòu)出料區(qū)域,A1,B,C,D,E,F為鋪料機(jī)構(gòu)的邊緣點(diǎn)。同一層鋪料中,鋪料機(jī)構(gòu)在Z軸上位置不發(fā)生改變,同時(shí)為了保證鋪料機(jī)構(gòu)的平穩(wěn)性,在鋪料和補(bǔ)料時(shí),鋪料機(jī)構(gòu)在X軸和Y軸方向的姿態(tài)角為0。因此,鋪料機(jī)構(gòu)的位姿可記為(Px,Py,θ),其中,Px為P點(diǎn)橫坐標(biāo),Py為P點(diǎn)縱坐標(biāo),θ為A1C的中垂線段OH與X軸的夾角。
圖2 鋪料機(jī)構(gòu)和圓桶簡(jiǎn)化模型
設(shè)P點(diǎn)的坐標(biāo)為(x,y,θ),安全距離為dsafe,記:R0=R-dsafe,要使鋪料機(jī)構(gòu)無碰撞的在圓桶內(nèi)運(yùn)動(dòng),需滿足條件:
由此可得機(jī)器人末端運(yùn)動(dòng)約束方程。
根據(jù)以上分析可知,補(bǔ)料過程中的點(diǎn)到點(diǎn)路徑規(guī)劃可以描述為:給定初始位姿(p1x,p1y,θ1)和終止位姿(p2x,p2y,θ2),求解一系列中間點(diǎn)(px,py,θ),保證鋪料機(jī)構(gòu)能夠從起始點(diǎn)無碰撞的到達(dá)終止點(diǎn)。
設(shè)規(guī)劃起點(diǎn)位置為Ps,姿態(tài)為Ts,目標(biāo)位置為Pe,姿態(tài)為Te,規(guī)劃的路徑為path,theta。path為2行n列的矩陣,每一列代表路徑點(diǎn)位置坐標(biāo),theta是1行n列的矩陣,每一列代表相應(yīng)位置下的姿態(tài)角,n代表路徑點(diǎn)的個(gè)數(shù)。Trsa的作用是將角度變換到(-π,π]。
3.1 改進(jìn)A*算法
采用A*算法進(jìn)行路徑規(guī)劃時(shí),考慮鋪料機(jī)構(gòu)姿態(tài)角的問題,所以應(yīng)改進(jìn)A*算法的估價(jià)函數(shù),增加由于鋪料機(jī)構(gòu)轉(zhuǎn)角引起的路徑耗費(fèi)。在設(shè)計(jì)鋪料機(jī)構(gòu)轉(zhuǎn)角引起的路徑耗費(fèi)時(shí),采用貪心策略,只關(guān)心當(dāng)前轉(zhuǎn)角到目標(biāo)轉(zhuǎn)角的差值,這樣可以使得鋪料機(jī)構(gòu)快速的調(diào)整好姿態(tài),達(dá)到目標(biāo)位置處的姿態(tài)。
設(shè)計(jì)估價(jià)函數(shù)為:
f(j)=g(j)+h(j)+k(j)
h(j)=‖currentnode-Pe‖
(1)
j為當(dāng)前節(jié)點(diǎn)序號(hào);f(j)為估價(jià)函數(shù);g(j)為起始點(diǎn)到當(dāng)前位置的實(shí)際路徑耗費(fèi);h(j)為當(dāng)前位置到目標(biāo)點(diǎn)的估計(jì)路徑耗費(fèi);k(j)為鋪料機(jī)構(gòu)轉(zhuǎn)動(dòng)的估計(jì)路徑耗費(fèi);currentnode為當(dāng)前節(jié)點(diǎn);angle為當(dāng)前節(jié)點(diǎn)對(duì)應(yīng)的姿態(tài)角。
3.2 改進(jìn)RRT算法
RRT算法的實(shí)現(xiàn)過程是:隨機(jī)生成測(cè)試點(diǎn),在隨機(jī)樹中尋找離測(cè)試點(diǎn)最近的節(jié)點(diǎn),稱之為父節(jié)點(diǎn),并沿著父節(jié)點(diǎn)到測(cè)試點(diǎn)的方向以一定得步長(zhǎng)得到新節(jié)點(diǎn),接著判斷新的節(jié)點(diǎn)是否滿足避障要求,如果滿足則將新生成的節(jié)點(diǎn)加入到隨機(jī)樹中,如果不滿足則再次循環(huán)上述過程尋找樹節(jié)點(diǎn),直到隨機(jī)樹擴(kuò)展到目標(biāo)位置。
常規(guī)的RRT算法隨機(jī)性太大,可重復(fù)性太差,規(guī)劃的路徑很難接近最短路徑,若將改進(jìn)的A*策略用于RRT算法中,對(duì)新生成的節(jié)點(diǎn)進(jìn)行啟發(fā)判斷,如此可以極大地降低路徑的隨機(jī)性,并且極大的縮短路徑長(zhǎng)度。
3.3 基于RRT的A*算法
改進(jìn)后的A*算法可以實(shí)現(xiàn)路徑規(guī)劃,但是規(guī)劃時(shí)間耗費(fèi)大,其原因是:A*算法采用了柵格法對(duì)運(yùn)動(dòng)空間進(jìn)行描述,犧牲了大量的機(jī)器人自由空間,減少了可行的路徑試探點(diǎn),從而增加了時(shí)間耗費(fèi)。如果將RRT算法的節(jié)點(diǎn)擴(kuò)展和改進(jìn)后的A*算法相結(jié)合,針對(duì)可行域內(nèi)的節(jié)點(diǎn)進(jìn)行隨機(jī)擴(kuò)展,再利用A*算法的啟發(fā)函數(shù)進(jìn)行啟發(fā)式搜索,如此可以保證路徑次優(yōu)的情況下極大的提高路徑規(guī)劃速度。
為了驗(yàn)證改進(jìn)后算法的可行性,在仿真軟件平臺(tái)上進(jìn)行仿真驗(yàn)證,設(shè)初始補(bǔ)料區(qū)域中心位置為(0,600),目標(biāo)位置為(500,400),基于RRT的A*算法規(guī)劃從起始點(diǎn)到目標(biāo)點(diǎn)的路徑如圖3所示。
圖3 基于RRT的A*算法
改進(jìn)A*算法、改進(jìn)RRT算法和基于RRT的A*算法路徑規(guī)劃參數(shù)對(duì)比如表1所示,從表中各項(xiàng)參數(shù)可以發(fā)現(xiàn),基于RRT的A*算法充分的發(fā)揮了A*算法和RRT算法的優(yōu)勢(shì),快速地規(guī)劃出了接近最短的路徑。
表1 各算法結(jié)果對(duì)比
為解決在凹形障礙物內(nèi),大體積外形末端操作手的避障路徑規(guī)劃問題,分析了機(jī)器人末端可行域,改進(jìn)了A*算法,提出了基于轉(zhuǎn)角的路徑耗費(fèi),設(shè)計(jì)了A*算法的估價(jià)函數(shù);將改進(jìn)的A*策略應(yīng)用于RRT節(jié)點(diǎn)擴(kuò)展當(dāng)中;擯棄了A*算法中八連通擴(kuò)展方法,將RRT算法中的節(jié)點(diǎn)生成思想融合到A*算法中,提出了基于RRT的A*算法。
通過仿真實(shí)驗(yàn)驗(yàn)證了改進(jìn)后的算法的可行性,并驗(yàn)證了基于RRT的A*算法的高效性。
[1] 賈慶軒.基于A*算法的空間機(jī)械臂避障路徑規(guī)劃[J].機(jī)械工程學(xué)報(bào),2010,46(13):109-115.
[2] Li P.A new hybrid method for mobile robot dynamic local path planning in unknown[J].Journal of Computers,2010,5(5):773-780.
[3] 王俊龍.改進(jìn)人工勢(shì)場(chǎng)法的機(jī)械臂避障路徑規(guī)劃[J].計(jì)算機(jī)工程與應(yīng)用, 2012,11(21):27-31.
[4] 莫棟成.改進(jìn)的快速探索隨機(jī)樹雙足機(jī)器人路徑規(guī)劃算法[J].計(jì)算機(jī)應(yīng)用,2013,33(1):199-201.
[5] 劉傳領(lǐng).基于勢(shì)場(chǎng)法和遺傳算法的移動(dòng)機(jī)器人路徑規(guī)劃[D].南京:南京理工大學(xué),2012.
[6] Rubio F.Comparing the efficiency of five algorithms applied to path planning for industrial robots[R].Polytechnic University of Valencia:ICTV,2012.
Path Planning for Industrial Robot Used in Paving Material in Barrel
HUXiaotian,QUDongsheng,LIUYanwu
(State Key Laboratory of Robotics and System,Harbin Institude of Technology,Harbin 150000,China)
針對(duì)工業(yè)機(jī)器人圓周鋪料作業(yè)需求,研究了現(xiàn)有的避障路徑規(guī)劃方法。分析了末端操作手在凹形障礙物中的自由運(yùn)動(dòng)空間,改進(jìn)了A*算法的估價(jià)函數(shù),設(shè)計(jì)了關(guān)于姿態(tài)角的估計(jì)路徑耗費(fèi),并將估價(jià)函數(shù)引入RRT算法中,同時(shí)提出了基于RRT思想的A*算法。最后,通過仿真實(shí)驗(yàn)驗(yàn)證了改進(jìn)后算法的可行性,并對(duì)比了各算法的執(zhí)行效率。
工業(yè)機(jī)器人;位姿路徑規(guī)劃;基于RRT的A*算法;改進(jìn)A*算法;改進(jìn)RRT算法
The path planning algorithms for the terminal hand of industrial robot are modified to meet the demands of paving material in barrel after analysing the free motion space of the terminal hand.Firstly,modifying the evaluation function used in A*algorithm by adding the evaluation function of the angle of the terminal hand.Secondly,modifying RRT algorithm by using evaluation function.Thirdly,proposing the modified A*algorithm based on the RRT algorithm.Lastly,confirming that the modified algorithms are feasible;and comparing the efficiency of these algorithms to find out the best algorithm.
industrial robot;path planning of position and pose;A*algorithm based on RRT algorithm;the modified A*algorithm;the modified RRT algorithm
2014-04-04
TP301.6
A
1001-2257(2014)08-0078-03
胡小田(1989-),男,江西撫州人,碩士研究生,研究方向?yàn)闄C(jī)器人路徑規(guī)劃。