【转】rinex



     RINEX(Receiver INdependent
Exchange)格式是与接收机无关的数据交换格式,该格式采用文本文件存储数据,数据记录格式与接收机的制造厂商和具体型号无关。RINEX格式由瑞士伯尔尼大学天文学院(Astronomical
Institute, University of Berne)的Werner
Gurtner于1989年提出。当时提出该数据格式的目的是为了能够综合处理在EUREF89(欧洲一项大规模的GPS联测项目)中所采集的GPS数据。该项目采用了来自4个不同厂商共60多台GPS接收机。

   
现在,RINEX格式已经成为了GPS测量应用等的标准数据格式,几乎所有测量型GPS接收机厂商都提供将其格式文件转换为RINEX格式文件的工具,而
且几乎所有的数据分析处理软件都能够直接读取RINEX格式的数据。这意味着在实际观测作业中可以采用不同厂商、不同型号的接收机进行混合编队,而数据处
理则可采用某一特定软件进行。

Rinex格式文件包括6种文件类型:

观测数据文件:GPS观测值

    导航电文文件:GPS卫星导航电文

    气象数据文件:在测站处所测定的气象数据

    GLONASS导航电文文件:GLONASS卫星导航电文

   
GEO导航电文文件:增强系统中搭载有类GPS信号发生器的地球同步卫星(GEO)的导航电文

    卫星和接收机钟文件:包含卫星和接收机时钟信息

其中用的最多的是O文件、N文件和M文件,观测值文件的文件头存放有文件的创建日期、单位名、测站名、天线信息、测站近似坐标、观测值数量及类型、观测历元间隔等信息。导航电文的文件头存放有文件创建日期、单位名及其他一些相关信息,
另外, 还有可能会包含电离层模型的参数以及说明GPS时与UTC
间关系的参数和跳秒等。气象数据文件的文件头则存放有文件创建日期、观测值类型、传感器信息和气象传感器的近似位置及其他一些相关信息。

RINEX 格式文件的记录数据紧跟在文件头的后面, 随文件类型的不同,
所存放数据的内容和具体格式也不相同。在观测值文件中存放的是观测过程中每一观测历元所观测到的卫星及载波相位、伪距和多普勒等类型的观测值数据等,
所包含的实际观测值类型与接收机所记录的类型及格式转换时的参数设置有关。在导航电文文件中存放的是所观测卫星的钟差改正模型参数及卫星轨道数据等。由于广播星历每2h
更新一次, 因此,
在导航电文文件中可能会出现某颗卫星具有多个不同参考时刻钟差模型改正参数和轨道数据的情况。在气象数据文件中存放的是观测过程中每隔一段时间在测站天线附近所测定的干温、相对湿度和气压等数据。

Rinex格式文件命名规则:8+3...

文件结构——组织形式:

1、按节、记录(行)、字段和列  
           
           
           
           
      2、所有文件均分为两节:文件头和数据记录
           
           
           
          3、每个记录占一行,不超过80列宽
           
           
           
           
     
4、文件头中每个记录的第61-80列为标签,说明记录内容

观测值文件结构:

观测文件详细说明:

第一部分为头文件,以右侧的文件头标签进行说明:

RINEX VERSION / TYPE:RINEX
VERSION表示Rinex版本号,如2.10,后面的字符“O”表示文件类型是观测值,TYPE表示观测值数据类型,空格或G表示观测的是GPS数据,R为GLONASS,S为地球同步卫星类GPS信号发生器有效载荷, T为NNSS子午卫星, M为混合系统。

PGM / RUN BY /
DATE:创建本数据文件所采用程序的名称;创建本数据文件单位的名称;创建本数据文件的日期。

COMMENT:注释行。

MARKER NAME:点名。

MARKER NUMBER:点号。

OBSERVER / AGENCY
:观测员姓名/ 观测单位名称。

REC # / TYPE / VERS:接收机序列号、类型和版本。

ANT # / TYPE:天线编号和类型。

APPROX
POSITION XYZ:测站近似坐标(WGS84)。

ANTENNA: DELTA
H/E/N:天线偏心。即天线高(高于标志的天线下表面高度)和天线中心相对于标志在东向和北向上的偏心。

WAVELENGTH FACT
L1/2:缺省的L1和L2载波的波长因子(1表示为全波,2表示为半波(载波为平方法测定),0(位于L2
的位置上)表示所用接收机为单频仪器);0或空格。说明:在缺省情况下, 需要有该波长因子记录,
而且此记录必须位于所有与特定卫星有关的记录之前。

WAVELENGTH
FACT L1/2:L1和L2
载波的波长因子(1表示模糊度为完整周数,2表示模糊度为半周数(载波为平方法测定),0(L2中)表示所用接收机为单频仪器);说明:可分别说明各颗卫星的L1和L2载波观测值的波长因子。如果某颗卫星的L1和或L2波长因子与上面的缺省值不同,
则可以通过该记录来加以说明, 本记录是可选的。如果需要, 可以有多个本记录。
 
  # / TYPES OF
OBSERV:在本数据文件中所存储不同观测值类型的数量和观测值类型列表,如果超过9种观测值类型, 则使用续行。

说明:

L1,L2:L1和L2上的相位观测值

C1:采用L1上C/A 码所测定的伪距;

P1,P2:采用L1 、L2 上的P 码所测定的伪距;

D1,D2:L1 和L2 上的多普勒频率;

T1,T2:子午卫星的150(T1)和400
MHz(T2) 信号上的多普勒积分;

S1,S2:接收机所给出的L1、L2相位观测值的原始信号强度或SNR值。

观测值的单位: 载波相位为周,伪距为m,多普勒为Hz,子午卫星为周,SNR等则与接收机有关。

INTERVAL:观测值的历元间隔,即采样率,单位:秒

TIME
OF FIRST OBS:数据文件中第一个观测记录的时刻(4数字年,月,日,时,分,
秒); 时间系统:
GPS 表示为GPS时,GLO表示为UTC。说明:在GPS/GLONASS
混合文件中必须具有本时间系统字段, 对于纯GPS 文件缺省为GPS, 对于纯GLONASS 文件缺省为GLO。

TIME
OF LAST OBS:数据文件中最后一个观测记录的时刻(4数字年,月,日,小时,分,秒);时间系统:
与TIME OF FIRST OBS 记录相同。

RCV
CLOCK OFFS APPL: 历元时标、码伪距和载波相位是否使用实时确定出的接收机钟偏差进行了改正:
1=是,0=否; 缺省值: 0=否。说明:如果在“历元/卫星”记录中给出了接收机的时钟偏差,则需要具有该记录。

LEAP
SECONDS:自1980 年1月6日以来的跳秒数, 在GPS/GLONASS混合文件中通常需要列出此记录。

#
OF SATELLITES:在文件中存储有观测值的卫星数量。

PRN
/ # OF OBS:在“# / TYPES OF OBSERV”记录中所指出的每一观测值类型所涉及PRN( 卫星号) 及其观测值的数量,如果观测值类型超过了9
个, 则使用续行。说明:对于出现在数据文件中的每一颗卫星, 均有一项记录。

观测文件数据记录格式:

在RINEX 格式GPS 观测值文件的数据记录节中,
为按历元依次存放的观测数据或在观测过程中所发生事件的信息。每个历元的数据包含两部分:
第一部分为“历元/卫星或事件标志”, 用于存放该观测历元时刻的时标和在该历元所观测到卫星的数量及其列表或表明事件性质的标志,
这一部分通常为该历元数据的第一行;第二部分为“观测值”,用于存放在该历元所采集到的所有观测值, 这一部分紧接在“历元/卫星或事件标志”之后,
所占行数与在该历元中所观测卫星的数量有关。

在观测值文件中, 所记录载波相位数据的单位为周, 伪距数据的单位为m。观测值所对应的时标(即观测时刻) 是依据接收机钟的读数所生成的,
而不是标准的GPS 时, 因而在该时标中含有接收机的钟差。

历元/卫星或事件标志:

    ——观测历元时刻:年(2位数字)、月、日、时、分秒;

——历元标志:0表示正常,1表示在前一历元与当前历元之间发生了电源故障,
大于1为事件标志;2表示天线开始移动;3表示新设站(动态数据结束)(后面至少需要跟上MARKER NAME 记录);4表示后面紧跟着的是类似于文件头的信息,
用于说明观测过程中所发生的一些特殊情况;5表示外部事件(历元时刻与观测值时标属于相同的时间框架),如果历元标记为6,
则表示后面为描述所探测出并已被修复周跳的记录(格式与OBSERVATIONS 记录相同,不过,用周跳替代了观测值,
LLI和信号强度为空格或0)。此项为可选项。

——当前历元所观测到的卫星数,被用来说明紧跟在后面的记录数,
即后面共有几行用于事件的描述;

——当前历元所观测到卫星的PRN 列表;

——接收机时钟的偏差(单位为s,为可选项)

观测值:

——观测值;

——LLI(Loss of Indicator/失锁标识符),LLI 的范围为0 ~7。0 或空格表示正常或未知; bit 0 置1
表示在前一历元与当前历元之间发生了失锁, 可能有周跳; bit 1 置1 表示该卫星的波长因子与前面WAVELENGTH FACT L1 /2
记录中的定义相反, 仅对当前历元有效;bit 2 置1 表示为反欺骗(AS)下的观测值( 可能会受到噪声增加的影响)。其中, bit 0 和bit
1仅用于相位。

——信号强度,在RINEX格式中, 用1~9 表示信号强度: 1表示可能的最小信号强度, 5表示良好S/N 比的阈值, 9表示可能的最大信号强度,
0或空表示未知或未给出。

导航电文文件结构:                              
导航电文头文件说明如下:

RINEX VERSION / TYPE:Rinex版本号和观测值类型;

PGM / RUN BY / DATE:创建本数据文件所采用程序的名称,创建本数据文件单位的名称,
创建本数据文件的日期。

COMMENT:注释行。

ION ALPHA:历书中的电离层参数A0~A3;

ION BETA:历书中的电离层参数B0~B3;

DELTA-UTC: A0,A1,T,W:用于算UTC时间的历书参数。

A0, A1: 多项式系数;

T: UTC 数据的参考时刻

                        
 W: UTC 参考周数,为连续计数,不是1024的余数

LEAP SECONDS:由于跳秒而造成的时间差

导航电文数据记录格式说明:

RINEX格式GPS导航电文文件数据记录节中的内容为按卫星和参考时刻存放的各颗卫星的时钟和轨道数据。每颗卫星一个参考时刻的数据占8 行,
第1行为卫星的PRN号和该卫星时钟的参考时刻及其改正模型参数, 第2~8行为该卫星的广播轨道数据。由于导航电文通常每2h就更新一次,
因此,某些卫星可能会有多个不同参考时刻的数据。

PRN 号/ 历元/ 卫星钟:

- 卫星的PRN 号

        -
历元: OC( 卫星钟的参考时刻)

       
  年( 2 个数字, 如果需要可补0)

       
  月, 日, 时, 分, 秒

        - 卫星钟的偏差(
s)
      
 - 卫星钟的漂移( s / s)

        -
卫星钟的漂移速度( s / s2 )

广播轨道—1:

广播轨道—2:

广播轨道—3:


   广播轨道—4:
        

   广播轨道—5:


   广播轨道—6:

- 卫星精度(m)

        -
卫星健康状态(第1子帧第3字第17~22 位)

        -
TGD (sec)

        -
IODC 钟的数据龄期
   广播轨道—7:

- 电文发送时刻(单位为GPS周的秒, 通过交接字(HOW)中的Z 计数得出)

        -
拟合区间(h) , 如未知则为零

        -
备用

        -
备用

气象数据文件

文件头格式

   # / TYPE OF
OBSERV:
       -
在本数据文件中所存储的不同观测值类型的数量

       - 观测值类型列表

          
PR: 气压(mbar)

          
TD: 干温(℃)

          
HR: 相对湿度(%)

          
ZW: 天顶湿延迟(mm) (对于WVR 数据)

          
ZD: 天顶延迟的干分量( mm)

          
ZT: 总天顶延迟(mm)

说明:本记录中观测值类型在列表中的排列顺序与后面数据记录节中相应观测值的排列顺序一致;如果所存储观测值的类型超过9 个, 则可续行

SENSOR MOD/TYPE /ACC: 气象传感器说明

      - 型号( 厂商)

      - 类型

      - 精度( 与观测值的单位相同)

      - 观测值类型

      本记录将按上面“ # / TYPE OF
OBSERV”记录中所列出的每一观测值类型进行重复

SENSOR
POS XYZ/H:气象传感器在ITRF 或WGS-84 下的近似坐标

      - 地心坐标X, Y, Z

      - 椭球高H

      - 观测值类型

      说明:如果传感器的位置未知, 则将X、Y、Z
设为零; 气压计需要使用该记录, 建议其他传感器也使用该记录。

数据记录格式:

    历元/气象数据:

-
历元时刻( 为GPS 时, 不是地方时)

        年(
2 位数字, 如果需要前面补0)

        月,
日, 时, 分, 秒
    -
与文件头中给出观测值类型时排列顺序一致的气象数据当气象数据的类型超过8 种时, 使用续行。

【转】rinex,布布扣,bubuko.com

时间: 2024-10-22 23:37:34

【转】rinex的相关文章

Dat2Rin.exe + runpkr00.exe 将*.T0* 数据转换成Rinex文件

1. 问题 对于天宝的原始观测数据,常用的是使用ConvertToRinex.exe,但是ConvertToRinex是基于诸如TGO/TBC之类的数据处理软件的,也就是说要运行ConvertToRinex.exe的前提是安装了TGO/TBC才能使用.而且ConvertToRinex.exe都是需要手动来选择文件进行转换,当有大量的数据需要转换时就是个比较浪费人力的事情. 2. 解决办法 Dat2Rin.exe, runpkr00.exe是天宝公司开发的针对旗下接收机的原始观测数据进行转换的软件

【转】IGS相关

目 前,全球260多个lGS跟踪站中,我国占20多个,分布在武汉.拉萨.乌鲁木齐.昆明.上海等地,全球IGS网的GPS数据,由单台接收机交换 (RINEX)格式生成的日观测和导航数据文件组成,其存储方式为ASCII码文本格式,内容包括观测值.导航星历信息.气象数据等.这些数据经UNIX 压缩后传送到相应的数据中心.观测值文件包括从O0:O0:O0至23:59:59 GPS时段内所观测的数据.采样率都采用标准的30s. RINEX格式命名规则为:ssssdddf.yyt. 其中:SSSS表示测站名

【转】国际GNSS服务组织IGS

国际GNSS服务组织The International GNSS Service,简称IGS,前身为国际GPS服务组织.IGS提供的高质量数据和产品被用于地球科学研究等多个领域. IGS组织由卫星跟踪站.数据中心.分析处理中心等组成,它能够在网上几乎实时地提供高精度的GPS数据和其它数据产品,以满足广泛的科学研究及工程领域的需要. IGS收集.归档.分配足够精度的GPS观测数据以满足一系列的试验及应用需要.IGS利用这些数据形成一些列的数据产品,这些数据产品可以通过因特网获得.值得一提的是,IG

Unix/Linux环境C编程入门教程(30) 字符串操作那些事儿

函数介绍 rindex(查找字符串中最后一个出现的指定字符) 相关函数 index,memchr,strchr,strrchr 表头文件 #include<string.h> 定义函数 char * rindex( const char *s,int c); 函数说明 rindex()用来找出参数s字符串中最后一个出现的参数c地址,然后将该字符出现的地址返回.字符串结束字符(NULL)也视为字符串一部分. 返回值 如果找到指定的字符则返回该字符所在的地址,否则返回0. 范例 #include

时间转换与星期推算(Matlab版)

1 概述 最近在学习GPS解算算法时需要在GPS时(GPS周和周内秒)和公历日期之间进行转换,于是就整理了一些时间转换的小程序. 本文介绍了GPS时.公历.儒略日(JD).简化儒略日(MJD)之间的转换函数. gps2cal 将GPS周和周内秒转换到公历时间 gps2cal1 由公历日期和GPS周内秒计算公历时间 cal2gps 将公历GPS时间转换到GPS周和周内秒 mjd2cal 将简化儒略日转换到公历时间 cal2mjd 将公历时间转换到简化儒略日 jd2cal 从儒略日计算公历时间 ca

内存及字符串操作篇strlen strchar strcmp strcoll strcpy strdup strstr strtok strspn strrchr bcmp bcopy bzero index memccpy memset

bcmp(比较内存内容) 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp 表头文件 #include<string.h> 定义函数 int bcmp ( const void *s1,const void * s2,int n); 函数说明 bcmp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0. 返回值 若参数s1 和s2 所指的内存内容都完全相同则返回0 值,否则返回非零值. 附加说明 建议使用memc

Bernese安装及使用

一.安装: 伯尔尼软件的安装很简单,但是在64位下,可能perl解释器安装不成功,我找了一个,并且可用,下载地址: 链接:http://pan.baidu.com/s/1hr8fgEC 密码:fj8b 二.使用: 1.首先要创建自己的工程,Campaign>>Edit list of campaigns,然后点击+,输入工程名,这里我输入wh,然后点击下面的save,如图: 2 新建项目以后,就要选择这个项目了,Campaign>>Select active campaign,在弹

【Linux C中文函数手册】之 内存和字符串函数

内存和字符串函数 1) bcmp 比较内存内容 相关函数 bcmp,strcasecmp,strcmp,strcoll,strncmp,strncasecmp表头文件 #include<string.h>定义函数 int bcmp ( const void *s1,const void * s2,int n);函数说明 bcmp()用来比较s1和s2所指的内存区间前n个字节,若参数n为0,则返回0.返回值 若参数s1 和s2 所指的内存内容都完全相同则返回0 值,否则返回非零值.附加说明 建议

Bernese单点定位数据准备及处理

原创作者 blog :http://yifeiyao.blog.163.com/blog/static/2058932752012669731170/1.准备所需用的数据文件,如下: 原始观测.O文件,from ftp://cddis.gsfc.nasa.gov/pub/gps/data/daily/wwww精密星历文件,下载后为.SP3格式,更改格式为IGSwwwwd.PRE fromftp://igscb.jpl.nasa.gov/igscb/product/wwww地球自转参数信息文件,下