王 琨,駱敏舟,曹 毅,李 可,張秋菊
(1.江南大學(xué) 江蘇省食品先進(jìn)制造裝備技術(shù)重點(diǎn)實(shí)驗(yàn)室,江蘇 無(wú)錫214122;2.江南大學(xué)機(jī)械工程學(xué)院,江蘇 無(wú)錫214122;3.中國(guó)科學(xué)技術(shù)大學(xué) 信息科學(xué)技術(shù)學(xué)院,安徽 合肥230027)
機(jī)器人在完成操作任務(wù)時(shí),運(yùn)動(dòng)位置、速度、加速度的瞬間改變會(huì)造成機(jī)械沖擊,激起系統(tǒng)振蕩,導(dǎo)致運(yùn)動(dòng)不穩(wěn)定,降低機(jī)械臂的運(yùn)動(dòng)精度[1,2]??焖倬_的軌跡規(guī)劃算法是保證運(yùn)動(dòng)系統(tǒng)的精度和性能的前提條件[3],對(duì)關(guān)節(jié)運(yùn)動(dòng)軌跡的合理規(guī)劃與優(yōu)化可以提高機(jī)械臂的抗干擾性能,改善機(jī)械臂的定位精度以及軌跡跟蹤精度,提高機(jī)械臂的工作效率[4-6]。因此,為了滿足機(jī)器人高精度的運(yùn)動(dòng)性能需求,對(duì)關(guān)節(jié)的運(yùn)動(dòng)軌跡進(jìn)行規(guī)劃和優(yōu)化。近年來(lái),研究人員針對(duì)機(jī)器人各關(guān)節(jié)的位置、速度和加速度的運(yùn)動(dòng)軌跡約束條件,展開(kāi)了各種軌跡執(zhí)行時(shí)間的優(yōu)化算法研究。如張斌等通過(guò)對(duì)軌跡的執(zhí)行時(shí)間的優(yōu)化處理,獲取同時(shí)滿足關(guān)節(jié)速度約束和驅(qū)動(dòng)力約束條件的運(yùn)動(dòng)軌跡[7,8];徐海黎等通過(guò)優(yōu)化機(jī)器人的運(yùn)動(dòng)時(shí)間,使運(yùn)動(dòng)軌跡滿足給定的約束條件[9];Saravanan等采用NURBS曲線實(shí)現(xiàn)機(jī)器人運(yùn)動(dòng)軌跡的規(guī)劃,通過(guò)軌跡執(zhí)行時(shí)間的優(yōu)化使軌跡滿足多種約束條件[10]。
本文提出一種基于軌跡執(zhí)行時(shí)間歸一化處理的關(guān)節(jié)空間運(yùn)動(dòng)軌跡優(yōu)化算法,通過(guò)分析關(guān)節(jié)位置、速度、加速度運(yùn)動(dòng)軌跡與歸一化時(shí)間的約束關(guān)系,調(diào)節(jié)軌跡的執(zhí)行時(shí)間以獲取機(jī)器人關(guān)節(jié)的最優(yōu)運(yùn)動(dòng)位置軌跡。該方法將軌跡執(zhí)行時(shí)間轉(zhuǎn)化成無(wú)量綱變量,避免復(fù)雜的計(jì)算過(guò)程,能夠簡(jiǎn)單有效地應(yīng)用于機(jī)器人的軌跡優(yōu)化控制。在Matlab環(huán)境下模擬不同軌跡執(zhí)行時(shí)間對(duì)運(yùn)動(dòng)軌跡的影響,驗(yàn)證該優(yōu)化算法的可行性及可靠性,其能有效提高機(jī)器人的運(yùn)動(dòng)效率。
為了保證機(jī)器人在關(guān)節(jié)空間內(nèi)平滑地完成操作任務(wù),機(jī)器人任意關(guān)節(jié)在運(yùn)動(dòng)過(guò)程中均要滿足關(guān)節(jié)的位置、速度、加速度或加速度變化的約束條件。將關(guān)節(jié)的軌跡位置函數(shù)表示為θ(t)。若關(guān)節(jié)在運(yùn)動(dòng)的初始時(shí)刻ti和終止時(shí)刻tf的位置、速度和加速度等約束條件分別為
軌跡插值函數(shù)需要滿足上述6個(gè)約束條件,在眾多的軌跡擬合算法中[11-13],采用五次多項(xiàng)式實(shí)現(xiàn)關(guān)節(jié)的軌跡函數(shù)的插值算法可以有效簡(jiǎn)化軌跡的表達(dá)形式。因此關(guān)節(jié)的軌跡函數(shù)可表示如下
令T 為軌跡的執(zhí)行時(shí)間,有:T=tf-ti,。
由方程式 (2)可知,關(guān)節(jié)的軌跡插值函數(shù)是關(guān)于時(shí)間t的函數(shù),而t為軌跡的開(kāi)始時(shí)刻與終止時(shí)刻中的任意時(shí)間變量,為了簡(jiǎn)化軌跡函數(shù)與時(shí)間的數(shù)學(xué)關(guān)系,對(duì)軌跡執(zhí)行時(shí)間T 進(jìn)行歸一化處理。
已知關(guān)節(jié)位置函數(shù)θ(t)在初始時(shí)刻和終止時(shí)刻的約束值,因此關(guān)節(jié)位置的軌跡函數(shù)可表示如下
式 (3)中,s為比例函數(shù)。τ表示歸一化時(shí)間,有
τ和s (τ)滿足以下條件
根據(jù)式 (3)對(duì)關(guān)節(jié)位置求解一階時(shí)間導(dǎo)數(shù)和二階時(shí)間導(dǎo)數(shù),可以得到關(guān)節(jié)速度和關(guān)節(jié)加速度關(guān)于歸一化時(shí)間τ的函數(shù)
式中:s(τ)和¨s(τ)分別表示s(τ)的一階時(shí)間導(dǎo)數(shù)和二階時(shí)間導(dǎo)數(shù)。
上述的關(guān)于歸一化時(shí)間τ的關(guān)節(jié)位置、速度和加速度的表達(dá)式仍需要滿足表達(dá)式 (1)所示的起始時(shí)刻和終止時(shí)刻的約束條件,因此,有
求解上述等式,可以求出s(τ)需要滿足的6 個(gè)約束條件
采用五次多項(xiàng)式擬合s函數(shù)。令
將s(τ)函數(shù)在τ=0及τ=1時(shí)需要滿足的6個(gè)條件表示成五次多項(xiàng)式的系數(shù)的函數(shù),并采用矩陣形式表示
將方程組 (10)~ (15)中的約束條件代入表達(dá)式(17),可得到五次多項(xiàng)式的6個(gè)系數(shù)的表達(dá)式
將計(jì)算出的五次多項(xiàng)式的系數(shù)代入s 函數(shù)表達(dá)式(16),再將s函數(shù)代入關(guān)節(jié)的運(yùn)動(dòng)軌跡的函數(shù) (3),可以得到關(guān)節(jié)旋轉(zhuǎn)角度的軌跡的具體表達(dá)式
對(duì)表達(dá)式 (19)分別求解一階時(shí)間導(dǎo)數(shù)和二階時(shí)間導(dǎo)數(shù),可得到關(guān)節(jié)運(yùn)動(dòng)的速度軌跡和加速度軌跡的表達(dá)式,分別如方程式 (20)和式 (21)所示
上述方程式 (19)~式 (21)分別表達(dá)了關(guān)節(jié)運(yùn)動(dòng)的位置、速度和加速度相對(duì)歸一化時(shí)間τ的變化函數(shù),若需將其轉(zhuǎn)化成相對(duì)時(shí)間t的函數(shù),將τ= (t-ti)/ (tf-ti)代入表達(dá)式 (19)~式 (21)中,即可計(jì)算關(guān)節(jié)位置、速度和加速度相對(duì)時(shí)間變化的運(yùn)動(dòng)軌跡。
軌跡規(guī)劃給出的約束條件僅指定了關(guān)節(jié)在初始時(shí)刻和終止時(shí)刻的運(yùn)動(dòng)信息,實(shí)際工程中,由于機(jī)械臂的機(jī)械設(shè)計(jì)因素或者驅(qū)動(dòng)電機(jī)功率的因素,關(guān)節(jié)的任意時(shí)刻的位置、速度和加速度均受一定的約束條件的影響。
假設(shè)由于關(guān)節(jié)的驅(qū)動(dòng)器的驅(qū)出力矩要求,關(guān)節(jié)運(yùn)動(dòng)有最大的旋轉(zhuǎn)加速度和最小旋轉(zhuǎn)加速度 (令順時(shí)針旋轉(zhuǎn)方向?yàn)檎┑南拗茥l件,同理,關(guān)節(jié)的速度軌跡也需限制在關(guān)節(jié)的驅(qū)動(dòng)電機(jī)的最小輸出的旋轉(zhuǎn)速率和最大輸出旋轉(zhuǎn)速率之間。此外,根據(jù)機(jī)械臂的設(shè)計(jì)參數(shù)可知,每個(gè)關(guān)節(jié)都有對(duì)應(yīng)的旋轉(zhuǎn)角度范圍。因此,關(guān)節(jié)的位置軌跡也需要限制在關(guān)節(jié)的最小旋轉(zhuǎn)角度和最大旋轉(zhuǎn)角度范圍之間。由于關(guān)節(jié)的運(yùn)動(dòng)加速度和速度限制主要與關(guān)節(jié)的驅(qū)動(dòng)電機(jī)的參數(shù)有關(guān),因此可以通過(guò)選擇合適參數(shù)的電機(jī)來(lái)避免關(guān)節(jié)運(yùn)動(dòng)參數(shù)的限制。這里主要分析關(guān)節(jié)的運(yùn)動(dòng)位置的限制條件。
采用五次多項(xiàng)式對(duì)關(guān)節(jié)的運(yùn)動(dòng)軌跡進(jìn)行插值時(shí),關(guān)節(jié)運(yùn)動(dòng)的初始位置和終止位置均設(shè)定在關(guān)節(jié)的運(yùn)動(dòng)角度范圍之內(nèi)。因此若保證關(guān)節(jié)的旋轉(zhuǎn)角度從初始時(shí)刻至終止時(shí)刻始終保持單調(diào)遞增或單調(diào)遞減的運(yùn)動(dòng)狀態(tài),即可保證關(guān)節(jié)的運(yùn)動(dòng)角度在執(zhí)行時(shí)間內(nèi)始終處于關(guān)節(jié)的運(yùn)動(dòng)范圍之內(nèi)。
從關(guān)節(jié)運(yùn)動(dòng)軌跡的表達(dá)式可以看出,當(dāng)給定初始時(shí)刻和終止時(shí)刻的約束條件,軌跡曲線與軌跡執(zhí)行時(shí)間T 有關(guān)。因此可以通過(guò)優(yōu)化軌跡的執(zhí)行時(shí)間T 調(diào)節(jié)關(guān)節(jié)的運(yùn)動(dòng)軌跡,使其在軌跡執(zhí)行時(shí)間T 內(nèi)保持單調(diào)遞增或單調(diào)遞減。根據(jù)微積分原理可知,位置軌跡的單調(diào)性與其對(duì)時(shí)間一階導(dǎo)數(shù)的正負(fù)有關(guān)。若速度軌跡在執(zhí)行時(shí)間T 內(nèi)均大于零,則關(guān)節(jié)的位置軌跡單調(diào)遞增;若速度軌跡在執(zhí)行時(shí)間T 內(nèi)均小于零,則關(guān)節(jié)的位置軌跡隨時(shí)間單調(diào)遞減。將采用五次多項(xiàng)式規(guī)劃的關(guān)節(jié)速度軌跡表示如下
因此,執(zhí)行時(shí)間T 的選擇需要滿足以下兩個(gè)條件之一
由于關(guān)節(jié)的初始位置θi,終止位置θf(wàn)以及軌跡執(zhí)行時(shí)間T 均為已知量,且有
可將式 (23)中的約束條件轉(zhuǎn)化成以下形式
比較表達(dá)式 (7)和式 (20),則s(τ)可表示為
采用Matlab軟件對(duì)方程式 (26)進(jìn)行運(yùn)算,得到以下表達(dá)形式
其中,P 的具體表達(dá)式如下式所示
將關(guān)節(jié)初始時(shí)刻和終止時(shí)刻的運(yùn)動(dòng)參數(shù)的約束值分別代入表達(dá)式 (27)和式 (28)中,s(τ)即可簡(jiǎn)化為關(guān)于τ的一元四次方程。在Matlab里畫出s(τ)相對(duì)于變量τ變化的曲線。則曲線s(τ)與τ軸交點(diǎn)即為方程的4個(gè)解。根據(jù)實(shí)際情況,令其任意相鄰的兩個(gè)解處于 [0,1]的取值范圍之外,即可保證s(τ)在τ∈ [0,1]的取值范圍內(nèi)始終大于零或小于零。這樣即可保證關(guān)節(jié)的位置曲線s(τ)在τ∈ [0,1]的范圍內(nèi)始終單調(diào)遞增或單調(diào)遞減。
隨機(jī)給定一組軌跡規(guī)劃任務(wù),驗(yàn)證不同的軌跡執(zhí)行時(shí)間T 的選擇對(duì)關(guān)節(jié)運(yùn)動(dòng)軌跡的影響。假設(shè)運(yùn)動(dòng)關(guān)節(jié)在初始時(shí)刻的位置、速度和加速度值分別為θi=1.5rad,θi=2.88rad/s,¨θi=-1.5rad/s2,在目標(biāo)點(diǎn)的位置、速度和加速度分別設(shè)定為θf(wàn)=2.14rad,θf(wàn)=0,¨θf(wàn)=0。令關(guān)節(jié)運(yùn)動(dòng)的執(zhí)行時(shí)間為T=1 s。將表達(dá)式τ=t/T 代入關(guān)于τ的運(yùn)動(dòng)軌跡表達(dá)式 (19)~式 (21),可在Matlab里描繪關(guān)節(jié)位置、速度和加速度相對(duì)時(shí)間的運(yùn)動(dòng)軌跡,如圖1所示。圖1(a)顯示的關(guān)節(jié)位置曲線在執(zhí)行時(shí)間內(nèi)出現(xiàn)超調(diào)量,關(guān)節(jié)在0.3 s附近時(shí)刻已經(jīng)到達(dá)目標(biāo)位置,但由于執(zhí)行時(shí)間選擇較大,導(dǎo)致關(guān)節(jié)偏離目標(biāo)位置一段時(shí)間之后再回到目標(biāo)位置。很明顯,該運(yùn)動(dòng)過(guò)程極大地降低關(guān)節(jié)的運(yùn)動(dòng)效率,而且有可能造成關(guān)節(jié)位置超出其運(yùn)動(dòng)范圍,不利于機(jī)械臂的優(yōu)化控制。
通過(guò)調(diào)整執(zhí)行時(shí)間T 對(duì)五次多項(xiàng)式插值函數(shù)進(jìn)行優(yōu)化。首先將各約束條件的具體數(shù)值代入關(guān)節(jié)速度的表達(dá)式(27),并在Maple軟件中調(diào)用factor函數(shù),將關(guān)節(jié)的速度函數(shù)表示成4個(gè)因式連乘的形式
由于關(guān)節(jié)位置的初始值為1.5rad,終止角度為2.14rad。有θf(wàn)>θi,因此令θi為單調(diào)遞增函數(shù)。期望關(guān)節(jié)位置在執(zhí)行時(shí)間內(nèi)始終變化單調(diào)遞增,即要求關(guān)節(jié)的運(yùn)動(dòng)速度始終大于或等于零。即
式(29)中,(τ-1)2除了在終止時(shí)刻外,始終大于零。又有:θf(wàn)-θi>0。因此,若希望表達(dá)式 (29)滿足s(τ)≥0的條件,則執(zhí)行時(shí)間T 需要滿足以下幾個(gè)條件之一:
圖1 關(guān)節(jié)運(yùn)動(dòng)位置、速度和加速度的軌跡曲線
在Maple軟件中對(duì)條件一、條件二和條件三的幾個(gè)方程組分別進(jìn)行求解,結(jié)果是條件三的方程組無(wú)解,條件一和條件二求解得出執(zhí)行時(shí)間T 應(yīng)滿足以下條件
將上述的約束條件進(jìn)行整理,取其并集,可得到使得滿足約束條件下五次多項(xiàng)式插值函數(shù)在關(guān)節(jié)運(yùn)動(dòng)時(shí)間內(nèi)始終不產(chǎn)生超調(diào)量,執(zhí)行時(shí)間T 應(yīng)滿足的約束條件
依據(jù)式 (32)給出的執(zhí)行時(shí)間范圍選擇合適的變量T,令T=0.4,代入五次多項(xiàng)式插值的位置、速度和加速度方程。描繪運(yùn)動(dòng)軌跡的曲線,如圖2所示。
圖2 軌跡執(zhí)行時(shí)間約束后的關(guān)節(jié)運(yùn)動(dòng)曲線
將圖2所表示的運(yùn)動(dòng)軌跡與圖1作比較,可得出此下結(jié)論,當(dāng)軌跡執(zhí)行時(shí)間T 滿足優(yōu)化后的時(shí)間范圍的限制條件時(shí),關(guān)節(jié)在運(yùn)動(dòng)過(guò)程中位置始終處于初始位置與終止位置的范圍之內(nèi),此時(shí)關(guān)節(jié)的位置曲線不再出現(xiàn)超調(diào)量。因此,對(duì)軌跡的執(zhí)行時(shí)間T 進(jìn)行優(yōu)化可有效調(diào)整五次多項(xiàng)式插值的關(guān)節(jié)位置軌跡曲線,提高關(guān)節(jié)的運(yùn)動(dòng)效率,并使關(guān)節(jié)避開(kāi)不能到達(dá)的運(yùn)動(dòng)范圍。
本文在滿足機(jī)器人運(yùn)動(dòng)空間的各種約束條件下對(duì)機(jī)器人的軌跡執(zhí)行時(shí)間進(jìn)行優(yōu)化,實(shí)現(xiàn)了減少機(jī)器人運(yùn)動(dòng)時(shí)間,提高其工作效率的目標(biāo)。為了方便軌跡的執(zhí)行時(shí)間的提取計(jì)算,將軌跡的執(zhí)行時(shí)間進(jìn)行歸一化處理,轉(zhuǎn)化成無(wú)量綱的變量。并在此基礎(chǔ)上根據(jù)給定的運(yùn)動(dòng)約束條件采用五次多項(xiàng)式擬合機(jī)器人在關(guān)節(jié)空間內(nèi)的位置、速度和加速度的插值函數(shù)。為了避免關(guān)節(jié)的運(yùn)動(dòng)位置軌跡出現(xiàn)超調(diào)量,提高機(jī)器人的運(yùn)動(dòng)效率,分析關(guān)節(jié)速度軌跡與執(zhí)行時(shí)間的數(shù)值關(guān)系,并計(jì)算執(zhí)行時(shí)間的約束條件,從而實(shí)現(xiàn)關(guān)節(jié)運(yùn)動(dòng)軌跡的優(yōu)化。在詳細(xì)介紹該算法的理論推導(dǎo)之后,采用Matlab對(duì)關(guān)節(jié)空間的運(yùn)動(dòng)進(jìn)行仿真驗(yàn)證,分別描繪優(yōu)化前后關(guān)節(jié)的運(yùn)動(dòng)軌跡曲線,從而驗(yàn)證該優(yōu)化算法的可行性及可靠性。仿真結(jié)果表明,通過(guò)調(diào)節(jié)軌跡的執(zhí)行時(shí)間,可有效優(yōu)化五次多項(xiàng)式插值的關(guān)節(jié)位置軌跡曲線,提高關(guān)節(jié)的運(yùn)動(dòng)效率,并使關(guān)節(jié)避開(kāi)不能到達(dá)的運(yùn)動(dòng)范圍。
本文重點(diǎn)考慮機(jī)器人的關(guān)節(jié)空間的位置軌跡的約束條件,下一步工作將詳細(xì)考慮機(jī)器人關(guān)節(jié)空間的速度以及加速度的軌跡約束條件,研究機(jī)器人其它的運(yùn)動(dòng)性能指標(biāo)優(yōu)化處理算法,從而更有效地指導(dǎo)機(jī)器人在實(shí)際工程中的軌跡規(guī)劃作業(yè)。
[1]SUN Liang,MA Jiang,RUAN Xiaogang.Trajectory planning and simulation of 6-DOF manipulator[J].Control Engineering of China,2010,17 (3):388-392 (in Chinese).[孫亮,馬江,阮曉鋼.六自由度機(jī)械臂軌跡規(guī)劃與仿真研究[J].控制工程,2010,17 (3):388-392.]
[2]MU Haihua,ZHOU Yunfei,YAN Sijie,et al.A third-order trajectory planning algorithm for ultra-precision point-to-point motion [J].Mechanical Science and Technology for Aerospace Engineering,2008,27 (2):234-240 (in Chinese). [穆海華,周云飛,嚴(yán)思杰,等.超精密點(diǎn)對(duì)點(diǎn)運(yùn)動(dòng)3階軌跡規(guī)劃算法研究 [J].機(jī)械科學(xué)與技術(shù),2008,27 (2):234-240.]
[3]JIA Songtao,ZHU Yu,YIN Wensheng,et al.Trajectory planning for ultra-precision stages [J].Design & Research,2007 (10):14-17 (in Chinese). [賈松濤,朱煜,尹文生,等.超精密工作臺(tái)運(yùn)動(dòng)軌跡規(guī)劃 [J].設(shè)計(jì)與研究,2007(10):14-17.]
[4]Gosselin Clement,F(xiàn)oucault Simon.Dynamic point-to-point trajectory planning of a two-dof cable-suspended parallel robot [J].IEEE Transactions on Robotics,2014,30 (3):728-736.
[5]Berman Sigal,Liebermann Dario G,McIntyre Joseph.Constrained motion control on a hemispherical surface:Path planning [J].Journal of Neurophysiology,2014,111 (5):954-968.
[6]Liu Huashan,Lai Xiaobo,Wu Wenxiang.Time-optimal and jerk-continuous trajectory planning for robot manipulators with kinematic constraints [J].Robotics and Computer-Integrated Manufacturing,2013,29 (2):309-317.
[7]ZHANG Bin,F(xiàn)ANG Qiang,KE Yinglin.Optimal time trajectory planning method for a kind of posture aligning system of large rigid bodies [J].Chinese Journal of Mechanical Engineering,2008,44 (8):248-252 (in Chinese). [張斌,方強(qiáng),柯映林.大型剛體調(diào)姿系統(tǒng)最優(yōu)時(shí)間軌跡規(guī)劃 [J].機(jī)械工程學(xué)報(bào),2008,44 (8):248-252.]
[8]ZHANG Bin.Joint-space trajectory planning for robots under multiple constraints[J].Chinese Journal of Mechanical Engineering,2011,47 (21):1-6 (in Chinese). [張斌.基于多約束的機(jī)器人關(guān)節(jié)空間軌跡規(guī)劃 [J].機(jī)械工程學(xué)報(bào),2011,47 (21):1-6.]
[9]XU Haili,XIE Xiangrong,ZHUANG Jian,et a1.Global time-energy optimal planning of industrial robot trajectories[J].Journal of Mechanical Engineering,2010,46 (9):19-25 (in Chinese).[徐海黎,解祥榮,莊鍵,等.工業(yè)機(jī)器人的最優(yōu)時(shí)間與最優(yōu)能量軌跡規(guī)劃 [J].機(jī)械工程學(xué)報(bào),2010,46 (9):19-25.]
[10]Saravanan R,Ramabalab S,Balamurugan C.Multi-objective trajectory planner for industrial robots with payload constraints[J].Robotica,2008,26:753-765.
[11]LI Dongjie,QIU Jiangyan,YOU Bo.Optimal algorithm for trajectory planning for the robot[J].Electric Machines and Control,2009,13 (1):123-127 (in Chinese). [李東潔,邱江艷,尤波.一種機(jī)器人軌跡規(guī)劃的優(yōu)化算法 [J].電機(jī)與控制學(xué)報(bào),2009,13 (1):123-127.]
[12]HAN Dapeng,WEI Qing,YANG Leping,et al.A twistbased method for real-time trajectory planning in task space[J].Robot,2008,30 (4):304-310 (in Chinese). [韓大鵬,韋慶,楊樂(lè)平,等.任務(wù)空間實(shí)時(shí)軌跡規(guī)劃的旋量方法[J].機(jī)器人,2008,30 (4):304-310.]
[13]Haddad M,Khalil W,Lehtihet HE.Trajectory planning of unicycle mobile robots with a trapezoidal-velocity constraint [J].IEEE Transactions on Robotics,2010,26 (5):954-962.