趙為平, 王男楠, 趙雪瑩, 楊旭
(1.遼寧通航研究院, 沈陽 110034; 2.沈陽航空航天大學電子信息工程學院, 沈陽 110034; 3.沈陽飛機設計研究所, 沈陽 110034)
雙座電動飛機[1]由于其在飛行性能、動力與控制系統等方面的優勢,已經發展成為目前航空界爭相投入的方向。而在有限的空間領域中,隨著雙座電動飛機使用的增加,空中的交通安全問題也會逐漸顯露出來。對于世界各航空大國的空難歷史記錄調查中可以發現,飛機在著陸過程中由于機器問題或者飛行員操作問題發生的事故率占比50%以上[2-3],因此提高雙座電動飛機在定位著陸階段的定位精度十分重要。高度信息是引導雙座電動飛機定位著陸的重要信息,減少著陸過程的在高度上的定位誤差,可以保障了雙座電動飛機在空間領域的運行安全[4]。隨著對雙座電動飛機飛行性能的研究和飛行品質的評估成為迫切需要,對飛行仿真三維可視化平臺的研究就刻不容緩。
現有的導航定位精度優化的理論研究較多,結合可視化設計的應用研究較少。以雙座電動飛機為背景的導航定位方面研究較少。管慶林等[5]提出了一種改進的卡爾曼濾波降噪的相位平滑偽距方法,改進方面基于衛星高度點的濾波,該方法主要針對單點定位精度低等問題做出的改進,提高了單點導航定位的精度。張明家等[6]以無人機為模型,FlightGear為基礎,搭建了控制系統的仿真平臺,可以對無人機飛行進行三維可視化顯示。Qian等[7]提出了以最小二乘算法為基礎的融合算法,推導了一組穩態性能公式,可以有效地提高偽距定位的精度。
針對雙座電動飛機在導航定位著陸階段的性能問題的研究,利用地基增強系統(ground-based augmentation systems, GBAS)結合增強算法來提高雙座電動飛機的定位精度。通過提出利用GBAS聯合MATLAB/Simulink 與FlightGear進行仿真,旨在為雙座電動飛機的導航定位精度研究提供一種新思路,也為相似導航定位精度優化提供理論依據和技術支持。
飛機可視化仿真軟件FlightGear[8]可以通過 Simulink驅動其顯示飛行器運動,充當視景顯示軟件。用 Simulink 創建飛行動力學及其控制模型,產生飛機位置、姿態、運動副等數據,去驅動 FlightGear 顯示飛行器運動,可以展示出飛行器的不同視角的視野,以及運動軌跡、姿態變化及運動副響應等,從而快速搭建聯合仿真平臺。
通過把創建好的雙座電動飛機模型導入到FlightGear中,操作雙座電動飛機模型飛行。雙座電動飛機可視化系統聯合仿真平臺流程圖由圖1所示。
仿真過程為:①讀取衛星數據源,衛星數據信息可以通過解析衛星歷書數據和星歷數據得到; ②利用MATLAB對RINEX導航文件和觀測文件讀取,確定可見衛星位置坐標,列出偽距方程組;③完成星座仿真,偽距仿真,增強算法仿真;④通過運動學與動力學模型解算雙座電動飛機姿態信息;⑤FlightGear接收雙座電動飛機速度、位置、姿態信息通過Simulink中數據打包模塊和數據傳送模塊進行雙座電動飛機模型視景顯示。

圖1 FlightGear仿真流程圖Fig.1 FlightGear simulation flow chart
雙座電動飛機導航定位仿真主要基于地基增強系統,GBAS[9]由空間段、機載段和地面段等部分組成(圖2)。
GBAS主要由地面基準全球定位系統(global positioning system, GPS)接收機、數據總處理站以及數據鏈三部分組成。地面接收機跟蹤并接收可見星的數據,同時處理GPS衛星數據,與地面位置精確已知的基準接收機位置作差計算得到了偽距修正量,再將偽距修正值以及信號傳輸過程中的各類誤差修正值[10]通過甚高頻數據廣播發送給雙座電動飛機接收機。機載子系統再對定位解算的數據進行改正[11],用來提高雙座電動飛機的定位精度。對對流層延遲誤差改正采用Hopfield模型,定位數學模型采用無電離層模型。

圖2 GBAS 系統結構Fig.2 GBAS system structure
2.2.1 傳統載波相位平滑偽距算法
根據數據信息中的導航數據以及觀測數據可以進行定位解算,傳統碼相位測量值的準確性很低,因為它測量中存在很多觀測噪聲,而用載波相位測量準確性高,但會存在整周模糊度等問題,所以可以結合兩者[12],地面參考站對每顆衛星利用載波相位來平滑碼偽距測量值,可以減小偽距噪聲[13],碼偽距和載波相位觀測方程為
ρj=Rj+Cdτ+ν
(1)
λ(φj+Nj)=Rj+Cdτ+ν
(2)
式中:ρj為偽距觀測量;Rj為基準站和衛星的幾何距離;C為光速;dτ為接收機鐘差;v為測量噪聲;λ為載波波長;φj為觀測量相位小數;Nj為觀測量相位整周數。
忽略噪聲的變化,k、k+1時刻的載波相位觀測量之差為
Δρj(k,k+1)=λ[φj(k+1)-φj(k)]
=Rj(k+1)-Rj(k)+
C[dτ(k+1)-dτ(k)]+v
(3)
由式(3)可以消除載波相位整周模糊度問題。而k2時刻的偽距觀測量為
ρj(k2)=Rj(k1)+Cdτ(k1)+Δρj(k1,k2)+v
(4)
式(4)中:k1、k2為時刻;dτ(k1)為k1時刻接收機鐘差,假設有n個歷元的觀測量,k時刻的偽距觀測量為
ρj(kn)=ρj(kn)-Δρj(k1,kn)
(5)
則kn時刻的偽距平滑值為

(6)
由式 (6) 可以看出,隨著歷元數的增加,碼偽距測量值的誤差將降低。
一般采用 Hatch 濾波平滑方法[14],k時刻的平滑偽距公式為
(7)
2.2.2 卡爾曼濾波平滑偽距算法
載波相位平滑偽距算法有局限性,首先它的平滑因子只取決于平滑次數,這就可能造成初始偏差需要很長時間才能消除。其次它忽略了載波相位噪聲的影響,隨著歷元數的增加,觀測噪聲對定位精度會產生影響,這就導致了它定位精度的下降,所以這就有了卡爾曼濾波平滑偽距算法的出現。
卡爾曼濾波是一種通過給定初始條件輸入每個時刻的觀測值,不斷地進行反饋校正,逐步遞推估計出每個時刻的狀態值,對系統狀態進行最優估計的算法。標準卡爾曼濾波模型為[15]
X(k)=φ(k,k-1)X(k-1)+q(k-1)
(8)
y(k)=H(k)X(k)+r(k)
(9)
式中:X(k)、y(k)分別為k時刻狀態量和觀測值;φ(k,k-1)、H(k)分別為狀態轉移陣與觀測轉移陣;q(k-1)為過程噪聲陣,其方差為Q;r(k)為測量噪聲陣,其方差為R。
載波相位平滑偽距時,構建卡爾曼濾波模型為
(10)
(11)

其他涉及遞推公式如下。

(12)
卡爾曼濾波增益為
(13)

(14)

(15)
MATLAB/Simulink中的Aerospace Blockset /Animation/Flight Simulator Inerfaces 庫中帶有動力學與控制學模塊,但是需要輸入雙座電動飛機的姿態控制量,這就需要在Simulink中建立運動學與動力學模型。假設一個雙座電動飛機在水平飛行中相對于路徑點Wp1和Wp2之間的軌道線的任意位置[16](圖3),并在任意航向ψ上飛行。設ψ=∠(U,YNorth),其中U為飛機速度矢量,Ynorth為北向Y軸方向;ψw=∠(W,YNorth),ψw為風速矢量W與YNorth的夾角;ψ12=∠(〈Wp1,Wp2〉,YNorth),ψ12為飛機速度〈Wp1,Wp2〉與YNorth的夾角。 給定飛機在〈North,East〉東北方向參考系中的速度和位置,能獲得〈Xtrack,Ytrack〉飛機航向方向參考系中的位置和速度分量。 變換將是一個角度的旋轉,即ψ12-π/2,并給出相關的旋轉矩陣為

圖3 載體運動學分析Fig.3 Kinematic analysis of carrier
(16)
將上述旋轉應用于飛機速度和風速矢量,得
(17)
式(17)中:Utrack、Wtrack分別為旋轉后的飛機速度矢量與風速矢量。
沿軌和跨軌速度可表示為
(18)
因此,連續時間雙座電動飛機運動學模型用非線性微分方程組描述為[16]
(19)
式(19)中:rCMD為橫向控制律內環的實際偏航速率;Wp1、Wp2為飛機從Wp1點到Wp2點位置點;Xtrack、Ytrack分別為沿軌與跨軌速度矢量方向坐標軸;XEast、YNorth為〈North,East〉東北參考系方向坐標軸;ψ12為航向角;Ux、Uy分別為沿〈North,East〉方向參考系的飛行速度分量;Wx、Wy分別為沿〈North,East〉參考系方向的風速分量;Utrackx、Utracky分別為沿軌與跨軌飛機速度分量;Wtrackx、Wtracky分別為沿軌與跨軌風速分量;t為時間。
為了進一步簡化問題,提出了以下假設:U、W、ψ12均為常數。將橫向控制律內環的實際偏航速率指令作為飽和函數的輸出來實現。即
(20)
(21)
式中:Rmax為橫向控制律指令rCMD上最大的限制;u為實際橫向控制速率;比例增益KR通過模擬迭代確定,直到在幾乎沒有過沖的情況下實現良好的跟蹤,在橫向軌道控制定律中KR=-0.002 5;sat(·)為飽和函數;k為確定截距點參數,其中從截距點到路徑點Wp2的距離在任何時刻等于(1-k)Xtrack。
雙座電動飛機的仿真模型是將已有的電動飛行器三維模型通過配置文件導入FlightGear 里,由FlightGear 可操縱雙座電動飛機的三自由度幾何模型,通過 MATLAB 軟件的 Simulink模塊輸入控制的參數。一般飛機在降落階段都是沿著已經定義好的下滑通道飛行,因此,提前設置好雙座電動飛機仿真軌跡。圖4為由雙座電動飛機模型生成的仿真軌跡,仿真的目標機場為沈陽法庫財湖機場。

圖4 飛行軌跡Fig.4 Flight trajectory
針對雙座電動飛機著陸階段的定位精度問題, GBAS 中分別采用最小二乘偽距算法、載波相位平滑偽距算法和卡爾曼濾波平滑偽距定位算法進行仿真比較。仿真采用解析真實衛星星歷以及接收機接收到的衛星數據信息,通過讀取RINEX文件進行定位計算。仿真時,雙座電動飛機接收地面端解算的差分修正信息,用于對雙座電動飛機導航精度的增強。
根據以上擬定的航路中,雙座電動飛機將在沈陽法庫財湖機場(42.293°N,123.373°E)上方進行進近著陸,數據提供 CA 碼及 L1、L2 載波相位測量值,仿真時長360 s,仿真過程中可見星數目如圖5所示。
可以看出,在雙座電動飛機著陸階段,機載端接收機接收到可見衛星個數大于8顆,滿足位置解算需求(可見衛星個數大于等于4顆)。
當采用最小二乘C/A碼進行定位解算時,定位的3個方向分量偏差如圖6所示。

以G02、G03為例,G02、G03表示編號02、03等的衛星圖5 可見星數量Fig.5 Number of visible satellite

圖6 C/A 碼定位三軸分量偏差Fig.6 Three axis component deviation of C /A code positioning
圖6中,定位誤差的觀測噪聲較大,水平誤差在5 m以內,垂直誤差在8 m以內。偽距采用載波相位平滑之后,定位的3個方向分量偏差如圖7所示。
分別分析了北向、東向、天向3個方向上的誤差情況,對比圖6、圖7可以看出,圖7中定位精度有明顯改善, 隨機噪聲明顯減小,載波相位平滑偽距定位水平方向誤差約為1 m,垂直最大定位誤差約為3 m。基于GBAS 的載波相位平滑偽距差分定位解偏差范圍小,定位性能較為穩定。
圖8采用卡爾曼濾波平滑偽距算法分析了3個方向的誤差,水平方向平均誤差和垂直方向平均定位誤差都在 1 m 以內,結果更加平滑穩定。相比較于利用碼偽距最小二乘算法和載波相位平滑偽距算法,卡爾曼濾波降噪的平滑偽距算法收斂速度很快,定位精度更高,結果更加平滑穩定。

圖7 載波相位平滑偽距三軸分量偏差Fig.7 Carrier phase smoothing pseudo range triaxial component deviation

圖8 卡爾曼濾波平滑偽距三軸分量偏差Fig.8 Kalman filter smoothing pseudo range three axis component deviation
聯合仿真中部分的雙座電動飛機狀態量由 Signal Builder 模塊直接給出,用于模擬雙座電動飛機飛行, 這些狀態量將驅動 FlightGear 按預定的方式去運動。接口模型結構如圖9所示
GBAS 定位解算模塊能夠計算出雙座電動飛機的位置與速度,并把這些數據提供給運動學模型解算出三個姿態量,之后將數據傳給Simulink 的模型中的動力學模型,與大氣參數相結合計算出控制量傳給Simulink 的模型中控制模塊,使雙座電動飛機完成飛行任務。其中FlightGear_show中包含如何將飛行動力學模型的地面固定坐標系下的狀態量轉換為地球坐標系下的狀態量,以及將轉換后的數據發送給 FlightGear。如圖10所示。
接口模型產生雙座電動飛機的所有狀態量(速度,位置,姿態等),由這些狀態量驅動FlightGear進行三維的視景展示。仿真中可以進行不同視角觀察,并在MATLAB平臺中同步實時顯示位置量、姿態量、定位誤差量等各項關鍵參數。
在雙座電動飛機飛行過程中,GBAS 提供的定位服務能較為精確的引導雙座電動飛機進行定位,采用增強算法定位解算出的定位解與給定的理想航路比較偏差較小,能夠直觀實時的看出雙座電動飛機在空中的姿態,更直觀實時監測飛機的異常。

Xe、Ye、Ze分別為飛行器地面固定坐標系下的3個位置量;φ、θ、ψ分別為飛機的航向角、俯仰角、翻滾角;δa、δb、δr、rspeed分別為副翼、升降舵、方向舵操縱量及螺旋槳轉速圖9 接口模型Fig.9 Interface model

l、μ、h分別為經度、緯度、海拔高度;num_engines為發動機的數量;eng_state為發動機狀態向量;fuel_flow為燃料流向量;fuel_px為燃料壓力向量;egt為廢氣溫度矢量;cht為氣缸蓋溫度標量;mp_osi為壓力向量;tit為入口溫度;oil_tenmp為油溫度;oil_px為油壓力載體;num_tanks為油箱的數量;fuel_quantity為每油箱矢量的燃料數量;Send net_fdm packet to FlightGear為將發送給FlightGear 的數據打包的模塊;GEN FG RUN為生成啟動腳本模塊;Set Pace模塊用來設置真實時間每秒顯示多少秒的飛行力學模型數據在FlightGear 里,當Set Pace<1 時,相當于慢放,當Set Pace>1 時,相當于快放,一般實時仿真時都設為 1;single為將輸入的數據類型轉化為矩陣格式;X2為水平地面坐標系的3個位置量;href為平坦的地球位置海拔高度;μ1地球坐標系下的經緯度;1 s/s表示設置動畫視圖的模擬速率為每秒30幀圖10 FlightGear_show 部分模型Fig.10 FlightGear_ Show partial model
通過對雙座電動飛機應用GBAS系統進行定位著陸模擬仿真,根據GBAS提供的數據模型,利用不同的定位算法分析了各算法的導航性能,結果表明采用定位的增強算法可以很好地提高雙座電動飛機定位著陸階段的高度定位精度,保障了空域內的飛行安全。實現了MATLAB 與FlightGear的聯合仿真,使得導航數據能夠在實時傳送給FlightGear中,可以直觀的看出雙座電動飛機飛行姿態與系統的定位效果。