李雨健 方坤禮 周惠明
摘要:本文以六軸工業(yè)機(jī)械手為研究對象,深入研究了三次樣條函數(shù)用于關(guān)節(jié)空間下點(diǎn)位運(yùn)動(dòng)的計(jì)算方法,考慮速度約束、加速度約束、沖擊約束條件下,應(yīng)用遺傳算法,對已規(guī)劃軌跡尋求時(shí)間最優(yōu)解,后續(xù)在MATLAB Robotics Toolbox中仿真運(yùn)行,結(jié)果表明機(jī)器人各關(guān)節(jié)運(yùn)動(dòng)平穩(wěn),優(yōu)化后能使機(jī)器人運(yùn)行效率大大提高從而延長機(jī)器人使用壽命。
關(guān)鍵詞:六軸工業(yè)機(jī)械手;遺傳算法;時(shí)間最優(yōu);機(jī)器人工具箱
0? 引言
在“機(jī)器換人”的大背景下,工業(yè)機(jī)器人在生產(chǎn)實(shí)踐中被大規(guī)模應(yīng)用,與此同時(shí),對其也提出了更多要求,如在能完成指定的軌跡運(yùn)行基礎(chǔ)上,還要求盡可能減少時(shí)間,提高效率,所以對于機(jī)器人軌跡運(yùn)行時(shí)的時(shí)間最優(yōu)問題已成為研究的重點(diǎn)內(nèi)容[1]。由于機(jī)器人所處的工業(yè)環(huán)境較為復(fù)雜,直接將時(shí)間優(yōu)化后的算法應(yīng)用到機(jī)器人本體上,存在一定的風(fēng)險(xiǎn)。計(jì)算機(jī)仿真可以快速、低成本、高安全性地驗(yàn)證軌跡規(guī)劃的有效性。同時(shí)在驗(yàn)證過程中,可快速、實(shí)時(shí)地得到期望性能與實(shí)際(仿真)性能間的差距,為下一步改進(jìn)提供方向。在 MATLAB中安裝機(jī)器人工具箱,可對六軸工業(yè)機(jī)械手時(shí)間最優(yōu)下的軌跡進(jìn)行仿真運(yùn)行,直觀顯示機(jī)器人的運(yùn)動(dòng)軌跡,輸出各關(guān)節(jié)角、速度等仿真結(jié)果。
1? 關(guān)節(jié)空間下軌跡規(guī)劃
本機(jī)器人將實(shí)現(xiàn)AD段軌跡的運(yùn)行,即機(jī)器人末端從A點(diǎn)運(yùn)行到D點(diǎn),這是一個(gè)在考慮時(shí)間最優(yōu)的情況下,關(guān)節(jié)空間規(guī)劃下的點(diǎn)到點(diǎn)運(yùn)動(dòng)問題。為了規(guī)避障礙物與提高運(yùn)行精度,在AD段間插入兩個(gè)位姿B、C,即實(shí)現(xiàn)ABCD段軌跡。
1.1 時(shí)間最優(yōu)軌跡規(guī)劃問題的描述
針對AD段軌跡,關(guān)節(jié)空間下的光滑函數(shù)采用三次樣條,建立時(shí)間最優(yōu)的目標(biāo)函數(shù)和約束方程[2]。
其中,TZ為機(jī)器人運(yùn)行ABCD段軌跡時(shí)的總時(shí)間,T1、T2、T3為機(jī)器人在AB段、BC段、CD段的運(yùn)行的時(shí)間。
約束主要有速度、加速度、沖擊約束,表達(dá)式如下:
Vi、Ai、Ji分別為關(guān)節(jié)i的運(yùn)行速度、加速度、沖擊曲線。Vmi、Ami、Jmi分別為關(guān)節(jié)i所允許的最大速度、最大加速度、最大沖擊。
各關(guān)節(jié)的約束條件如表1所示。
1.2 帶精英策略的遺傳算法
該六軸機(jī)器人A、C、D、B點(diǎn)的位姿矩陣如下:
利用MATLAB機(jī)器人工具箱[3]對A、B、C、D這四個(gè)位姿點(diǎn)求解逆解,得出此時(shí)對應(yīng)的各關(guān)節(jié)角見表2。
利用MATLAB中的遺傳算法工具箱[4],設(shè)立種群大小和精英個(gè)數(shù),每段初始時(shí)間設(shè)置為4s,經(jīng)求解,各段最優(yōu)時(shí)間見圖2。
由此可知,最優(yōu)解為TZ=8.125,其中T1=2.822,T2=2.38,T3=2.923,故可得出關(guān)節(jié)1到6的三次樣條曲線,從而得出6個(gè)關(guān)節(jié)的運(yùn)行速度、加速度、沖擊,后續(xù)與其各約束方程進(jìn)行比較。此處僅以關(guān)節(jié)1為例,如圖3與圖4所示。
依此思路,得出機(jī)器人各軸的三次樣條函數(shù)和運(yùn)行時(shí)的速度、加速度、沖擊,且其各值都運(yùn)行在約束范圍內(nèi)[5]。所以,優(yōu)化后的各段時(shí)間在保證各軸運(yùn)行平穩(wěn)的前提下,還能節(jié)省時(shí)間,提高效率。
2? 碼垛軌跡的MATLAB實(shí)現(xiàn)
對于前述的段軌跡,每隔0.1s等時(shí)插入一個(gè)插補(bǔ)點(diǎn),得出各時(shí)刻各軸對應(yīng)的各關(guān)節(jié)角,利用機(jī)器人正解算法求出機(jī)器人末端點(diǎn)在空間中的位置,從而實(shí)現(xiàn)碼垛軌跡的仿真運(yùn)行[6],具體見圖5。
由上分析可知,本文所規(guī)劃的軌跡確實(shí)經(jīng)過了A,B,C,D四點(diǎn),末端執(zhí)行器按預(yù)期位移移動(dòng),由此可知,在保證能準(zhǔn)確完成任務(wù)的同時(shí)節(jié)省了時(shí)間。
3? 結(jié)論
在圍繞所規(guī)劃的碼垛軌跡,關(guān)節(jié)空間下的光滑函數(shù)為三次樣條曲線,采用遺傳算法來求解符合相關(guān)約束條件且運(yùn)行時(shí)間最短的優(yōu)化問題,得出了時(shí)間最優(yōu)軌跡。機(jī)器人在MATLAB中仿真實(shí)現(xiàn)碼垛軌跡運(yùn)行時(shí),平穩(wěn)運(yùn)行無振動(dòng)且時(shí)間最優(yōu)。
參考文獻(xiàn):
[1]劉焱.工業(yè)機(jī)器人的應(yīng)用現(xiàn)狀與發(fā)展趨勢研究[J].湖北農(nóng)機(jī)化,2019(008):5.
[2]GB/T 7714 李雨健.六軸碼垛機(jī)器人的軌跡規(guī)劃與關(guān)節(jié)摩擦補(bǔ)償研究[D].
[3]王沐雨,黃民,吳國新.基于MATLAB的ABB IRB1600機(jī)器人運(yùn)動(dòng)學(xué)仿真[J].設(shè)備管理與維修,2019(17).
[4]袁明珠.Matlab遺傳算法工具箱在約束非線性懲罰函數(shù)中的應(yīng)用[J].軟件工程,2017(1).
[5]王學(xué)林,邢仁鵬,肖永飛,等.機(jī)械臂途經(jīng)N路徑點(diǎn)的連續(xù)軌跡插補(bǔ)算法研究[J].組合機(jī)床與自動(dòng)化加工技術(shù),2014(11).
[6]張成功,錢平.時(shí)間最優(yōu)的碼垛機(jī)器人軌跡控制仿真[J].計(jì)算機(jī)仿真,2019,036(002):314-318.