本發明涉及直升機飛行動力學與飛行控制技術領域,具體是一種適用于直升機自適應飛行控制的魯棒辨識方法。
背景技術:
直升機具有懸停、垂直起降和低速機動能力,成為不可或缺的重要飛行器。然而,直升機固有的強耦合和不穩定性也導致了直升機飛行品質較差,不易操縱。為了從根本上解決這個問題,最有效的方法,同時也是當前最常用的方法就是設計一套高質量的飛行控制系統。由于直升機高度的非線性和非定常特性,經典控制方法的控制效果往往不夠理想,而基于現代控制理論的自適應控制方法成為解決這一難題的有效手段。
自適應控制方法的兩個主要關鍵問題就是自適應控制策略設計和控制對象的實時辨識技術。就直升機飛行動力學模型的實時辨識技術而言,由于其固有特性非常復雜,振動水平和噪聲水平高導致測量數據污染嚴重,給準確辨識其動力學模型帶來了較大困難。早期的直升機飛行動力學模型辨識技術以采用單純的參數辨識方法辨識解耦模型為主,然而解耦模型與直升機真實動力學特性差異較大,對控制器設計的效果產生較大影響。之后,全耦合模型的辨識技術得到較大發展,出現了結構辨識和參數辨識結合的綜合辨識方法,然而,相對于解耦模型,全耦合模型的復雜特性也導致各種辨識方法精度差異明顯。從飛行器模型辨識領域的權威專家美國NASA Ames研究中心飛行力學與飛行控制團隊主任Mark B.Tischler在AIAA出版社出版的最新專著《Aircraft and Rotorcraft System Identification:Engineering Methods with Flight Test Examples 2nd Edition》可以看出,目前國際上直升機領域飛行動力學模型的主流辨識方法仍舊是以經典辨識理論為主,對于測量噪聲等外界干擾對數據的影響采用忽略或簡單工程修正的方式加以處理。
目前,在已發展的直升機自適應控制方法中,直升機飛行動力學模型的實時辨識主要采用遞推最小二乘法,同時將噪聲視為白噪聲,并通過對誤差方差進行簡單修正以補償噪聲引起的估計誤差。然而,直升機實際噪聲為復雜的有色噪聲,同時,在非主要通道,高噪聲水平導致了測量數據的信噪比很低。從而簡單的工程修正方法并不能很好的解決復雜噪聲對模型辨識精度產生較大影響的困難。綜上,從目前國內外現有的直升機飛行動力學模型實時辨識技術來看,尚未有從根本上解決實際飛行過程中包括測量噪聲、突風等在內的外界干擾對模型辨識精度影響的方法,進而給直升機自適應控制系統的設計造成了一定的困難。
技術實現要素:
本發明為了解決當前基于遞推最小二乘法的在線辨識方法魯棒性不足的問題,提供了一種適用于直升機自適應飛行控制的魯棒辨識方法,能夠有效消除測量噪聲等外界擾動對模型辨識精度的影響、顯著提高動力學模型辨識的魯棒性。
本發明包括以下步驟:
第一步,初始化直升機懸停狀態的狀態空間模型,如式(1)所示,計算出懸停狀態下直升機狀態空間模型中各個參數的取值,
式中,x為直升機狀態向量,A為穩定性矩陣,B為操縱矩陣,y為直升機觀測向量,C和D分別為觀測矩陣以及操縱對觀測向量的影響矩陣;
第二步,從接通飛控后開始,以第一步得到的參數值作為模型參數初值,基于四階龍格-庫塔法對式(1)所示的直升機飛行動力學狀態空間方程進行單步求解,即得到t時刻的狀態響應和觀測向量x(t)以及y(t),同時各個機載傳感器記錄下直升機實際觀測向量ym(t),計算模型估計誤差;
第三步,將實際觀測向量通過式(3)所示的濾波器進行低通濾波處理,并記錄濾波后的實際觀測向量ymf(t),根據式(4)和式(5)分別計算N個觀測量在時間窗寬度為L的噪聲序列的均值和方差,并以此方差作為當前時刻N個觀測量的噪聲邊界σ(t),具體表達式如式(6)所示。與此同時,在直直升機懸停狀態的狀態空間模型的基礎上建立如式(7)所示的模型參數靈敏度方程,并同樣基于四階龍格-庫塔法求解直升機狀態響應向量對各個模型參數的靈敏度
σ(t)=[Var(n1),Var(n2),…,Var(nN)]T (6),
其中,T為一階濾波函數的時間常數,s為復頻變量,為第i個觀測量的噪聲均值,Var(ni)為第i個觀測量的噪聲方差。
第四步,基于最優邊界橢球法對模型參數偏差進行估計,首先,定義模型參數偏差向量為Δθ,并設置其初值為0I,其中,I為單位矩陣,分別根據式(8)和式(9)計算中間輸出向量和中間回歸矩陣
其次,根據式(10)—(12)計算用于優化邊界橢球的三個系數C1、C2和C3,再利用式(13)計算得到最優邊界橢球加權系數λ(t),
C0=m[tr[σ(t)σ(t)T]-tr[e(t)e(t)T]]-κ(t-1)x(t)TP(t-1)x(t) (12),
其中,tr表示矩陣的跡,m為回歸矩陣的行數,e(t)=y(t)-ymf(t)為模型計算的響應與實際測量的響應之間的誤差,P為協方差矩陣,κ為橢球形狀參數,協方差矩陣P和橢球形狀參數κ在第一次計算中取初值為P(0)=10-6I和κ(0)=1,I為單位矩陣;
第五步,建立式(14)—式(16)所示的迭代算法,并利用第四步中得到的最優邊界橢球加權系數修正參數的辨識結果,得到待辨識參數的最優可行解集,并以橢球中心點作為模型參數估計偏差Δθ的辨識結果,
Δθ(t)=Δθ(t-1)+λ(t)P(t)x(t)e(t)T (14),
第六步,根據當前模型參數估計偏差的辨識結果利用式(17)修正模型參數并更新式(1)中的A和B矩陣,使用更新后的直升機懸停狀態的狀態空間模型回到第二步繼續進行辨識計算。
θi=θi-1+Δθ (17)
其中,θi為更新后的模型參數向量,θi-1為更新前的上一迭代過程的模型參數向量。
第一步中,基于非線性機理建模,然后通過配平和線化計算出式(1)所示的模型中各個參數的取值。
第一步中,通過一次單獨的懸停狀態掃頻飛行試驗,利用最小二乘法計算出式(1)中各個參數的取值。
所述的最小二乘法具體步驟如下,首先,試飛員將直升機在懸停狀態進行配平,然后依次施加總距、縱向周期變距、橫向周期變距和尾槳總距的正弦掃頻激勵信號,每組操縱持續10—30秒,將得到的飛行試驗數據進行濾波、傳感器位置校正和數據相容性檢查,之后可根據式(2)所示的標準最小二乘法估計出式(1)中各個參數的取值,
θ=(XTX)-1XTY (2),
其中,θ為待辨識參數,由式(1)中矩陣A和矩陣B中的參數組成,Y是輸出向量,由式(1)中的y向量組成,X是回歸矩陣,由式(1)中的x向量組成。
本發明有益效果在于:
1)以參數估計偏差向量作為中間辨識參數解決了邊界橢球法無法用于微分系統的難題,實現了邊界橢球法在直升機飛行動力學模型辨識中的應用。
2)通過實時估計噪聲邊界有效提高邊界橢球的優化效果,增強了參數辨識精度。
3)現有遞推最小二乘方法需要知道噪聲的具體統計特性,由于實際噪聲的統計學特性無法獲取導致方法精度尤其是魯棒性的降低。而本發明以邊界橢球參數加權的參數遞推辨識算法僅需要考慮噪聲邊界,所以適用于各種非理想噪聲干擾環境下的模型辨識,相比現有方法能夠提高參數辨識的精度,而魯棒性則更得到顯著改善。
附圖說明
圖1是本發明的魯棒辨識方法實施流程。
圖2是直升機飛行動力學模型初始化流程。
圖3是實施例中本發明方法辨識結果的驗證。
圖4是實施例中高信噪比條件下本發明方法與遞推最小二乘法的辨識效果對比。
圖5是實施例中低信噪比條件下本發明方法與遞推最小二乘法的辨識效果對比。
具體實施方式
下面結合附圖和具體實施方式對本發明做進一步說明。
本發明提供了一種適用于直升機自適應飛行控制的魯棒辨識方法,流程如圖1所示,具體包括以下幾個步驟:
第一步,如圖2所示,針對對象直升機進行飛行動力學模型初始化,即初始化懸停狀態的狀態空間模型,如式(1)所示。其中,x為直升機狀態向量,包括體軸系下的速度、角速度和姿態角,A為穩定性矩陣,B為操縱矩陣,y為直升機觀測向量,如空速、姿態角、角速度、加速度等等,C和D分別為觀測矩陣以及操縱對觀測向量的影響矩陣。一般情況,D為零矩陣,C由所選觀測量和直升機狀態變量的轉換關系直接確定。需要進行初始化工作的主要就是A和B兩個矩陣。由于對于直升機,其每次飛行總是從垂直起飛到懸停開始,所以對飛行動力學模型的初始化只需要針對懸停狀態進行即可。此外,對于同一直升機,盡管可能每次飛行的起飛重量有所區別,但在同一飛行狀態下對于A和B矩陣中的無量綱參數影響不大,所以只需進行1次初始化計算即可。當初始化完成后,將得到懸停狀態模型參數記錄到模型數據庫中,之后的每次飛行可直接導入模型數據即可完成初始化工作,無需重新計算。
初始化懸停狀態的直升機狀態空間方程有兩種途徑,一種是基于非線性機理建模,然后通過配平和線化得到式(1)所示的模型。另外一種途徑也是本發明采用和推薦的方法,即通過一次單獨的懸停狀態掃頻飛行試驗,利用最小二乘法得到式(1)中A和B矩陣中的模型參數,具體流程如圖2所示。首先,試飛員將直升機在懸停狀態進行配平,然后依次施加總距、縱向周期變距、橫向周期變距和尾槳總距的正弦掃頻激勵信號,每組操縱持續10—30秒。將得到的飛行試驗數據進行濾波、傳感器位置校正和數據相容性檢查,確保數據可信。之后可根據如式(2)所示的標準最小二乘法估計出模型參數。其中,θ為待辨識參數,由矩陣A和B中的參數組成,Y是輸出向量,由式(1)中的y向量組成,X是回歸矩陣,由式(1)中的x向量組成。
θ=(XTX)-1XTY (2)。
第二步,從接通飛控后開始,進入模型實時辨識環節,即本發明的主體部分。首先基于四階龍格-庫塔法對式(1)所示的直升機飛行動力學狀態空間方程進行單步求解,即得到t時刻的狀態響應和觀測向量x(t)以及y(t),同時各個機載傳感器記錄下直升機實際觀測向量ym(t)。
第三步,將實際觀測向量通過式(3)所示的濾波器進行低通濾波處理,并記錄濾波后的實際觀測向量ymf(t)。根據式(4)和式(5)分別計算N個觀測量在時間窗寬度為L的噪聲序列的均值和方差,并以此方差作為當前時刻N個觀測量的噪聲邊界σ(t),具體表達式如式(6)所示。與此同時,在直升機狀態空間模型(1)的基礎上建立如式(7)所示的模型參數靈敏度方程,并同樣基于四階龍格-庫塔法求解直升機狀態響應向量對各個模型參數的靈敏度
σ(t)=[Var(n1),Var(n2),…,Var(nN)]T (6),
其中,T為一階濾波函數的時間常數,s為復頻變量,為第i個觀測量的噪聲均值,Var(ni)為第i個觀測量的噪聲方差。
第四步,基于最優邊界橢球法對模型參數偏差進行估計。首先,定義模型參數偏差向量為Δθ,并設置其初值為0I,其中,I為單位矩陣。分別根據式(8)和式(9)計算中間輸出向量和中間回歸矩陣
其次,根據式(10)—(12)計算用于優化邊界橢球的三個系數。其中,tr表示矩陣的跡,m為回歸矩陣的行數,e(t)=y(t)-ymf(t)為模型計算的響應與實際測量的響應之間的誤差,協方差矩陣P和橢球形狀參數κ在第一次計算中可取初值為P(0)=10-6I和κ(0)=1,I為單位矩陣,此后這兩個參數都通過迭代計算得到,具體算法在本發明的第五步中介紹。利用式(13)計算得到最優邊界橢球加權系數λ(t)。
C0=m[tr[σ(t)σ(t)T]-tr[e(t)e(t)T]]-κ(t-1)x(t)TP(t-1)x(t) (12),
第五步,本發明建立式(14)—式(16)所示的迭代算法,并利用第四步中得到的最優邊界橢球加權系數修正參數的辨識結果,得到待辨識參數的最優可行解集,并以橢球中心點作為模型參數估計偏差Δθ的辨識結果。
Δθ(t)=Δθ(t-1)+λ(t)P(t)x(t)e(t)T (14),
第六步,根據當前模型參數估計偏差的辨識結果利用式(17)修正模型參數并更新式(1)中的A和B矩陣。由于本發明的實時辨識算法主要面向飛行控制系統使用,所以只要飛行控制系統沒有斷開,則該辨識流程持續執行,即完成第六步后,使用更新后的狀態空間方程(1),并回到第二步繼續進行辨識計算。
θi=θi-1+Δθ (17)
其中,θi為更新后的模型參數向量,θi-1為更新前的上一迭代過程的模型參數向量。
本發明的一種具體實施例如下:
在本實施例中,將本發明的直升機飛行動力學模型魯棒辨識方法用于實際直升機的在線實時辨識,采用的是某2噸級的輕型直升機作為辨識對象,進行了大約30秒左右的飛行試驗,并基于實時飛行測試數據完成了模型辨識,圖3展示了本發明方法的辨識效果,可以看出,辨識精度是比較高的。為了顯示本發明的優越性,同時采用了遞推最小二乘法也進行了實時辨識,并與本發明方法的辨識效果進行了對比。從圖4和圖5可以看出,在信噪比較高的條件下(圖4),本發明方法比遞推最小二乘法精度略高,但在噪聲水平提高,信噪比較低的情況下(圖5),遞推最小二乘法的精度顯著下降,而本發明方法的精度仍然保持較好,具有較高的魯棒性。
本發明具體應用途徑很多,以上所述僅是本發明的優選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以作出若干改進,這些改進也應視為本發明的保護范圍。