Anubis 配置文件编辑

上一篇文章已经简要介绍过 G-Nut/Anubis 程序的配置和使用方式。但如果仅阅读过前文,你肯定还不能愉快顺畅地使用它。因为该程序的输入参数都集中配置文件中,我们需要根据自己的使用意图来编辑配置文件。

本文介绍 Anubis 程序配置文件的设置方法。该文件使用可扩展标记语言 XML(Extensible Markup Language)编写,因此在阅读本文前,你可能需要首先了解一下 XML 格式。

配置文件结构

前文已经提到过一个默认的 Anubis 程序配置文件的获得方法,这里不在赘述。记住完整的配置文件的内容和格式不仅非常困难,也没有必要。最好的办法是以默认的配置文件作为模板,对其进行必要的修改,产生我们需要的效果。

配置文件中包含一个 config 元素,其中包含各配置项目的设置,下文将逐个介绍。

全局配置项

全局配置项指的是 gen 元素中的项目。其包含的子元素有:

  • beg:开始处理的时刻;
  • end:结束处理的时刻;
  • int:数据的采样间隔;
  • sys:要处理的卫星系统;
  • rec:要处理的站点列表。

一个 gen 元素的示例如下:

1
2
3
4
5
6
7
<gen>
<beg> "2017-04-19 00:00:00" </beg>
<end> "2017-04-19 23:59:59" </end>
<int> 30 </int>
<sys> GPS GAL GLO BDS -QZS -SBS </sys>
<rec> BJFS CHAN DAEJ </rec>
</gen>

在上例中,将要处理的时间间隔设置为 2017 年 4 月 19 日 0 点 0 分 0 秒至 23 点 59 分 59 秒,数据的采样间隔为 30 秒,要处理的观测站的列表为 BJFS、CHAN 和 DAEJ;并指定了要处理的和不要处理的卫星系统,不处理的卫星系统前添加“-”号作为标记。

质量检查配置项

质量检查配置项指的是 qc 元素中的属性,其属性有:

  • sec_sum:总结报告信息的详细度;
  • sec_hdr:观测信息检查报告的详细度;
  • sec_obs:观测量统计报告的详细度;
  • sec_est:定位解算(SPP)报告的详细度;
  • sec_gap:观测值跳变报告的详细度;
  • sec_bnd:观测频段统计报告的详细度;
  • sec_pre:周跳和失锁等预处理报告的详细度;
  • sec_ele:卫星方位角和高度角报告的详细度;
  • sec_mpx:多路径效应影响报告的详细度;
  • sec_snr:信噪比统计报告的详细度;
  • int_stp:预处理时的数据取样间隔;
  • int_gap:探测观测跳变时的阈值;
  • int_pcs:探测观测缺失时的阈值;
  • col_sat:与卫星相关的报告的列数;
  • mpx_nep:探测多路径系统误差时使用的历元数;
  • mpx_lim:探测多路径误差时使用的阈值;
  • ele_cut:设置的截至高度角;
  • pos_kin:接收机是否为运动状态。

在以上的属性中,以“sec”作为前缀的项,其取值范围为 0 到 9。以“int”作为前缀的项,以秒作为单位,截至高度角以度作为单位。而 pos_kin 的取值范围只有 true 或 false。

一个 qc 元素的示例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<qc
sec_sum="1"
sec_hdr="1"
sec_obs="1"
sec_est="1"
sec_gap="1"
sec_bnd="1"
sec_pre="1"
sec_ele="1"
sec_mpx="1"
int_stp="900"
int_gap="600"
int_pcs="1800"
col_sat="35"
mpx_nep="15"
mpx_lim="5"
ele_cut="10"
pos_kin="false"
/>

输入数据配置项

输入数据配置项指的是 input 元素中的项目,其中的元素有:

  • rinexo:输入的 RINEX 观测数据文件,多个文件使用空白分隔;
  • rinexn:输入的 RINEX 广播星历文件,多个文件使用空白分隔;
  • sp3:输入的精密星历文件,多个文件使用空白分隔。

一个示例的 input 元素如下:

1
2
3
4
5
6
7
8
9
<inputs>
<rinexo>
rinex/bjfs1090.17o
rinex/chan1090.17o
rinex/daej1090.17o
</rinexo>
<rinexn> brdc/brdm1090.17p </rinexn>
<sp3> igs/gbm19453.sp3 </sp3>
</inputs>

在该元素中,指定了输入的观测文件为 rinex/ 文件夹内的 bjfs1090.17o,chan1090.17o 和 daej1090.17o;输入的广播星历文件为 brdc/ 文件夹内的 brdm1090.17p;输入的精密星历文件为 igs/ 文件夹内的 gbm19453.sp3。

输出数据配置项

输出数据配置项指的是 output 元素中的项目,其中的元素有:

  • xtr:文本格式的处理报告文件,较繁复;
  • xml:XML 格式的处理报告文件,较简洁;
  • log:处理日志文件,文本格式。

一个 output 元素的示例如下:

1
2
3
4
<outputs append="0" verb="0" >
<xtr> $(rec)2017109.xtr </xtr>
<xml> $(rec)2017109.xml </xml>
</outputs>

Anubis 将为每个输入的观测数据输出一个报告文件。示例在配置报告文件的输出路径时,使用了 $(rec) 这个变量,它代表输入的观测数据的测站名。

卫星系统配置项

卫星系统配置项可以对每个卫星系统做单独的设置,通常用于过滤卫星、频段和观测类型等。其中的卫星系统名采用上文提到的 3 个字符的简写方式。每个卫星系统可设置如下参数:

  • sat:要处理的卫星编号(默认为所有卫星);
  • type:要处理的观测类型(默认为所有类型);
  • band:要处理的频段(默认为所有频段);
  • attr:要处理的观测值属性(默认为所有属性)。

其中的 attr 项目针对 RINEX 3 标准。在 RINEX 3 中,观测类型由以前的 2 个字符改为 3 个字符。新增的第 3 个字符表示观测值属性,该属性与产生观测值的接收机通道有关。

一个对 GLONASS 系统的示例配置如下:

1
2
3
4
5
6
<glo>
<sat> R01 R02 R04 </sat>
<type> C L D S P </type>
<band> 1 2 3 </band>
<attr> A B C D I L M N P Q S W X Y Z</attr>
</glo>

配置文件示例

最终形成的文件如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE config>

<config>
<gen>
<beg> "2017-04-19 00:00:00" </beg>
<end> "2017-04-19 23:59:59" </end>
<sys> GPS GAL GLO BDS QZS SBS </sys>
<rec> BJFS CHAN DAEJ </rec>
<int> 30 </int>
</gen>
<qc
sec_sum="1"
sec_hdr="1"
sec_obs="1"
sec_est="1"
sec_gap="1"
sec_bnd="1"
sec_pre="1"
sec_ele="1"
sec_mpx="1"
int_stp="900"
int_gap="600"
int_pcs="1800"
col_sat="35"
mpx_nep="15"
mpx_lim="5"
ele_cut="10"
pos_kin="false"
/>
<inputs>
<rinexo>
rinex/bjfs1090.17o
rinex/chan1090.17o
rinex/daej1090.17o
</rinexo>
<rinexn> rinex/brdm1090.17p </rinexn>
<sp3> rinex/gbm19453.sp3 </sp3>
</inputs>
<outputs append="0" verb="0" >
<xtr> $(rec)2017109.xtr </xtr>
<xml> $(rec)2017109.xml </xml>
</outputs>
<glo>
<sat> R01 R02 R04 </sat>
<type> C L D S P </type>
<band> 1 2 3 </band>
<attr> A B C D I L M N P Q S W X Y Z</attr>
</glo>
</config>