基于GMap.NET的抗干擾ADS-B系統應用
摘 要:由于廣播式自動相關監視(Automatic Dependent Surveillance-Broadcast, ADS-B)自身缺陷,會面臨交織干擾和欺騙攻擊的威脅,造成用戶無法正確判斷目標信息和錯誤分析當前空域態勢?;陉嚵行盘柼幚淼目沼蚪饨豢椉夹g,以及測向和坐標對比技術,保證了ADS-B系統在交織干擾和欺騙攻擊的情況下地正常工作。GMap.NET作為一款開源開發地圖控件,與抗干擾ADS-B系統相結合,實時收集交織干擾統計數據和展示方位信息,標記欺騙攻擊目標,并且提供多類型地圖展示、航跡顯示、歷史回放、圖層展示等功能,展示更直觀的空域飛行態勢和干擾態勢,輔助管制指揮員做出快速準確的判斷和指令。
本文引用地址:http://www.ex-cimer.com/article/202305/446368.htm廣播式自動相關監視(ADS-B)在實際運行過程中,由于復雜環境的影響,會受到交織干擾和欺騙攻擊,使得接收到的信息不準確。而抗干擾ADS-B[1]系統通過引入陣列天線和對測量信號源位置的方法,有效的降低了交織干擾[2-3]和欺騙干擾的對系統準確性的影響。GMap.NET 是一款基于C# .Net 框架[4]的跨平臺地圖開發控件,可以與抗干擾ADS-B 系統很好的結合,將所需的信息以圖形化、界面化的形式更直觀的展示出來,提示交織干擾的方位、記錄交織干擾數據、標記欺騙攻擊假目標、顯示目標飛行器狀態和航跡、展示多類型地圖和輔助圖層、提供坐標系以及歷史回放功能,幫助用戶更好的判斷目標信息的準確性和分析當前空域態勢。本文將介紹抗干擾ADS-B 系統的特點和GMap.NET 的使用方法,將GMap.NET 應用在抗干擾ADS-B 中。
1 抗干擾ADS-B系統
與傳統ADS-B 系統類似,抗干擾ADS-B 的系統,由ADS-B 天線、ADS-B 接收機與ADS-B 數據處理工作站共三大部分組成,最后到客戶端進行信息顯示,如圖1 所示。
圖1
1.1 交織干擾[5]
由于ADS-B 與空管的A、C、S 模式應答信號都是工作在1 090 MHz 的頻段,調制方式同樣都是ASK,所以在相同空間中會受到多徑效應的影響,可能會與其他同頻信號發生疊加碰撞,這樣就形成了交織干擾。而且由于在繁忙空域,隨著飛行器的增加,空管A、C、S模式應答信號與ADS-B 信號的發生碰撞的概率也就增加了[6-9]。由于ADS-B 的解碼是基于信號的幅度來提取數據,當干擾信號與目標信號的幅度相差小于3 db 時,解碼算法會導致解碼失敗或錯誤的情況,因此,通過引入陣列天線,將空域分波束覆蓋,以減少信號交織的概率,當某個方位出現飽和干擾攻擊時,僅僅影響該方位的空域信號接收能力,而其余方位的信號仍能正常接收工作,并將干擾數據信息傳輸至客戶端。
1.2 欺騙攻擊[10]
利用ADS-B 干擾源產生符合協議規定格式的ADS-B 的報文,這樣會產生一個虛假的目標信號,如圖2 所示。此時地面站接收到虛假信息后,是可以正確解析出目標的信息,這樣會導致用戶不能正確地分析和把控當前環境下的真實空域態勢,更嚴重的會導致用戶對當前空域的飛行器進行錯誤的指揮和發出錯誤的指令,擾亂正常的飛行秩序。因此地面站通過測量ADS-B 信號的發射源位置,與報告位置進行對比,來鑒別目標是否為欺騙攻擊。
2 GMap.NET介紹
GMap.NET[11] 包含3 個程序集[12]:
2.1 GMap.NET.Core
主要負責地圖顯示、操作、緩存等功能。主要包含地圖控制模塊的命名空間GMap.NET,該空間下的對象主要負責對地圖的控制操作,如放大縮小、模式選擇、地圖大小、坐標控制等;地圖顯示模塊的命名空間GMap.NET.MapProviders,該空間下的對象負責對瓦片圖下載和顯示,本文對該空間下的基類進行了修改和增加,所以支持很多國產公司地圖瓦片服務,如高德、天地圖、百度等;地圖緩存模塊的命名空間GMap.NET.CacheProviders,該空間下的對象主要負責控制SQLite將瓦片圖進行緩存操作,用于離線時的地圖顯示工作,還可以用戶自定義區域下載對應的地圖瓦片;地圖投影的命名空間GMap.NET.Projections,該空間下的對象負責對地圖進行投影顯示,包含有墨卡托投影、簡易圓柱投影等常用投影方式。
2.2 GMap.NET.WindowsForms
主要是針對.NET框架下的WindowsForm 開發使用,包含標記對象GMapMarker,如果想自定義用戶需要的標記或圖標時,需要繼承該類,重寫OnRender 方法,使用Graphis 對象畫出需要的圖形作為標記和圖標;路徑對象GMapRoute,該對象可以使用線段等形式描述移動目標行徑過程;多邊形對象GMapPolygon,該對象可以展示一些封閉多邊形;圖層對象GMapOverlay,圖層對象是區別于最底層的MapProviders,在地圖顯示之上,可以放置標記對象、路徑、多邊形對象等,一般會以不同的業務添加多個相對應的圖層,用于放置不同的對象,便于管理。
2.3 GMap.NET.WindowsPresentationl
與WindowsForms 功能類似,提供了的是供WPF版本開發所需要的功能,由于WindowsForm 版本對于第三方插件支持良好,所以本文選擇使用WindowsForm開發。
繪制1 張信息完整的地圖[13], 如圖3 所示, 需要包括1 個最底層的地圖顯示控件顯示瓦片圖,由MapProviders 請求網絡或讀取緩存提供,有著拖動、縮放、坐標顯示等功能;在瓦片圖之上可以根據需求加入1 個或多個圖層(GMapOverlays);在圖層之上,可以添加標記(GMapMarker) 用于顯示一些圖標、圖形,也可以在圖層上添加路徑(GMapRoute),用于顯示和測量標記移動的過程,還可以添加多邊形(GMapPolygon),用于顯示某一個范圍和多邊形展示。
圖3
3 抗干擾ADS-B系統在GMap.NET中的使用
3.1 抗干擾ADS-B數據的基礎構建
抗干擾ADS-B 的數據需要在GMap.NET 上的構建基礎圖標和基礎功能[14-15],來反映ADS-B 的信息,如圖4 所示。
圖4
3.1 地圖瓦片
繼承MapProvider 類,添加新的瓦片數據網絡接口,本文添加了很多國內公司提供的瓦片數據,如高德、天地圖等,以顯示衛星圖和地形圖,根據不同的應用場景去選擇地圖顯示樣式,使得用戶可以在不同情況下把控當前空域態勢。
3.1.2 方位羅盤
繼承GMapMarker類,重寫類中的OnRender方法,以目前ADS-B天線位置為坐標原點,使用Graphics 對象繪制方位羅盤,以方便觀察目標位置。
3.1.3 目標飛行器
與方位羅盤類似,繪制成飛機器圖標,需要在客戶端中增加1 個后臺線程,用以解析從ADS-B系統接收到的CAT-021[16] 報文,實時更新渲染目標飛機的位置信息。飛行器圖標帶有方向性和顯示信息提示條,用于顯示飛行器的位置、速度、方向,并且還會在信息條中顯示測量方位信息。
3.1.4 干擾扇形
從抗干擾ADS-B 系統接收到的測量方位信息,以扇形的方式告知用戶在某個方位出現了大量的干擾信號。
圖5
3.2 主要業務功能
抗干擾ADS-B 系統應用在GMap.NET 上,客戶端會實時接收ADS-B 系統發送過來的信息,展示飛行器的飛行狀態,對交織干擾發生的方位發生的方位進行收集并做處理,并且會自動分析飛行器的測量方位用以判斷是否為欺騙攻擊;提供航跡展示、歷史回放、圖層展示等功能,輔助用戶定位飛行器位置,如圖5 所示。向的干擾時,方位羅盤上會以干擾扇形的形式提醒用戶在這個方位上的數據可能會出現準確性問題,并且將所有干擾方位數據以折線圖的方式,實時展示一定周期時間內的數據。
除了干擾方位數據之外,欺騙攻擊形成的虛假目標也會干擾用戶對當前目標的判斷,所以在接收報文中還加入了該目標的測量方位角信息,對目標信息解析時,會將ADS-B 報文的位置信息和信源測量的方位進行對比,位置信息和測量的方位角度之差大于閾值后,就會判定該目標是假目標,圖標會顯示為紅色提醒用戶。
3.2.2 目標和干擾日志保存
客戶端在后臺開啟線程,以記錄過往目標的信號接收時間、編號、速度、高度、測量方位的角度等等;將干擾數據大于閾值的方位,記錄發生的方位位置、時間以及干擾數量。
3.2.3 歷史回放
對于保存下來的目標航跡日志進行讀取和回放,展示歷史目標飛行器的位置和狀態。
3.2.4 展示圖層功能
通過讀取和解析ShapeFile[17] 和GeoJson[18] 文件,使用GMapRoute 對象在需要的圖層(GMapOverlays) 中繪制相應的矢量數據[19],加入地圖邊界、鐵路、飛機航線、河流、公路等,供用戶在特定的場景中使用。
3.2.5 相關配置項
連接設置,供接收ADS-B 系統解析出的CAT-021報文;方位羅盤設置,提供各精度和大小的羅盤,調整羅盤中心位置;目標的顯示延遲設置,防止目標因無法正常接收到信息時長時間不更新位置的情況;天線角度設置,實際中的天線會因為各種情況調整位置,軟件也提供配置項進行調整。
4 結束語
GMap.NET 是一款功能強大且技術成熟的開源地圖控件。本文側重分析和講解了抗干擾ADS-B 系統在GMap.NET 中的應用,為ADS-B 的抗干擾技術提供了圖形化和可視化的客戶端解決方案,支持目標航跡顯示、目標狀態顯示、干擾狀態顯示、假目標識別、干擾數據實時顯示、歷史數據回放、展示圖層等功能,輔助用戶做出正確的空域態勢分析和航管指令。該軟件已成功在抗干擾ADS-B 系統和傳統ADS-B 系統中使用,具有較為廣泛應用領域和使用前景。
參考文獻:
[1] 李武旭,李君惠,李宏.采用陣列信號技術的ADS-B系統抗干擾研究[J].艦船電子工程,2022,42(8):74-80.
[2] 范志國.無人機智能化保障體系建設研究討論會文選編[C].北京:金盾出版社,2018:101-106.
[3] 張西山,連光耀,李會杰,等.智能化無人保障裝備發展及應用[J].國防科技,2020,41(2):10-14.
[4] 雷軍環,鄧文達,劉霞.數據結構:C#語言版[M].北京:清華大學出版社,2009.
[5] 王文益,劉慎悅,盧丹,等. 基于穩健協方差矩陣的ADS-B壓制式干擾抑制方法[P].天津市:CN109557561A,2019,4,2.
[6] 楊成,林琳.ADS-B數據鏈應用風險與對策研究[J].現代電子技術,2014,37(21):98-101.
[7] MARK A. R, MARK C. Can software defined radio be used to compromise ADS-B aircraft transponder signals[J]. Journal of Transportation Security, 2018,11(1-2):41-52.
[8] 趙立鵬,姚國國,禹永植,等.基于MUSIC的分布式極化敏感立體陣列 DOA 估計[J].航天電子對抗, 2020,36(6):11-17.
[9] MARTIN S, VINCENT L, IVAN M. On the security of the automatic dependent surveillance-broadcast protocol [J]. IEEE Communications Surveys and Tutorials,2015,17(2):1066-1087.
[10] 楊成,林琳.ADS-B數據鏈應用風險與對策研究[J].現代電子技術,2014,37(21):98-101.
[11] 劉艷.基于GMAP.NET飛行在線地圖系統的設計與實現[J].科技創新導報,2013(14):222-224.
[12] 李嘉,趙恒.GMap.NET控件在飛行規劃軟件開發中的應用[C].2020(第九屆)民用飛機航電國際論壇文集,2020:223-237.
[13] 張佩,田澤,趙彬,等. 基于GMap.NET的無人機航跡規劃方法與應用[C].第十八屆中國航空測控技術年會論文集,2021:289-292.
[14] 梁志強.基于C#+GMap.NET實現營造林圖斑坐標獲取方法的研究[J].防護林科技,2018(5):67-71.
[15] 王富海,李偉峰.基于Gmap.NET的水下聲源爆炸標記與記錄系統設計與實現[J].軟件工程,2017,20(6):17-20.
[16] 劉云豐,廖盈庭,劉書博.基于Python的Asterix Cat 021數據格式解析分析與實現[J].科技與創新,2019(14):46-47.
[17] 余揚文,黃曉艷,李麗.數據監理機制在北京市土地調查項目中的應用[J].測繪技術裝備,2007(2):19-22.
[18] 王青松,王守營,王光輝.GeoJSON存儲OpenLayers要素圓的實用方法[J].中外企業家,2019(36):198-199.
[19] 鄧鍇. 基于GIS平臺二維地圖重建技術研究與開發[D].北京:北京工業大學,2018.
(本文來源于《電子產品世界》雜志2023年4月期)
評論