本帖最后由 淡蓝色天空 于 2018-2-12 19:17 编辑
为帮助更多喜欢深度探究模拟飞行的飞友,同时配合奔跑的小狗的全国机场文件,帮助大家添加或删除导航数据,现把自身关于XPlane导航系统的一些文件进行了翻译和解析,鉴于本人也是刚开始接触飞行,有不对的地方欢迎大家探讨。 鉴于本人的非专业技术水平,这里不讨论使用ARINC424程序进行的修改,只讨论XPNAV1100格式的导航数据。(虽然使用的编码格式一样,但没有设备………………)
下面开始正文: XPlane中存放导航文件的地点共有三个: 基础默认导航数据:x-plane/Resources/default data/,(这是安装时就有的,我们不用管) 用户定义导航数据:X-Plane/Custom Data/,(这里存放的是我们自行更新的导航文件,Navigraph的导航数据包以及我们自定义的导航文件) 默认机场导航数据:X-Plane/Custom Scenery/Global Airports/Earth nav data/ (XP默认机场的ILS导航数据)
其中共包含6种文件: 航点文件:earth_fix.dat 航线文件:earth_awy.dat 导航设备文件:earth_nav.dat 进离场及近进航线文件:CIFP/机场代码.dat 航点文件:user_fix.dat 导航设备文件:user_nav.dat
文件的读取顺序: 首先读取 X-Plane/Resources/default data/ 中的导航文件 而后读取 X-Plane/Custom Data/ 中的earth_fix.dat、earth_awy.dat、earth_nav.dat、CIFP/机场代码.dat四类文件 接着读取 X-Plane/Custom Scenery/Global Airports/Earth nav data/ 中的earth_nav.dat文件 最后读取 X-Plane/Custom Data/ 中的user_fix.dat、user_nav.dat文件
根据上面表述,我们要自行定义机场文件,主要改的是user_fix.dat、user_nav.dat两个文件 其他文件即使改动,只要一更新游戏或者更新导航数据就完蛋………… (PS:机场离场程序和近进程序的文件应该也可以自行添加,航点文件就是配合它使用的)
有鉴于航线文件earth_awy.dat不能自行定义(可以在该文件内添加,但更新就没……),所以user_fix.dat文件添加的意义不大,今天我们先讨论user_nav.dat这个文件,待我研究明白进离场程序的编写再发帖。
根据XP NAV1100 Spec文件的规范,XPlane中共包含13类导航设施,每一个导航设施共有11组数据来进行定义,每个数据之间使用空格进行区分 例如: 2 32.728918 108.821900 0 290 50 0.000 UF ENRT ZL ANKANG NDB 3 25.644349 100.324739 7214 11260 130 -1.100 DAL ENRT ZP DALI VOR/DME 12 25.644349 100.324739 7214 11260 130 0.000 DAL ENRT ZP DALI VOR/DME 4 31.180776 121.333396 10 11090 18 176.000 IHQ ZSSS ZS 18R ILS-cat-I
下面我们根据每一组数据来进行逐一分析 第一组数据是导航设备类型,数据可以定义为: 2 NDB包括定位器外标记导航组件(LOM),仅方向数据,与13配合进行测距 3 VOR包括VORs, VOR-DMEs, TACANs和VORTACs,仅方向数据,与12配合进行测距 4 ILS的航道定位器 5 仅有航向的定位器组件包含LDAs和SDFs 6 ILS的下滑道指示器,频率显示的是配对频率,而不是DME通道。 7 ILS的外指标点(OM),包含属于LOMs的指示器 8 ILS的中置指标点 (MM) 9 ILS的内置指标点(IM) 12 DME,包括ILS、VORTAC或VOR-DME的DME组件,仅距离 13 DME,独立的DME或NDB-DME的一个DME组件,仅距离 14 FPAP SBAS或GBAS航线的最终进近对齐点 15 GLS 一个GBAS的下滑道地面站 16 LTP/FTP 一个SBAS/GBAS着陆点
第二、三组数据是助航设备坐标,采用百分制的经纬度数据,小数点后最多可以保留8位。
第四组数据是助航设备海平面高度,数值取英尺整数,一般为发射器高度,高度对导航无影响的可以写数字0 。
第五组数据是助航设备的发射频率,数据均为整数,如发射频率有小数,就乘以100变为整数(如航台频率118.50khz ,则写成11850即可)。
第六组数据是助航设备发射距离,数据取海里整数,可以自由填写,一般根据助航设备所需导航的距离填写。 1、根据我的测试大于50海里属于远距离导航,小于50海里大于25海里属于中距离导航,小于25海里属于近距离导航,该数据必须要和earth_nav.dat中已有的数据属于同一种距离,否则会同时出现两个助航设备。 2、FPAP、GLS、LTP三种助航设备该组数据由于本人能力有限,暂不清楚作用。 3、OM、MM、IM助航设备没有发射距离,故写为数字0 。
第七组数据是助航设备发射角度, 1、NDB、DME无角度限制的写0.000 。 2、VOR助航设备写所在地的磁偏角,西偏为负数、东偏为正数。 3、ILS航向台的方向是降落所使用的方向。 4、下滑台是两组数据进行整合,前3位为下滑道角度,3度写为300,后面方向与ILS相同 5、OM、MM、IM助航设备为跑道方向。
第八组数据是助航设备标识符,一般是三位
第九组数据是助航设备所属地区代码,属于机场助航设备的写机场ICAO代码,在航线上的写ENRT。
第十组数据是助航设备所属情报区代码,根据ICAO代码表填写,一般和该地区机场前2位相同。
第十一组数据是助航设备名称,自行编辑,以自己明白为主
第十二组数据是助航设备类型名称,根据编写的助航设备类型填写。
以上就是nav文件的一些粗浅分析,另外文件起始和结束使用固定格式 I 1100 Version - data cycle 1602, build 20160204, metadata NavXP1100. Copyright © 2016, Robin
99 第一行为I 代表文件开始 第二行为版本格式,现在使用的是1100版本格式 最后文件使用99作为结束。 中间添加助航设备,每一行为一个设备。
最后,附上一个我自己编写的nav文件,主要结合12年国内航图对所有航线上的导航设备进行了补充和根据Google地球数据重新确定位置,并对奔跑的小狗发布的黑河、长白山、阿尔山三个机场的导航数据进行了添加和定位,供大家研究
|