基于GMap.NET的抗干扰ADS-B系统应用
编者按:由于广播式自动相关监视(Automatic Dependent Surveillance-Broadcast, ADS-B)自身缺陷,会面临交织干扰和欺骗攻击的威胁,造成用户无法正确判断目标信息和错误分析当前空域态势。基于阵列信号处理的空域解交织技术,以及测向和坐标对比技术,保证了ADS-B系统在交织干扰和欺骗攻击的情况下地正常工作。
摘 要:由于广播式自动相关监视(Automatic Dependent Surveillance-Broadcast, ADS-B)自身缺陷,会面临交织干扰和欺骗攻击的威胁,造成用户无法正确判断目标信息和错误分析当前空域态势。基于阵列信号处理的空域解交织技术,以及测向和坐标对比技术,保证了ADS-B系统在交织干扰和欺骗攻击的情况下地正常工作。GMap.NET作为一款开源开发地图控件,与抗干扰ADS-B系统相结合,实时收集交织干扰统计数据和展示方位信息,标记欺骗攻击目标,并且提供多类型地图展示、航迹显示、历史回放、图层展示等功能,展示更直观的空域飞行态势和干扰态势,辅助管制指挥员做出快速准确的判断和指令。
关键词:ADS-B,GMap.NET,抗干扰
广播式自动相关监视(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.
(本文来源于威廉希尔 官网app 杂志2023年4月期)
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码