当前位置:文档之家› ADS-B综合课程设计报告

ADS-B综合课程设计报告

沈阳航空航天大学综合课程设计ADS-B报文数据的解析研究班级学号学生姓名指导教师课程设计任务书课程设计的内容及要求:一、设计说明对接收到的ADS-B数据进行解析,就是要对航空报文有较多了解,根据编码协议对报文进行解码,从里面提取出有用信息,能让人直观理解报文信息二、设计要求根据链路协议及编码协议,对报文解析,要实现:1.能够解析出速度,高度,经纬度等重要信息;2.界面尽量友好,误差要小;3.数据能够实时更新三、实验要求用VC++实现编程和解析四、推荐参考资料五、按照要求撰写课程设计报告成绩评定表一、概述空中交通管理的根本目的是使航线上的飞机安全、有效和有计划地在空域中飞行, 管制员需要对管制空域内飞机的飞行动态进行实时监视。

传统的雷达监视手段采用询问/ 应答方式对目标探测。

从长远来看, 雷达系统自身具有很多局限性: 雷达波束的直线传播形成了大量雷达盲区; 无法覆盖海洋和荒漠等地区; 雷达旋转周期限制了数据更新率的提高, 从而限制了监视精度的提高; 无法获得飞机的计划航路、速度等态势数据, 限制了跟踪精度的提高和短期冲突告警STCA ( Short TermConflict Alert ) 的能力。

因此, 需要发展新的监视手段。

广播式自动相关监视ADS- B( Automatic DependentSurveillance- Broadcast ) 即航空器自动广播由机载星基导航和定位系统生成的精确定位信息, 地面设备和其他航空器通过航空数据链接收此信息, 卫星系统、飞机以及地基系统通过高速数据链进行空天地一体化协同监视。

ADS- B 的精度和数据更新率比雷达高, 除位置信息外,ADS- B 还提供其他信息, 包括速度和飞行意向等, 尤其适合于山区、荒漠、边远机场等不宜建设雷达的区域, 也适合于高密度机场的监视, 是未来监视系统的重要组成部分和发展方向。

目前,ICAO(International Civil Aviation Organization,国际民用航空组织)高度重视ADS‐B 的发展与应用,并制订了相关的技术标准和发展规划,并一直在努力倡导在全球统一部署相同标准 ADS‐B 体系,实现全球范围内的飞行监控与数据共享。

我国的民用航空业目前正处于成长期,飞机的数量、飞行的规模和空域的范围都在不断扩大,需要引进并吸收 ADS‐B 技术,以丰富和改进我们自己的空中交通管制系统和体系,并实现与国际最新技术的接轨。

在 ADS ‐B 技术的吸收和应用中,需要不断地研究其基本原理,掌握其技术核心,促进实现国际先进技术与中国本地情况的不断融合。

图1 ADS-B技术在航空中的应用示意图二、ADS-B 系统工作原理ADS-B OUT 系统中,主要的功能由 S 模式应答机实现,在其正常工作期间,周期性的将 DF17 格式的扩展断续振荡信号广播出去,为飞机和地面站提供相关信息包括飞机的经纬度信息、高度信息、航行速度信息等。

在系统正常工作时,应答机接收来自GPS 接收机的导航消息,通过对数据的分析,提取有有用的信息部分组合成为使用于 S模式传输的报文格式,然后以特定的速率通过应答机天线发送出去,当地面站和其他飞机接收到这些信息后,通过对信息的解码、检错、纠错、报文生成过程获取这架飞机的飞行参数,高度速度等有效的信息,这些信息将非常有效的帮助完成空中管理以及飞机间的相关监视过程。

与应答机应答二次雷达的询问一样,DF17 格式的扩展断续振荡信号用一个1090MHz 的载波频率进行调制并以 1Mbps 数据速率广播脉冲位置,扩展断续振荡脉冲的长度为 112 比特。

在接收的数据部分中,以DF17 格式的扩展断续振荡信号为例,共有 5 个主要的飞行任务字段。

其中,第一个字段为DF 位格式字段,长度为 5 比特,主要作用在于识别扩展断续振荡的内容,此字段设置为固定值17(十进制数),本项目工作的研究也主要针对此类信号。

接下来则是 3 比特的应答机能力(CA)字段,该字段描述了飞机的S 模式数据链通信能力,如是否装载了ADS 系统等。

广播地址(AA)字段是消息中最重要的一个字段,该字段唯一的识别了每个飞机独一无二的24 比特的S 模式地址,用来表明飞机的身份。

接下来是机载设备采集整合的信息ME 字段,56 比特的扩展型断续振荡报文是主要的ADS-B 消息,该消息主要包括飞机的参数信息如高度、速度、经度、纬度等信息,它为飞机参数如GPS 位置和速度提供报文有效信息。

最后,24 比特的奇偶性(PI)字段,该字段为前88 位数据信息的CRC 校验余数,用于实现CRC 检错纠错。

三相关技术1.1090 ES数据链1090 ES(Extended Squitter,扩展电文)的命名中包含两层含义。

1090 指的是该数据链的下行传输频带是 1090MHz。

ES 指的是对原有 ADS-B 报文长度的扩展。

原有的报文长度一般为 56-112 比特。

1090 ES 是由 ICAO 推荐的、唯一一个可以在全球范围内使用的数据链技术,得到了美国、欧洲、亚洲等大部分国家的承认和应用。

在第 11 次国际航空会议上,已经将1090 ES 作为 ADS-B 主要数据链技术,并制定了相关的协议和标准。

1090 ES 是一种 S 模式的数据链,支持一对一的询问-应答机制。

S 是Selective 的意思,指的是可以对航空器进行选择通信。

1090 ES 采用 PPM(脉冲位置调制)编码。

2. ADS-B IN 设备报文系统采用的 ADS-B IN 设备,在收到 ADS-B 报文后,对 ADS-B 报文进行了二次封装,增加了报文头,将 ADS-B 报文作为它的载荷。

封装后的报文被 ADS-B IN 设备通过网络转发给其它设备。

除此之外,ADS-B IN 设备还发送一些状报文,描述设备时间和位置等信息。

ADS-B IN 设备可以发出的报文一共有三类:1)Message Report2)Time Report3)Position Report我们用的接收设备是SBS-3接收机,主要分析Message Report,即DF17数据,所以其他两种 Report不多做介绍。

表1 Message report的格式Message Report 的报文长度共28 个字节。

一些关键字段的说明如下:<type>字段,取值范围是0-4,0-3 代表Message Report 或Time Report,两者的区分可以通过<message>字段的内容来辨别。

0-3 的不同之处在于<time>时间标准的不同。

0是本地时间,1 是NOT COUPLED 类型的UTC 时间,2 是COASTING 类型的UTC 时间,3 是COUPLED 类型的UTC 时间。

4 代表Position Report。

<flag>字段是一个按位解析的字段,第0 位指示了接收的天线,其值为0 表示从A天线接收;值为 1 表示从B 天线接收。

第 3 位指示了<amp>字段的单位和范围,其值为0 表示信号强度的单位是ADC 的LSB,范围是0 到255;值为1 表示信号强度的单位是d Bm,范围是-127 到127。

其它位目前都没有使用,缺省设置为0。

<crc>字段的计算采用了常用的CRC-16,其生成多项式是X16+X15+X2+1,对应的二进制位列为 1 1000 0000 00000101,因为其MSB 必然为1,可以省略MSB,简写为1000000000000101。

3. ADS-B 基本报文ADS-B 报文由业务数据和附加数据两部分组成。

ADS-B 基本报文指的是从宏观的角度,将业务数据作为一个整体而不考虑其细节,所展现出来的ADS-B 报文。

ADS-B 基本报文对ADS-B 业务数据进行了封装,作为ADS-B 基本报文的一个独立字段存在。

在ADS-B 的业务数据中,包含了不同类型的业务数据,它们具有不同的结构。

本节将这些不同格式的业务数据称之为ADS-B 业务报文。

ADS-B 报文的长度共112 位,是按位进行格式设计的结构。

下表是1090ES 的报文结构定义,ADS-B 的报文基本结构包含在其中表2 1090ES报文结构四.信息处理ADS-B数据的信息处理包括数据的接收与解析两大部分,其中包括循环冗余校验, LSB 与 MSB,数据的打包与解包,多线程操作,CPR解码算法等技术,由于侧重点不同,这里主要讲一下数据的发送和接收及解析算法。

1.数据的发送和接收ADS-B 报文从发送从网络上接收最初始的数据,到转换成 ME 报文,其过程如下图所示。

图3 收发,解析数据示意图数据的发送和接收遵循TCP通信协议,按照协议编码就行,这里不再赘述。

2.数据的解析数据的解析是重中之重,这是决定你能否得到想要的结果的至关重要的一步,也是本次课设所重点研究的方面。

数据的编码与解析是按照协议进行的,对飞机的身份,编号,高度,速度,经纬度等信息进行编码,其中除了经纬度,其他信息大多按照进制数进行编码,不需要太复杂的算法,因此,这里只讲经纬度的算法解析。

CPR解码分为全球解码和本地解码两种情况。

如果同时接收到奇编码和偶编码两个消息,那么进行全球解码。

如果只接收到一个奇编码或偶编码消息,那么进行本地解码。

不论是全球解码还是本地解码,又分为空中位置和地面位置两类情况全球明确的空中位置和地面位置的解码步骤为:1)计算纬度Zone 的尺寸DlatiDlati = 360°/( 4NL - i)空中位置 i = 0(偶编码)90°/( 4NL - i)地面位置 i = 0(偶编码)2)计算纬度索引jj = floor(( 59 × YZ0 - 60 × YZ1 )/217 + 1/2)当j<0 时, j = 偶纬度Zone 的编号- 60, j = 奇纬度Zone 的编号- 59;当j≥0 时, j= 偶纬度Zone 的编号,j = 奇纬度Zone 的编号。

3)计算偶形式的纬度Rlat0和奇形式的纬度Rlat1Rlati = Dlati × MOD( j,60 - i) + YZi /217若求出的纬度绝对值大于90°,则应减去360°。

因为纬度的取值范围为-90°~+90°。

4)计算纬度数NL( Rlat0)和NL( Rlat1)。

判断NL( Rlat0)是否与NL( Rlat1)相等。

若相等,则计算经度Zone 的尺寸Dloni。

否则,继续等待下一个位置消息。

5)计算经度Zone 的尺寸Dloni。

根据刚接收到的空中位置消息是偶编码( i = 0)还是奇编码( i = 1),按式( 12)计算Dloni = 360°/ni空中位置 i = 0(偶编码)90°/ni地面位置 i = 1(奇编码)式中ni = max[NL( Rlati) - i,1]。

相关主题