崔靖凱,賽華陽,張恩陽,朱明超 ,徐振邦,3*
(1. 中國科學(xué)院長春光學(xué)精密機(jī)械與物理研究所,吉林長春130033;2. 中國科學(xué)院大學(xué),北京 100049;3. 中國科學(xué)院大學(xué)材料與光電研究中心,北京100049)
模塊化關(guān)節(jié)能通過重構(gòu)組合,使機(jī)械臂形成不同功能的構(gòu)型,滿足不同環(huán)境和任務(wù)的需求。具有模塊化關(guān)節(jié)的機(jī)械臂制造成本低、設(shè)計(jì)周期短、互換性強(qiáng)并易于改進(jìn),被廣泛應(yīng)用于各個領(lǐng)域[1]。為了獲得高負(fù)載自重比,模塊化關(guān)節(jié)常具有諧波減速器等非線性環(huán)節(jié),這增大了摩擦干擾,影響機(jī)械臂的定位和跟蹤精度。
摩擦補(bǔ)償是減少或消除關(guān)節(jié)非線性環(huán)節(jié)的不利影響、提高系統(tǒng)動態(tài)性能的重要途經(jīng)。摩擦補(bǔ)償包括基于摩擦模型的補(bǔ)償和不基于摩擦模型的補(bǔ)償。其中,基于摩擦模型的補(bǔ)償由于具有可預(yù)見、響應(yīng)速度快等特點(diǎn)[2],獲得了廣泛應(yīng)用。模塊化關(guān)節(jié)的摩擦模型包括庫倫-黏性摩擦模型[3]、Stribeck 摩擦模型[4]、LuGre 摩擦模型[5]等。庫侖-黏性摩擦模型和Stribeck 摩擦模型無法描繪電機(jī)速度接近于零時的預(yù)滑動區(qū)域的摩擦特性,導(dǎo)致電機(jī)速度換向時補(bǔ)償?shù)哪Σ亮Σ贿B續(xù),引起力矩的跳變。為了充分考慮摩擦的非線性特性,保證補(bǔ)償力矩的連續(xù)性,本文基于LuGre摩擦模型進(jìn)行摩擦補(bǔ)償。
摩擦模型參數(shù)的準(zhǔn)確度直接影響了摩擦模型的精度,進(jìn)而影響摩擦補(bǔ)償?shù)男Ч?],因此需要對模型參數(shù)進(jìn)行辨識。參數(shù)辨識是指在滿足激勵的條件下,采集系統(tǒng)的狀態(tài)信息對物理參數(shù)進(jìn)行估計(jì)的過程[7]。參數(shù)辨識可以分為在線辨識和離線辨識。在線辨識適用于對環(huán)境變化敏感的參數(shù),如溫度的變化、材料的磨損等,雖然具有高精度和實(shí)時響應(yīng)的優(yōu)點(diǎn),但可能存在參數(shù)收斂不完全的問題,且受到實(shí)驗(yàn)對象能否實(shí)時執(zhí)行的限制。離線辨識相對簡單易行,在對環(huán)境變化不敏感的參數(shù)如力矩系數(shù)、摩擦系數(shù)等上更具優(yōu)勢,因此,本文采用離線辨識的方法。
針對LuGre 模型,學(xué)者們提出了多種辨識方法。肖前進(jìn)[8]等用分段最小二乘法辨識了LuGre模型的靜態(tài)參數(shù),將電機(jī)預(yù)滑動區(qū)域的特征作線性化處理,等價(jià)為一個二階系統(tǒng),計(jì)算得到動態(tài)參數(shù)。該方法需要對實(shí)驗(yàn)數(shù)據(jù)分段辨識,預(yù)滑動區(qū)域的線性化處理會引入建模誤差、計(jì)算誤差等,影響辨識精度。為了提高辨識精度,元啟發(fā)式算法成為研究熱點(diǎn)。于偉[9]等用一般辨識方法辨識了靜態(tài)參數(shù),并以轉(zhuǎn)速變化為目標(biāo)函數(shù),用遺傳算法擬合出動態(tài)參數(shù);曾德林[10]等用分步夾逼和分步搜索法初步辨識了摩擦參數(shù),然后用遺傳算法提高辨識精度。
灰狼算法是由SEYEDALI M[11]提出的元啟發(fā)式優(yōu)化算法,模仿自然界中灰狼的領(lǐng)導(dǎo)階層和捕獵機(jī)制?;依撬惴ň哂泻唵我子?、靈活性強(qiáng)和避免局部最優(yōu)等優(yōu)點(diǎn),適用于多參數(shù)辨識的情況。相較于工程常用的最小二乘法,無需對數(shù)據(jù)分段處理,在辨識非線性模型方面具有優(yōu)勢。
本文針對自主研發(fā)的模塊化關(guān)節(jié),選用能較為全面地描述摩擦特性的LuGre 模型,分別用基于分段最小二乘法的一般辨識方法和基于灰狼算法的元啟發(fā)式辨識方法對摩擦參數(shù)進(jìn)行辨識,并將辨識結(jié)果對比分析,最后通過前饋補(bǔ)償算法對摩擦力進(jìn)行補(bǔ)償。實(shí)驗(yàn)結(jié)果表明,相比于一般辨識方法,灰狼算法在摩擦辨識領(lǐng)域精度更高、適用性更強(qiáng);本文提出的摩擦補(bǔ)償方法能顯著減小關(guān)節(jié)速度跟蹤誤差,提高控制品質(zhì)。
圖1 為模塊化關(guān)節(jié)的內(nèi)部構(gòu)造示意圖。關(guān)節(jié)主要由外殼、無框力矩電機(jī)、諧波減速器、電磁制動器、增量式編碼器、絕對式編碼器和驅(qū)動電路板構(gòu)成。左側(cè)和下側(cè)的電連接板用于給相鄰關(guān)節(jié)供電通訊,方便關(guān)節(jié)的裝卸和組合,體現(xiàn)模塊化的特點(diǎn)。關(guān)節(jié)采用雙編碼器設(shè)計(jì),增量式編碼器獲取的相對位置信息通過差分運(yùn)算得到速度信息,絕對式編碼器用于獲取關(guān)節(jié)負(fù)載端的絕對位置信息。
圖1 模塊化關(guān)節(jié)結(jié)構(gòu)圖Fig.1 Structure of modular joint
關(guān)節(jié)采用位置-速度-電流三閉環(huán)控制,控制框圖如圖2 所示。計(jì)算機(jī)使用倍福公司的Twin?CAT 軟件對關(guān)節(jié)發(fā)送指令,關(guān)節(jié)的驅(qū)動電路板接收到位置或速度指令,通過控制q軸電流驅(qū)動電機(jī)轉(zhuǎn)子和輸入軸轉(zhuǎn)動,諧波減速器的波發(fā)生器與輸入軸固連,經(jīng)減速后的輸出軸與負(fù)載連接,實(shí)現(xiàn)力矩的輸出。
圖2 模塊化關(guān)節(jié)控制框圖Fig.2 Block diagram of modular joint control system
建立模塊化關(guān)節(jié)的簡化動力學(xué)模型如圖3 所示,其動力學(xué)方程為:
圖3 模塊化關(guān)節(jié)動力學(xué)模型Fig.3 Dynamic model of modular joint
其中:J為電機(jī)轉(zhuǎn)子及波發(fā)生器折算到電機(jī)端的轉(zhuǎn)動慣量;θ為電機(jī)轉(zhuǎn)角;τm為電機(jī)端輸出力矩,τmf和τml分別為折算到電機(jī)端的摩擦力矩和負(fù)載力矩;Kt為力矩系數(shù);iq為q軸電流;τ為關(guān)節(jié)端輸出力矩分別為關(guān)節(jié)端角度、角速度、角加速度;M(q)q?為連桿慣性項(xiàng)為離心力和科氏力項(xiàng);G(q)為重力項(xiàng);τf和τl分別為關(guān)節(jié)端摩擦力矩和負(fù)載力矩;η為諧波減速器的減速比。為了統(tǒng)一度量,本文均采用關(guān)節(jié)端的物理量作為實(shí)驗(yàn)和計(jì)算數(shù)據(jù)。
摩擦來源于接觸器件的相對運(yùn)動。對于模塊化關(guān)節(jié),諧波減速器的波發(fā)生器和柔輪的相對運(yùn)動、柔輪和鋼輪的相對運(yùn)動都會產(chǎn)生摩擦。此外,電機(jī)輸入軸、輸出軸的支撐軸承也存在摩擦。
LuGre 摩擦模型為:
其中:z為鬃毛平均形變量,σ0為鬃毛剛度,σ1為鬃 毛 阻 尼 系 數(shù) ,σ2為 黏 滯 摩 擦 系 數(shù)為Stribeck 效應(yīng),F(xiàn)c為庫侖摩擦力,F(xiàn)s為最大靜摩擦力,ωs為Stribeck 速度。模型包括四個靜態(tài)參數(shù)Fc、Fs、ωs和σ2,以及兩個動態(tài)參數(shù)σ0和σ1。
一般辨識方法分為兩步,第一步將實(shí)驗(yàn)數(shù)據(jù)分段,用最小二乘法分別辨識電機(jī)轉(zhuǎn)速為正和轉(zhuǎn)速為負(fù)時的摩擦靜態(tài)參數(shù);第二步將轉(zhuǎn)速為零附近的預(yù)滑動區(qū)域作線性化處理,使其近似為二階系統(tǒng),然后辨識該系統(tǒng)的幅頻特性,計(jì)算得到動態(tài)參數(shù)。
3.2.1 靜態(tài)參數(shù)的辨識
此時關(guān)節(jié)的輸出力矩主要克服摩擦力矩。
結(jié)合式(1)和(2),在電機(jī)空載勻速轉(zhuǎn)動的條件下,有:
因此,可以測出電機(jī)在不同速度下勻速轉(zhuǎn)動時的q軸電流,乘以力矩系數(shù)Kt=0.21 N·m/A得到摩擦力矩,繪制摩擦力-速度曲線。
圖4 是摩擦參數(shù)辨識和補(bǔ)償平臺。關(guān)節(jié)空載且水平放置,計(jì)算機(jī)的TwinCAT 軟件用于控制電機(jī)勻速轉(zhuǎn)動,MATLAB 軟件用于數(shù)據(jù)的處理和分析。計(jì)算機(jī)和關(guān)節(jié)驅(qū)動板用網(wǎng)線連接,通信協(xié)議為倍福公司的EtherCAT。實(shí)驗(yàn)時,采樣周期設(shè)置為5 ms,關(guān)節(jié)端速度變化范圍為-35(°)/s到-0.5(°)/s 和 0.5(°)/s 到 35(°)/s,每次改變0.5(°)/s,每個速度維持 15 s。為了消除電機(jī)在啟動和停止階段的電流波動,取中間5 s 的q軸電流值的平均值作為該速度下的電流值。根據(jù)式(12)計(jì)算出每個速度對應(yīng)的摩擦力,用分段最小二乘法擬合摩擦力-速度曲線,結(jié)果如圖5 所示。
圖4 摩擦辨識和補(bǔ)償平臺Fig.4 Platform of friction identification and compensation
圖5 摩擦擬合曲線Fig.5 Fitting curves of friction torque
按照式(12)辨識的靜態(tài)摩擦參數(shù)如表1所示。
表1 靜態(tài)參數(shù)辨識結(jié)果Tab.1 Identification results of static parameters
3.2.2 動態(tài)參數(shù)的辨識
在電機(jī)的預(yù)滑動區(qū)域,即驅(qū)動力矩小于最大靜摩擦力矩時,對方程(7)在零狀態(tài)和零速度附近作線性化處理,即令得到:
關(guān)節(jié)空載即τml=0 時,結(jié)合式(1)和(2),得到:
式(14)在頻域中的表達(dá)可寫成:
由此可見,在預(yù)滑動區(qū)域,LuGre 模型表現(xiàn)為帶有阻尼的質(zhì)量-彈簧二階系統(tǒng)??梢酝ㄟ^偽隨機(jī)序列測試該二階系統(tǒng)的幅頻特性,分析伯德圖和擬合的頻響函數(shù)獲得動態(tài)參數(shù)σ0和σ1的估計(jì)值。
實(shí)驗(yàn)時,以幅值為0.19 A,長度為511 位,周期為2 s 的M 序列作為q軸電流值輸入關(guān)節(jié)系統(tǒng)。該序列滿足準(zhǔn)白噪聲要求,其自相關(guān)函數(shù)可近似為δ函數(shù)。序列幅值的均方根值對應(yīng)的關(guān)節(jié)驅(qū)動力矩為6.65 N·m,小于最大靜摩擦力7.200 9 N·m,可防止系統(tǒng)離開預(yù)滑動區(qū)域。測量的系統(tǒng)響應(yīng)為電機(jī)的轉(zhuǎn)角θ。為了排除非零初始條件的影響,輸入4 個周期的M 序列,測出后3個周期的系統(tǒng)響應(yīng)并做平均處理。圖6 展示了其中一個周期的M 序列和系統(tǒng)響應(yīng)曲線。
圖6 偽隨機(jī)序列和系統(tǒng)響應(yīng)Fig.6 Pseudo-random sequences and system responses
用相關(guān)分析法將系統(tǒng)辨識為二階系統(tǒng),得到頻響函數(shù)H(jω)。在ω=0 時,由式(15)得到:
因此可以得到σ0的估計(jì)值。再根據(jù)式(15)計(jì)算σ1的估計(jì)值,辨識結(jié)果如表2 所示。
表2 動態(tài)參數(shù)辨識結(jié)果Tab.2 Identification results of dynamic parameters
灰狼算法(GWO)是一種新的元啟發(fā)式算法,靈感來自灰狼社會的狩獵行為。GWO 的種群代表一群狼,根據(jù)灰狼的適應(yīng)度將其分為4 個階級:最優(yōu)解稱為α 狼,次優(yōu)解稱為β 狼,再次優(yōu)解稱為 γ 狼,其余解稱為 ω 狼。
α,β和γ是搜索獵物的領(lǐng)導(dǎo)者,ω狼通過以下算子來更新它們的位置,以跟隨三只頭狼到達(dá)搜索空間的最佳區(qū)域:
其中:Dα,Dβ和Dγ分別是狼群ω與頭狼α,β和γ的距離;X,Xα,Xβ和Xγ分別是狼群ω、頭狼α,β和γ當(dāng)前迭代次數(shù)下的位置向量;X(t+1)是狼群ω下一次迭代的位置向量,t是當(dāng)前迭代次數(shù);Ai和Ci(i=1,2,3)是隨機(jī)生成的系數(shù)向量,如下所示:
其中:r1和r2是區(qū)間[0,1]中的隨機(jī)向量;a的值在迭代過程中按照下式從2 線性減小到0:
其中MaxIter是最大迭代次數(shù)。
圖7 展示了狼群如何在二維搜索空間內(nèi)更新其位置??梢杂^察到,最終位置將位于由搜索空間中頭狼α、β 和γ 所定義的圓內(nèi)的隨機(jī)位置。換句話說,α、β 和 γ 估計(jì)獵物的位置,其他狼隨機(jī)更新至獵物周圍的位置。隨機(jī)向量Ai和Ci是該算法需要調(diào)節(jié)的兩個參數(shù)。|Ai|<1 時,灰狼會向獵物進(jìn)攻,而|Ai|>1 時,灰狼會被迫逃離獵物,這允許灰狼進(jìn)行全局搜索。|Ci|始終是區(qū)間[0,2]中的隨機(jī)值,它將提供隨機(jī)權(quán)重,以強(qiáng)化(|Ci|>1)或弱化(|Ci|<1)獵物在式(17)中定義距離的效果。Ci也可視為自然界中障礙物對灰狼接近獵物的影響,它有助于灰狼突破局部最優(yōu)停滯。
圖7 GWO 位置更新示意圖Fig.7 Position updating in GWO
在LuGre 摩擦模型的辨識中,該算法所處理的獵物是式(7)到(9)所包含的6 個參數(shù)。定義目標(biāo)函數(shù)為:
其 中 :N是 樣 本 數(shù) ,fi和fdi分 別 是 第i次 采 樣 的模擬摩擦力和實(shí)際摩擦力。該問題是最小化尋優(yōu)問題,即目標(biāo)函數(shù)越小,灰狼的適應(yīng)度越高。
圖8 展示了灰狼算法的操作流程。實(shí)驗(yàn)時,參數(shù)約束設(shè)置為:Fc∈[0,20],F(xiàn)s∈[0,10],ωs∈[0,20],σ2∈[0,1],σ0∈[0,30000],σ1∈[0,1],狼群規(guī)模設(shè)置為50。因?yàn)樗惴ㄊ请S機(jī)搜索的,故用不同的初始種群進(jìn)行了10 次重復(fù)運(yùn)算,并在200 次迭代后停止運(yùn)行。圖9 展示了在不同的初始種群下,α 狼(最優(yōu)解)的目標(biāo)函數(shù)隨迭代次數(shù)的演變過程。
圖8 GWO 算法流程Fig.8 Flowchart of the GWO algorithm
圖9 不同初始種群下GWO 的收斂曲線Fig.9 Convergence curves of the GWO algorithm with different initial population
可以看出,十次重復(fù)運(yùn)行的結(jié)果都成功地收斂到最優(yōu)參數(shù)附近,最佳運(yùn)行的第38 次迭代和最差運(yùn)行的第158 次迭代的目標(biāo)函數(shù)都達(dá)到了10-0.84。一些運(yùn)行在搜索過程中陷入了局部最優(yōu),但在最后的幾次迭代中都成功地突破停滯,走向全局最優(yōu)。
基于灰狼算法的辨識結(jié)果如表3 所示。
表3 基于灰狼算法的辨識結(jié)果Tab.3 Identification results of parameters based on GWO
選擇式(23)作為辨識精度的衡量指標(biāo)。J代表辨識結(jié)果和實(shí)驗(yàn)數(shù)據(jù)之間的誤差,J越小,辨識精度越高?;诜侄巫钚《朔ǖ囊话惚孀R方法和基于灰狼算法的元啟發(fā)式辨識方法的對比如表4 所示。由此可見,灰狼算法的辨識精度高于一般辨識方法,且無需對實(shí)驗(yàn)數(shù)據(jù)分段辨識,無需對預(yù)滑動區(qū)域作線性化處理,避免了建模誤差和計(jì)算誤差,在摩擦辨識領(lǐng)域具有更強(qiáng)的競爭力。
表4 兩種摩擦參數(shù)辨識算法對比Tab.4 Comparison of two friction parameter identification algorithms
為驗(yàn)證摩擦辨識的準(zhǔn)確性,改善模塊化關(guān)節(jié)的動態(tài)性能,設(shè)計(jì)了圖10 所示的基于摩擦模型的前饋補(bǔ)償算法。關(guān)節(jié)仍采用位置-速度-電流三閉環(huán)控制,取期望的電機(jī)端速度值為摩擦補(bǔ)償器的輸入,按照式(7)到(9)計(jì)算相應(yīng)的摩擦補(bǔ)償值τc,除以力矩系數(shù)得到補(bǔ)償電流值Iqc,作為前饋量疊加到電流環(huán)的輸入端,以消除摩擦擾動。
圖10 摩擦補(bǔ)償算法框圖Fig.10 Block diagram of friction compensation algorithm
關(guān)節(jié)輸出角度的跟蹤精度很大程度上取決于速度的跟蹤精度,因此取關(guān)節(jié)的角速度作為觀測量。實(shí)驗(yàn)采用圖4 所示的設(shè)備,摩擦補(bǔ)償前,測得模塊化關(guān)節(jié)的速度環(huán)帶寬為12 Hz,實(shí)驗(yàn)時,給定幅值為 1(°)/s,頻率為 10 Hz 的正弦關(guān)節(jié)端速度輸入信號sin(20πt),加入摩擦補(bǔ)償前后的關(guān)節(jié)端速度曲線、摩擦補(bǔ)償值曲線、速度跟蹤誤差曲線如圖11 所示。
圖11 摩擦補(bǔ)償結(jié)果Fig.11 Results of friction compensation
圖11 中,在箭頭所標(biāo)注的時刻開啟摩擦補(bǔ)償器,可以看到摩擦補(bǔ)償后,實(shí)線代表的速度反饋值能更好地跟蹤虛線代表的速度期望值,跟蹤誤差顯著減小,由補(bǔ)償前的峰值0.295(°)/s 減小到補(bǔ)償后的峰值0.183(°)/s,降低了38%。改變輸入正弦波的頻率,測得摩擦補(bǔ)償后,關(guān)節(jié)速度環(huán)帶寬為18 Hz,比補(bǔ)償前提高了50%。由此可見,建立的摩擦補(bǔ)償算法效果顯著,能提高速度跟蹤精度和速度環(huán)控制帶寬,同時驗(yàn)證了摩擦模型辨識的準(zhǔn)確性。
本文針對模塊化關(guān)節(jié),設(shè)計(jì)了摩擦模型的離線辨識方法和摩擦補(bǔ)償算法。分別使用基于分段最小二乘法的一般辨識方法和基于灰狼算法的元啟發(fā)式辨識方法對LuGre 摩擦模型進(jìn)行了參數(shù)辨識,并對辨識結(jié)果進(jìn)行對比分析。設(shè)計(jì)前饋摩擦補(bǔ)償算法,以期望速度作為補(bǔ)償器的輸入,以補(bǔ)償?shù)碾娏髦底鳛檩敵銮梆伣o電流閉環(huán)。在模塊化關(guān)節(jié)上進(jìn)行實(shí)驗(yàn),結(jié)果表明,相比于一般辨識方法,灰狼算法的辨識精度提高了19.2%;給定幅值為 1(°)/s,頻率為 10 Hz 的速度正弦輸入信號,摩擦補(bǔ)償后,關(guān)節(jié)速度跟蹤誤差減小了38%;摩擦補(bǔ)償后,速度環(huán)帶寬提高了50%。所提出的參數(shù)辨識方法準(zhǔn)確有效,摩擦補(bǔ)償算法可以顯著提高關(guān)節(jié)速度跟蹤精度和速度環(huán)帶寬。