ADS-B消息的算法及仿真

本文详细介绍了ADS-B报文的编译码算法,包括经纬度、NUCp信息和高度信息的编码与解码,并提供了MATLAB仿真的实现。通过对CAT021格式报文的处理,生成和解析符合要求的ADS-B报文,为防欺骗技术研究提供基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了进行ADS-B报文防欺骗技术研究,首先需要深入了解报文的编译码方法:译码的实现可以深度挖掘报文中的特征参数,进行防欺骗研究;编码的实现可以为后续仿真实验产生符合要求的报文打下基础。

空中位置消息ME字段的编译算法与仿真

ADS-B报文格式

ADS-B报文格式
各字段含义

bits No. bits 缩写 含义
1-5 5 DF 下行链路格式
5-8 3 CA 应答器能力
9-32 24 ICAO ICAO 飞机地址
33-88 56 ME 消息等
89-112 24 PI 奇偶校验/询问器标识

其中空中位置类 的ME字段中各字段含义

bits 含义 bits 含义
1-5 Type 21 时间指示
6-7 监视状态 22 CPR编码格式
8 是否单天线 23-39 纬度
9-20 高度 40-56 经度

报文生成的算法

对于空中位置信息的ME字段,需要编码的信息主要包括了经纬度信息、位置导航不确定类型(NUCp)信息以及高度信息。

  1. 经纬度信息编码
    其中,对于采用了CPR格式编码的位置信息,具体算法流程如下:
    1)确定纬度Zone 的尺寸 D l a t i Dlat_i Dlati
    D l a t i = 36 0 。 4 N Z − i Dlat_i = \frac{360^。}{4 NZ - i} Dlati=4NZi360
    2)将需要发送的纬度值转换为CPR格式的纬度值 Y Z i YZ_i YZi
    Y Z i = f l o o r [ 2 N b M O D ( l a t , D l a t i ) D l a t i + 1 2 ] YZ_i =floor[2^{Nb}\frac{MOD(lat,Dlat_i)}{Dlat_i} + \frac{1}{2}] YZi=floor[2NbDlatiMOD(lat,Dlati)+21]
    3)使用CPR格式纬度值 Y Z i YZ_i YZi和纬度Zone尺寸 D l a t i Dlat_i Dlati计算得到纬度还原值 R l a t i Rlat_i Rlati
    R l a t i = D l a t i × ( Y Z i 2 N b + f l o o r ( l a t D l a t i ) ) Rlat_i =Dlat_i \times (\frac{YZ_i}{2^{Nb}}+floor(\frac{lat}{Dlat_i})) Rlati=Dlati×(2NbYZi+floor(Dlatilat))
    4)通过纬度还原值 R l a t i Rlat_i
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_74043383

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值