2.1.1 GPS
GPS是NAVSTAR/GPS(Navigation Satellite Timing and Ranging/Global Position System)的简称。该系统是美国国防部于1973年12月批准陆、海、空三军联合研制的一种新的军用卫星导航系统,属于美国第二代卫星导航系统,是继阿波罗登月计划、航天飞机后的美国第三大航天工程。GPS主要由空间卫星星座(见图2-2)、地面监控站及用户设备三部分构成,能够利用三种导航信息(L1、L2、L3)在陆、海、空三个领域进行实时、全球性与全天候的定位和导航。目前,GPS是当今世界上应用最广泛的全球精密导航、指挥和调度系统[2]。
1. GPS坐标系
GPS星座属于Walker星座,GPS空间卫星星座由21颗工作卫星和3颗在轨备用卫星组成。卫星分布于6个地心轨道平面内,6个卫星运行轨道按60°间隔沿着赤道分隔,轨道倾角为55°,轨道半径约为20200km。其轨道分布特性决定了,在地球上及近地空间上的任何观测地点都能接收4颗以上卫星信号,实现全球、全天候连续导航定位。此外,GPS卫星轨道周期为11h58min[4]。
GPS的空间坐标系统使用美国国防部的世界大地坐标系1984(World Geodetic System 1984,WGS84)。这是一个协议地球参考坐标系,坐标定义遵循“IERS Conventions(2010)”[5],具体定义如下:坐标原点位于地球质心,Z轴方向为BIH 1984.0定义的协议地球极方向,X轴指向BIH 1984.0定义的零度子午面与协议地球极赤道的交点,Y轴为依据右手法则根据X轴和Z轴确定。WGS84椭球坐标系基本常数见表2-1。
图2-2 GPS示意图[3]
表2-1 WGS84椭球坐标系基本常数[5]
同时,它还具有GPS时间(GPS Time, GPST)系统。GPST系统是基于美国海军观测实验室(US Naval Observatory, USNO)维持的原子时的时间系统,其起算时间与UTC的1980年1月6日0时0分0秒一致。而UTC是以原子秒为单位,在时刻上与平太阳时之差小于0.9s的时间系统(原子秒的定义为,铯133原子基态的两个超精细能级之间的跳跃所对应辐射的9192631770个周期的持续时间)。
GPST与UTC的关系为,GPST=UTC+n。其中,n为跳秒数,由国际地球自转服务组织提供。
GPS的空间配置以及其信号传播不受天气影响的特点,使得其具有全天候、全球性、连续实时定位的特点。目前采用的P码和C/A码实时定位、测速与授时的精度见表2-2。
表2-2 GPS实时定位、测速与授时精度
2. GPS组成
GPS由三部分组成——空间部分(GPS卫星星座)、地面监控部分(地面站)和用户部分(接收机),如图2-3所示。
图2-3 GPS的三大组成部分[6]
(1)空间卫星星座
GPS的空间星座,由等间隔分布在6个轨道平面上的24颗卫星组成(其中3颗为备用卫星)。要想定位系统能正常发挥功能,就必须保证在地球各处能同时观测到高度角15°以上的卫星至少4颗。所以,这样就要求其分布在6个倾角为55°的轨道平面上,每个轨道面上有4颗卫星,各个轨道平面之间相距60°,即轨道的赤经、升交点各相差60°。这样空间星座部分就能够保证在全天任何时刻在全球任何地方都可以接收到4~11颗GPS卫星。
高精度的铯原子钟是卫星的核心组成部分,它的稳定度为10-13,并且抗辐射性能很强,可为GPS定位提供高精度的时间基准;GPS卫星的主体部分采用柱状的铝蜂巢结构,星体两侧装有太阳帆板,以保证卫星正常工作用电;在星体底部装有成形波束螺旋天线阵,发出扩频信号,将L波段基频10.23MHz分别作154次和120次倍频后变成1575.42MHz和1227.60MHz。
GPS卫星的主要作用体现在以下三个方面[4]:
1)用19cm与24cm波长的L波段中的两个无线载波向空间发送持续不断的定位号。每个载波用伪随机噪声(Pseudo Random Noise, PRN)码和导航信息测距信号D(t)进行双相调制,通过导航电文可了解该卫星当前工作情况和位置信息。
2)当卫星飞过注入站的上空时,能接收到地面注入站使用S波段(10cm波长)发送至卫星的导航电文和其他相关信息,通过GPS信号电路适时地发送给广大GPS用户。
3)空间卫星接收地面主控站发送到卫星的调度命令后,适时地更正运行偏差或用备用时钟等。
(2)地面监控系统
地面监控站的主要功能是监测GPS信号,各个监测站对飞越其上空的所有GPS卫星进行伪距等项测量,并将其测量值发向主控站。它由1个主控站、4个注入站和6个监测站组成,如图2-4所示。
1)主控站。位于美国科罗拉多州,主要作用是收集数据,准确计算卫星的轨道数和时钟偏差,计算并编制卫星星历,定期向卫星注入星历。当一颗GPS卫星离分配给它的轨道位置太远时,主控站能够对它进行轨道改正,同时还能进行卫星调配,起用备用卫星代替工作失效的卫星。
图2-4 GPS地面站分布
2)注入站。4个注入站分别设在美国佛罗里达州卡纳维拉尔角、印度洋迪戈加西亚岛、太平洋西部夸贾林环礁和大西洋阿森松岛。注入站的主要任务是把主控站发来的导航电文、钟差信息、卫星星历和其他控制指令注入相应的卫星存储器中,以提高卫星的广播信号的精度。
3)监测站。除了同样分别位于主控站以及4个注入站相应地区的5个监测站以外,还有个监测站位于夏威夷。监测站的主要任务是在主控站的直接控制下,自动对卫星进行跟踪测量,并将自动采集的时间标准、气象数据和伪距观测量等进行相应的处理,再存储和传送到主控站。
(3)GPS接收机
GPS接收机的任务是,捕获到按照一定卫星高度截止角所选择的待测卫星的信号,并跟踪这些卫星的运行,对所接收到的GPS信号进行放大、变换和处理,以便能够测量出GPS信号从接收机天线到卫星的传播时间,解析出GPS卫星所发送的导航电文,并实时地计算出测站的时间、三维速度和三维位置。GPS接收机的基本结构如图2-5所示。
3. GPS定位原理及方程
GPS定位基本原理:以高速运动的卫星瞬间位置作为已知的起算数据,卫星不间断地发送自身的星历参数和时间信息,用户接收到这些信息后,采用空间距离后方交会的方法,计算出接收机的三维位置、三维方向以及运动速度和时间信息。
对于需定位的每一点来说,均包含4个未知数:该点三维地心坐标和卫星接收机的时钟差。故GSP定位至少需要4颗卫星的观测来进行计算,如图2-6所示,可得到
式中,(x,y,z)为待测点坐标;c为GPS信号的传播速度(即光速);d1~d4为卫星1~4到定位点的距离,其值可通过信号从卫星到达定位点的时间乘以电波速度得到,即d1=ct0i,i=1,2,3,4;(xi,yj,zk)为每个卫星的星历参数,即卫星的轨道坐标(i=1,2,3,4;j=1,2,3,4;k=1,2,3,4);t01~t04为各个卫星的时钟差;t为接收机的时钟差。
图2-5 GPS接收机的基本结构
图2-6 4颗卫星观测
解此方程即可得到需定位的点坐标。实际上,星历参数(xi,yj,zk)和时间信息t的确定是一个非常复杂的过程,其误差直接影响GPS定位系统的精度。
4. GPS通信接口协议
美国国家海事电子协会(National Marine Electronics Association, NMEA)的NMEA-0183是航海、海运方面关于数字信号传递的一种协议标准。此标准定义了电子信号所需要的传输协议、传输数据时间。一般有以下几种数据帧:时间输出、位置信息、GPS相对误差和卫星活动、当前GPS卫星状态、最简特性、相对正北方向的地面速度信息、带有罗兰(Long Range Navigation, LORAN)系统ID的地理信息、带有LORAN ID的轨道和速度信息、状态信息和三维定位信息[7]。
GPS通信协议采用NMEA-0183协议,要求串行通信参数为,波特为4800baud、数据位为8bit、停止位为1bit、无奇偶校验位。GPS接收机只要处于工作状态,就会源源不断地把接收到的GPS导航定位信息通过串口传送到计算机中。接收的信息在没有经过分类之前是无法加以利用的,因此需通过程序将各个字段的信息从缓存字节流中提取出来,转化成有实际意义、可供高层决策使用的定位信息数据。它与其他通信协议类似,对GPS进行信息提取,必须首先明确帧结构,然后完成对定位信息的提取。
GPS模块发送到计算机的数据主要由帧头、帧尾和帧内数据组成。根据数据帧信息的不同,帧头也不同,主要有$GPGGA(输出GPS的定位信息)、$GPGSA(输出卫星DOP值信息)、$GPGSV(输出可见的卫星信息)、$GPVTG(输出地面速度信息)、$GPRMC(输出GPS推荐的最短数据信息)、$GPGLL(输出大地坐标信息)、$GPZDA(输出和UTC时间信息)、$GPGST(输出定位标准差信息)以及$GPALM(输出卫星星历信息)等。这些帧头标识了后续帧内数据的组成结构,各帧均以回车符和换行符作为帧尾标识一帧的结束。
虽然接收机也在源源不断地向主机发送各种数据帧,但在处理时,一般先通过对帧头的判断,然后对数据帧进行数据提取处理。由于帧内各数据段由逗号分隔,因此在处理缓存数据时,一般是通过搜寻ASCII码“$”来判断是否是帧头。在对帧头的类别进行识别后,再通过对所经历逗号个数的计数来判断当前在处理的是哪一种导航定位参数,并作出相应的处理,将所需信息提取到内存,包括时间、时期以及经纬度等信息。下面分别介绍各类数据[7]。
(1)GPRMC语句(Recommended Minimum Specific GPS/TRANSIT Data-RMC,推荐定位信息,1次/秒)
对于一般的GPS动态定位应用,GPRMC语句完全满足要求。该语句包括经纬度、速度、时间和磁偏角等字段,这些数据为导航定位应用提供了充分的信息。GPRMC语句各字段详细信息如下。
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>
字段 $GPRMC语句意义——取值范围
<1>UTC时间:hhmmss.ss——000000.00~235959.99
<2>状态:有效性——A表示有效;V表示无效
<3>纬度格式:ddmm.mmmm——0000.0000~8959.9999
<4>南北半球——N表示北纬;S表示南纬
<5>经度格式:dddmm.mmmm——00000.0000~17959.9999
<6>东西半球——E表示东经;W表示西经
<7>地面速度——000.00~999.999
<8>速度方向——000.00~359.99
<9>日期格式:月日年——010100~123199
<10>磁偏角:单位为度(°)——000.0~180.0
<11>磁偏角方向——E表示东;W表示西
<12>模式指示及校验和——A=自主定位;D=差分;E=估算;N=数据无效
(2)GPGGA语句(Global Positioning System Fix Data-GGA, GPS定位信息,1次/秒)
GPS定位主要数据,该语句中包括经纬度、质量系数、HDOP、高程、基准站号等字段。GPGGA语句各字段详细信息如下。
$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>
字段 $GPGGA语句意义——取值范围
<1>UTC时间:hhmmss.ss——000000.00~235959.99
<2>纬度格式:ddmm.mmmm——0000.0000~8959.9999
<3>南北半球——N表示北纬;S表示南纬
<4>经度格式:dddmm.mmmm——00000.0000~17959.9999
<5>东西半球——E表示东经;W表示西经
<6>质量系数——0=未定位;1=GPS单点定位固定解;2=差分定位;3=PPS解;4=RTK固定解;5=RTK浮点解;6=估计值;7=手工输入模式;8=模拟模式
<7>应用解算位置的卫星数——00~12
<8>HDOP,水平面图形强度系数——0.500~99.000;大于6不可用
<9>天线高程(海平面)——-9999.9~9999.9
<10>大地随球面相对海平面的高度
<11>大地水准面起伏——地球椭圆面相对大地水准面的高度
<12>大地水准面起伏:单位为m
<13>差分GPS数据期——差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空);不使用DGPS时为空
<14>基准站号——0000~1023;不使用DGPS时为空
(3)GPGSV语句(GPS Satellites in View-GSV,可见卫星信息,1次/5秒)
GPS可见星的方位角、俯仰角、信噪比等每条语句最多包括4颗卫星信息,每颗卫星的信息有四个数据项,即<4>为卫星号,<5>为仰角,<6>为方位角,<7>为信噪比。GPGSV语句各字段信息如下。
$GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>,<16>,<17>,<18>,<19>
字段 $GPGSV语句意义——取值范围
<1>总的GSV语句电文数——0~12
<2>当前GSV语句号
<3>可视卫星总数——0~32
<4>卫星号——1~32
<5>仰角——00~90
<6>方位角——000~359
<7>信噪比——00~99dB;无表示未收到信号
<8>卫星号——1~32
<9>仰角——00~90
<10>方位角——000~359
<11>信噪比——00~99dB;无表示未收到信号
<12>卫星号——1~32
<13>仰角——00~90
<14>方位角——000~359
<15>信噪比——00~99dB;无表示未收到信号
<16>卫星号——1~32
<17>仰角——00~90
<18>000~359
<19>校验和,格式:*校验和
(4)GPVTG语句(Track Made Good AND Ground Speed-VTG,地面速度信息)
$GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh
字段 $GPVTG语句意义——取值范围
<1>以真北为参考基准的地面航向——000.000~359.999
<2>以磁北为参考基准的地面航向——000.000~359.999
<3>地面速率——000.000~999.999节
<4>地面速率——000.0~1851.8km/h
<5>模式指示——A=自主定位;D=差分;E=估算;N=数据无效(仅NMEA 0183 3.0版本输出)
hh——校验位
5. GPS定位误差分析
GPS利用地面接收设备接收到的卫星信息来确定用户位置(即三维坐标信息),而GPS卫星内部、卫星信号传播以及接收机都会有误差产生。为了获取接收机的准确定位,必须排除有害误差的干扰。下面介绍接收机定位过程中遇到的各类误差[8]。
(1)卫星时钟误差
尽管卫星时钟已经很精确,但随着时间推移,仍然会偏离GPS时间。监测站将观测到的卫星时钟数据传送到地面监测部分,并计算卫星时钟的修正参数,然后传给卫星。卫星将含有修正参数的电文发送出来,使得接收机能够在伪距测量中对卫星钟差进行修正。
(2)接收机时钟偏差
接收机采用低成本的时钟设备,精度低于卫星时钟,且存在固有偏差。相同情况下,该时钟偏差可能影响所有的观测量。因此,建立的4个有效伪距量测方程,能够将该偏差和接收机的坐标位置一起估算出来。
(3)相对论效应误差
同一情况下,运动时钟相对于静止时钟有着一定的时钟频率之差。当GPS卫星高速运动时,根据爱因斯坦相对论,相对于地面静止时钟,卫星时钟的频率发生频率偏移,因此会产生误差。
(4)电离层延迟误差
电离层内含有电离气体,位于离地面60~1000km的空间。卫星发射的无线电波,必须穿过电离层才能被接收机接收到。由于太阳的活动,电离层的电离程度不一致,从而影响电离层的折射率,进而改变GPS信号在电离层中的传播时间,电离层延迟误差因此出现。同时,低轨道卫星的信号穿过电离层的倾斜路径比高轨道大,因此卫星运行高度也会产生这一误差。
(5)对流层延迟误差
对流层的大气成分主要是干燥气体(氮氧混合气体)和水蒸气。相对电离层来说,对流层表现为电中性,其折射率与GPS频率无关。但由于折射现象的存在,会导致信号传输速度相对真空有所降低。同时,由于卫星仰角的不同,测距观测量也会产生2.5~25m的对流层测距误差。
(6)多路径误差
测量时,GPS信号通过多种不同的路径到达接收机前段。这些路径不仅包括信号本身,还包括接收天线周围反射回来的信号。非直接到达的信号存在延时,并且信噪比很低。由于接收天线被反射信号干扰,导致多径问题改变了原始信号,从而使测量距离产生10m左右的偏差。利用改善接收机电路设计等方式能够降低多路径误差。
(7)卫星轨道误差
卫星轨道误差,是由于卫星的实际位置与接收机利用卫星星历计算的卫星空间位置不一致而产生的误差。地面监控部分利用前一时刻卫星空间位置与地球引力公式对卫星轨道进行预测,并将预测结果上传至卫星,利用卫星星历播发给用户使用。而卫星星历采用曲线拟合的方式对卫星轨道进行预测,此方法相对卫星实际运行轨道会产生随时间变化的残余误差。一般情况下,卫星轨道的误差为2~5m。
(8)接收机噪声
接收机噪声是GPS接收机本身固有的测量误差。很多因素都能导致其出现,如天线的设计电路、高频信号的干扰以及信号的量化与采样等。接收机噪声会导致GPS信号发射时间的不准确性。