GPS精密单点定位
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Matlab 编程的GPS 伪距单点定位
摘 要: GPS 伪距单点定位速度快、不存在整周模糊度,因此具有很大的应用价值。给出GPS 伪距单点定位、相关改正的计算模型以及精度评定方法即精度因子的计算方法,通过实例并结合matlab 编程,实时的得到单历元伪距单点定位的坐标,并给出单历元伪距单点定位坐标精度优于10m 的结论。
关键词:GPS ;matlab ;单点定位;程序实现;伪距算法
1 前言
全球定位系统,简称GPS ,就是利用GPS 定位卫星,在全球范围内实时进行定位、导航的系统具有自动连续、全球覆盖、全天候、保密性强,实时定位速度快等特点,其应用领域正在不断的得到拓展 。而伪距单点定位因其速度快捷 、灵活方便且无多值性问题等特点,能够很好地 满足实时测量的要求,被广泛的用于车辆、舰船 、飞机 的导航,地质矿产的野外勘测以及海洋捕鱼等领域。但是在实际定位中, 由于卫星钟差、地球自转、对流层折射以及电离层折射等因素对伪距单点定位的影响,其本身的定位精 度受到一定的限制,难以达到很好的精度。所以,对伪距单点定位进行研究很有必要。
理论上,只需要以三颗 以上GPS 卫星到地面观测点之间的距离 ,进行空间距离后方交会,就可以求得观测点的三维坐标 。考虑到接收机钟差对 定位的影响,在平差计算时将接收机差作为参数与位置参数一起进行联合解算 。本文给出了伪距单点定位 的计算模型 以及一些改正的计算公式,通过实例并结合matlab 编程对定位精度进行了一定的分析 。 2 GPS 伪距单点定位原理
在任意历元,根据伪距观观测方程,对所测得伪距观测值可列出以下误差方程:
V B x l δ=- (1)
其中 V 为伪距观测值的改正值,(,,,)T x x y z c t δδδδδ=为接收机相位中心坐标近
似值和接收机钟差的改正数,B 为误差方程系数:
T
000000
其他矩阵s s s X X Y Y Z Z B ρρρ⎛⎫--- ⎪= ⎪ ⎪⎝⎭ (2) 式中的000(X ,,)Y Z 为本历元接收机的近似坐标,(X ,,)s s s Y Z 为卫星坐标,具体计算
可参考[1]。
(1)式中的l 为常数项:
00c L k L s l V dt V dt Cor ρρ=--++l (3)
式中的c ρ为测得伪距,0ρ为由近似值计算得到的伪距,0L k V dt 为接收机钟差的近似值,
L s V dt 为卫星钟差,Cor 为各项改正数,包括:
1)电离层改正
地球表面60~l000公里的这层 大气,由于太阳的强烈辐射,会 形成 含有大量自由电子和正离子的电离层。当电磁波穿过电离层时,会产生时间延迟:
00
2N ()2f Cor f τπ∆= (4)
通常采用Pl 、P2观 测值 的LC 组合 ,来消去电离层带来的影响。
2)地球自转改正
测站的坐标通常是在地 固坐标 系中表示的,而卫星的坐标是在协议地球 坐标系 中表示 的。卫星发射信号和接收机接 受信号的时刻不 同,协议地球坐标 系 已经发生 了旋转,所 以要考 虑地球自 的改正。卫星坐标 的计算公式为:
(X s ‘Y s ‘Z s
‘)=( cos (ωτ) sin (ωτ) 0
−sin (ωτ) cos (ωτ) 0 0 0 0 )+(X s Y s Z s ) (5)
3)由对流层改正引起的对伪距大气改正。
4)接收机天线相位中心的改正以及由偏心率引起的相对论效应对伪距的改正。 3 精度评定
GPS 的定位精度取决于两个因素:测量误 差以及几何 图形强度。将(1)式组成法方程后,一般认为个观测值之间相互独立,可取认为等权或以高度角取权,高度角越大权越大,设权为P ,则组成的法方程为:
Nδx =C (6)
式中的N=BTPB ,C=BTPl 。
一般采用精度因子来评价其几何图形强度 .描述 三维位置和时间误 差综合影响的精度因子为几何精度因子GDOP ,它 是协 因数 阵Q 主对角线上4个 全部元素之和 的平方根 ,即:
GDOP =√tr(N −1) (7)
此指标反应卫星分布对GPS 伪距动态单点定位精度的影响 。
4 程序设计
MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。同时matlab编程具有以下特点,1、高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来;2、具有完备的图形处理功能,实现计算结果和编程的可视化;3、友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握;4、功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,为用户提供了大量方便实用的处理工具。
因此,用matlab进行GPS伪距单点定位的编写,通过matlab强大的数值运算的能力,快速的进行定位过程和误差分析的计算,并将结果通过图形给输出,使结果清楚明了,开发出了灵活高效的GPS伪距单点定位应用软件。
4.1 程序内容
运用matlab编写GPS伪距单点定位应用软件实现点位坐标的计算和图形输出,该程序有若干个M文件,作用分别是主程序,读取O文件,读取N文件,世界时转化为GPS时,世界时转化为儒略时,计算卫星坐标位置,钟差,相对误差等,计算天顶延迟,计算电离层和对流程延迟,将X,Y,Z转化为B,L,H等。下面给出点位坐标计算的具体流程图: