徐恒立,姚连璧,2,康传利,胡丛玮
GPS北斗联合差分定位软件的测试与分析
*徐恒立1,姚连璧1,2,康传利3,胡丛玮1
(1. 同济大学测绘与地理信息学院,上海 200092;2. 现代工程测量国家测绘地理信息局重点实验室,上海 200092;3. 上海北斗卫星导航平台有限公司,上海 200081)
观测条件较差的情况下,单系统卫星可见性不佳,导航定位精度降低甚至无法定位。而组合卫星导航系统增加了可见卫星数,可以改善定位结果。我国自主建设的北斗卫星导航系统现已具有初步导航定位能力,可与其他导航定位系统兼容。测试是定位软件开发中不可缺少的一部分,目的是发现并排除软件中潜藏的错误,从而满足产品的设计要求和提高软件的质量。本文详细介绍了GPS北斗联合差分定位软件的测试方案,以移动测试为例介绍了测试的实施流程,并针对设计要求给出了成果评价指标。
测试方案;伪距差分;组合定位;卡尔曼滤波;精度评定
GPS系统是目前应用最为广泛的导航定位系统,它能够为全球用户提供高精度的导航定位服务。但在观测条件较差的情况下,其卫星可见数和定位精度都有所下降[1]。而多种导航定位系统的组合能够从各方面提高导航定位的精度,且随着导航信息资源不断增多,利用各系统间相互组合以提高定位精度和可靠性将成为卫星定位技术发展的必然。北斗卫星导航系统是中国正在实施的自主研发、独立运行的全球卫星导航系统,缩写为BDS, 与美国的GPS、俄罗斯的GLONASS、欧盟的GALILEO兼容共用,并称全球四大卫星导航系统。北斗卫星导航系统可在全球范围内全天候、全天时为各类用户提供高精度、高可靠的定位、导航、授时服务并兼具短报文通信能力[2]-[4]。在GPS定位的基础上,结合北斗系统提供观测数据,我们可以尽可能获取高精度的定位结果。在此背景下,笔者参与了GPS北斗联合伪距差分定位软件的研制,定位软件可以为导航、地理位置服务(LBS)等提供位置信息。
GPS北斗联合差分定位软件是基于泰斗TD3020C BD2 B1/GPS L1双模接收板的定位软件。根据设计需求,定位软件要求满足如下的功能:①能够实时对观测原始数据进行解码,获得卫星伪距观测值和卫星星历。②能够进行单点定位的解算。③能够获取由基准站网络数据中心发送的RTCM标准格式数据并进行解码,获取用于差分计算的改正信息,实现加入卡尔曼滤波的伪距差分定位。④能够给出北斗、GPS单独定位和两者组合定位结果以及精度等信息。⑤当网络出现问题无法接收差分信息时,从差分定位转为单点定位以满足定位的实时性。⑥软件运行稳健,满足长时间定位的要求。整个软件的运行流程如图1所示:
图1 软件运行流程
定位软件使用泰斗TD3020C模块,模块可对外部BD2 B1/GPS L1有源天线供电。外部有源天线接收空中卫星信号送给射频芯片,射频芯片内部经LNA放大、混频处理后送到中频滤波器,然后通过VGA和AGC,再经过AD转换成数字中频信号送给基带芯片。基带芯片接收到射频芯片送来的数字中频信号,经过处理从串口输出数据[5]。这里使用从接收模块中部串口输出的原始数据为定位软件提供伪距观测值。
模块和接收机天线、计算机和电源相连,接收机天线将信号源源不断地传送到模块。模块将接收到的数据传输到计算机,计算机上插有高速无线上网卡,提供测试过程中的网络,如图2所示。
图2 设备连接
滤波理论就是在对系统可观测信号进行测量的基础上,根据一定的滤波准则,采用某种统计量最优方法,对系统的状态进行估计的理论和方法[6]。卡尔曼滤波方法是一种时域方法,对于具有高斯分布噪声的线性系统,可以得到系统状态的递推最小均方差估计。卡尔曼滤波是一个不断预估和校正的过程,无需存储大量的观测数据,当得到新的观测值时,它只是根据前一个估计值和最近一个观测数据来估计信号的当前值,特别适宜实时数据处理[7]。它是用状态方程和递推方法进行估计的。
时间更新(预测)方程:
测量更新(校正)方程:
上述公式的各变量说明如下:
软件的测试和软件的开发同时进行,模块功能测试以静态测试为主,各个模块功能经过检验后,进行整个软件的集成测试,整个测试过程中,保存接收到的所有数据作为后处理完善算法的原始材料。
模块功能测试分为两种,一种是卫星信号无遮挡的条件下进行,测试地点位于某大楼楼顶试验场A03观测墩,该观测墩可以提供已知的坐标信息。测试结果结合观测墩提供的坐标信息,分析测试时间内定位结果的离散程度,这种测试环境最为理想。另一种是卫星信号有遮挡的条件下进行,测试地点位于办公室南面窗台(办公室为南北朝向,其中朝南方向完全没遮挡,朝北方向被建筑物遮挡)。测试结果与所有数据的平均值进行比较,分析定位本身的离散程度,测试时间一般为2小时至4小时。
经过模块功能测试的检验,在定位软件的精度和可用性满足设计要求之后,进行模拟实际使用的集成测试。集成测试以移动测试为主,测试程序的联合差分定位功能,拟定多种不同通视条件的路线(即卫星信号接收情况不同)。根据设计要求,在各种通视情况下,软件可以持续地输出定位结果。
整个软件在开发过程中进行了多次测试,这里选取一次移动测试为例说明测试如何实施以及如何评价测试结果,静态测试结果分析和移动测试结果分析方法类似。定位软件的主要评价指标有:①接收板对卫星捕捉能力;②软件定位离散程度;③软件运行稳定性。
在建筑物密集的市区实现定位一直以来都非常受人们关注,由于建筑物的遮挡,可视卫星的数量变得十分有限。使用多系统卫星观测值可以有效地提高可视卫星的观测数量。移动测试是测试方案中最重要的一个环节,设计了多条卫星接收情况不同的路线进行测试。此次移动测试选取上海市内环往返路线,路线道路通视条件较好,但是道路两侧有比较高的挡板,道路边上还有居民楼会影响卫星信号的接收。
设计路线图3所示:
定位以车载形式进行,即在测试车上搭建测试平台,测试车顶部有支架,放置和固定一台GPS/北斗双模分体式RTK接收机和一台测量型接收机,其中RTK可以实时得出精确定位结果作为定位软件进行比较的基准,定位结果精度在厘米级。测量型接收机可以记录原始观测数据(用于和泰斗接收模块接收的原始数据进行比较),接收数据间隔为1秒。将接收机天线放置和固定在车顶,透过窗户将电线引入车中,车顶结构如图4所示,在结果处理时,各接收机之间的距离也要纳入考虑之中。测试车内部如图5所示。
图4 车顶装置
图5 测试车内部
数据处理中,接收机捕捉卫星的能力根据接收到的卫星数量评价,定位的精确程度根据测试结果和RTK定位结果的比较进行评价,程序运行稳定性根据测试过程中程序的运行情况来评价。
4.2.1 卫星捕捉能力
图6 移动测试接收卫星时间序列
解算位置需要4颗或4颗以上的卫星[9],小于4颗卫星将失去定位能力。如图6所示,描述了移动测试过程中的卫星接收情况。分析数据表明,单GPS系统96.55%的时间段内可以接收到4颗或4颗以上的卫星,单北斗系统97.91%的时间段内可以接收到4颗或4颗以上的卫星。而GPS北斗双系统在99.95%的时间段内可以接收到4颗或4颗以上卫星。双系统接收卫星可以提高定位能力,在信号遮蔽严重的地段会体现得更加明显。整个测试过程中,北斗系统接收到卫星数量要优于GPS系统,接收机表现出了很强的捕捉卫星能力。
4.2.2 定位离散程度
移动测试使用RTK定位结果作为真值来和测试结果进行比较,其中RTK文件记录的时间和GPS时间存在16秒的差值,在进行结果比较时这点要特别注意。
A.轨迹图分析
图7描述了进行历元匹配后软件定位结果和真值进行比较的结果,测试数据轨迹紧紧包裹在真值轨迹之下,部分测试数据轨迹与真值轨迹偏离较大。轨迹上断开的部分是由于这些历元时刻由于遮挡等原因RTK没有得出固定解,无法提供与软件结果进行比较的真值而出现的。将轨迹图局部进行放大,如图8所示,可以看到软件定位结果和真值一一对应。如果显示全部测试定位结果,如图9所示,呈现一条完整的轨迹,这是因为使用双系统组合定位,改善了卫星的可见性,提高了定位的成功率,显示了很好的数据延续性。
图7 轨迹图(与RTK比较)
图8 轨迹图(局部放大)
图9 定位结果全部轨迹
图10 移动测试误差时间序列
B.误差时间序列分析
误差时间序列描述了随着时间变化,测试定位结果的东方向坐标和北方向坐标的误差变化情况,如图10所示,可知在此次测试中的某些时刻,会出现比较严重的点位跳跃现象,测试之后会对这些跳动较大的点进行分析,查出问题并提出软件改善方案。
C.精度指标分析
表1 精度指标
图11 东方向误差分布图
图12 北方向误差分布图
误差分布如图11和图12所示。根据文献[10]给出的中误差的定义,误差平均值接近零满足偶然误差的规律性,可以看出东方向和北方向的中误差都小于3米,大部分误差都分布在-2.5米到2.5米的区间内,满足了定位的精度需求。几乎所有数据的误差都落在三倍中误差的范围里,可以认为定位的结果是让人满意的。
D. 卡尔曼滤波平滑效果分析
测试采集到的定位结果是加入了卡尔曼滤波的定位结果,和仅使用最小二乘算法结果的单历元解算结果相比,考虑了定位结果在时间上的相关性,减少定位结果的波动。
图13 最小二乘算法误差时间序列
图14 卡尔曼滤波算法误差时间序列
图13描述了最小二乘算法解算结果和真值进行比较的误差时间序列,图14描述了加入卡尔曼滤波算法的解算结果和真值比较的误差时间序列。由图可知,加入卡尔曼滤波算法之后,对最小二乘算法解算结果中出现的扰动进行了有效地抑制,使定位结果和真值相比的波动变小,解算结果更优。图15描述了将解算结果在地图上显示的效果,实心点代表加入卡尔曼滤波算法的结果,空心点代表最小二乘算法的解算结果。由图可以比较直观地发现,加入卡尔曼滤波算法的定位结果更加符合实际的情形。
图15 卡尔曼滤波算法和最小二乘算法的行车轨迹
4.2.3 程序运行稳定性
从此次测试的程序使用情况下看,软件运行过程中一直能够持续输出定位结果,程序没有出现意外的崩溃或者中断,软件运行很稳健。
目前导航定位领域应用最为广泛的GPS系统在观测条件较差的地段定位精度下降甚至无法定位。而采用GPS/北斗组合导航系统能够增加可视卫星数,增加观测数据,提高定位精度。目前,我国正自主建设北斗导航定位系统,利用GPS和北斗系统进行组合观测,可以充分利用导航资源,提高定位的可用性、精确性和可靠性。
测试是定位软件开发中不可缺少的部分,为软件的质量提供了重要保障。本文详细阐述GPS北斗联合伪距差分定位软件的测试方案和评价指标,并以一次移动测试作为实例,介绍了如何进行测试以及如何评价测试结果。测试结果显示,将设备和RTK一起使用,与RTK的定位结果相比,误差在米级水平,可以为导航、地理位置服务等提供位置信息。测试方案基本模拟了现实使用中可能出现的各种情况,经过测试之后进行的改良,软件已经取得良好的使用效果。
Test and analysis of GPS and Beidou combined differential positioning software
*XU Heng-li1, YAO Lian-bi1’2, KANG Chuan-li3, HU Cong-wei1
(1. College of Surveying and Geo-informatics, Tongji University, Shanghai 200092,China; 2. Key Laboratory of Modern Engineering Surveying, SBSM, Shanghai 200092,China; 3. Shanghai Beidou Navigation Co.LTD, Shanghai 200081,China)
Under poor observation conditions, single navigation system usually has lower visibility and declined positioning accuracy. Combined navigation system can improve the satellite visibility and improve positioning accuracy. Beidou navigation system has already been available for primary navigation and positioning. Test is an indispensable part in the development of positioning software. Its goal is to find and eliminate potential errors in the software, so as to improve software quality and meet the design and requirements. We introduce a test program of GPS and Beidou positioning software with an example of actual test. Achievement evaluation index has been given in the paper according to the design demand.
test program; pseudorange difference; combined positioning; kalman filter; accuracy evaluation
P228.4
A
10.3969/j.issn.1674-8085.2014.04.002
1674-8085(2014)04-0007-06
2014-02-09;
2014-03-11
国家863计划项目(2013AA12A206)
*徐恒立(1990-),男,江苏东台人,硕士生,主要从事空间定位与数据处理研究(E-mail: greatxuhl@hotmail.com);
姚连璧(1964-),男,辽宁本溪人,教授,博士生导师,主要从事多传感器的集成与工程应用研究(E-mail: lianbiyao@126.com);
康传利(1979-),男,山东郓城人,博士,主要从事3S集成技术理论与应用研究(E-mail: kcl79@126.com);
胡丛玮(1963-),男,江西新余人,副教授,博士,主要从事卫星导航定位模型与算法研究(E-mail: cwhu@tongji.edu.cn).