張鐵 許錦盛 鄒焱飚
(華南理工大學(xué)機(jī)械與汽車工程學(xué)院,廣東廣州 510640)
拖動示教不需要編程基礎(chǔ),操作簡便且效率高,更適合于現(xiàn)代化的柔性生產(chǎn)。而目前具有拖動示教功能的機(jī)器人一般為關(guān)節(jié)內(nèi)部集成了力矩傳感器的DLR 機(jī)器人[1]和配備了雙編碼器的UR 機(jī)器人[2],其通過力矩傳感器或雙編碼器來直接測量關(guān)節(jié)外力矩,從而基于柔性控制來實(shí)現(xiàn)拖動示教功能。但是在實(shí)際情況中,工業(yè)機(jī)器人的關(guān)節(jié)內(nèi)一般只具有單編碼器且沒有集成力矩傳感器,所以免力矩傳感器的拖動示教對于工業(yè)機(jī)器人來說存在挑戰(zhàn)。實(shí)現(xiàn)免力矩傳感器拖動示教的關(guān)鍵問題是能夠準(zhǔn)確地對外力矩進(jìn)行觀測,并對關(guān)節(jié)驅(qū)動力矩進(jìn)行高精度控制。
根據(jù)機(jī)器人的動力學(xué)模型和運(yùn)動狀態(tài)來估計外力是實(shí)現(xiàn)免力矩傳感器測量外力矩的常用方法,其中動力學(xué)模型是影響外力矩估計精度的重要因素。文獻(xiàn)[3]中分別辨識關(guān)節(jié)端與電機(jī)端的動力學(xué)方程,其中電機(jī)端采用了Lugre 動態(tài)摩擦模型,然后將兩者計算的關(guān)節(jié)力矩差值作為估計的外力矩,但這種方法需要建立復(fù)雜的摩擦模型且增加了模型辨識的難度。文獻(xiàn)[4-5]中通過引入廣義動量,將動力學(xué)模型轉(zhuǎn)化為不含加速度的形式,去除了加速度的噪聲干擾,進(jìn)而將廣義動量的殘差量作為觀測量,實(shí)現(xiàn)了外力矩的迭代估計,但基于廣義動量的外力估計法并沒有考慮到動力學(xué)模型的辨識誤差等影響,且估計精度受觀測矩陣所限制。文獻(xiàn)[6-7]中進(jìn)一步將廣義動量與擾動觀測器相結(jié)合,基于卡爾曼濾波算法對外力矩進(jìn)行估計,提高了外力矩估計的精度。由于卡爾曼濾波算法能夠?qū)崟r調(diào)整由模型誤差所引入的過程噪聲與由測量誤差而引入的測量噪聲,所以其具有更高的估計精度與更好的魯棒性。
拖動示教的控制方法通常分為基于力矩和位置模式的控制方法。文獻(xiàn)[8]中設(shè)計了基于自測量的重力矩與摩擦力矩的計算方案,對機(jī)器人示教過程中的重力與摩擦力進(jìn)行力矩補(bǔ)償,從而實(shí)現(xiàn)了輕型機(jī)器人上的拖動示教;文獻(xiàn)[9]中將實(shí)時補(bǔ)償?shù)闹亓εc摩擦力轉(zhuǎn)換為目標(biāo)電流值,并直接加在電流控制環(huán)上,提高了拖動示教的速度響應(yīng)。但基于力矩模式的控制方法對外力比較敏感,容易造成系統(tǒng)的不穩(wěn)定。文獻(xiàn)[10]中通過實(shí)時補(bǔ)償重力、摩擦力與慣性力,建立了機(jī)器人的平衡狀態(tài),然后在該狀態(tài)下計算由外力引起的關(guān)節(jié)轉(zhuǎn)角,從而基于位置控制環(huán)實(shí)現(xiàn)機(jī)器人的拖動示教,但該方法在位置外環(huán)上的計算比較復(fù)雜且需要知道精確的PD 控制常數(shù)。文獻(xiàn)[11]中首次提出阻抗與導(dǎo)納控制的概念,其通過調(diào)節(jié)機(jī)器人末端力與環(huán)境之間的質(zhì)量阻尼彈簧系統(tǒng),以實(shí)現(xiàn)兩者之間的良好交互性。文獻(xiàn)[12]中使用導(dǎo)納控制算法將外力轉(zhuǎn)換為示教運(yùn)動的期望位置,并將高頻抖動力矩[13]與補(bǔ)償?shù)闹亓?、摩擦力作為前饋力矩,兩者協(xié)同控制機(jī)器人完成拖動示教。導(dǎo)納控制通過位置規(guī)劃來動態(tài)調(diào)整人機(jī)交互中外力與位置偏移量之間的動態(tài)關(guān)系,穩(wěn)定性高,所以更適用于機(jī)器人的拖動示教控制中。
本文中提出以剛體動力學(xué)模型與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合的方式來建立機(jī)器人的動力學(xué)模型,其中深度神經(jīng)網(wǎng)絡(luò)以剛體動力學(xué)模型的力矩殘差為訓(xùn)練目標(biāo)進(jìn)行離線訓(xùn)練,進(jìn)一步補(bǔ)償模型的誤差??紤]到辨識誤差與測量噪聲,本文基于擾動卡爾曼濾波算法對機(jī)器人的關(guān)節(jié)外力矩進(jìn)行估計,并提出一種自適應(yīng)阻尼的導(dǎo)納控制方法來實(shí)現(xiàn)機(jī)器人的拖動示教,以改善啟停時的示教效果。
擾動卡爾曼濾波算法是一種基于模型的最優(yōu)估計方法,所以動力學(xué)模型的精度很大程度上影響了外力矩的估計精度,因此提出以剛體動力學(xué)模型與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合的方式來共同建立機(jī)器人的動力學(xué)模型。
機(jī)器人的剛體動力學(xué)模型可表示為
式(1)的模型可通過整體實(shí)驗辨識法[14]進(jìn)行辨識,因此得到計算的關(guān)節(jié)力矩為
在實(shí)際情況下,實(shí)際力矩與式(2)的計算力矩會存在偏差,將其定義為關(guān)節(jié)力矩殘差,
式中,ε表示關(guān)節(jié)力矩殘差,ε∈Rn。
存在力矩殘差的原因為式(1)描述的動力學(xué)模型并不全面,在實(shí)際情況下關(guān)節(jié)內(nèi)部還有摩擦和耦合等現(xiàn)象,由這些現(xiàn)象引起的關(guān)節(jié)力矩在現(xiàn)有方法下很難進(jìn)行精確的建模[15]。所以提出使用深度神經(jīng)網(wǎng)絡(luò)來對關(guān)節(jié)力矩殘差進(jìn)行黑箱建模,該方法不對具體的函數(shù)關(guān)系進(jìn)行推導(dǎo),而只學(xué)習(xí)網(wǎng)絡(luò)輸入與力矩殘差之間的映射關(guān)系,從而避免復(fù)雜的建模過程,同時也能將其他的建模誤差補(bǔ)償?shù)骄W(wǎng)絡(luò)中。
在一組激勵軌跡數(shù)據(jù)下,機(jī)器人第一關(guān)節(jié)的力矩殘差ε1與關(guān)節(jié)速度的關(guān)系如圖1所示。可以發(fā)現(xiàn)力矩殘差與關(guān)節(jié)速度之間存在一個隱含的映射關(guān)系,而這種關(guān)系一般是未知的,建立深度神經(jīng)網(wǎng)絡(luò)的目的就是通過訓(xùn)練使網(wǎng)絡(luò)學(xué)習(xí)這種映射關(guān)系,從而基于可測量的關(guān)節(jié)轉(zhuǎn)角、速度與加速度來計算得到力矩殘差。因此,本文為機(jī)器人的各個關(guān)節(jié)單獨(dú)建立一個全連接深度神經(jīng)網(wǎng)絡(luò),如圖2所示,其中下標(biāo)i=1,2,…,n表示機(jī)器人的關(guān)節(jié)i的含義。網(wǎng)絡(luò)的輸入層為3個神經(jīng)元,分別對應(yīng)關(guān)節(jié)i的轉(zhuǎn)角、速度與加速度,輸出層為一個神經(jīng)元,對應(yīng)關(guān)節(jié)i的力矩殘差εi。在建立的深度神經(jīng)網(wǎng)絡(luò)中,全連接層的作用為改變網(wǎng)絡(luò)層的維度以提高網(wǎng)絡(luò)的映射能力;隨機(jī)失活層加在全連接層后,在每輪訓(xùn)練時,全連接層的神經(jīng)元會以概率p隨機(jī)失活,以防止神經(jīng)網(wǎng)絡(luò)出現(xiàn)過擬合,提升網(wǎng)絡(luò)的泛化能力;Leakly Relu激活函數(shù)層是神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)非線性映射關(guān)系的基礎(chǔ),能有效防止深度神經(jīng)網(wǎng)絡(luò)出現(xiàn)梯度消失的現(xiàn)象。
圖1 關(guān)節(jié)力矩殘差與關(guān)節(jié)速度的關(guān)系Fig.1 Relationship between joint torque residual and velocity
圖2 全連接深度神經(jīng)網(wǎng)絡(luò)的框架Fig.2 Framework of fully connected deep neural network
圖3 深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練框架Fig.3 Training framework of deep neural networks
在式(1)的基礎(chǔ)上添加訓(xùn)練后的深度神經(jīng)網(wǎng)絡(luò)的輸出,由此完善原來的剛體動力學(xué)模型,減少模型誤差。因此,基于深度神經(jīng)網(wǎng)絡(luò)的動力學(xué)模型為
在拖動示教下,機(jī)器人的外力矩向量可看成是機(jī)器人系統(tǒng)外的一種擾動,所以根據(jù)經(jīng)典的擾動觀測器原理[16],外力矩模型定義為
式中:τe為關(guān)節(jié)外力矩向量,τe∈Rn;Ae為表示外力矩變化趨勢的對角矩陣,Ae∈Rn×n;外力矩模型誤差ωe定義為高斯噪聲ωe~N (0,Qc,e),Qc,e為其協(xié)方差對角矩陣,Qc,e∈Rn×n。
在關(guān)節(jié)外力矩影響下,完整的動力學(xué)模型為
通過組合關(guān)節(jié)外力矩與廣義動量為系統(tǒng)狀態(tài)變量,將式(6)轉(zhuǎn)化為狀態(tài)空間表達(dá)式,進(jìn)而能夠基于卡爾曼濾波算法對關(guān)節(jié)外力矩進(jìn)行最優(yōu)估計。
引入機(jī)器人的廣義動量為
結(jié)合式(6)-(8),式(6)可表示為
式中:符號τu定義為式(10)以簡化表示;辨識誤差ωp為辨識項而引入的誤差,定義為高斯噪聲ωp~N (0,Qc,p);Qc,p為其協(xié)方差對角矩陣,Qc,p∈Rn×n。
結(jié)合式(5)-(9),將關(guān)節(jié)外力矩與廣義動量組合為狀態(tài)變量,并定義廣義動量為狀態(tài)空間的輸出,機(jī)器人動力學(xué)模型式(6)可表述為狀態(tài)空間的形式:
在式(11)中:系統(tǒng)狀態(tài)為x=[pT,τeT]T;系統(tǒng)輸入為u=τu;系統(tǒng)狀態(tài)轉(zhuǎn)移矩陣A、輸入矩陣B與輸出矩陣C分別為
式中,In為單位矩陣,In∈Rn×n。系統(tǒng)過程噪聲ω表示為,即,
由于關(guān)節(jié)轉(zhuǎn)角與速度是可測量的,所以系統(tǒng)的輸出y定義為可測量的廣義動量p。測量噪聲v定義為高斯噪聲v~N (0,Rc),其包括了測量關(guān)節(jié)轉(zhuǎn)角與速度時引入的噪聲。由于關(guān)節(jié)速度是基于關(guān)節(jié)轉(zhuǎn)角進(jìn)行微分而獲得的,而微分計算會放大噪聲的影響,所以關(guān)節(jié)速度的噪聲是測量噪聲的主導(dǎo)因素。因此協(xié)方差矩陣Rc定義為
基于式(11),采用卡爾曼濾波算法對系統(tǒng)狀態(tài)x進(jìn)行最優(yōu)估計,從而根據(jù)系統(tǒng)的最優(yōu)狀態(tài)得到外力矩的觀測值。由于卡爾曼濾波是一種遞推型的算法,所以對式(11)進(jìn)行離散化,
式中,k為離散系統(tǒng)的時間變量。離散系統(tǒng)下的系統(tǒng)矩陣Ak,Bk可通過矩陣指數(shù)[17]來計算獲得:
式中,Ts為系統(tǒng)的采樣周期,exp(?)表示矩陣指數(shù)。
輸出矩陣Ck與測量噪聲vk的協(xié)方差矩陣Rk更新方式為
過程噪聲ωk的協(xié)方差矩陣Qk通過式(16)-(18)計算得到:
因此,對于離散后的式(13),基于擾動卡爾曼濾波的外力矩估算法可概括為如下算法1。
基于擾動卡爾曼濾波算法對機(jī)器人外力矩進(jìn)行最優(yōu)估計后,通過所提出的自適應(yīng)阻尼的導(dǎo)納控制方法將外力矩轉(zhuǎn)換為示教運(yùn)動的目標(biāo)指令,從而實(shí)現(xiàn)拖動示教的控制。
在關(guān)節(jié)空間中完整的導(dǎo)納控制算法為,
式中,Md、Dd、Kd∈Rn×n分別為系統(tǒng)的慣性矩陣、阻尼矩陣與剛度矩陣,它們都為對角矩陣且對角線上的元素分別表示各個關(guān)節(jié)的慣性參數(shù)、阻尼參數(shù)與剛度參數(shù)。qd為示教運(yùn)動的期望關(guān)節(jié)轉(zhuǎn)角向量,qd∈Rn;qr為參考軌跡的關(guān)節(jié)轉(zhuǎn)角向量,qr∈Rn。
式(19)的輸入為外力矩τe,輸出為期望的關(guān)節(jié)轉(zhuǎn)角qd,其控制的目標(biāo)是維護(hù)由外力矩而產(chǎn)生的位置偏移量qd-qr和外力矩τe始終保持式(19)所述的二階阻抗模型,從而使機(jī)器人關(guān)節(jié)能夠隨著外力矩作用而運(yùn)動。因為拖動示教是在可行范圍內(nèi)進(jìn)行拖拽運(yùn)動的,參考軌跡定義為所以對于一維的關(guān)節(jié)i,式(19)表示為
式中,下標(biāo)i=1,2,…,n表示機(jī)器人的關(guān)節(jié)i的含義。
將式(20)進(jìn)行離散化,并基于積分迭代法對期望關(guān)節(jié)加速度進(jìn)行積分,從而得到在離散系統(tǒng)下期望關(guān)節(jié)速度與關(guān)節(jié)轉(zhuǎn)角的更新方程為
由式(22)看出,系統(tǒng)慣性參數(shù)與阻尼參數(shù)是影響示教運(yùn)動效果的主要因素。系統(tǒng)慣性參數(shù)主要影響示教運(yùn)動的穩(wěn)定性,設(shè)定后一般不隨意更改;系統(tǒng)阻尼參數(shù)影響示教運(yùn)動跟隨外力矩變化的響應(yīng)速度。為了改善機(jī)器人在示教啟停階段的拖動效果,提出了一種阻尼參數(shù)自適應(yīng)調(diào)整的方法,
式中:Dsti為系統(tǒng)阻尼參數(shù)的一個標(biāo)準(zhǔn)值;α>0為控制外力矩變化率的一個參數(shù);sign(?)為符號函數(shù),主要作用為區(qū)分正反方向運(yùn)動時阻尼參數(shù)自適應(yīng)調(diào)整的方向;為外力矩變化率,
式中,m>1 為微分間隔常數(shù),以減輕微分所引入的高頻噪聲影響。
由式(23)看出,在示教的啟動階段,外力矩變化率的方向與外力矩τei的方向相同,阻尼參數(shù)Ddi隨外力矩變化率的增大而減小,示教運(yùn)動的關(guān)節(jié)轉(zhuǎn)角qdi因此增大,從而利于操作者能以較小的力輕松拖動機(jī)器人;在示教的停止階段,外力矩變化率的方向與外力矩τei的方向相反,阻尼參數(shù)隨之逐漸增大,期望關(guān)節(jié)轉(zhuǎn)角qdi因此減小,從而有利于機(jī)器人的快速停止。
綜上所述,機(jī)器人免力矩傳感器拖動示教的控制方案如圖4所示,在每一個控制周期下,根據(jù)機(jī)器人反饋的關(guān)節(jié)轉(zhuǎn)角、速度與加速度信號,基于擾動卡爾曼濾波算法對機(jī)器人關(guān)節(jié)外力矩進(jìn)行最優(yōu)觀測;系統(tǒng)阻尼參數(shù)基于式(23)進(jìn)行自適應(yīng)調(diào)整,進(jìn)而由式(21)-(22)計算出示教運(yùn)動的期望關(guān)節(jié)轉(zhuǎn)角;然后將該運(yùn)動指令下發(fā)到機(jī)器人的伺服控制器中,機(jī)器人通過自身的位置閉環(huán)控制來跟蹤該運(yùn)動指令,從而實(shí)現(xiàn)機(jī)器人的拖動示教。
圖4 機(jī)器人拖動示教控制方案Fig.4 Control scheme of robotic drag teaching
使用GSK RB08A3的六軸機(jī)器人作為實(shí)驗機(jī)器人,實(shí)驗平臺如圖5所示。當(dāng)運(yùn)行時,機(jī)器人能實(shí)時地返回各關(guān)節(jié)的位置編碼器與電機(jī)電流信號,從而通過對應(yīng)的函數(shù)關(guān)系將信號轉(zhuǎn)換得到關(guān)節(jié)轉(zhuǎn)角、速度與驅(qū)動力矩信息。上位機(jī)根據(jù)反饋信號計算控制指令,然后通過控制柜產(chǎn)生驅(qū)動信號來驅(qū)動機(jī)器人進(jìn)行運(yùn)動。機(jī)器人系統(tǒng)的控制周期為1 ms。
圖5 機(jī)器人實(shí)驗平臺Fig.5 Robot experimental platform
首先通過SymPyBotics 工具箱[18]建立機(jī)器人的剛體動力學(xué)模型,然后將周期性傅里葉級數(shù)作為激勵軌跡[19],采用巴特沃斯低通濾波器對采樣信號進(jìn)行低通濾波,最后基于加權(quán)最小二乘法完成剛體動力學(xué)模型的辨識,該部分辨識方法具體可參照文獻(xiàn)[20]。
如圖3 所示,在PyTorch 的深度學(xué)習(xí)框架下對深度神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。訓(xùn)練集數(shù)據(jù)中的從濾波后的激勵軌跡數(shù)據(jù)中獲得,ε則由式(3)計算得到。訓(xùn)練集樣本選為10 組激勵軌跡的數(shù)據(jù),以提高網(wǎng)絡(luò)的泛化學(xué)習(xí)能力,即120 000 個數(shù)據(jù)對。為了提高訓(xùn)練效率,采用了批訓(xùn)練方法,批大小為256,訓(xùn)練的學(xué)習(xí)率為0.000 1,訓(xùn)練優(yōu)化算法為Adam 優(yōu)化器[21],訓(xùn)練完成標(biāo)志為訓(xùn)練集與測試集的損失函數(shù)均收斂至一個較小的穩(wěn)定值。因此,將訓(xùn)練后的深度神經(jīng)網(wǎng)絡(luò)與已辨識的剛體動力學(xué)模型相結(jié)合,由此得到所提出的動力學(xué)模型。
為了驗證所提出模型(DDM)的精度,將其與文獻(xiàn)[20]中基于加權(quán)最小二乘法辨識的動力學(xué)模型(WLS)進(jìn)行對比,其中各關(guān)節(jié)在力矩預(yù)測上的均方根誤差(RMSE)如表1 所示,前三關(guān)節(jié)的計算力矩與實(shí)際力矩對比如圖6所示。
表1 兩種動力學(xué)模型在力矩預(yù)測上的均方根誤差對比Table 1 Comparison of RMSE of two dynamic models in torque prediction
從表1看出,DDM模型在各個關(guān)節(jié)上均有更低的均方根誤差,力矩誤差下降幅度不少于20%,說明所提出的模型具有更高的精度;從圖6看出,在關(guān)節(jié)速度反向的時候,DDM 的計算力矩曲線比WLS曲線過渡得更加圓滑且接近實(shí)際力矩曲線,這是因為WLS 曲線采用了庫倫-粘性摩擦模型,其在速度反向時會產(chǎn)生力矩突變,從而造成較大的誤差;而DDM 曲線采用深度神經(jīng)網(wǎng)絡(luò),通過訓(xùn)練建立了網(wǎng)絡(luò)輸入與網(wǎng)絡(luò)輸出之間的映射關(guān)系,其不對具體的函數(shù)關(guān)系進(jìn)行推導(dǎo),從而具有更好的擬合能力。實(shí)驗結(jié)果說明所提出的模型在保持高精度的同時,還能避免對摩擦力矩等因素進(jìn)行復(fù)雜建模,降低模型的辨識難度。
圖6 兩種動力學(xué)模型的計算力矩對比Fig.6 Comparison of calculated torques of two dynamic models
為了使基于擾動卡爾曼濾波的外力矩觀測器具有較優(yōu)的性能,本文中通過實(shí)驗反復(fù)調(diào)整,最終將卡爾曼濾波的協(xié)方差矩陣設(shè)置為對角矩陣且都為常數(shù),如表2所示。具體調(diào)整方法可參考文獻(xiàn)[5]。
表2 卡爾曼濾波中協(xié)方差矩陣參數(shù)Table 2 Parameters of covariance matrix in Kalman Filter
以第一關(guān)節(jié)與第五關(guān)節(jié)為例來分析所提出的拖動示教控制方案的有效性。其中系統(tǒng)慣性參數(shù)Mdi都設(shè)置為1,而系統(tǒng)阻尼參數(shù)標(biāo)準(zhǔn)值Dsti分別設(shè)置為10和5,其拖動實(shí)驗效果如圖7~8所示。從中看出,無論關(guān)節(jié)1 還是關(guān)節(jié)5,期望關(guān)節(jié)速度與關(guān)節(jié)外力矩的變化趨勢非常接近,且期望關(guān)節(jié)轉(zhuǎn)角產(chǎn)生了與外力矩相對應(yīng)的運(yùn)動角度,說明機(jī)器人關(guān)節(jié)能夠順應(yīng)關(guān)節(jié)外力矩的作用而進(jìn)行運(yùn)動;同時,拖動過程中估計的外力矩在6 N·m之內(nèi),說明控制方案能實(shí)現(xiàn)輕松拖動機(jī)器人的效果。圖7(c)與圖8(c)可驗證自適應(yīng)阻尼方案的有效性。在正向運(yùn)動的啟動階段,關(guān)節(jié)外力矩逐漸增大,系統(tǒng)阻尼參數(shù)隨之逐漸減小以減小開始拖動時所需要的外力矩;在正向運(yùn)動的拖動階段,系統(tǒng)阻尼參數(shù)收斂至標(biāo)準(zhǔn)值附近以保持較好的拖動效果;在正向運(yùn)動的剎車階段,即關(guān)節(jié)準(zhǔn)備反向運(yùn)動或停止時,系統(tǒng)阻尼參數(shù)逐漸增大以使機(jī)器人關(guān)節(jié)快速停止;在正向運(yùn)動停止后,關(guān)節(jié)反向運(yùn)動的啟動階段時,由于式(25)中符號函數(shù)的作用,系統(tǒng)阻尼參數(shù)會快速下降至較低的值以使關(guān)節(jié)能夠以較小的外力來進(jìn)行反向運(yùn)動;反向運(yùn)動的拖動階段與剎車階段的系統(tǒng)阻尼參數(shù)變化特點(diǎn)與正向運(yùn)動階段類似。
圖7 關(guān)節(jié)1拖動實(shí)驗Fig.7 Dragging experiment of joint 1
圖8 關(guān)節(jié)5拖動實(shí)驗Fig.8 Dragging experiment of joint 5
為了進(jìn)一步分析自適應(yīng)阻尼方法在示教啟停階段的作用,分別在有無自適應(yīng)阻尼的方法下進(jìn)行了兩組對比實(shí)驗,一是在關(guān)節(jié)外力矩相等的情況下,對比由外力矩所產(chǎn)生的期望關(guān)節(jié)速度的大小,如圖9(a)所示;二是在期望關(guān)節(jié)速度相等的情況下,對比產(chǎn)生該期望關(guān)節(jié)速度所需要的關(guān)節(jié)外力矩的大小,如圖9(b)所示。采用關(guān)節(jié)1拖動實(shí)驗的數(shù)據(jù)進(jìn)行分析,對比結(jié)果如圖9所示。
圖9 自適應(yīng)阻尼方法的對比實(shí)驗Fig.9 Experimental comparison of adaptive damping methods
從圖9(a)看出,在關(guān)節(jié)外力矩相等的情況下,相比于無自適應(yīng)阻尼的方法,自適應(yīng)阻尼方法在啟動階段所產(chǎn)生的期望關(guān)節(jié)速度更大,最大期望關(guān)節(jié)速度相差0.06 rad/s,說明自適應(yīng)阻尼方法能夠使機(jī)器人關(guān)節(jié)快速地啟動;而在停止階段,自適應(yīng)阻尼方法產(chǎn)生的期望關(guān)節(jié)速度更小,其通過短暫地增大阻尼參數(shù)來減小由外力矩所引起的關(guān)節(jié)速度,使機(jī)器人關(guān)節(jié)能夠快速地停止。從圖9(b)看出,在期望關(guān)節(jié)速度相等的情況下,自適應(yīng)阻尼方法下所需的關(guān)節(jié)外力矩更小,無自適應(yīng)阻尼方法下的啟動力矩最大值為5.668 N ?m,而自適應(yīng)阻尼方法下為4.563 N ?m,下降幅度為19.49%,實(shí)驗結(jié)果說明自適應(yīng)阻尼方法只需要更小的外力矩就能啟動機(jī)器人關(guān)節(jié)的運(yùn)動,實(shí)現(xiàn)輕松的拖動示教。
綜上所述,所提出的免力矩傳感器拖動示教方法是有效的,機(jī)器人關(guān)節(jié)能順應(yīng)外力矩而進(jìn)行運(yùn)動,且自適應(yīng)阻尼方法能有效地改善啟動與停止階段時的示教效果。
(1)本文中提出了一種剛體動力學(xué)模型與深度神經(jīng)網(wǎng)絡(luò)相結(jié)合的機(jī)器人動力學(xué)模型,通過離線訓(xùn)練使深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)并建立從關(guān)節(jié)轉(zhuǎn)角、速度、加速度到剛體動力學(xué)模型的力矩殘差的映射關(guān)系,當(dāng)訓(xùn)練完成后,在剛體動力學(xué)模型的計算力矩上疊加深度神經(jīng)網(wǎng)絡(luò)輸出的力矩項,由此完成動力學(xué)建模。實(shí)驗表明,所提出的動力學(xué)模型相比于加權(quán)最小二乘法,在預(yù)測關(guān)節(jié)力矩上各關(guān)節(jié)均具有更小的均方根誤差,且下降幅度不少于20%,提高了模型的精度的同時也避免了繁瑣的摩擦力矩建模過程。
(2)本文中基于擾動理論建立機(jī)器人的關(guān)節(jié)外力矩模型,通過定義外力矩與廣義動量為狀態(tài)變量,將外力矩模型與動力學(xué)模型組合并轉(zhuǎn)化為狀態(tài)空間方程,從而基于卡爾曼濾波算法實(shí)現(xiàn)了機(jī)器人關(guān)節(jié)外力矩的免力矩傳感器觀測。
(3)本文中提出了自適應(yīng)阻尼的導(dǎo)納控制方法,將關(guān)節(jié)外力矩轉(zhuǎn)換為對應(yīng)的期望關(guān)節(jié)運(yùn)動,其中系統(tǒng)阻尼參數(shù)隨著外力矩的變化而自適應(yīng)地進(jìn)行調(diào)整,改善了啟停階段時的示教效果。實(shí)驗表明,應(yīng)用了自適應(yīng)阻尼方法后,關(guān)節(jié)啟動力矩可下降19%左右,更有利于機(jī)器人快速而輕松地開始與停止示教。