测绘地信:大地坐标系WGS84、BDCS与CGCS2000解惑(干货)
文章发布于:2019-10-08 作者:admin 浏览次数:次
【摘要】本文比较了CGCS2000坐标系与WGS84坐标系的定义和实现差别,指出了定位方式和平差中的约束条件是判断点位坐标所属坐标系的主要因素,总结了CGCS2000与WGS84框架下的点位坐标差异主要来自:历元(框架)不同、精度不同、实现不同,并给出了坐标转换的具体指标要求。本文还针对WGS84坐标系的几个较普遍的误解做了辨析,主要包括:(1)CGCS2000与WGS84框架下的点位坐标并不是只差几厘米;(2)GPS接收机测量的一般不是WGS84坐标;(3)“技术规范”中对WGS84坐标转换的要求过低。(4)CORS网的一些常见问题。同时对BDCS与CGCS2000和WGS84的关系也做了比较。
1 引言
由于历史原因,业内普遍对WGS84坐标系存在一定程度的误解,诸多文献对WGS84坐标系的解释也比较含糊,给测绘、导航、遥感、地信等工作带来一定困扰。本文重点对CGCS2000坐标系与WGS84坐标系和BDCS坐标系的关系和转换问题进行了较详细的总结、归纳和辨析,并给出了若干建议,希望能够起到抛砖引玉的作用。
2 CGCS2000与WGS84的定义
2.1 坐标系
CGCS2000与WGS84关于坐标系原点、尺度、定向及定向演变的定义都是相同的[1]。
1)CGCS2000:国家坐标系
CGCS2000坐标是2000.0历元的瞬时坐标,用于各种生产活动,强调统一性、规范性、自洽性、稳定性。
2)WGS84:卫星导航坐标系
WGS84坐标是观测历元的动态坐标,用于导航,强调实时性、动态性。
两者用途不同,特点不同,但都统一于ITRS坐标系,都对准ITRF框架。可通过历元归算、框架转换互相转换。
2.2 参考椭球
参心地固坐标系是通过参考椭球的定向、定位,先将椭球固定在地球上,然后将空间直角坐标系安放在椭球上。CGCS2000与WGS84坐标系都属于地心地固坐标系。地心地固坐标系直接将空间直角坐标系固定在地球上。坐标系的定义和参考框架的实现都与椭球无关。由于经纬度坐标使用起来更方便,因此引入一个椭球,安放在空间直角坐标系上。
1)WGS84椭球与CGCS2000椭球都来自1980大地测量参考系统GRS80椭球,也都做了微小的改进[2];
2)两个椭球仅扁率有微小差异,引起同一点的坐标差异小于0.105mm [3]。
因此,在各类软件中如果没有CGCS2000坐标系选项,完全可用WGS84坐标系代替CGCS2000坐标系。在软件中选择一个坐标系,本质上就是选择了该坐标系对应的椭球的参数。
3 CGCS2000与WGS84的实现
(1)CGCS2000的实现[4]
CGCS2000通过2000国家GPS大地控制网2500个框架点实现,对准ITRF97框架。
(2)WGS84的实现[5]
WGS84坐标系由26个全球分布的监测站坐标来实现。不同版本的WGS84对应相应的ITRF版本和参考历元。
(3)框架比较
1)CGCS2000实现精度为3cm[6];
2)WGS84(1762)与ITRF符合优于1cm。
通过以上比较,一般的结论是CGCS2000和WGS84应该符合在±5cm 以内。但是应该注意:
1)这个结论指的是CGCS2000与WGS84参考框架之间的差异,而不是用户的WGS84坐标之间的差异。
2)这个结论不是通过联测WGS84监测站和CGCS2000框架点直接得到的,而是通过与ITRF间接比较,得到的理论差异。
4 地基框架与天基框架
地心坐标区分为不同坐标系的根本原因在于,实现这些坐标系的参考框架不同,然后才是选用的椭球不同。
这里注意坐标系实现的参考框架与对准的参考框架(ITRF)不是一个概念。
(1)地基框架与天基框架
1)CGCS2000坐标系的参考框架主要是国内的2500个GPS控制点。WGS84的参考框架是26个全球分布的GPS监测站,这些都属于地基参考框架。
2)WGS84监测站精度可达1cm,但用户无法联测。监测站坐标用来计算GPS星历。广播星历、精密星历构成了WGS84的天基参考框架。
(2)相对定位与绝对定位[7]
1)各种相对定位(实时动态定位RTK、差分定位、静态定位、常规控制测量)是以地面框架点坐标作为起算数据的,都直接使用地基参考框架。
2)而绝对定位(精密单点定位、码伪距单点定位)则是以卫星星历(精密、广播)作为起算数据的,使用卫星星历作为天基参考框架。
卫星星历是利用地面监测站的卫星跟踪数据计算得到的。
5 CGCS2000与WGS84的坐标
通过坐标系定义和实现上的比较,认为 CGCS2000和WGS84是相容的、一致的。最常见的问题是:一个点的WGS84和CGCS2000坐标差多少?通常所说的这两个坐标系差几厘米的含义,其实指的是CGCS2000与WGS84参考框架的理论差异,而不是用户坐标之间的差异。
1)一般情况下,WGS84坐标是观测历元,而CGCS2000坐标是2000.0历元。当前,两个历元相差超过19年,由于地壳运动,坐标相差约0.6m(每年约3cm)。
2)即便同在2000.0历元,如果WGS84坐标是米级精度,CGCS2000坐标是厘米级精度,不能说米级精度坐标和厘米级精度坐标只差几厘米。
3)ITRF2014与ITRF97的差异,在2000.0历元约为5cm,在2020.0历元约为15cm。WGS84坐标精度为米级,一般不考虑框架差异。
因此,不能一概而论,也不能说只差几厘米。
一个点的WGS84和CGCS2000坐标差异主要来自:历元(框架)不同、精度不同、实现不同。归算到2000.0历元的WGS84坐标和CGCS2000坐标可不做区分。区别在于精度不同、实现方式不同。(此处暂不考虑速度场的误差、高程变化对历元归算的影响。)
6 CGCS2000与WGS84坐标的实现
“实现不同”有两个层次的含义:
1)坐标系的实现不同,包括CGCS2000框架点与WGS84监测站不同,以及对准的ITRF框架不同。
2)坐标的实现不同,包括观测方式不同、约束平差所用的起算数据不同,解算方式不同,施测单位不同等等。
例如一条基线,两次测量的长度不同,就是这条基线长度的两次不同实现。在实践中,用户常常对不同单位提供的同一组控制点的坐标有差异存在困惑。例如,甲局与乙局测出来坐标,即便在同历元(框架)、同精度的前提下,也必然是不同的。引入了“实现不同”的概念后,就可以合理的解释这些坐标之间的区别了。
既然是同精度的坐标,也就没有优劣之分。使用时可以不做区分;也可以依据项目要求,按需使用;可以通过坐标转换,使其统一;也可以对两套坐标加权平均,以提高坐标精度。同样,WGS84和CGCS2000的XYZ坐标都统一于ITRS坐标系。在2000.0历元、同精度的前提下,仅有实现的差别。
BLH坐标不能脱离椭球而存在,习惯上要区分坐标系。但在忽略椭球微小差异时,实则也可以不做区分。因此,完全没有必要纠结坐标系的名称,统一按照ITRS坐标对待,只关心其历元(框架)、精度就可以了。
7 WGS84的真假
过去把GPS测得的坐标都叫做WGS84坐标,这种观念在早期码伪距单点定位时是正确的。由于其十米多的定位精度,也不需要考虑坐标的时变性。后来发展了高精度的相对定位和精密单点定位技术,这时解出的坐标已经不是WGS84坐标了,而是由作为起算数据的控制点坐标或者精密星历所在的坐标系决定。但是这种观念和习惯一直延续至今。
(1)真WGS84
1)用码伪距解,或长时间的码伪距解平均值。
精度:米级;坐标历元由广播星历决定,即观测历元;坐标系为WGS84。
2)用NGA精密星历单点定位。(不常用)
精度:亚分米级;坐标历元由精密星历决定,即观测历元;坐标系为WGS84。
(2)假WGS84
1)用IGS精密星历单点定位(常用)
精度:亚分米级;坐标历元由精密星历决定,即观测历元;框架为IGS(对应ITRF)。
2)以前的高精度WGS84坐标是由IGS站引入的,进而又引出下一级WGS84坐标。
但是没有指明坐标的ITRF框架以及历元。虽然当时是长时间、高精度的静态测量结果,但是其历元未知。3年的历元不确定就会产生近1分米误差,所以认为这些坐标是分米级精度。其标称精度与真实精度不符。
1)相对测量的坐标的历元和框架由控制点坐标的历元和框架决定。
2)坐标的历元不是观测历元,而是控制点坐标的参考历元。控制点坐标的参考历元早于观测历元。
3)这两种假WGS84坐标如果知道框架和历元,那就是高精度坐标。但实际上不是WGS84坐标,而是ITRS坐标。
分清WGS84坐标的真假,有利于深入理解坐标转换,并解决实践中的困惑。
8 历元与框架的判断
如果要把某点的地心坐标转换至CGCS2000,必须先确定该点坐标的历元和框架。无论GPS还是北斗接收机,都相当于一个测距仪,本身不包含任何坐标系属性。以地基框架点坐标为起算数据的相对测量是用它来测基线,以天基框架的卫星星历为起算数据的绝对测量是用它来测星站伪距。约束平差时所用的起算数据(控制点坐标或者星历)决定了获得坐标的历元、框架或者坐标系。
典型问题:如果GPS静态观测网平差解算时,作为起算数据的控制点坐标是西安80坐标系的,解出的观测点坐标是什么坐标系的?历元、框架又是什么?
解答:GPS本质上是一个测距仪,静态测量相当于距离交会,解出的观测点坐标当然还是西安80坐标。西安80坐标是相对于大地原点的坐标,本身没有历元和框架。
9 WGS84的天基框架
(1)精密星历
精密单点定位利用预报或事后的精密星历作为起算数据。这种定位方式得到的坐标历元为观测历元,坐标的框架和精密星历的框架相同。
IGS精密星历是用IGS站坐标约束计算的,属于IGS框架。精密星历的第一行标注了其所在IGS框架。IGS框架与ITRF框架有简单的对应关系。精密单点定位得到的坐标的历元、框架就可以确定了。
(2)广播星历
码伪距单点定位就是常见的导航解,利用广播星历作为起算数据,精度米级。以前也通过长时间平均来提高精度。这种定位方式得到的坐标历元为观测历元,坐标所属坐标系为WGS84坐标系。
那么,码伪距单点定位解的参考框架是什么?
GPS监测站是不能联测的,精密星历是IGS框架的。用户与WGS84坐标系的唯一联系就是广播星历。广播星历是用监测站坐标作为起算数据算出来的,因此属于WGS84坐标系。监测站坐标对准ITRF。那么广播星历的框架就是当前版本的WGS84对应的框架。
但是用广播星历作为起算数据解算的坐标精度为米级,不需要做框架转换,也就没有必要关心它的框架,只需明确属于WGS84坐标系即可。由于坐标精度低,也可以说属于CGCS2000坐标系。
总之,用户不需要关心WGS84坐标系的版本。例如:北斗坐标系BDCS[8]框架点的坐标、历元、框架从未公开,但也不影响使用。
10 CGCS2000与WGS84的转换
WGS84和CGCS2000都对准ITRF,统一于ITRS坐标系,只有历元、框架、精度和实现的区别。因此WGS84坐标的真假并不是很重要,重要的是如何将其转换为CGCS2000坐标。根据历元、框架、精度三要素,来确定如何将WGS84坐标转换为CGCS2000坐标。
(1)已知WGS84坐标对应的框架和历元
1)如果WGS84坐标精度<15cm,采用历元归算和框架转换。
这种高精度的WGS84坐标,往往是假的WGS84坐标,但总归是ITRS坐标。只要将其转换到CGCS2000坐标,就没有任何问题了。
2)如果WGS84坐标精度>15cm且<3m,由于其精度低,不考虑框架转换,仅作历元归算。
3)如果WGS84坐标精度>3m,由于其精度太低,可以不做任何转换,直接认为WGS84坐标就是CGCS2000坐标。
这种低精度的WGS84坐标是一般导航用户使用的码伪距导航解。
需要强调的是:虽然北京54和西安80的坐标也是米级精度,但是需要和CGCS2000进行静态转换。因为他们和CGCS2000坐标本身可能就相差几十米。
以上坐标转换精度指标也适用于BDCS和ITRS坐标的动态转换。
这个指标是如何得到的?
坐标转换相当于给原坐标加一个改正数,如果WGS84坐标精度低于转换改正数3倍时,转换改正数可以忽略[9]。
1)按照“大地测量控制点坐标转换技术规范”[10](以下简称“技术规范”)要求,应该在2000.0历元下做框架转换。2000.0历元下框架转换对坐标的改正约为5cm,当坐标精度低于15cm时,可以不做框架转换。
2)设历元归算至2000.0历元对坐标的改正为1m(2019年的改正约为0.6m,取1m相当于要求更严格了),当坐标精度低于3m时,可以不做历元改正。
(2)不知道WGS84坐标对应的框架和历元
1)采用静态转换方法,用重合点求转换参数来转换。
特别强调:应该保证所有重合点和待转换点的WGS84坐标的历元大致相同,或是同一期观测的WGS84坐标。
一组同期的WGS84坐标,是一组同框架同历元的ITRS坐标,即是一组静态坐标。转换到其他静态坐标(北京54、西安80、CGCS2000,或其他同框架同历元的ITRS坐标),可以采用静态转换方法。
测区不同,转换参数就不同;历元不同,转换参数也不同。在一些文献中给出的统一的转换参数是特定条件下的,没有代表性。
例如:要把CGCS2000坐标转换为北京54坐标,可以用WGS84转北京54的参数代替吗?一般不行,重点看WGS84坐标的历元和精度与CGCS2000坐标是否一致。
2)溯源坐标历元,做历元归算。
WGS84坐标的历元不一定是观测历元。如果是采用相对定位方式得到的坐标,坐标的历元则应该是控制点的参考历元。而控制点的参考历元往往也不明确。也可以利用WGS84与CGCS2000重合点的坐标差异,结合点位速度,反推WGS84坐标的历元。但是,这样做还是需要重合点,实际上和静态转换是一回事。
(3)技术规范要求
按照技术规范要求,WGS84坐标转换为CGCS2000的方法如下:
1)厘米级精度要求控制点归算;
要求WGS84控制点坐标精度优于10厘米,则需用速度值进行时间历元归算。
2)分米级及以上精度要求控制点;
低于10厘米的WGS84控制点坐标就视同2000国家大地坐标系,不需归算。
本文对WGS84坐标转换为CGCS2000的要求,比技术规范的指标高的多。但是,要求更高肯定是不违反技术规范的。
11 WGS84的问题
一般认为:WGS84坐标最大的问题就在于没有一个协议的参考历元,导致历元不统一、坐标不兼容。实际上,WGS84坐标系是一个卫星导航坐标系,用广播星历约束定位,实时给出观测历元的坐标。WGS84坐标精度低,需要和地图结合时,最多做历元归算即可。WGS84的框架点也有参考历元,但与用户无关。
现有WGS84坐标的历元不明确。这个问题源于早期没有精确的国内速度场模型,导致历元的作用不大,我们也就不重视历元。WGS84坐标系本身是没有问题的,2017年推出的北斗坐标系BDCS的定义也相同。问题的源头在于我们把高精度相对定位坐标误认为是WGS84坐标,才产生了WGS84坐标历元不统一、不明确的问题。
不论WGS84坐标的真假,只要将其历元归算到2000.0,或者静态转换到CGCS2000,就都变成CGCS2000坐标了。一次性解决了WGS84坐标混乱的问题。
1)历元归算过的WGS84坐标依然是WGS84坐标,准确地说是2000.0历元的WGS84坐标。
2)可以说历元归算到2000.0的WGS84坐标,既是WGS84坐标,也是CGCS2000坐标。
3)更明确的说,它是2000.0历元、ITRF97框架的ITRS坐标。
4)CGCS2000坐标是约定了历元和框架的ITRS坐标,WGS84坐标则是没有约定历元和框架的ITRS坐标。
12 CORS网的问题
网络RTK应该直接向用户发送CGCS2000坐标,但是一些省市和行业CORS网,存在技术薄弱、管理混乱问题。有些向用户发送WGS84和西安80坐标,还有的发送的坐标既不是2000.0历元,也不是观测历元,而是CORS站建立运行时的参考历元的坐标。用户一定要注意分辨,建议在CGCS2000等级点上测量验证一下。
例1:某地的网络RTK可同时输出CGCS2000和WGS84坐标,但是两个坐标很接近,并不是相差由于历元未归算而引起的约0.6米差异。
同一点的CGCS2000和WGS84两个坐标很接近,说明两个问题:
1)这个WGS84坐标精度高。
2)这个WGS84坐标已被归算至2000.0历元了。
这个高精度WGS84坐标往往是假的WGS84,实际上也是CGCS2000坐标。它与RTK本身输出的CGCS2000的区别,仅在于实现方式不同。
用户没必要追究其WGS84坐标的来源和真假,承认它并按需使用就行了。但是一定要注意历元是否已经归算。
注意:如果只有CGCS2000坐标,但是客户要求提供高精度的WGS-84坐标(这种要求本身是不合理的),也可以把CGCS2000坐标当做2000.0历元的WGS-84坐标。
例2:2013年,某地的两种CORS网输出的同一点的坐标相差约35cm。
显然,一个CORS网输出的是观测历元的坐标,另一个输出的是2000.0历元的坐标。历元相差13年,输出的坐标大概相差35cm。
例3:2019年,某地CORS网更新、升级。用户发现同一点坐标在更新前后差约20cm。
据了解,该地区CORS网大概是2010年建设的。一直以来输出的都是2010年的坐标,升级后输出的是2000.0的坐标。历元相差10年,输出的坐标相差超过20cm。
13 BDCS坐标系
地心坐标区分为不同坐标系的根本原因在于,实现这些坐标系的参考框架不同(不是指对准的ITRF框架)。卫星导航系统的坐标系和国家坐标系不应该捆绑在一起,原因如下:
①框架点个数有差异,CGCS2000有数千个框架点,BDCS只有几个。
②卫星导航坐标系更新周期短(几年),而国家坐标系更新周期长(几十年)。
③卫星导航系统使用单独的坐标系,将使坐标系的更新和维护更方便,更容易。
④遵循国际惯例,各国的导航坐标系与国家坐标系都不是同一个坐标系。
⑤CGCS2000坐标是2000.0历元的瞬时坐标,主要用于各种生产活动,强调统一性、规范性、自洽性、稳定性。BDCS坐标是观测历元的动态坐标,用于导航,强调实时性、动态性。
问题1:北斗地基或星基精度增强系统,给用户发布的为什么是CGCS2000坐标,而不是BDCS坐标?
北斗高精度增强系统给用户发布的坐标由其CORS站的高精度坐标决定,按照国家要求,应该是CGCS2000坐标。BDCS坐标是米级精度的,对用户来说,仅体现为导航仪地图上的位置。而且一个米级精度的BDCS坐标,也可以直接认为就是CGCS2000坐标。
事实上,BDCS和WGS84并没有本质上的区别。
千寻位置提供三种坐标,明确给出了坐标对应的历元。
1)ITRF2008坐标对应2016.0历元;
2)WGS84坐标对应2005.0历元;
3)CGCS2000坐标对应2000.0历元。
问题2:北斗坐标系参考框架建立时,监测站坐标为什么用GPS卫星导航系统和接收机测量,而不用北斗系统和接收机测量?
①坐标系与观测系统无关,只与约束平差所用的起算数据有关。
②当时北斗卫星系统、接收机、数据处理软件还不成熟。
③北斗参考框架也要对准ITRF,而当时国际IGS站上还没有兼容北斗,无法构成基线网。当前,全球已有两百多跟踪站可接收北斗观测数据。
问题3:BDCS与CGCS2000的关系是什么?
定义相同、椭球相同、对准的ITRF参考框架不同、历元不同、实现的参考框架不同、参考框架更新周期不同、测量精度不同、用途不同。
BDCS与WGS-84作用相同,CGCS2000与北美NAD83作用相同。
注意:BDCS和WGS-84都是卫星导航坐标系,坐标转换原理与方法相同。
14 结束语
动态地心坐标需要用点位参考历元瞬时坐标和速度来表达。之前没有速度场模型的时候,用户无法做历元归算。当时,历元的意义仅仅体现在要求一个工程中的一组坐标大概是同一时期,以保证坐标的一致性、自洽性。坐标转换也只能采用静态转换模式。在这种情况下,历元的概念不明确,作用不大,也就没有人去注意它。导致了以前的坐标没有历元。这种情况在一个孤立的工程中问题不大,但在项目合作、资源共享、历史数据利用,尤其是一些大型的长期的项目中就会漏洞百出。
2017年,“技术规范”已经发布了CPM-CGCS2000板块模型。因此,一个空间测量技术实现的地心坐标,必须注明其历元(框架)。