基于GPSTk的区域电离层TEC地图重构
2016-01-20王志钢
王志钢,欧 明
(中国电波传播研究所,山东 青岛 266107)
基于GPSTk的区域电离层TEC地图重构
王志钢,欧明
(中国电波传播研究所,山东 青岛 266107)
摘要:电离层是影响卫星导航系统传输时延的重要因素之一,电离层总电子含量(TEC)地图重构是消除电离层传输时延的重要手段。GPSTk作为GPS数据处理的重要软件之一,可以满足区域电离层TEC地图的重构要求。本文针对GPSTk的特点,深入研究了GPSTk的电离层TEC计算原理、数据处理流程及具体的软件操作方法,该研究对基于GPS数据的电离层数据处理软件的研制具有一定的参考意义。
关键词:电离层;总电子含量;GPSTk
doi:10.13442/j.gnss.1008-9268.2015.02.014
中图分类号:P228.4
文献标志码:: A
文章编号:: 1008-9268(2015)02-0062-05
收稿日期:2015-02-11
作者简介
Abstract:Ionospheric delay is one of the most important resources in satellite navigation systems, and TEC map reconstruction is the major way to eliminate the delay effect of the satellite navigation systems. As an important tool for GPS data processing, GPSTk software can be used to fulfill the requirement of the TEC map reconstruction. Based on the analysis of the characteristic of GPSTk, the principle of the TEC calculation, the flowchart of the data processing and the operational approach of the GPSTk were demonstrated in this paper, which will be helpful in the development of the GPS-based software for ionospheric data processing.
0引言
电离层延迟是卫星导航系统重要的误差源之一,严重影响着用户的定位精度。对于卫星导航系统来说,因电离层折射引起电磁波传播路径的距离差,沿天顶方向最大可达50 m,而沿水平方向最大可达150 m[1]。通常可采用双频或多频组合方式有效地消除这种影响。但对于单频用户来说,由于传输时延与电离层电子总含量(TEC)密切相关,需要利用电离层TEC分布信息尽可能地消除电离层带来的影响。构建电离层TEC地图,一方面可以为单频用户提供电离层延迟修正,另一方面可以研究电离层不同时空尺度的分布与变化特征[2]。目前对电离层TEC地图已有大量的研究工作。在国际全球卫星系统服务中心(IGS)主持下,美国的喷气动力实验室(JPL)、瑞士欧洲定轨中心(CODE)、加拿大自然资源部(NRCAN)、德国欧洲空间局(ESA),以及西班牙卡塔鲁尼亚理工大学(UPC)等[3]机构,利用IGS全球观测站的观测数据,利用不同算法,建立了电离层TEC现报系统,监测全球电离层TEC变化.
GPSTk是由位于德克萨斯大学奥斯汀分校应用研究实验室(ARL)在GPS 处理软件的基础上开发的一个开源软件项目,其主要目标是为GPS研究、分析和发展提供非常好的GPS“类”套件[4]。
GPSTk库通过使用ANSI标准的C++编程语言尽可能地实现平台独立性。同时,面向对象编程的原则贯穿了整个GPSTk代码库的设计,用来确保代码的模块化,可扩展性和可维护性。GPSTk 套件包括核心库、辅助库以及一系列应用程序。GPSTk库为解决与GPS相关的问题提供了一系列的功能,其中主要包括:RINEX工具箱(Utilities),能够对GPS观测数据格式RINEX进行检查和操作、RINEX绘图、周跳修正、数据残差分析、时间转换,Octave捆绑、电离层建模等应用[5]。
基于GPSTk库的特点,本文主要研究了基于GPSTk的区域电离层TEC的重构方法,并给出了基于GPSTk库的电离层TEC的估算过程和重构结果。
1电离层TEC计算原理
电离层TEC的计算主要基于电离层薄层模型,即认为电离层主要集中在某个固定高度上(一般取350 km或400 km)。对于GPS双频测量:
(1)
联系人: 王志钢E-mail: 304554011@qq.com
P4=P2-P1.
(2)
将式(1)代入式(2),为此有:
P4=ζ4I+c(ΔbS-ΔbR),
(3)
(4)
电离层TEC可以通过垂直TEC乘于转换因子得到,具体表示为
(5)
式中: TECv表示垂直TEC; Re表示地球半径; ele表示卫星与接收机之间的仰角,Hion表示电离层等效高度,一般取350km.GPSTk利用二维泰勒级数展开式表示区域垂直TEC的随纬度和经度空间变化[6],表示为
TECv(φ,λ)= A0+A1φ+A2λ+B0φ2+
B1φλ+B2λ2+C0φ3+C1φ2λ+
C2φλ2+C3λ3,
(6)
式中: (φ,λ)为电离层穿刺点在太阳-地磁坐标参考框架下的纬度和经度; A,B,C为泰勒级数展开式待估的参数。将式(4)、(5)、(6)代入式(3)有:
c(ΔbS-ΔbR).
(7)
利用多次GPS测量,式(7)可以表示为矩阵方程的形式,利用最小二乘法可求解得到未知系数Ai,Bi,Cj(i=0,1,2;j=0,…,3)和卫星及接收机差分码误差ΔbS,ΔbR,将Ai;Bi;Cj代入式(6)即可重构区域电离层TEC变化。
2电离层TEC地图处理流程
为实现区域电离层TEC的重构,GPSTk的处理流程如下:1) 首先需要对原始观测文件进行预处理,GPSTk库提供有ResCor工具包,可预先对双频GPS观测文件进行处理,得到电离层倾斜TEC(未消除硬件延迟),穿刺点经纬度,卫星仰角方位角等信息,预处理结果将保存于扩展RINEX文件中;2) 利用GPSTk库提供的差分码偏差DCB估算工具包IonoBias,利用泰勒级数法和最小二乘法估算GPS卫星和接收的硬件延迟DCB;3) 利用GPSTk库提供的TECMaps工具包,读取前两步操作处理后的数据,重构产生电离层TEC地图文件。具体处理流程如下图所示。
图1 GPSTk电离层TEC地图处理流程
3Windows平台下GPSTk的操作方法
3.1 目录创建
安装成功GPSTk后,打开GPSTk源代码目录,手动新建三个文件夹,分别命名为alldata、processed、out.
3.2 GPS观测文件下载
GPSTk主要处理标准格式的GPS观测文件,批量数据下载主要代码在getigs文件中。Windows环境下需要的支持软件包括wget.exe、mv.exe、gzip.exe、ls.exe、xargs.exe(gnuwin32工具包包含以上可执行程序,gnu是Linux/UNIX环境下的命令行,gnuwin32为移植到Windows平台下的工具包)、crx2rnx(RINEX格式转换程序,主要将*.d文件转换为*.o文件,可从网站免费下载)。
打开getigs文件,将里面不适合Windows平台下的命令删除,如带#的注解等,将文件重新命名为getigs.bat(Windows下的批处理文件),在确保电脑与外界互联的情况下,将自动下载数据。可将对文件下载地址进行更改,以下载自己想要的数据文件。数据下载完成后,将自动保存在alldata目录下,并自动将文件解压缩和数据格式转换,最终产生*.o文件。
3.3 数据预处理
所有数据下载完成以后,即可执行数据预处理的工作,数据预处理主要命令包含在gopre文件中,主要调用preprocess.pl程序进行处理,运行本步骤需要安装perl环境,可在网站下载perl Windows安装环境ActivePerl,安装完后,将gopre命令行中的#注释命令去除,保存为gopre.bat运行,程序将自动处理alldata文件下的*.o文件,中间处理结果将保存到processed文件夹中,每个*.o文件处理后产生两个文件,后缀分别为.**o.sum和*o.RC.
本操作需要对preprocess.pl进行修改,将原文件中的对应位置改为如下:
if ($^O eq "MSWin32") {
$slash="\";
# GPSTK prgms found here
$prgmdir="C:\gpstk\bin";
}
其中的C:gpstkin为GPSTk软件的安装目录,实际操作时应以实际的安装目录为准。
3.4 差分码偏差DCB估计
差分码偏差DCB估计的处理命令保存在gobias,执行该文件需要ls.exe命令支持,命令通过调用GPSTk中的IonoBias工具进行卫星和接收机DCB估计。IonoBias工具需要读取bias.inp配置文件,该配置文件包括了读取列表文件list.files的内容,而list.files主要保存*.o文件是否处理后的信息,若是成功处理后,则将状态信息输出到list.files文件中。gobias命令运行后,输出状态为bias.log文件,文件输出结果为satbias.txt文件。
要想处理不同区域的电离层TEC数据,bias.inp文件中需要调整导航文件名称,区域经纬度范围等配置内容。具体为:nav导航文件名称;MinLatitude 最小纬度;MaxLatitude最大纬度;-MinLongitude最小经度;MaxLongitude最大经度.
以上属性更改完成后,将gobias文件中的注释去除,保存为*.bat文件并双击运行即可。
3.5 电离层TEC重构
为得到电离层Map作图信息,主要运行gomaps命令实现。gomaps需要调用GPSTk软件中的TECMap工具。具体操作方法:将文件中的″/home/btolman/gpstk/dev/apps/ionosphere/″删除,只剩下TECMaps-fmaps.inp即可,保存为gomaps.bat文件,双击运行即可。TECMap命令主要调用maps.inp配置文件中的内容。
要想处理得到不同位置的电离层TEC数据,Maps.inp文件中需要调整的地方包括:
调整基本配置参数:nav:导航文件名称;RxLLH:对应的参考站纬度、经度、高度坐标.
调整相应的纬度点个数,纬度起始点坐标,每个点纬度间隔等。其中:NumLat:纬度点个数;BeginLat:起始纬度;DeltaLat:纬度间隔;调 整相应的经度点个数,经度起始点坐标,每个点经度间隔等:NumLon:经度点个数;BeginLon:起始经度;DeltaLon:经度间隔;
gomaps命令运行完后,out文件目录下将产生电离层Map数据文件。
3.6 电离层TEC作图
该步骤主要实现电离层TEC地图的显示和保存,GPSTk提供了相应的代码实现这一功能,但需要GNUplot的支持。本步骤主要利用see文件中的命令进行作图,see文件原始代码为
#!/bin/bash
perl plotall.pl out/$1 $2 $3 $4
这是Linux平台下的命令,无法在Windows平台下运行,需要修改为如下形式:
perl plotall.pl out/igs 1 2879 1
其中,out/为TEC输出数据保存的文件目录;igs为所有文件的共同名称;1代表起始时间点,具体对应为igs.0001,2879为结束时间,具体对应为igs.2879;最后一位为时间间隔,具体命名表示为将igs.0001按照最后四位加1的数据进行操作直到igs.2879文件为止。为实现绘制图片的输出,需要将plotall.pl文件进行更新:
将原文件中的no改为yes,如下:
my $pngout='yes'; # set to something other than yes for no.png output
同时将以下代码中下划线的部分改为wgnuplot.exe所在的路径即可。
if ($^O eq "MSWin32") {
#open(GP, "C:\bat\gp $base.gp |");
open(GP, " c:\gnuplot\bin\wgnuplot.exe $base.gp |");
}
若不采用GPSTk默认的GNUplot作图,也可采用其它作图软件,如MATLAB、Surfer等也可实现类似的作图效果。
4电离层TEC地图重构结果
利用上述GPSTk操作流程,本文利用2004第313年积日的美国迈阿密的10个GPS观测数据进行了区域电离层TEC地图重构,数据下载地址为ftp://garner.ucsd.edu/pub/rinex,台站位置如图2所示。
基于GPSTk的区域电离层TEC重构结果如图3所示,其中图3(a)表示1900LT的重构结果,图3(b)为2100LT的估算结果,从图3(a)可以看出,在1900LT,电离层TEC表现了电离层TEC随经度变化较为明显,而图3(b)则主要表现出电离层的纬度变化,重构结果呈现出了电离层TEC在夜间复杂的变化特征。
图2 GPS观测站位置分布
图3 区域电离层TEC地图重构结果 (a)Year 2004,DOY:313,1900LT; (b)Year 2004, DOY:313,2100LT
5结束语
GPSTk作为一个优秀的开源软件,可方便地利用其库函数实现GPS观测文件的预处理,包括周跳检测与修复,伪距平滑等,同时利用处理好的数据文件进行电离层DCB估算和电离层TEC地图的重构。本文通过对GPSTk的深入研究,给出了基于GPSTk的电离层TEC地图重构方法,同时利用GPSTk实测数据实现了区域电离层TEC地图的重构。
必须指出的是,由于GPSTk软件的电离层垂直TEC采用非常简单的泰勒级数展开模型,在实际的使用过程中存在一定的模型系统性偏差,因此在未来的开发过程中,可以通过对GPSTk的电离层TEC计算过程进行相应的改进,以获得更高的TEC重构精度,这也是本文下一步的研究方向之一。
参考文献
[1] 刘基余, 李征航, 王跃虎,等. 全球定位系统原理及应用[M]. 北京:测绘出版社,1993.
[2] 周忠谟, 易杰军, 周琪,等. GPS 卫星测量与应用[M].北京:测绘出版社, 2004:61-64.
[3] 翁利斌, 方涵先, 杨升高, 等. 基于IRI背景场的单站电离层TEC地图重构技术[J].空间科学学报,2011,31(4), 453-458.
[4] 刘景瑞,石波,赵倩. 电离层对流层对GPS伪距单点定位精度影响的效果分析[J].城市勘测,2013,2(1),100-103.
[5] 德克萨斯大学奥斯汀分校应用研究实验室. GPSTk开源软件[EB/OL]. (2008-12)[2015-01-05]. http://www.gpstk.org.
[6] TOLMAN B, HARRIS R B, GAUSSIRAN T,etal. The GPS toolkit-open source GPS software[C]// Proceedings of the 17th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS 2004), Long Beach, 24 September,2004:9.
王志钢(1981-),男,工程师,主要从事电波环境监测及其数据处理技术研究。
欧明(1984-),男,硕士,工程师,主要从事电离层探测技术研究。
The Regional Ionospheric TEC Map Reconstruction
Based on GPSTk Software
WANG Zhigang,OU Ming
(ChinaResearchInstituteofRadiowavePropagation,Qingdao266107,China)
Key words: Ionosphere; total electron content; GPSTk