徐明威 張禹 李延斌
摘? 要:六維力傳感器測量數(shù)據(jù)時輸出信號不可避免地被混合噪聲干擾導(dǎo)致降噪性能不佳,同時針對測量噪聲/系統(tǒng)噪聲模型不準(zhǔn)確使得卡爾曼濾波辨識誤差大的問題,文章采用了基于Sage-Husa的自適應(yīng)卡爾曼濾波算法。將六維力傳感器采集的數(shù)據(jù)分別用卡爾曼濾波器/自適應(yīng)卡爾曼濾波器進行處理,分析了兩種算法對傳感器測量數(shù)據(jù)降噪的性能。實驗結(jié)果表明,基于Sage-Husa的自適應(yīng)卡爾曼濾波器對測量數(shù)據(jù)曲線的擬合度與平滑性均優(yōu)于卡爾曼濾波器,其能夠更有效地對隨機突變噪聲進行降噪處理。
關(guān)鍵詞:六維力傳感器;系統(tǒng)噪聲;測量噪聲;自適應(yīng)卡爾曼濾波
中圖分類號:TP241.2? ? ? ? 文獻標(biāo)識碼:A文章編號:2096-4706(2021)23-0033-04
A Signal Noise Processing Technology of Six-Axis Force Sensor
XU Mingwei, ZHANG Yu, LI Yanbin
(Shenyang University of Technology, Shenyang? 110870, China)
Abstract: When the six-axis force sensor measures data, the output signal is inevitably interfered by mixed noise, resulting in poor noise reduction performance. At the same time, aiming at the problem of large identification error of Kalman Filter due to the inaccurate measurement noise / System Noise model, this paper uses Adaptive Kalman Filter algorithm based on Sage-Husa. The data collected by the six-axis force sensor is processed by Kalman Filter/Adaptive Kalman Filter respectively, and the performance of the two algorithms for noise reduction on sensor measurement data is analyzed. Experimental results show that the Adaptive Kalman Filter based on Sage-Husa has better fitting degree and smoothness to the measured data curve than the Kalman Filter, and it can more effectively reduce the noise of random sudden noise.
Keywords: six-axis force sensor; System Noise; measurement noise; Adaptive Kalman Filter
0? 引? 言
六維力傳感器是一種能夠?qū)崟r地檢測出空間六個方向力/力矩信息的力傳感器,通常被安裝在工業(yè)機械臂的末端,用來協(xié)助工業(yè)機械臂進行力/位置控制、孔軸裝配、柔順控制、表面拋光等一些復(fù)雜的任務(wù),在工業(yè)機械臂的末端安裝六維力傳感器后,可以實現(xiàn)工業(yè)機械臂與外界環(huán)境接觸時所產(chǎn)生的實時接觸力,可以保證人與機械臂交互的安全性并且能以低成本的方式對傳統(tǒng)的機械臂進行優(yōu)化升級[1,2]。
然而,在工程實際應(yīng)用中六維力傳感器由于其敏感元件、設(shè)計結(jié)構(gòu)以及放大、采集電路電路帶有熱噪聲并伴隨電磁干擾等緣故,其輸出信號會不可避免的被混合噪聲信號干擾,使得測量的精度變低甚至輸出信號不能使用[1]。針對上述問題,本文采用基于Sage-Husa的自適應(yīng)卡爾曼濾波算法,即先采用經(jīng)典卡爾曼濾波每次對原始測量信息實施降噪,同時用Sage和Husa提出的一種方法,隨著經(jīng)典卡爾曼濾波迭代更新一次后,噪聲協(xié)方差Q、系統(tǒng)噪聲協(xié)方差R也進行一次更新迭代,使得測量噪聲/系統(tǒng)噪聲參數(shù)保持在最優(yōu)值,降低不確定噪聲模型對濾波器的性能影響[2,3]。通過實驗的驗證與分析,相對于經(jīng)典卡爾曼濾波算法,基于Sage-Husa的自適應(yīng)卡爾曼濾波算法相比于經(jīng)典卡爾曼濾波,對六維力傳感器測量數(shù)據(jù)的降噪效果更加明顯,對測量數(shù)據(jù)曲線擬合也更加的平滑。
1? 常見濾波方法
1.1? 中值濾波
中值濾波是將一個數(shù)據(jù)列中的數(shù)據(jù)個數(shù)分為奇數(shù)或偶數(shù)進行順序排列,這些數(shù)據(jù)可以是正序或者倒序的,如若數(shù)據(jù)列的長度為奇數(shù)/偶數(shù)時,則數(shù)據(jù)列的中值就分別為數(shù)據(jù)列的中間數(shù)/中間兩數(shù)平均值,最終系統(tǒng)的輸出信號為該中值[4]。因此,中值濾波算法實現(xiàn)簡單,但是,應(yīng)用范圍較小,數(shù)據(jù)擬合平滑性差并且對突變的噪聲信號處理性能不佳。
1.2? 加權(quán)滑動平均濾波
滑動平均濾波算法是應(yīng)用最為廣泛的濾波算法之一。滑動平均濾波算法是先定義一個緩存區(qū),該緩存區(qū)中可容納N個數(shù)據(jù),緩存區(qū)中的數(shù)據(jù)必須為連續(xù)采樣,且緩存區(qū)中的數(shù)據(jù)個數(shù)始終保持不變。當(dāng)進行采樣時,初始采樣數(shù)據(jù)會先占滿整個緩存區(qū),當(dāng)新的采樣值進入緩存區(qū)后,會將緩存區(qū)中最先進入的數(shù)據(jù)進行剔除,保持該緩存區(qū)的長度為N。最終,整個系統(tǒng)的輸出為緩存區(qū)中數(shù)據(jù)的算數(shù)平均值。而加權(quán)滑動平均濾波是在滑動平均濾波的基礎(chǔ)上進行期望權(quán)重改變,將期望的權(quán)重值賦予與不同時刻的數(shù)據(jù),一般情況下對當(dāng)前時刻數(shù)據(jù)的權(quán)重賦予最大值并且權(quán)重值向緩存區(qū)另一方向逐級遞減,可以看出這種算法更看重當(dāng)前時刻所測量的數(shù)據(jù)。經(jīng)過加權(quán)滑動平均濾波后得到的結(jié)果平滑度高,但是對隨機的突變噪聲出現(xiàn)時,將最大的權(quán)重值賦予帶有突變噪聲的數(shù)據(jù)后,會極大地干擾并且降低該濾波器的性能效果,因此加權(quán)滑動平困濾波的處理效果不穩(wěn)定,容易受到隨機突變噪聲的干擾。
1.3? 卡爾曼濾波
卡爾曼濾波算法是卡爾曼提出的一種最優(yōu)線性狀態(tài)估計方法。由于實際應(yīng)用中,測量環(huán)境存在著各式各樣的混合噪聲干擾,卡爾曼濾波算法在這種混合噪聲環(huán)境下,會對計算結(jié)果進行連續(xù)的預(yù)測計算??柭鼮V波的原理就是利用上一時刻的最優(yōu)預(yù)測和此時刻的測量值來進行加權(quán)計算,得到當(dāng)前時刻的最優(yōu)預(yù)測值[5]。根據(jù)控制理論,可以給狀態(tài)變量建立一個狀態(tài)方程,給測量值建立一個觀測方程。
其狀態(tài)方程為
Xk+1=φkXk+Bkuk+ωk? (1)
其中,Xk+1為k+1時刻n維的系統(tǒng)狀態(tài)變量,φk為系統(tǒng)狀態(tài)轉(zhuǎn)移矩陣(增益矩陣);uk為系統(tǒng)的輸入量;Bk為系統(tǒng)輸入關(guān)系矩陣;ωk為過程噪聲。
其觀測方程為:
Yk+1=Ck+1Xk+1+γk+1? ?(2)
其中,Yk+1為k+1時刻的測量值;Ck+1為輸出與系統(tǒng)狀態(tài)的關(guān)系矩陣;γk+1為觀測噪聲。
卡爾曼濾波隨著時間更新而不停更新預(yù)測值和校正值,其中:
(3)
是利用k時刻的最優(yōu)估計來預(yù)測k+1時刻估計的狀態(tài)變量,稱之為k+1時刻的先驗估計值。
(4)
是k+1時刻系統(tǒng)協(xié)方差的估計值。
(5)
其中,Kk+1是k+1時刻的卡爾曼增益。
(6)
是k+1時刻利用當(dāng)前時刻的初始估計值和當(dāng)前時刻的測量值得到的狀態(tài)估計,稱之為最優(yōu)估計值。
(7)
Mk+1是k+1時刻的后驗狀態(tài)估計協(xié)方差。
其中,式(3)(4)(5)預(yù)測方程,(6)(7)為校正方程。
上式(3)(4)(5)(6)(7)即為卡爾曼濾波算法的迭代公式,通過這些迭代公式即可完成卡爾曼濾波算法。
卡爾曼濾波擁有易于實現(xiàn)、迭代效率高、估計精度高等特點,被廣泛應(yīng)用于各種類型的噪聲處理、人物識別、自動駕駛等領(lǐng)域[6]。然而,卡爾曼濾波器特別依賴系統(tǒng)噪聲和測量噪聲模型的準(zhǔn)確性。在工程實際應(yīng)用中,卡爾曼濾波器的測量噪聲/系統(tǒng)噪聲協(xié)方差往往需要通過經(jīng)驗法或者仿真系統(tǒng)確定一個固定的值,故當(dāng)測量噪聲/系統(tǒng)噪聲在測量過程中發(fā)生隨機突變時,卡爾曼濾波器的性難以得到保證。這會導(dǎo)致卡爾曼濾波在迭代過程中容易產(chǎn)生估計誤差,導(dǎo)致最終濾波性能降低甚至加重噪聲的干擾。
1.4? 基于Sage-Husa的自適應(yīng)卡爾曼濾波
針對以上情況,本文將采用基于Sage-Husa的自適應(yīng)卡爾曼濾波來解決系統(tǒng)噪聲和測量噪聲的模型不準(zhǔn)確問題,可以實時的更新估計突變噪聲的均值/協(xié)方差,從而對模型參數(shù)和噪聲特性進行實時修正,以減少與實際情況的誤差,獲得更好的估計精度。
基于Sage-Husa的自適應(yīng)卡爾曼濾波算法是在卡爾曼濾波每次迭代的同時也對噪聲模型進行一次更新計算,使得系統(tǒng)噪聲和測量噪聲均值/協(xié)方差的值保持在最優(yōu)估計值的狀態(tài)。系統(tǒng)噪聲和測量噪聲均值/協(xié)方差更新如式(8)~(12)所示。
(8)
(9)
(10)
(11)
dk=(1-b)/(1-bk+1) (12)
其中,、分別為系統(tǒng)噪聲、測量噪聲協(xié)方差在k時刻的更新值,dk為加權(quán)系數(shù),b為遺忘因子,一般取0.95~0.99。
2? 實驗結(jié)果與分析
2.1? 實驗流程
本實驗采用的實驗儀器為安徽埃力智能科技公司所研制的六維力傳感器,使用該傳感器測量的六維力數(shù)據(jù)來證明該自適應(yīng)卡爾曼濾波算法的可行性和降噪性能。該傳感器的采樣頻率為10~5 000 Hz,本實驗將頻率設(shè)置為1 000 Hz即可滿足實驗要求。
該傳感器經(jīng)過該公司的設(shè)計與計算,證明了其在六維方向上是解耦的,故不需要再對傳感器進行解耦。并且,在工作的力/力矩量程內(nèi),傳感器內(nèi)裝置的應(yīng)力和應(yīng)變呈線性關(guān)系。因此,可以將該算法從一維方向推廣到六維方向。實驗流程如下所示:將該六維力傳感器置于平穩(wěn)且無外部干擾的環(huán)境中,僅對Fz正方向分別施加0 N、30 N的力,即此時Fx=0 N,F(xiàn)y=0 N,Mx=0 N,My=0 N,Mz=0 N,F(xiàn)z=0或30 N。
由于卡爾曼濾波在初始階段進行迭代優(yōu)化導(dǎo)致精確度不高[7,8],故該實驗將0~30 s定義為初始階段,此階段不采集/處理數(shù)據(jù),從30 s開始采集數(shù)據(jù)到60 s停止采集數(shù)據(jù),共計采集數(shù)據(jù)時間為30 s。當(dāng)度過初始階段時開始采集數(shù)據(jù)時,將采集的數(shù)據(jù)分別使用卡爾曼濾波/自適應(yīng)卡爾曼濾波算法進行濾波降噪。根據(jù)工程實踐的經(jīng)驗法,將采集系統(tǒng)中卡爾曼濾波器的系統(tǒng)噪聲協(xié)方差Q設(shè)為0.102 1,測量噪聲協(xié)方差R設(shè)為0.251 1。實驗流程圖如圖1所示。
2.2? 上位機采集系統(tǒng)
本文中使用的六維力傳感器上位機采集系統(tǒng)是基于vc6.0中的微軟基礎(chǔ)類庫(MFC)所編寫的,MFC編程具有便捷的程序編寫以及提供操作界面,能夠?qū)鞲衅鞯臄?shù)據(jù)進行實時采集、算法處理、數(shù)據(jù)顯示以及儲存等功能[9,10]。將上述算法編寫進程序后,準(zhǔn)備實驗。軟件界面設(shè)計如圖2所示。
2.3? 實驗結(jié)果與分析
首先令Fz=0 N。使用卡爾曼濾波對采集到的六維力傳感器Z軸整方向上力數(shù)據(jù)進行濾波降噪。其結(jié)果如圖3所示。
分析圖3可以得出,當(dāng)卡爾曼濾波度過初始階段后,卡爾曼濾波處理傳感器的隨機突變噪聲有一定的作用。但是,在實際應(yīng)用中,卡爾曼濾波的測量噪聲/系統(tǒng)噪聲協(xié)方差在大多數(shù)情況下為經(jīng)驗法固定的值,不能靈活的應(yīng)對突變的噪聲信號,導(dǎo)致濾波信號波動性較大,平滑度不理想。
再使用自適應(yīng)卡爾曼濾波進行濾波然后與卡爾曼濾波進行比較分析。其結(jié)果如圖4、圖5所示。
分析圖4、圖5可以發(fā)現(xiàn),當(dāng)自適應(yīng)卡爾曼濾波度過初始階段,在對數(shù)據(jù)進行濾波處理后的結(jié)果與卡爾曼濾波類似,依然有一定的誤差。但是,相比于卡爾曼濾波,自適應(yīng)卡爾曼濾波在處理數(shù)據(jù)的過程中不斷地自我更新測量噪聲/系統(tǒng)噪聲協(xié)方差,能夠更加靈活地處理極端噪聲,其平滑曲線與測量數(shù)據(jù)有更好的擬合度,曲線更為平滑,對六維力傳感器的降噪效果更好。
再對該濾波算法的普適性進行驗證。在六維力傳感器的Z軸正方向上施加一個恒為30 N的力,令Fz=30 N。使用卡爾曼濾波對采集到的六維力傳感器Z方向上數(shù)據(jù)進行卡爾曼濾波/自適應(yīng)卡爾曼濾波降噪處理。其結(jié)果如圖6、圖7所示。
通過對圖6、圖7的分析,可以看出當(dāng)Fz=30 N時,經(jīng)過自適應(yīng)卡爾曼濾波對數(shù)據(jù)進行濾波處理后的結(jié)果與Fz=0 N時結(jié)果相同,自適應(yīng)卡爾曼濾波與卡爾曼濾波相比有更靈活的降噪性能與平滑性,對六維力傳感器的降噪效果更好,同時也驗證了自適應(yīng)卡爾曼濾波的有效性和可行性。
3? 結(jié)? 論
卡爾曼濾波器是當(dāng)前應(yīng)用最廣泛的線性最優(yōu)濾波器。但是,在工程實踐應(yīng)用中卡爾曼濾波器的測量噪聲/系統(tǒng)噪聲協(xié)方差往往都根據(jù)經(jīng)驗法分別設(shè)定一個定值,故當(dāng)測量噪聲/系統(tǒng)噪聲在測量過程中由于混合噪聲發(fā)生隨機突變時,卡爾曼濾波器的性能容易受到噪聲模型不準(zhǔn)確導(dǎo)致降噪性能不佳。為解決這一問題,采用基于Sage-Husa提出的自適應(yīng)卡爾曼濾波,在卡爾曼濾波每次進行迭代時也對噪聲協(xié)方差Q、系統(tǒng)噪聲協(xié)方差R進行一次更新迭代,保證系統(tǒng)/測量噪聲模型參數(shù)實時的保持在最優(yōu)值,從而降低不確定噪聲模型對卡爾曼濾波器的性能影響?;谏鲜鰧嶒灥尿炞C與分析表明,基于Sage-Husa的自適應(yīng)卡爾曼濾波相比于卡爾曼濾波器既能更加有效地對六維力傳感器測量的力數(shù)據(jù)進行降噪,同時也與測量數(shù)據(jù)有良好的擬合度、平滑性,能夠有效降低測量噪聲協(xié)方差Q與系統(tǒng)噪聲協(xié)方差R的變化對測量精度帶來的影響。
參考文獻:
[1] CHEN F,ZHAO H,LI D W,et al. Contact force control and vibration suppression in robotic polishing with a smart end effector [J].Robotics and Computer-Integrate-d Manufacturing,2019,57:391 -403.
[2] 張立建,胡瑞卿,易旺民.基于六維力傳感器的工業(yè)機器人末端負(fù)載受力感知研究 [J].自動化學(xué)報,2017,43(3):439-447.
[3] 汪志紅.電阻應(yīng)變片式六維力傳感器彈性體力學(xué)特性的研究 [D].蕪湖:安徽工程大學(xué),2013.
[4] 宋會杰,董紹武,屈俐俐,等.基于Sage窗的自適應(yīng)Kalman濾波用于鐘差預(yù)報研究 [J].儀器儀表學(xué)報,2017,38(7):1809-1816.
[5] 邵騰.面向參數(shù)不精準(zhǔn)系統(tǒng)的Kalman濾波理論研究 [D].杭州:杭州電子科技大學(xué),2016.
[6] 靳松,朱兆林,張旺,等.基于LabVIEW的中值濾波算法在剔除尖脈沖干擾中的應(yīng)用 [J].機電產(chǎn)品開發(fā)與創(chuàng)新,2021,34(5):22-24.
[7] 黃小平.卡爾曼濾波原理及應(yīng)用 [M].北京:電子工業(yè)出版社,2015:32-35.
[8] WANG H R,DENG Z H,F(xiàn)ENG B,et al.An adaptive Kalman filter estimating process noise covariance [J].Neurocomputing,2017,233(5):12-17.
[9] 喬尚嶺.無耦合六維力—力矩傳感器數(shù)據(jù)采集系統(tǒng)研究 [D].哈爾濱:哈爾濱工業(yè)大學(xué),2014.
[10] 羅家滸,楊會成,曹會彬,等.六維力傳感器靜態(tài)條件下的信號噪聲處理 [J].計算機仿真,2018,35(1):378-381.
作者簡介:徐明威(1996.07—),男,漢族,福建漳平人,碩士研究生,研究方向:遙操作機器人和六維力傳感器技術(shù)。