楚雪平,王曉玲
(1.河南職業(yè)技術(shù)學(xué)院智能制造學(xué)院,河南鄭州 450046;2.河南科技大學(xué)圖書館,河南洛陽 471023)
機(jī)械臂是將多個(gè)機(jī)械桿通過關(guān)節(jié)連接起來的自動(dòng)化系統(tǒng),各機(jī)械桿在電機(jī)驅(qū)動(dòng)下繞關(guān)節(jié)自由轉(zhuǎn)動(dòng),使機(jī)械臂末端到達(dá)指定位置來完成相應(yīng)工作[1?2]。隨著自動(dòng)化技術(shù)的迅速發(fā)展,機(jī)械臂已廣泛應(yīng)用于裝配、焊接、組裝等工業(yè)生產(chǎn)中,機(jī)械臂的控制精度直接決定了工業(yè)生產(chǎn)的效率和質(zhì)量[3?4]。但是工業(yè)機(jī)械臂是一個(gè)非線性、強(qiáng)耦合的復(fù)雜系統(tǒng),在實(shí)際生產(chǎn)中,機(jī)械桿繞各關(guān)節(jié)轉(zhuǎn)動(dòng)時(shí)必然會(huì)受到機(jī)械摩擦的干擾,從而造成控制精度降低。同時(shí),當(dāng)工業(yè)機(jī)械臂需要與生產(chǎn)對(duì)象接觸時(shí),生產(chǎn)對(duì)象必然會(huì)對(duì)機(jī)械臂末端產(chǎn)生一個(gè)未知負(fù)載力矩,這會(huì)嚴(yán)重影響機(jī)械臂的控制精度[5?6]。因此,要想提高工業(yè)機(jī)械臂的實(shí)用性和精確度,必須充分考慮工業(yè)機(jī)械臂對(duì)于機(jī)械摩擦和負(fù)載力矩的魯棒性。文獻(xiàn)[7]為了克服模型誤差對(duì)機(jī)械臂控制的影響,采用滑模自適應(yīng)控制算法對(duì)軌跡指令進(jìn)行有效跟蹤,能夠在一定程度上提高精度,但實(shí)用性不高;文獻(xiàn)[8]采用自適應(yīng)終端滑??刂品椒▉硖岣邫C(jī)械臂的魯棒性和控制效果,但是不能很好地克服抖振現(xiàn)象;文獻(xiàn)[9]針對(duì)具有摩擦和負(fù)載等干擾的機(jī)械臂軌跡跟蹤控制問題,提出了一種模糊補(bǔ)償控制方法,能夠提高控制效果,但是需要已知機(jī)械臂的精確數(shù)學(xué)模型;文獻(xiàn)[10]為了提高帶有各種干擾因素的機(jī)械臂的運(yùn)行穩(wěn)定性,采用干擾觀測器設(shè)計(jì)了反演滑??刂扑惴?,雖然實(shí)現(xiàn)了對(duì)機(jī)械臂的控制,但是控制精度一般?;谝陨戏治?,設(shè)計(jì)了一種二階非奇異快速終端滑模面,并提出了一種基于迭代學(xué)習(xí)的滑模魯棒控制方法,實(shí)現(xiàn)了對(duì)工業(yè)機(jī)械臂的精確控制。
工業(yè)機(jī)械臂是通過機(jī)械關(guān)節(jié)將機(jī)械臂連接起來的多級(jí)智能工業(yè)生產(chǎn)設(shè)備,其中各級(jí)機(jī)械臂可以繞相應(yīng)關(guān)節(jié)自由轉(zhuǎn)動(dòng),從而使裝有抓手、解刀、焊槍等設(shè)備的機(jī)械臂末端能夠準(zhǔn)確到達(dá)指定空間位置,來快速、精確、高效地完成裝配和焊接等流水線工業(yè)生產(chǎn)任務(wù)。工業(yè)機(jī)械臂示意圖,如圖1所示。
圖1 工業(yè)機(jī)械臂示意圖Fig.1 Schematic Diagram of Industrial Manipulator
工業(yè)機(jī)械臂的數(shù)學(xué)模型為[11]:
式中:q、q?、q?—工業(yè)機(jī)械臂各關(guān)節(jié)轉(zhuǎn)動(dòng)的角度、角速度和角加速度;
M(q)—慣性矩陣;D(q,q?)—科氏力和離心力矩陣;G(q)—重力矩陣;τ—各關(guān)節(jié)的驅(qū)動(dòng)力矩。
在工業(yè)生產(chǎn)中,工業(yè)機(jī)械臂的末端設(shè)備必須接觸各種零部件并施加一定的作用力,那么零部件就會(huì)對(duì)工業(yè)機(jī)械臂產(chǎn)生一個(gè)未知的負(fù)載力矩,此力矩必然會(huì)影響對(duì)工業(yè)機(jī)械臂的精確控制。另外,工業(yè)機(jī)械臂各關(guān)節(jié)在轉(zhuǎn)動(dòng)過程中不可避免地會(huì)受到機(jī)械摩擦的干擾,導(dǎo)致工業(yè)機(jī)械臂的末端無法快速、準(zhǔn)確定位到指定位置,無法精準(zhǔn)完成相應(yīng)的生產(chǎn)任務(wù)[12]。因此,要實(shí)現(xiàn)對(duì)工業(yè)機(jī)械臂的精確控制,提高工業(yè)生產(chǎn)的效率和質(zhì)量,必須充分考慮未知負(fù)載力矩和機(jī)械摩擦的干擾影響,則工業(yè)機(jī)械臂數(shù)學(xué)模型為:
式中:d—未知負(fù)載力矩和機(jī)械摩擦的干擾總和。
根據(jù)坐標(biāo)轉(zhuǎn)換關(guān)系,可以得到工業(yè)機(jī)械臂末端的運(yùn)動(dòng)軌跡與各關(guān)節(jié)轉(zhuǎn)動(dòng)角度的轉(zhuǎn)換關(guān)系為[13?14]:
式中:P=[x,y,z]T—工業(yè)機(jī)械臂末端的運(yùn)動(dòng)軌跡;N—轉(zhuǎn)換矩陣。
首先給出了二階非奇異快速終端滑模面和滑??刂坡?,然后利用迭代學(xué)習(xí)方法來改善滑??刂坡傻聂敯粜裕詈筮M(jìn)行了收斂性分析??刂葡到y(tǒng)結(jié)構(gòu),如圖2所示。
圖2 控制系統(tǒng)結(jié)構(gòu)Fig.2 Structure of Control System
機(jī)械臂末端的軌跡跟蹤誤差為:
式中:Pc=[xc,yc,zc]T—工業(yè)機(jī)械臂末端的期望軌跡指令。
則由式(3)得到工業(yè)機(jī)械臂各關(guān)節(jié)轉(zhuǎn)動(dòng)的角度指令為:
式中:k1—正定矩陣。
工業(yè)機(jī)械臂的關(guān)節(jié)轉(zhuǎn)動(dòng)角度跟蹤誤差為:
設(shè)計(jì)二階非奇異快速終端滑模面[15]s為:
式中:α、β—正定矩陣;r1=m1n1、r2=m2n2,其中,m1、n1、m2和n2是正奇數(shù),且滿足1 對(duì)式(7)求導(dǎo)得: 定義工業(yè)機(jī)械臂的狀態(tài)ω和φ如下: 然后設(shè)計(jì)滑??刂坡搔樱?/p> 式中:k2、k3—正定矩陣;?—ω的估計(jì)值;v—二階滑模項(xiàng),表達(dá)式如下: 的表達(dá)式為: 式中:λ、η、γ—正定矩陣。 迭代學(xué)習(xí)是通過迭代修正控制輸出來達(dá)到控制目標(biāo)的一種智能控制方法,不需要已知控制對(duì)象的精確數(shù)學(xué)模型,能夠快速實(shí)現(xiàn)對(duì)控制對(duì)象運(yùn)動(dòng)軌跡的精確跟蹤[16?17]。這里利用迭代學(xué)習(xí)方法來改進(jìn)滑??刂坡墒剑?1),以改善滑??刂频亩墩瘳F(xiàn)象,提高控制的穩(wěn)定性、準(zhǔn)確性和魯棒性。 設(shè)計(jì)第k次迭代學(xué)習(xí)的滑模控制律τk: 式中:k—迭代學(xué)習(xí)次數(shù);—第k次迭代學(xué)習(xí)對(duì)ω的估計(jì)值;φk—第k次迭代學(xué)習(xí)時(shí)的狀態(tài)φ;sk—第k次迭代學(xué)習(xí)時(shí)的二階非奇異快速終端滑模面s;vk—第k次迭代學(xué)習(xí)的二階滑模項(xiàng),表達(dá)式描述如下: 其中,初始迭代值v0= 0。 設(shè)計(jì)的表達(dá)式為: 其中,初始迭代值= 0。 在第k次迭代學(xué)習(xí)的滑??刂坡墒剑?4)~式(16)的基礎(chǔ)上,設(shè)計(jì)基于迭代學(xué)習(xí)的滑??刂坡蔀椋?/p> 式中:初始控制量τ0= 0;k4、k5—正定矩陣。 結(jié)論1:設(shè)計(jì)的基于迭代學(xué)習(xí)的滑??刂坡墒剑?4)~式(17)能夠確保工業(yè)機(jī)械臂的運(yùn)動(dòng)軌跡收斂。 證明:構(gòu)建復(fù)合能量函數(shù)[18]為: 式中:—對(duì)ωk的估計(jì)誤差=?ωk。 相臨2次迭代學(xué)習(xí)的復(fù)合能量函數(shù)變化值ΔEk描述為: 然后將滑模控制律式(14)~式(16)代入式(19)化簡可得: 因?yàn)棣k≤0,可知結(jié)論1 成立[19],即所設(shè)計(jì)的基于迭代學(xué)習(xí)的滑模控制律式(14)~式(17)能夠確保工業(yè)機(jī)械臂的運(yùn)動(dòng)軌跡收斂。 為了驗(yàn)證設(shè)計(jì)的快速終端滑??刂坡傻挠行裕謩e采用文獻(xiàn)[20]的模型預(yù)測控制(MPCL)、滑??刂坡墒剑?1)(SMCL)與基于迭代學(xué)習(xí)的滑??刂坡墒剑?7)(ILS?SMCL)進(jìn)行對(duì)比仿真。 設(shè)置工業(yè)機(jī)械臂的初始狀態(tài)為0;工業(yè)機(jī)械臂末端的運(yùn)動(dòng)軌跡指令為:xc=(10 sint)mm、yc=(10 cost)mm、zc=( 3t)mm;設(shè)置干擾為d=[0.1 sint]3×1N ?m;迭代周期為0.2s。設(shè)置控制參數(shù),如表1所示。 表1 控制參數(shù)Tab.1 Control Parameters 為了展示設(shè)計(jì)的基于迭代學(xué)習(xí)的滑??刂坡桑↖LS?SMCL)對(duì)于工業(yè)機(jī)械臂的控制效果和優(yōu)越性,利用實(shí)際坐標(biāo)與指令坐標(biāo)之間的距離誤差eP來衡量定位控制精度,eP的計(jì)算方法描述如下: 按照設(shè)置的參數(shù)運(yùn)行,并利用上述三種控制方法控制工業(yè)機(jī)械臂運(yùn)動(dòng)得到的跟蹤誤差eP,如圖3所示。 圖3 軌跡跟蹤誤差Fig.3 Trajectory Tracking Error 由軌跡跟蹤誤差仿真結(jié)果圖3看出:在文獻(xiàn)[20]模型預(yù)測控制(MPCL)下,工業(yè)機(jī)械臂可基本跟上指令信號(hào),最大跟蹤誤差為8.1mm,誤差比較大,效果不理想;在滑??刂坡桑⊿MCL)下,工業(yè)機(jī)械臂的末端能夠基本跟蹤軌跡指令信號(hào),最大軌跡跟蹤誤差為4.2mm,跟蹤誤差仍然較大,控制效果一般;而在基于迭代學(xué)習(xí)的滑??刂坡桑↖LS?SMCL)下,關(guān)節(jié)末端能夠穩(wěn)定、準(zhǔn)確跟蹤指令信號(hào),最大軌跡跟蹤誤差僅為0.3mm,能夠滿足精確控制要求。進(jìn)一步給出了工業(yè)機(jī)械臂末端對(duì)于x、y、z坐標(biāo)的跟蹤結(jié)果,如圖4~圖6所示。其中,ex=x?xc、ey=y?yc、ez=z?zc。 圖4 x坐標(biāo)跟蹤仿真結(jié)果Fig.4 Tracking Simulation Results of x Coordinate 圖5 y坐標(biāo)跟蹤仿真結(jié)果Fig.5 Tracking Simulation Results of y Coordinate 圖6 z坐標(biāo)跟蹤仿真結(jié)果Fig.6 Tracking Simulation Results of z Coordinate 由軌跡跟蹤誤差仿真結(jié)果圖4~圖6可看出:在文獻(xiàn)[20]模型預(yù)測控制(MPCL)下,工業(yè)機(jī)械臂末端的最大跟蹤誤差為6.2mm,誤差比較大,控制效果不好;在滑??刂坡桑⊿MCL)下,工業(yè)機(jī)械臂末端的最大跟蹤誤差為3.3mm,誤差較大;而基于迭代學(xué)習(xí)的滑??刂坡桑↖LS?SMCL)的最大跟蹤誤差僅為0.2mm,誤差較小,控制效果較好,能夠滿足精確控制要求。 為了驗(yàn)證設(shè)計(jì)的快速終端滑??刂坡桑↖LS?SMCL)對(duì)工業(yè)機(jī)械臂的實(shí)際控制效果,選取的實(shí)驗(yàn)對(duì)象為勃朗特生產(chǎn)的六自由度工業(yè)機(jī)械臂,型號(hào):BRTIRUS2550A,主要應(yīng)用在搬運(yùn)作業(yè)中,最大負(fù)載50kg,臂展255cm,其控制系統(tǒng)用來存儲(chǔ)執(zhí)行控制方法,并施加干擾信號(hào)。實(shí)驗(yàn)中,使機(jī)械臂攜帶25kg 負(fù)載,分別采用文獻(xiàn)[20]中模型預(yù)測控制(MPCL)、滑??刂坡桑⊿MCL)與基于迭代學(xué)習(xí)的滑模控制律式(17)對(duì)BRTIRU機(jī)械臂進(jìn)行定位精度測試,每次的初始點(diǎn)的坐標(biāo)為(0,0,0)mm,然后在控制端依次發(fā)送10個(gè)坐標(biāo)指令分別為:(100,100,100)mm、(200,200,200)mm、(300,300,300)mm、(400,400,400)mm、(500,500,500)mm、(600,600,600)mm、(700,700,700)mm、(800,800,800)mm、(900,900,900)mm、(1000,1000,1000)mm,然后測量每次定位的實(shí)際坐標(biāo)位置,記錄得到實(shí)驗(yàn)結(jié)果,如表2所示。 表2 實(shí)驗(yàn)結(jié)果Tab.2 Experiment Results 由表2看出:文獻(xiàn)[20]模型預(yù)測控制方法(MPCL)的最大跟蹤誤差為2.83mm,平均運(yùn)行時(shí)長為3.11s,控制精度較差,控制時(shí)間較長;滑??刂坡桑⊿MCL)的最大跟蹤誤差為1.45mm,平均運(yùn)行時(shí)長為2.78s,控制精度一般,控制時(shí)間也較長;而基于迭代學(xué)習(xí)的滑模控制律(ILS?SMCL)的最大跟蹤誤差僅為0.17mm,平均運(yùn)行時(shí)長僅為1.73s,控制精度較高,控制時(shí)間較短。 針對(duì)帶有未知負(fù)載力矩和機(jī)械摩擦等干擾的工業(yè)機(jī)械臂,設(shè)計(jì)了一種基于迭代學(xué)習(xí)的滑??刂坡?,消除了抖振現(xiàn)象,使工業(yè)機(jī)械臂具有更小的控制誤差。通過對(duì)比仿真結(jié)果表明:設(shè)計(jì)的基于迭代學(xué)習(xí)的滑??刂坡赡軌?qū)崿F(xiàn)對(duì)工業(yè)機(jī)械臂運(yùn)動(dòng)軌跡的高精確控制,最大跟蹤誤差僅為0.3mm,在平臺(tái)測試試驗(yàn)中,設(shè)計(jì)的基于迭代學(xué)習(xí)的滑??刂坡梢脖憩F(xiàn)出了更優(yōu)的快速性、準(zhǔn)確性和工程實(shí)用性,最大跟蹤誤差僅為0.17mm,平均運(yùn)行時(shí)長僅為1.73s,能夠在未知負(fù)載力矩和機(jī)械摩擦等干擾因素的影響下大幅提高工業(yè)機(jī)械臂的控制精度。3.2 基于迭代學(xué)習(xí)的滑模控制律
3.3 收斂性分析
4 仿真驗(yàn)證
4.1 仿真參數(shù)設(shè)置
4.2 對(duì)比仿真結(jié)果
5 平臺(tái)測試實(shí)驗(yàn)
6 結(jié)論