|
楼主 |
发表于 2010-5-20 16:28:18
|
显示全部楼层
VisualGPSXP的主要特点如下:
用户自定义窗口大小和位置
多重路径连接到一个全球定位系统接收机
可采用RS-232端口连接
可使用局域网/互联网连接
可直接读取NMEA文本文件
模拟仪表显示
高度表
里程表
罗盘
垂直速度
图形化的GPS位置
信号质量
方位角测量
GPS数据分析
监测NMEA数据
静态位置平均与统计
天线遮挡测定
NMEA 0813 2.0-3.01版本兼容
目前VisualGPSXP的最新版本为 VERSION v3.2.100
官方网站:http://www.visualgps.net/VisualGPSXP/
(未完待续,精彩内容请看下页)
第2页:专业测试软件VisualGPSXP界面说明
VisualGPSXP软件
VisualGPSXP软件设计并不复杂,提供多种数据显示方式,如简单的高度计、方位角、垂直速度、NMEA数据输出窗口等。下面主要说一下方位角与仰角窗口(The Azimuth and Elevation window)与总览窗口(Survey Window),尤其是总览窗口,这是测试GPS漂移程度比较直观的方式。
位角与仰角窗口:
方位与海拔
通过上面图片可以观察到GPS卫星分布角度,卫星以彩色编码进行识别,当卫星颜色为黄色标明正在被用于导航方案,也就是定位状态,如果为灰色则标明该卫星不能被追踪锁定(有可能因为位置不好等原因)。图中内环的读数表示卫星所处位置相对地球的角度,用户可以根据它调节天线指向。
(未完待续,精彩内容请看下页)
第3页:专业测试软件VisualGPSXP 漂移测试
漂移测试
总览窗口(Survey Window)是个很全面的数据显示窗口,内容包括了经纬度、高度、以及一些图形数据。其中最上层窗口为卫星接收信号漂移统计图形,下面窗口左侧为海拔高度变化以及右侧卫星接收数据及DOP(精度强弱度)显示窗口。
用户可以通过连接蓝牙GPS到VisualGPSXP中,通过长时间的测试查看该窗口上方的图示来分析这款GPS产品的接收能力,以及漂移程度。
名词解释:
DOP是Dilution of Precision的缩写,直译为“精度强弱度”,通常翻译为“相对误差”。具体含义是:由于观测成果的好坏与被测量的人造卫星和接收仪间的几何形状有关且影响甚大,所以计算上述所引起的误差量称为精度的强弱度。天空中卫星分布程度越好,定位精度越高。
第4页:相关解释:什么是GPS的漂移
什么是GPS的漂移,请看一位网友关于漂移的解释。
早先的 GPS 由于收星能力比较弱,总是会发生断讯,尤其在城市中用做导航的时候,给出行造成很多不便。后来开发的一些民用 GPS 芯片,将信号不够强的 GPS 信号也收入,这样就造成了漂移的现象。但是如果在同样的情况下,较早的 GPS 产品即会完全断讯,直到可以找到信号够强的卫星才开始接受。所以这是一个比较矛盾的选择,但是随着软件和硬件的不断开发升级,相信这种情况会越来越少 .
基本的GPS理论
我们都知道,一个GPS接收机可以提供用户的位置,速度,和时间的估计(即P.V.T.估计)。这里我以位置估计为例。
在ECEF坐标系,对于位置有3个未知量,x,y,z。要计算这3个位置量,至少需要3个方程:
S1 = [(x1-x)2 + (y1-y)2 + (z1-z)2]1/2
S2 = [(x2-x)2 + (y2-y)2 + (z2-z)2]1/2
S3 = [(x3-x)2 + (y3-y)2 + (z3-z)2]1/2
这里 (xi,yi,zi) 是第i个卫星的坐标。 Si 是卫星i 到用户的距离。
卫星的位置可以由Ephemeris数据精确算出。 但如何知道精确的距离?很容易想到用电磁波传播的时间来计算距离:用光速乘以传播的时间。但如何知道精确的传播时间?有人会说:如果我们知道发送的时间和接收的时间,我们就可以得到传输的时间。这个主意看起来可行,但如何才能知道精确的发送和接收时间?而且更要命的是,我们好像正在引入更多的未知量。
不要太沮丧了!好像我们引入了更多的未知量,其实不然。
首先,如果卫星的信号已经被锁定,我们至少可以知道精确的发送时间,具体实现如下:
当卫星信号被锁定以后,我们可以恢复卫星的导航报文;
当卫星导航报文恢复以后,从HOW字( 每一个子帧的第二个字)可以知道GPS时间(TOW),这将会给信号的发送时间以6秒的精确度;(太粗略了!)
导航报文的位计数可以将发送时间的精度提高到20毫秒以内,这是因为报文每一位是20毫秒。但20毫秒还是太粗了;
跟踪环可以给出CA码的整周计数, 这可以将发送时间的精度设在1毫秒以内。这好多了,但还是不够。想一想电磁波在一毫秒可以走多远,300公里!
跟踪环进一步可以给出CA码的码片(chip)计数,这可以将发送时间的精度设在1/1024毫秒以内. 这样一来,距离的精度就在300米以内了(3E8 * 1/1024/1000 ~ 300m)。
至此为止,我们已经解决了发送时间。那么到达时间怎么算?没有办法。有人想:为何不从本地接收机的时钟里得到到达时间?这个方案是不可能的,因为接收机的廉价时钟有很大的偏移和漂移(除非每一个接收机都配一个铷或铯原子钟,但那样的接收机这个世界上没有多少人用得起。)。如前所述,时间上的1毫秒偏差等于距离上的300公里的偏差。所以我们不可能得到每一个卫星信号的精确的到达时间。这样我们还是有太多的未知量。
但相关器(这里是GP2021)可以在 同一时刻 锁存所有通道的测量值(CODE_SLEW,CODE_PHASE, CARRIER_CYCLE_LOW, CARRIER_DCO_PHASE,EPOCH,CODE_DCO_PHASE,CARRIER_CYCLE_HIGH,EPOCH_CHECK)。这个功能实在是太好了,因为这意味着所有卫星的信号将共享一个到达时间。于是我们只引入了一个未知量:接收机的时钟偏移tb。对4个未知量(x,y,z,tb),4个方程就足够了:
S1'' = [(x1-x)2 + (y1-y)2 + (z1-z)2]1/2 - Ctb
S2'' = [(x2-x)2 + (y2-y)2 + (z2-z)2]1/2 - Ctb
S3'' = [(x3-x)2 + (y3-y)2 + (z3-z)2]1/2 - Ctb
S4'' = [(x4-x)2 + (y4-y)2 + (z4-z)2]1/2 - Ctb
Here (xi,yi,zi) 是第i个卫星的坐标. Si'' 是卫星i 到用户的伪距离
难到漂移无法解决吗?是的!完全不漂移是不可能的!
但我们可以引入差分数据来把漂移减少到十分精确的程度!
数学方程式我就不详说了! |
|