岳博晨, 賈世元*, 王一帆, 程 潏, 陳 鋼
1. 北京郵電大學(xué)自動化學(xué)院, 北京 100876 2. 北京郵電大學(xué)人工智能學(xué)院, 北京 100876
隨著空間技術(shù)的不斷探索和發(fā)展,空間機械臂在不同的在軌任務(wù)中發(fā)揮著至關(guān)重要的作用[1-2],如在軌衛(wèi)星維護[3]、物體檢測[4]、科學(xué)研究[5]和空間碎片清除[6]等.空間機械臂抓取未知目標(biāo)以及機械臂自身模型參數(shù)的不確定性均會造成機械臂模型精度下降.模型不確定性和外部擾動因素的存在導(dǎo)致傳統(tǒng)控制精度較低[7].為解決這一問題,通常通過增大反饋增益來補償不確定性,直到達到所需的跟蹤性能,但高增益控制存在諸多缺陷[8],如噪聲下的大誤差、執(zhí)行器飽和和人機交互等應(yīng)用中的安全性問題.因此,降低增益對于控制器設(shè)計是不可忽略的.
在空間機械臂控制的研究中,黃登峰等[9]利用對角遞歸神經(jīng)網(wǎng)絡(luò)逼近柔性空間機械臂系統(tǒng)的逆動力學(xué)模型,設(shè)計基于對角遞歸神經(jīng)網(wǎng)絡(luò)的控制方案.然而,遞歸神經(jīng)網(wǎng)絡(luò)存在梯度消失、梯度爆炸和長距離依賴信息能力差等問題.ZHAN等[10]提出一種基于擴展?fàn)顟B(tài)觀測器的自適應(yīng)控制器,使其能夠在穩(wěn)定基座的同時精確跟蹤軌跡.然而,在關(guān)節(jié)控制上未考慮模型不確定性等誤差.TAN等[11]為實現(xiàn)空間機械臂高精度、高穩(wěn)定性的位置姿態(tài)控制,提出模型預(yù)測和動力學(xué)反演控制方法.然而,該方法需要較高控制增益.
為了能夠更有效提升控制精度,又能降低控制增益,本文在研究中采用了雙向長短期記憶神經(jīng)網(wǎng)絡(luò)(Bi-LSTM)處理模型不確定性.Bi-LSTM網(wǎng)絡(luò)是在長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)基礎(chǔ)上充分利用反向序列信息,挖掘序列信息之間關(guān)系[12],在t時刻所獲得的數(shù)據(jù)能同時包含過去和未來的特征信息.Bi-LSTM網(wǎng)絡(luò)不僅保留了循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的優(yōu)勢,同時也彌補了LSTM的缺陷[13-14].目前,這種網(wǎng)絡(luò)在工業(yè)上用于診斷、預(yù)測等方面居多.王長華等[15]提出使用雙向長短期記憶神經(jīng)網(wǎng)絡(luò)并結(jié)合一種基于經(jīng)驗?zāi)B(tài)分解的行星齒輪泵故障診斷方法.JIN等[16]提出使用雙向長短期記憶神經(jīng)網(wǎng)絡(luò)將一系列新的手工特征流與原始輸入信號集成,進而預(yù)測機器剩余壽命.ZHENG等[17]為有效提高旋轉(zhuǎn)機械故障預(yù)測中的預(yù)測結(jié)果趨勢提出一種基于Bi-LSTM的注意力機制.
針對空間機械臂的關(guān)節(jié)跟蹤控制問題,本文采用Bi-LSTM網(wǎng)絡(luò)來實現(xiàn)對其模型不確定性的估計.通過調(diào)整神經(jīng)網(wǎng)絡(luò)的層級、參數(shù)等條件,選擇出相對較優(yōu)的網(wǎng)絡(luò)結(jié)構(gòu),改善網(wǎng)絡(luò)的訓(xùn)練速度和穩(wěn)態(tài)誤差,并結(jié)合自適應(yīng)滑??刂?達到滿意的控制性能.并通過對比體現(xiàn)出Bi-LSTM網(wǎng)絡(luò)的優(yōu)勢.此外,神經(jīng)網(wǎng)絡(luò)所得到的較高精度的模型有利于在滑??刂破鬟x擇時采用更低增益,在不犧牲系統(tǒng)控制精度的前提下提高系統(tǒng)的普適性,提升空間機械臂的運行表現(xiàn).
考慮n自由度空間機械臂,其動力學(xué)模型方程為[18]
(1)
本文研究自由漂浮空間機械臂,且末端執(zhí)行器不存在外力和外力矩,即Fb=Fe=0.此外,根據(jù)式(1)可得
(2)
(3)
在實際情況中,很難獲得精確的空間機械臂數(shù)學(xué)模型,如機械臂質(zhì)量、慣量和負載質(zhì)量[19].測量誤差或長時間使用出現(xiàn)的部件磨損均導(dǎo)致模型不確定性產(chǎn)生.因此,在設(shè)計控制器時將空間機械臂模型拆分為名義模型和不確定模型,其中名義模型為已知部分,不確定模型為未知部分.廣義慣性矩陣、離心力和科式力矩陣可拆分為如下形式:
(4)
其中,ΔCqm=ΔC1+ΔC2.此外,還應(yīng)考慮外部擾動因素.因此,結(jié)合模型不確定性和外部擾動,自由漂浮空間機械臂動力學(xué)模型可表示為
(5)
模型有如下性質(zhì)和假設(shè)[20]:
本文采用神經(jīng)網(wǎng)絡(luò)對模型不確定性進行估計.在模型估計中,假設(shè)角度、角速度、角加速度均為可測量.由于空間機械臂模型不確定性較大且具有高度非線性,因此為了能夠提高網(wǎng)絡(luò)模型估計的有效性和精度,將F中所有加法部分拆開,分塊進行網(wǎng)絡(luò)訓(xùn)練擬合
(6)
則有F=F1+F2+F3.
圖1 Bi-LSTM神經(jīng)元連接圖Fig.1 Bi-LSTM neuron connection diagram
使用Bi-LSTM網(wǎng)絡(luò)估計模型不確定性時將F分為了3部分,輸入均不相同,Bi-LSTM網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示.
圖2 Bi-LSTM網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Bi-LSTM network structure
圖3 控制器設(shè)計原理圖Fig.3 Controller design schematic diagram
隱藏層:2層Bi-LSTM層,每層神經(jīng)元個數(shù)為512.
輸出層:一層全連接層.
網(wǎng)絡(luò)設(shè)置:優(yōu)化器采用“Adam”,學(xué)習(xí)律為0.001,梯度閾值為1,每次迭代使用數(shù)據(jù)量為128,數(shù)據(jù)打亂策略為每輪打亂一次,最大訓(xùn)練回合數(shù)為5輪,其他為默認設(shè)置.
本文主要研究空間機械臂關(guān)節(jié)軌跡跟蹤問題,設(shè)計控制器原理圖如下:
定義滑模面為
(7)
對式(7)求導(dǎo)得
(8)
將式(5)代入式(8)得
(9)
(10)
選用指數(shù)趨近律
(11)
根據(jù)指數(shù)趨近律設(shè)計切換控制律如下:
τs=Hqm0(εsign(s)+λs)
(12)
考慮到外部未知擾動d,設(shè)計自適應(yīng)切換增益,利用自適應(yīng)切換增益來消除外部擾動項.則切換控制律可寫為
(13)
設(shè)計自適應(yīng)律為
(14)
其中,β>0.
(15)
構(gòu)造Lyapunov函數(shù)
(16)
對V求時間導(dǎo)數(shù), 根據(jù)式(9)可得
(17)
將式(14)和式(15)代入得
(18)
根據(jù)不等式
可得
(19)
(20)
則有
(21)
本文神經(jīng)網(wǎng)絡(luò)均使用30萬組訓(xùn)練集進行訓(xùn)練擬合,考慮到訓(xùn)練集獲取的復(fù)雜和繁瑣性,本文嘗試通過動力學(xué)方程和期望軌跡,自己生成訓(xùn)練集的方法.其中,時間采用定步長形式,訓(xùn)練集中動力學(xué)模型不確定性使用均勻分布隨機數(shù)生成,由于負載質(zhì)量范圍較大,均勻分布隨機數(shù)影響訓(xùn)練效果較為明顯,因此負載也選用定步長形式生成.
為驗證2種神經(jīng)網(wǎng)絡(luò)結(jié)合滑模控制器的有效性,本文以二自由度空間漂浮機械臂為例進行仿真驗證,如圖4所示.
圖4 二連桿自由漂浮空間機械臂Fig.4 Two-link free-floating space manipulator
滑??刂破鲄?shù)選c=3,k=15,λ=15,β=45.
空間機械臂基本參數(shù)如表1所示.
表1 空間機械臂參數(shù)Tab.1 Space manipulator parameters
mi(i=0,1,2)代表各剛體的質(zhì)量,Ii代表各剛體的慣量,li和ri共同表示各剛體的長度.
本文僅考慮關(guān)節(jié)控制,則設(shè)期望軌跡
設(shè)空間機械臂初始位置與角度
即關(guān)節(jié)初始角度誤差為±0.2 rad.
模型不確定性產(chǎn)生原因之一為末端執(zhí)行器加入負載,將負載與末端執(zhí)行器看作一個整體.本文使用網(wǎng)絡(luò)訓(xùn)練時,設(shè)計負載范圍
0 kg 通常情況下, 空間機械臂慣量和質(zhì)量測量值與實際值會有誤差, 本文考慮誤差大小為 |ΔIi|≤10%Ii 外部擾動項 為驗證Bi-LSTM網(wǎng)絡(luò)對模型不確定性的補償效果,本文還加入了對比項,考慮到DNN網(wǎng)絡(luò)在各領(lǐng)域使用非常廣泛[21],且學(xué)習(xí)能力強,可以很好地篩選并擬合大批量數(shù)據(jù)[22-23].因此,采用深度神經(jīng)網(wǎng)絡(luò)DNN進行對比.DNN網(wǎng)絡(luò)的原理和模型搭建如圖5~6所示,網(wǎng)絡(luò)輸入與Bi-LSTM網(wǎng)絡(luò)相同. 圖5 DNN神經(jīng)元連接圖Fig.5 DNN neuron connection diagram 圖6 DNN網(wǎng)絡(luò)結(jié)構(gòu)Fig.6 DNN network structure 網(wǎng)絡(luò)設(shè)置:優(yōu)化器采用“Adam”,學(xué)習(xí)律為0.000 1,梯度閾值為1,每次迭代使用數(shù)據(jù)量為128,數(shù)據(jù)打亂策略為每輪打亂一次,最大訓(xùn)練回合數(shù)為10輪,其他為默認設(shè)置. 本文分別對僅含自適應(yīng)滑模情況和加入2種神經(jīng)網(wǎng)絡(luò)情況對兩關(guān)節(jié)控制進行分析.主要研究對比加入Bi-LSTM網(wǎng)絡(luò)對控制性能的提升情況.仿真中負載質(zhì)量選用10.5 kg. 圖7為自適應(yīng)滑模控制下的關(guān)節(jié)角度跟蹤誤差響應(yīng),圖8為基于Bi-LSTM網(wǎng)絡(luò)的自適應(yīng)滑??刂频年P(guān)節(jié)角度跟蹤誤差響應(yīng),圖9給出了基于DNN網(wǎng)絡(luò)的自適應(yīng)滑模控制的關(guān)節(jié)角跟蹤誤差響應(yīng).由圖7~8可以看出,在軌跡跟蹤精確性方面,未加入網(wǎng)絡(luò)的最大誤差在10-3量級,而加入網(wǎng)絡(luò)的最大誤差在10-4量級,相比之下軌跡跟蹤控制的精度提升了一個數(shù)量級;從穩(wěn)定性角度看,進入穩(wěn)態(tài)后加入網(wǎng)絡(luò)的波形比未加入網(wǎng)絡(luò)的波形更平緩,更趨近于一條直線.由圖7~9可以看出,基于DNN和Bi-LSTM網(wǎng)絡(luò)補償后控制精度較非網(wǎng)絡(luò)補償下的自適應(yīng)滑??刂频母櫩刂凭染刑嵘?但Bi-LSTM網(wǎng)絡(luò)提升的精度要高于DNN網(wǎng)絡(luò),尤其是第2根桿加入未知負載后,模型不確定性更大,如果臂桿數(shù)量增加,則Bi-LSTM網(wǎng)絡(luò)體現(xiàn)的優(yōu)勢會更為明顯.由此可見,Bi-LSTM網(wǎng)絡(luò)對于模型不確定性補償效果更為顯著,對控制性能有著關(guān)鍵提升. 圖7 自適應(yīng)滑模控制的兩關(guān)節(jié)角度誤差Fig.7 Two joints angular errors with adaptive sliding mode control 圖8 自適應(yīng)滑??刂平Y(jié)合Bi-LSTM網(wǎng)絡(luò)的兩關(guān)節(jié)角度誤差Fig.8 Two joints angular errors with adaptive sliding mode control and Bi-LSTM neural network 圖9 自適應(yīng)滑模控制結(jié)合DNN網(wǎng)絡(luò)的兩關(guān)節(jié)角度誤差Fig.9 Two joints angular errors with adaptive sliding mode control and DNN neural network 圖10為自適應(yīng)滑??刂脐P(guān)節(jié)角速度誤差,圖11為自適應(yīng)滑??刂平Y(jié)合Bi-LSTM網(wǎng)絡(luò)的關(guān)節(jié)角速度誤差,圖12為自適應(yīng)滑??刂平Y(jié)合DNN網(wǎng)絡(luò)的關(guān)節(jié)角速度誤差.可以明顯地看出,在角速度方面,DNN網(wǎng)絡(luò)對精度沒有提升,而Bi-LSTM網(wǎng)絡(luò)將最大誤差大部分從10-3量級提升進入10-4量級,對于速度控制性能也有提升. 圖10 自適應(yīng)滑??刂频膬申P(guān)節(jié)角速度誤差Fig.10 Two joints angular velocity errors with adaptive sliding mode control 圖11 自適應(yīng)滑??刂平Y(jié)合Bi-LSTM網(wǎng)絡(luò)的兩關(guān)節(jié)角速度誤差Fig.11 Two joints angular velocity errors with adaptive sliding mode control and Bi-LSTM neural network 圖12 自適應(yīng)滑??刂平Y(jié)合DNN網(wǎng)絡(luò)的兩關(guān)節(jié)角速度誤差Fig.12 Two joints angular velocity errors with adaptive sliding mode control and DNN neural network 為進一步驗證算法的有效性,本文將負載重新選用15 kg進行仿真,并對角度誤差進行對比,如圖13~14所示,加入Bi-LSTM網(wǎng)絡(luò)后依然可以對控制性能達到有效提升. 圖13 自適應(yīng)滑??刂圃谪撦d15 kg下的兩關(guān)節(jié)角度誤差Fig.13 Two joints angular errors with adaptive sliding mode control with a load of 15 kg 圖14 自適應(yīng)滑模控制結(jié)合Bi-LSTM網(wǎng)絡(luò)在負載15 kg下的兩關(guān)節(jié)角度誤差Fig.14 Two joints angular errors with adaptive sliding mode control and Bi-LSTM network with a load of 15 kg 圖15為加入Bi-LSTM網(wǎng)絡(luò)的控制力矩,由圖13可以看出,控制力矩初值控制在6 N·m以內(nèi),進入穩(wěn)態(tài)后平穩(wěn)波動且力矩不大,保證了控制力矩的合理性. 圖15 自適應(yīng)滑模結(jié)合Bi-LSTM網(wǎng)絡(luò)的兩關(guān)節(jié)力矩Fig.15 The torque of two joints with adaptive sliding mode control and Bi-LSTM network 圖16為加入Bi-LSTM網(wǎng)絡(luò)的基座姿態(tài)角變化圖,對于自由漂浮空間機械臂,本文在控制關(guān)節(jié)運動時,基座的初始位置為0 rad,此后在±0.5 rad內(nèi)擺動,即在±30°內(nèi)擺動,表明機械臂在運動中未造成星本體的翻滾或失穩(wěn),保證了基座運動的合理性. 圖16 自適應(yīng)滑模結(jié)合Bi-LSTM網(wǎng)絡(luò)的基座姿態(tài)角Fig.16 Base angle with adaptive sliding mode control and Bi-LSTM network 針對自由漂浮空間機械臂的關(guān)節(jié)跟蹤控制精度問題,本文提出了通過離線學(xué)習(xí)的Bi-LSTM網(wǎng)絡(luò)補償模型不確定性的方式,使控制器在低增益的情況下,實現(xiàn)高精度控制,并與DNN網(wǎng)絡(luò)進行對比.結(jié)果表明,網(wǎng)絡(luò)對于模型不確定性的補償,對控制性能提升有著顯著影響,且Bi-LSTM網(wǎng)絡(luò)的擬合性能要高于普通DNN網(wǎng)絡(luò),具有更好的提升效果.這使得空間機械臂控制不僅滿足良好的控制性能,同時也提升了泛化能力,有效解決了空間機械臂參數(shù)的準(zhǔn)確性問題和僅使用高增益來補償不確定性的問題.綜上所述,Bi-LSTM網(wǎng)絡(luò)對模型的估計有利于智能控制的發(fā)展.
|Δmi|≤10%mi5 結(jié) 論