朱菲菲,高艷輝,肖前貴,胡壽松
(1.南京航空航天大學 自動化學院,江蘇 南京210016;2.南京航空航天大學 無人機院,江蘇 南京210016)
觀測器/卡爾曼濾波在飛行數據處理中的應用
朱菲菲1,高艷輝2,肖前貴2,胡壽松2
(1.南京航空航天大學 自動化學院,江蘇 南京210016;2.南京航空航天大學 無人機院,江蘇 南京210016)
在無人機飛行參數測量中,受環境、干擾或自身穩定性等因素的影響,往往使測量數據中存在野值。為提高飛行數據處理精度,提出了一種基于觀測器/卡爾曼濾波辨識(OKID)的新算法用于估計飛行參數。該算法直接利用輸入輸出數據與系統矩陣得到觀測器增益,而觀測器增益又收斂于穩定狀態下的卡爾曼濾波增益,利用卡爾曼濾波增益即可估計飛行參數。Matlab仿真表明該方法能有效地消除飛行數據中的野值。
數據處理;觀測器/卡爾曼濾波;觀測器增益;野值剔除
在試飛過程中由于受到外界異常干擾、測量儀器或傳輸數據不穩定等多種因素的影響,導致測量數據嚴重偏離測量真值,這些偏離數據所呈現趨勢的小部分數據集合,稱為野值。野值的存在會給無人機的狀態估計、性能導航及飛行性能分析帶來較大的誤差,甚至嚴重偏離飛機的飛行狀態[1]。因此必須對野值進行處理,以保證數據處理精度。
目前,國內學者對測量數據的野值剔除方法已經有了大量研究,文獻[2]利用多傳感器數據形成的對目標狀態參數的正確描述和測量數據集合主體的變化趨勢,提出了分布式融合算法的野值剔除方法,檢測效果較好但采用的Kalman濾波會出現濾波發散現象。文獻[3-4,10]以“新息”為基礎,通過重新構造Kalman濾波方法中增益矩陣的方法,對野值進行識別和處理,有效地解決了濾波發散問題。文獻[5]提出了一種最小二乘算法與無跡卡爾曼濾波(UKF)結合的改進算法,當存在野值時利用最小二乘法近似曲線擬合估計預計狀態值,不存在野值時利用UKF算法估計狀態,為系統濾波提供了一種處理野值的實際解決方法,但該方法計算量較大。此外以上基于Kalman濾波的算法都需得知系統模型的過程噪聲和測量噪聲,而實際中很難精確地得到系統的測量噪聲和過程噪聲特性。
文中提出了一種基于觀測器/卡爾曼濾波辨識 (OKID)處理飛行試驗數據中野值的方法[6-9],該方法直接由輸入輸出數據與系統矩陣信息得到觀測器增益,結合觀測器與卡爾曼濾波之間的關系及觀測器增益,最終得出穩定狀態下的卡爾曼濾波增益[6],從而利用卡爾曼濾波增益估計飛行數據的正確狀態。該方法不需得知系統過程噪聲和測量噪聲協方差矩陣,通過仿真驗證表明該方法可有效地對野值進行剔除與補正。
1.1 觀測器/卡爾曼濾波辨識(OKID)算法考慮如下多變量離散時間線性系統:

式中x(k)為n×1維向量,y(k)為p×1維向量,u(k)為m×1維向量,A,B,C,D為維數適當的系數矩陣。假設該線性系統初始狀態為零,即x(0)=0,則可得到如下方程組,其中k=0,1,…,l。

式(2)可表示為矩陣形式:


式(3)建立了系統(1)輸入與輸出歷史數據間的關系。其中y∈RP×l,Y∈Rp×ml,U∈Rml×l,l為數據采樣的長度,p為系統輸出變量的個數,m為系統輸入變量的個數。矩陣Y包含了所有的待定的Markov參數CB,CAB,CAl-1B。
當系統狀態未知時,觀測器通常根據已知的輸入輸出信息估計狀態。因此,式(1)加上并減去Fy(k)項,系統(1)的觀測器可寫為:


則測量方程可寫為:

其中:


其最小二乘解為:


則利用式(10)與已知的系數矩陣A,B,C可求解出滿足一定條件的觀測器增益矩陣。
1.2 觀測器與卡爾曼濾波之間的關系
系統(1)可描述為包含過程噪聲和測量噪聲的如下系統:

其中w(k)為服從高斯,零均值白噪聲分布的過程噪聲,v(k)為滿足同樣條件的測量噪聲。且w(k)與v(k)序列互相獨立。則系統(11)的典型卡爾曼濾波為:


測量方程變為:

當F=-K且εr(k)=0時,式(4)與式(13)是等價的,事實上任何滿足最小二乘解的觀測器都將生成與卡爾曼濾波相同的輸入輸出映射關系,假設數據長度足夠大,則截斷誤差[7]可忽略。因此殘差εr(k)為卡爾曼濾波殘差的白噪聲序列,觀測器增益矩陣F收斂于穩定狀態的卡爾曼濾波增益K[6-8]即F=-K。
1.3 野值的識別、剔除與補正
利用由觀測器得到的卡爾曼濾波增益K來預測系統觀測量的估計值?(k),構造新息,按時間順序逐點計算及新息vi。對于野值,其新息值vi遠大于正常值,可采用下式為準則[11]來判別野值。

為保證數據的完整性,當識別和剔除野值點后,需對剔除后的野值點進行補正。野值的補正利用估計值代替。
仿真數據采用某型無人機的試飛數據,數據采樣周期為40ms,由于磁航向角易受外部磁環境影響,導致測量數據含有野值,因此以磁航向角試驗數據為例,分別在試驗數據中加入獨立分布與連續分布的野值,利用Matlab軟件進行仿真。
建立單輸出、零輸入系統的離散化狀態方程和觀測方程模型,如式(15)所示:

選取數據采樣長度l為2 000,q為400,利用Matlab軟件根據輸入輸出數據由式(9)可得到觀測器的Markov參數矩陣。由于矩陣為零,則式(10)變為:

在第40 s、44 s、48 s單獨加入3個不等的野值,其幅值在原幅值的1~2倍之間。仿真結果如圖1所示。在第40 s開始加入滿足同樣幅值條件的10個連續野值。仿真結果如圖2所示。

圖1 磁航向角測量數據獨立野值處理
以上仿真結果表明利用觀測器/卡爾曼濾波辨識得到的穩定卡爾曼濾波增益可以很好地對系統進行預測,當數據出現野值時即可利用估計值來處理野值,從而有效地抑制了飛行試驗數據中野值的影響。

圖2 磁航向角測量數據連續野值處理
實際工程實踐中,由于多種因素的影響,飛行試驗測量數據中野值的出現是不可避免的,傳統的濾波算法不具備處理野值的能力,當出現野值時,將會對測量數據進行錯誤估計從而偏離正確值,甚至導致濾波發散。如何有效地克服Kalman濾波器在出現野值的情況下引起的發散現象和誤差較大嚴重偏離真值的情況,在工程應用中是非常重要。
文中介紹了一種基于觀測器/卡爾曼濾波的方法處理飛行試驗數據中的野值,該算法利用穩定狀態的卡爾曼濾波增益對系統進行估計,避免了出現野值時,調整卡爾曼濾波增益無法得到正確估計值的問題,此外該算法不需得知系統的過程噪聲和測量噪聲,簡單易行。為飛行試驗數據野值處理提供了一種解決方法。
[1]王鵬偉,吳秀清,余珊.基于角點特征和自適應核聚類算法的目標識別[J].計算機工程,2007,33(6):179-181.
[2]賀明科,王正明,朱炬波.多傳感器目標跟蹤的實時剔野方法[J].宇航學報,2002,23(6):34-37.
[3]祝轉民,秋宏興,李濟生,等.動態測量數據野值的辨識和剔除[J].系統工程與電子技術,2004,26(2):147-149.
[4]Peng Yang,Hairrong Sun,LinanZu,et al.Adaptively target trackingmethod based on double-Kalman filter in existence of outliers[J].IEEE International Conferenceon Roboticsand Biomimetics(ROBIO),2010:950-954.
[5]徐利娜,陳俊彪,穆高超.靶場外彈道數據處理中的實時野值剔除算法[J].應用光學,2012,33(1):90-95.
[6]Tsai S H,Hu N T,Yang P C,et al.Modeling of decentralized linear obse-rver and tracker for a class of unkno-wn interconnected large-scale sampled-data nonlinear systems with closed-lo-op decoupling property[J].Computers&Mathematicswith Applications,2010,60(3):541-562.
[7]Wu C Y,Tsai S H,Guo S M,et al.A novel on-lineo
bserver/Kalman filter identification method and its application to input-constrained active fault-tolerant tracker designfor unknown stochastic systems[J].Journal of the Franklin Institute,2015,352(3):1119-1151.
[8]Majji M,Juang JN,Junkins J L.Ob-server/Kalman-Filter Time-Varying System Iden-tification[J].Journal of Guidance Control&Dynamics,2010,33(3):887-900.
[9]Corporation H P.Detection of Sensor Faults in Small Helicopter UAVs UsingObserver/Kalman Filter Identification[J].Mathematical Problems in Engineering,2011,6(6): 505-515.
[10]張強,孫紅勝,胡澤明.目標跟蹤中野值的判別與剔除方法[J].太赫茲科學與電子信息學報,2014,12(2):256-259.
[11]趙志剛,呂恬生.小型無人直升機辨識建模試驗信號的預處理[J].蘭州交通大學學報,2010,29(4):40-43.
[12]Heredia G,Ollero A.Detection of Sensor Faults in Small Helicopter UAVs Using Observer/Kalman FilterIdentification[J].Mathematical ProblemsinEngineering,2011,6(6):505-515.
Application of observer/Kalman filter in flight data processing
ZHU Fei-fei1,GAO Yan-hui2,XIAO Qian-gui2,HU Shou-song2
(1.College of Automation Engineering,Nanjing University of Aeronautics and Astronautics,Nanjing 210016,China;2.Research Institute ofUnmanned Aircraft,Nanjing University of Aeronauticsand Astronautics,Nanjing 210016,China)
Affected by the environment,interference or its stability,the outliers often exists in the flightdatameasurement.In order to improve the flight data processing accuracy,annew algorithm based on the observer/Kalman filter identification(OKID)is proposed to estimate the flight parameters.The algorithm directly uses the input and output data and the system matrix to obtain the observer gain,while the observer gain converges to the steady-state Kalman filter gain.This Kalman filter gain can be used for flightparametersestimation.Matlab simulations show thismethod can effectively eliminate the outliers in flightdata.
dataprocessing;observer/Kalmanfilter identification;observer gain;outlier elimination
TN957.51
A
1674-6236(2016)20-0091-03
2015-10-26 稿件編號:201510177
朱菲菲(1990—),女,河南許昌人,碩士研究生。研究方向:無人機建模與仿真。