尹恒健,倪受東
(南京工業(yè)大學(xué)機(jī)械與動(dòng)力工程學(xué)院,江蘇 南京 211800)
隨著社會(huì)的不斷發(fā)展,高樓建筑越來(lái)越多,玻璃幕墻因采光好、美觀的特點(diǎn)被廣泛的使用,同時(shí)清洗高空玻璃的工作變得復(fù)雜。一般情況下,清洗高空玻璃的工作有兩種方式:人工清洗和升降機(jī)清洗。人工清洗會(huì)帶來(lái)一定的危險(xiǎn)性[1],升降機(jī)清洗成本較高以及容易出現(xiàn)清洗的死角。為了解決這些顧慮,有些學(xué)者也在研究。例如最近幾年,文獻(xiàn)[2]提出的“基于涵道推力式擦玻璃機(jī)器人”的研究,雖然在自由行走時(shí)可以克服摩擦,保證機(jī)器人不會(huì)滑落,但此類(lèi)擦玻璃機(jī)器人結(jié)構(gòu)復(fù)雜且成本較高;文獻(xiàn)[3]提出的“一種輪足組合式擦玻璃機(jī)器人”,大大提高清洗的穩(wěn)定性,缺點(diǎn)就是自帶的水箱重量大,無(wú)法實(shí)現(xiàn)長(zhǎng)時(shí)間的清洗。綜上,難以解決的兩大問(wèn)題就是清洗時(shí)機(jī)器人末端的作業(yè)位置以及輸出的末端接觸力是否被外力所干擾。
早在1985年,文獻(xiàn)[4]提出的“阻抗控制”這一概念,將位置和力納入一個(gè)動(dòng)態(tài)框架,從補(bǔ)償性的角度解決了機(jī)器人在運(yùn)動(dòng)時(shí)易受外界干擾的問(wèn)題,但由于對(duì)機(jī)器人模型的精確度要求極高,在作業(yè)中很難達(dá)到預(yù)期的效果。后來(lái)Seul提出的“自適應(yīng)阻抗控制”,是在Hogan研究的基礎(chǔ)上,增加了延時(shí)模塊,擁有了較好的魯棒性[5]。最近幾年,自適應(yīng)阻抗算法多運(yùn)用于醫(yī)療領(lǐng)域,例如基于下肢康復(fù)機(jī)器人、上肢輔助外骨骼機(jī)器人、可穿戴機(jī)器人等等,這些機(jī)器人的產(chǎn)生,一定程度上減輕了老人以及在事故中受傷的殘疾人士的痛苦[6]。與此同時(shí),隨著工業(yè)領(lǐng)域的需求不斷增多,自適應(yīng)阻抗控制算法的優(yōu)越性逐漸顯示出來(lái)。
本研究提出的擦玻璃機(jī)器人是在傳統(tǒng)工業(yè)機(jī)器人的基礎(chǔ)上,引用了自適應(yīng)阻抗算法,在機(jī)器人處于未知環(huán)境時(shí),對(duì)機(jī)器人末端的位置和力進(jìn)行一定的規(guī)劃,減小外界的干擾,確保玻璃達(dá)到預(yù)期的清潔效果。
這里研究的擦玻璃機(jī)器人模型平臺(tái)包括PUMA560機(jī)器人、末端清潔器、支撐板,如圖1所示。末端清潔器主要由小型驅(qū)動(dòng)器、力傳感器以及清潔海綿構(gòu)成;支撐板水平放置,主要是為了減少機(jī)器人在工作工程中左右晃動(dòng)的現(xiàn)象。當(dāng)機(jī)器人末端的位置和接觸力達(dá)到預(yù)期的數(shù)值,玻璃的清洗工作就可以正常進(jìn)行。
圖1 擦玻璃機(jī)器人的主要結(jié)構(gòu)Fig.1 Main Structure of the Glass Cleaning Robot
為了完成擦玻璃的任務(wù),選擇的理想機(jī)器人應(yīng)具有簡(jiǎn)便和易于操作的特點(diǎn),而PUMA560機(jī)器人是工業(yè)生產(chǎn)中較為常見(jiàn)的機(jī)器人,符合這項(xiàng)任務(wù)的需求。它有六個(gè)轉(zhuǎn)動(dòng)關(guān)節(jié),前面三關(guān)節(jié)控制了大體的運(yùn)動(dòng)方向,后面三關(guān)節(jié)確定末端的具體位置,這樣可以展開(kāi)六自由度的作業(yè)。如表1所示,在D-H 表中,?i表示扭轉(zhuǎn)角,ai表示橫距,di表示連桿長(zhǎng)度,θi表示關(guān)節(jié)角,利用MATLAB中的robotics 工具箱畫(huà)出PUMA560 機(jī)器人的三維模型,如圖2所示。
表1 PUMA560機(jī)器人的D-H參數(shù)Tab.1 D-H Parameters of PUMA560 Robot
圖2 三維空間中的PUMA560機(jī)器人Fig.2 PUMA560 Robot in the Three-Dimensional Space
為了便于下面的研究,從輸出力矩的角度考慮,取連桿2和連桿3構(gòu)成兩連桿機(jī)械臂進(jìn)行深入的研究,如圖3所示。兩連桿機(jī)械臂的坐標(biāo)表示,得出末端機(jī)械臂的坐標(biāo)表示為:
圖3 兩連桿機(jī)械臂坐標(biāo)系Fig.3 Two Link Manipulator Coordinate System
式中:θ1—關(guān)節(jié)角1;θ2—關(guān)節(jié)角2;L1和L2—機(jī)械臂的長(zhǎng)度。
根據(jù)雅可比矩陣的定義,末端的坐標(biāo)值對(duì)θ1,θ2分別求偏導(dǎo),由此推出雅可比矩陣為:
在工業(yè)機(jī)器人研究領(lǐng)域,拉格朗日方程為:
式中:L—拉格朗日函數(shù);τi—廣義力;θi—變量;—變量的一階導(dǎo)數(shù)。根據(jù)前面建立的兩連桿機(jī)械臂的坐標(biāo)表示,分別建立整個(gè)系統(tǒng)動(dòng)能和勢(shì)能的表達(dá)式[7],得出拉格朗日函數(shù):
n自由度的機(jī)器人動(dòng)力學(xué)方程為:
式中:D(θ)—慣性矩陣;C(θ,)—離心力 哥氏力矢量矩陣;G(θ,θ)—重力矢量矩陣。由上面兩式結(jié)合,得出:
與傳統(tǒng)的阻抗控制算法相比,自適應(yīng)阻抗控制算法在位置環(huán)境下表現(xiàn)出一定的適應(yīng)性,及時(shí)地對(duì)力反饋信息進(jìn)行處理。
更重要的是,自適應(yīng)阻抗算法不需要對(duì)機(jī)器人建立精確的模型,在實(shí)際的工業(yè)生產(chǎn)中表現(xiàn)出良好的魯棒性,能夠把機(jī)器人與環(huán)境之間的接觸力和實(shí)際的位置穩(wěn)定在期望值范圍內(nèi)。
在外部環(huán)境作用下的n自由度機(jī)器人的動(dòng)力學(xué)表達(dá)式如下:
在傳統(tǒng)阻抗控制的基礎(chǔ)上,建立新的阻抗的關(guān)系式如下:
式中:Fe—機(jī)器人與環(huán)境的接觸力;Fd—期望力;M,B,K—慣性矩陣、阻尼矩陣、剛度矩陣;E—期望位置Xd和實(shí)際位置X之差。
式中:為了后續(xù)研究的簡(jiǎn)便,將參數(shù)Fd,F(xiàn)e,M,B,K對(duì)應(yīng)為fd,fe,m,b,k。
由于在實(shí)際的過(guò)程當(dāng)中,自由空間下的狀態(tài)是不存在的,所以只考慮接觸空間這類(lèi)情況。
仿真中沒(méi)有傳感器,所以將剛度系數(shù)設(shè)置為零,在力控方向上假設(shè):
式中:ke—環(huán)境剛度。
其中,考慮到實(shí)際的工作環(huán)境,要對(duì)環(huán)境位置有個(gè)大概的估計(jì)值Xe,設(shè)e′=e+δXe。
為了保證力誤差的穩(wěn)定性,自適應(yīng)阻抗方程為:
由式得出,自適應(yīng)阻抗算法的框架,如圖4所示。
圖4 自適應(yīng)阻抗原理框圖Fig.4 Adaptive Impedance Schematic Diagram
假設(shè)兩連桿機(jī)械臂的兩關(guān)節(jié)長(zhǎng)度都為1m,質(zhì)量都為1kg得出:
故特征值下界ρ為0.172,由于估計(jì)矩陣且0 <α<2ρ,所以得出:0 <α<0.344。為了方便后續(xù)與粒子群算法優(yōu)化后的仿真結(jié)果作對(duì)比,下面仿真只針對(duì)X方向上的接觸力(允許有0.01的誤差),自適應(yīng)阻抗控制仿真模型,如圖5所示。
圖5 自適應(yīng)阻抗算法的simulink仿真模型Fig.5 Simulink Simulation Model of Adaptive Impedance Algorithm
仿真模型中,6個(gè)S函數(shù)分別表示笛卡爾空間內(nèi)X,Y的坐標(biāo)、、ROBOT模塊(輸入總力矩,求出逆解得出角度和角速度)、延時(shí)模塊,根據(jù)圖中的原理框圖依次搭建好simulink模塊。
其中延時(shí)模塊的內(nèi)部結(jié)構(gòu),如圖6所示。
圖6 延時(shí)模塊Fig.6 Delay Module
根據(jù)圖7 所示,在X,Y方向上加入階躍信號(hào)分別為Xd=0.51,Yd=1.866,將期望力控制在15N,環(huán)境信號(hào)(規(guī)劃的位置)X=0.5,Y=1.866,仿真模型中三個(gè)阻抗參數(shù)分別設(shè)置為:
圖7 機(jī)械手的初始位置Fig.7 Initial Position of Manipulator
圖8 X方向上的位置Fig.8 Position in the X Direction
圖9 X方向上的力Fig.9 Force in the X Direction
由上圖可以看出,X方向的位置始終在誤差范圍之類(lèi),最大的實(shí)際的接觸力達(dá)到25.5364N,經(jīng)過(guò)1.618s,接觸力穩(wěn)定在15N。綜上分析,采用自適應(yīng)阻抗算法設(shè)計(jì)控制器,不僅能有效地實(shí)現(xiàn)位置控制,對(duì)機(jī)械臂末端的接觸力有明顯的控制效果。
在這里,采用粒子群算法主要是優(yōu)化自適應(yīng)阻抗算法中的M,B,K三個(gè)參數(shù),不斷的更新粒子的速度和位置,從而使整個(gè)自適應(yīng)阻抗算法達(dá)到理想的效果[10]。適應(yīng)度函數(shù)決定粒子的優(yōu)劣采用的函數(shù)如下:
式中:μ1—力誤差,表示位置誤差;ρ—常數(shù),范圍是(0~1)。
Fcn模塊力包含適應(yīng)度函數(shù),u1表示期望位置和實(shí)際位置的差,u2表示期望力和實(shí)際力的差,p為一個(gè)0到1的常數(shù),Out表示適應(yīng)度值的輸出,如圖10所示。
圖10 粒子群算法優(yōu)化的自適應(yīng)阻抗控制器Fig.10 Particle Swarm Optimization Adaptive Impedance Controller
為了讓粒子群算法中的主函數(shù)和適應(yīng)度函數(shù)連接起來(lái),需要用到以下腳本語(yǔ)句:
將粒子群算法生成的粒子通過(guò)Assignin函數(shù)賦值給仿真模型中的M,B,K三個(gè)參數(shù),進(jìn)行離線(xiàn)運(yùn)算。在算法的主程序中,粒子的維數(shù)設(shè)置為3,粒子數(shù)目為20,迭代次數(shù)為100,加速參數(shù)都為2,慣性參數(shù)為0.6,粒子的速度為[-1,1],粒子上下限分別為[0,40,500],[2,100,70]。結(jié)果,如圖11所示。
圖11 適應(yīng)度值迭代曲線(xiàn)Fig.11 Fitness Value Iteration Curve
由上圖可以看出,迭代次數(shù)達(dá)到32時(shí),適應(yīng)度值完全收斂,此時(shí)選取的M,B,K的值為最優(yōu)值,分別為1.0292,87.7710,595.9844。X方向上的力,如圖12所示。
圖12 粒子群算法優(yōu)化后的X方向上的力Fig.12 Particle Swarm Optimization in the X Direction of the Force
和前面的自適應(yīng)阻抗仿真模型相比(因?yàn)閮烧叨寄苁筙方向上的位置穩(wěn)定在誤差之內(nèi),故不作討論),PSO優(yōu)化后的結(jié)果是經(jīng)過(guò)1.163s,接觸力穩(wěn)定在15N,提前了0.455s。這表明經(jīng)過(guò)粒子群優(yōu)化后的自適應(yīng)阻抗控制器穩(wěn)定時(shí)間縮短,起到了明顯的優(yōu)化效果。
上文中的接觸力15N顯然不是PSO-自適應(yīng)阻抗控制器承受的最大極限值,為了進(jìn)一步研究此控制器,將15N的力慢慢疊加,過(guò)程中出現(xiàn)了兩個(gè)關(guān)鍵的節(jié)點(diǎn)數(shù)據(jù),分別是23N和500N時(shí)候機(jī)器人末端的位置和力的控制情況,如圖13、圖14所示。仿真結(jié)果表明,在一步步增大期望力的時(shí)候,期望力在(0~23)N時(shí),機(jī)器人末端位置和接觸力都能被有效的控制;期望力超過(guò)500N時(shí),仿真過(guò)程中開(kāi)始報(bào)錯(cuò),即控制器最大承受力為500N,但位置無(wú)法被限制誤差范圍之內(nèi),超過(guò)理想位置約0.2m。
圖13 兩種情況下X方向上的力Fig.13 The Force in the X Direction in the Both Cases
圖14 兩種情況下X方向上的位置Fig.14 The Position in the X Direction in Both Cases
因此,在現(xiàn)實(shí)的玻璃清洗過(guò)程中,對(duì)一些剛度較小且清潔度要求高的玻璃(例如住宅區(qū)的裝飾玻璃),通過(guò)將此控制器的期望力設(shè)置在(0~23)N之內(nèi),可以起到好的效果;對(duì)一些剛度高且工作量大的玻璃(例如玻璃幕墻),可以將此控制器的期望力設(shè)置在(23~500)N之內(nèi),此控制器都可以滿(mǎn)足相應(yīng)的需求。
這里采用自適應(yīng)阻抗算法研究擦玻璃機(jī)器人,在未知的環(huán)境下,有效地對(duì)機(jī)械臂末端的位置和接觸力進(jìn)行控制,在實(shí)際的擦玻璃工作中可以有效減少了外界的干擾。
通過(guò)引入了粒子群算法,對(duì)自適應(yīng)阻抗參數(shù)進(jìn)行優(yōu)化。尤其是測(cè)量控制器模型承受的最大期望力,在實(shí)際生活在中有較大的應(yīng)用價(jià)值。
但研究的過(guò)程中仍存在許多不足:針對(duì)擦玻璃機(jī)器人輸出力矩較大的連桿2、3進(jìn)行研究,對(duì)比于6自由度機(jī)器人而言,達(dá)不到最理想的結(jié)果;未立足于實(shí)際條件來(lái)考慮到關(guān)節(jié)之間的摩擦因數(shù);沒(méi)有對(duì)粒子群算法進(jìn)行改進(jìn),粒子群易容易陷入局部最優(yōu)。在今后研究過(guò)程中,筆者將重點(diǎn)研究多自由度機(jī)器人的研究,立足于實(shí)驗(yàn),對(duì)干擾擦玻璃機(jī)器人作業(yè)的實(shí)際因數(shù)進(jìn)行更多的探討。