已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
GPS 绝对定位的程序设计 I 目录目录 摘摘 要要.I ABSTRACTABSTRACT.II 1 1 绪论绪论.1 1.1 引言 .1 1.2 国内外发展动态 .1 1.3 本文主要研究工作和章节安排 .2 2 2 GPSGPS 卫星轨道坐标计算数学模型卫星轨道坐标计算数学模型.2 3 3 GPSGPS 单点定位数学模型单点定位数学模型.6 4 4 程序设计程序设计.8 4.1 VB 介绍.8 4.2 绝对定位程序的总体设计 .9 4.2.1 系统描述与需求分析 .9 4.2.2 软件总体设计 .9 4.2.3 设计软件系统结构 .9 4.2.4 数据结构与数据库设计 .10 4.2.5 程序中的模块 .10 4.2.6 程序流程 .10 5 5 计算实例及误差分析计算实例及误差分析.12 6 6 结论结论.14 致致 谢谢.15 参考文献参考文献.16 GPS 绝对定位的程序设计 II GPS 绝对定位的程序设计 摘摘 要要 GPS 单点定位是根据计算出的卫星坐标,再以伪距或者载波相位为观测量,通 过空间后方交会原理计算出地面测量站点的位置。本文主要介绍了 GPS 卫星轨道坐 标计算数学模型,单点定位数学模型,并根据最小二乘原理,利用 VB 语言对以上过 程进行了实现。本文对此程序的开发过程进行了阐述,包括时间转换程序、利用广 播星历计算卫星坐标程序和地面点近似坐标计算程序,并总结了程序开发过程中对 误差进行处理的方法和一些关键技术问题的解决思路。最后,选取实例进行计算并 进行精度分析。 关键词关键词:GPS 单点定位 坐标计算 精度分析 GPS 绝对定位的程序设计 III PROGRAM DESIGN OF GPS ABSOLUTE POSITIONING ABSTRACT Single-point positioning of GPS calculates the location of the site ground-based measurements by the principle of space resection according to the calculated satellite coordinates, which measure the pseudorange or carrier phase for the concept. My article describes a mathematical model of the GPS satellite orbit coordinates calculating, a mathematical model of single point of positioning, and achieve the above process in accordance with the principle of least squares, using VB language . my article describes the process of the program development, and summarizes the ways to deal with the error and the idea of some key technical issues in the program development process. Finally, selects the instance to calculate and analyse the accuracy . KEY WORDS GPS Single-point positioning Coordinate calculation Accuracy Analysis GPS 绝对定位的程序设计 1 1 1 绪论绪论 1.11.1 引言引言 GPS是美国从20 世纪70 年代开始研制的, 于1994 年全面建成, 具有在海、陆、 空进行全方位实时三维导航与定位能力的新一代卫星导航与定位系统。尤其是经过 近几年的研究,GPS 更在测绘、航空遥感和气象等方面有了新的应用, 并以全天候、 高精度、自动化、高效益等显著特点, 赢得广大用户的信赖。随着对定位精度要求 的不断提高, 人们对GPS卫星星历的精度和实时性提出了越来越高的要求。 卫星的星历, 是描述有关卫星运动轨道的信息。利用 GPS 进行定位, 就是根据 已知的卫星轨道信息和用户的观测资料, 通过数据处理来确定接收机的位置及其载 体的航行速度。所以, 精确的轨道信息是精密定位的基础。GPS 的卫星星历按照精 度可分为精密星历和广播星历。精密星历是由国际 GPS 服务中心( IGS) 通过 Internet 发布,它的轨道精度可达到 10cm 左右, 足以满足精密定位的需要。但是精密 星历只能在卫星观测的 11d 后获得, 无法为实时定位、导航、气象等实时性要求很 强的应用提供有效的服务。广播星历是通过接收机接收卫星发射的含有轨道信息的 导航电文, 经过解码获得的卫星星历推算得到卫星位置, 可以实现实时的导航和定位。 本程序以 2009 年 11 月 21 日上海跟踪站(SHAO)的 RINEX 格式广播星历 shao3250.09n 和观测数据 shao3250.09o 为例,取了 200 个连续观测历元,在不同历 元求出坐标值,最后求出坐标平差值,对平差值的各分量作比较。 1.21.2 国内外发展动态国内外发展动态 绝对定位按天线所处状态可以分为动态绝对定位和静态绝对定位;按观测量的 性质,可分为测码伪距绝对定位和测码伪距相对定位。尤其是动态绝对定位的方法, 由于它的实时、省力、简洁等优点具有广阔的应用天地。 近十年 GPS 理论以趋于完善,特别是 GPS 静态定位方面,已有许多可靠和成功 的软件,但在绝对定位方面,尤其是实时绝对定位方面,由于 GPS 定位中包含许多 误差,利用传统的方法很难将其影响除掉,使得 GPS 在某些场合的应用收到一定限 制。GPS 定位的主要误差源包括:1)卫星测量误差。可分为卫星时钟误差、星历误 差、电离层的附加延迟误差、对流层的附加延迟误差、多径效应以及接收机本身的 GPS 绝对定位的程序设计 2 噪音。2)卫星几何位置造成的定位误差。 GPS 正展现出愈来愈巨大的应用潜力,应用不仅从定位范围和定位方式上提出 了各种要求,定位精度的要求也有大幅提高,从米级到亚毫米级,而且提出的较高 要求指标还包括可靠性和可用性。为了增强可靠性和可用性,在实际应用中还发展 了与 GLONASS、无线信标、WARS、INS 等系统进行联合集成,同时欧空局正在积 极推进 GALILEO 系统,国际上也随之在酝酿 GPS 和 GALILEO 定位系统的集成。 比较可靠地定位系统还必须有可靠的定位软件与计算机硬件的辅助,定位方面的软 件开发也是各个研究机构比较注重的方面之一。有了好的软件,人们才能在生活和 工作中更方便、快捷、准确、可靠和充分的利用定位系统给人类带来的方便之处。 1.3 本文主要研究工作和章节安排本文主要研究工作和章节安排 本文主要介绍了 GPS 卫星轨道坐标计算数学模型,单点定位数学模型,并根据 最小二乘原理,利用 VB 语言对以上过程进行了实现。整个论文内容安排如下: 第 1 章简单介绍了 GPS 发展,阐述了国内外 GPS 绝对定位的研究状况,以及本 文所做的工作及论文结构 第 2 章介绍了卫星轨道参数与广播星历参数以及 GPS 卫星轨道坐标计算数学模 型。 第 3 章介绍了 GPS 绝对定位的算法实现以及数学模型 第 4 章介绍了编程语言 VB 的基本情况,GPS 绝对定位的程序的设计目的、思 路、流程以及程序中设计模块的应用 第 5 章研究了软件的使用效能,也就是实例的计算与分析 第 6 章为本论文的结论 2 2 GPSGPS 卫星轨道坐标计算数学模型卫星轨道坐标计算数学模型 广播星历就是卫星 GPS 将含有轨道信息的导航电文发送给用户接收机,然后经 过解码获得的卫星星历。GPS 用户通过卫星广播星历,可以获得 16 个卫星星历参数, 其中,1 个参考时刻,6 个相应参考时刻的开普勒轨道参数和 9 个摄动力影响的参数。 这些参数的定义如下表所示: GPS 绝对定位的程序设计 3 表 1 导航电文中的参考参数 参数名称参数名称 oe t星历参数的参考历元n平均运行速度差 s a轨道长半轴的方根 升交点赤经变化率 s e轨道偏心率 i 轨道倾角变化率 0 i参考时刻的轨道倾角, usuc CC升交距角的调和改正项振幅 0 参考时刻的升交点赤经, isic CC轨道倾角的调和改正项振幅 s 近地点角距, rsrc CC卫星地心距的调和改正项振幅 s M参考时刻的平近点角AODE星历数据的龄期 其中,AODE 表示从最后一次注入电文起外推星历时 0 的外推时间间隔,它反 映了外推星历的可靠程度。根据上述数据,便可外推出观测时刻 t 的轨道参数,从 而计算卫星在不同参考系中的相应坐标。 用广播星历参数计算卫星位置: 在利用 GPS 信号进行导航定位时,为了解算用户在地心坐标系中的位置,GPS 接收机需要测定测站到卫星的距离并且要知道同一卫星在同一时刻的地心坐标2。 卫星的地心坐标是从卫星的导航电文中提供的开普勒轨道参数和轨道摄动修正量按 一定公式计算的。 1)计算卫星运行的平均角速度:n 卫星的平均角速度用下式计算: 0 n (1) 3 2 0 /nGMa 式中,GM=.5是WGS-84坐标系中地球引力常数。 32 () /kms 利用导航电文中给出的摄动改正数,用下式求卫星运行的平均角速度:nn (2) 0 nnn 2)对观测时刻 做卫星钟差改正: t GPS 绝对定位的程序设计 4 ttt (3) 2 01020 ()() ee taa tta tt 在计算卫星钟差改正时, 可近似取 。tt t 3)观测时刻的平近点角的计算: s M (4) 00 () se MMn tt 4)计算偏近点角: s E (5)sin ssss EMeE (5)式可用迭代法进行计算,即先令代入上式,求出再代入上式计 ss EM s E 算,由于偏心率e很小(只有0.01) ,因此收敛很快,只需迭代两次便可求出偏近点 角。 5)真近点角的计算: cos(cos)/(1cos) sssss fEeeE 2 sin( 1sin)/(1cos) ssss feEeE (6) 2 arctan( 1sin)/ ssss feEEe 6)计算升交角距及轨道摄动改正项: 0 u 升交角距: 00s uf 摄动改正项: (7) 00 00 00 sin2cos2 sin2cos2 sin2cos2 uusuc rrsrc iisic cucu cucu cucu 7)计算经过摄动改正的升交角距、卫星到地心距离 、轨道倾角 uri (8) 0 00 (1cos) () u sssr ie uu raeE iii tt GPS 绝对定位的程序设计 5 8)计算卫星轨道平面坐标系中的坐标: 卫星在轨道平面坐标系中的坐标为 (9) cos sin xru yru 9)计算观测时刻升交点经度: 升交点经度为该时刻升交点赤经与格林尼治恒星时 GAST 之差,即 (10)GAST 观测时刻的升交点赤经为参考历元的升交点赤经加上观测时刻与参考历元 0e t 0e 之间的升交点的赤经变化,即 (11) 00 () ee tt 另外,卫星电文中提供了一周开始时刻(星期六子夜)以秒计算的格林尼治恒 星时 GATS。由于地球的自转作用,GAST 也不断增加。增加量与地球自转速率 0 ( )t 有关=7.。所以,观测时刻 GAST 用下式计算: e W e W 5 10/rad s GAST=GAST+ (12) 0 ( )t 0 () e W tt 考虑到(11)式和(12)式,则 (13) 0000 ()GAST( )() eee tttW tt 因为 000 GAST( ) e t 000 ()() ee ttW tt 考虑到 和都是从开始起算,即0,则(13)式为t 0e t 0 t 0 t (14) 000 () eeee WttW t 10)计算卫星在地心坐标系中空间直角坐标: (15) 0 0 0 cossincossinsin sincoscoscossin 0sincos XXii YiiY ZiiZ 11)如果考虑极移影响,可求在协议地球坐标系中的空间直角坐标: GPS 绝对定位的程序设计 6 (16) 10 01 1 p p CTSpp x XX YyY ZZ xy 3 3 GPSGPS 单点定位数学模型单点定位数学模型 由于接收机测量的是伪距,在观测值中存在着接收机钟差,加之测量点的三维 坐标为待求值,一共有 4 个未知数。要求解出这 4 个未知数,必须有 4 个方程式。 为此,要实现单点绝对定位必须同时观测 4 颗卫星,才能组成定位的基本方程4。 设为伪距观测量,为接收机到卫星的真距离,为接收机钟差,则观测方R 程为 (17)Rc 222 ()()() spspsp XXYYZZc 式中,假定伪距观测量已经过星历中的对流层和电离层改正;为卫星(,) sss X Y Z 的瞬时地心坐标,可由卫星星历电文中求出;为接收机的地心坐标,是(,) ppp XYZ 待求量。 为了求解方便和数据处理的需要,将式(17)进行微分,作线性化处理,并将 接收机的概略坐标作为初始值代入,得到 000 (,) ppp XYZ (18) s0s0s0 000 XZ d =ddYdZd ppp XYYZ Xt RRR 式中,为接收机钟差对应的空间距离,ddtc 222 0000 ()()() spspsp RXXYYZZ 从式(18)中看出,三个坐标分量的系数是接收机到卫星的单位矢径分别向三 个坐标轴投影的方向余弦。采用符号 sp XX l R sp YY m R GPS 绝对定位的程序设计 7 (19) sp ZZ n R 规定上标为卫星号,下标 为测站号,则组成伪距定位的基本方程i (20) 1 111 2 211 311 3 411 4 d dX1 ddY1 dZ1 d 1d d i i iii ii iii iiii i iii i lmn lmn lmn lmnt 采用矩阵表示 观测量 1234 dddd T iiiii l 状态矩阵 111 211 311 411 1 1 1 1 iii iii i iii iii lmn lmn A lmn lmn 未知数dXdYdZd T iiii Xt 则式(20)变为 (21)0 iii A Xl 对式(21)求解,便得到接收机地心坐标的唯一解 (22) 1 iii XA l 在计算过程中,下列几个问题必须注意11: (1)卫星之间的钟差是利用导航电文中给出的钟差改正数统一到 UTC 时间。 这里,考虑的钟差是指卫星与接收机之间的钟差。 (2)在计算中采用了接收机的概略坐标,第一次计算出的结果是不精确的。因 此,必须反复迭代计算,直到满足规定的限差为止。 (3)在一般导航型接收机中,都是采用这一数学模型计算位置的。现有的接收 机都能同时跟踪四个以上卫星,但在计算中仍然利用四个卫星,不过是结果挑选的 四个卫星。为此,按卫星的星座分布分成若干组,计算其 PDOP,最后选择和利用 一组其 PDOP 为最小的卫星作为计算数据,以得到最高的定位精度。 在测地型接收机和高质量的导航接收机中,都具有 8 个以上的通道,能同时跟 踪 7 颗以上的卫星。为了提高定位精度,在计算位置过程中,利用了所有的卫星观 GPS 绝对定位的程序设计 8 测值。在这样情况下,出现了多余观测,观测值的个数超过了未知数的个数,使得 式(21)的右端不等于零 (23) iiii A Xl 式中,为残差向量。根据最小二乘法的原理,最后得到接收机的 123 (,) TT 位置解为 (24) 1 () TT i XA AA l 其精度为 (25) 221 00 () T xx Dm QmA A 式中,为伪距测量中误差,为权系数阵。 0 m x Q 这种多余观测的优点在于消除了卫星定位的系统误差。过去,我们经常发现在 仅用 4 颗卫星的差分定位中,当中间更换卫星时,位置会出现较大的偏移,等过了 数秒后又逐渐回到原位。定位精度越高,这一现象越明显,当应用 4 颗以上的卫星 定位时,这一现象就不存在了。 4 4 程序设计程序设计 4.14.1 VBVB 介绍介绍 Visual Basic,简称 VB,是 Microsoft 公司推出的一种 Windows 应用程序开发工 具。是当今世界上使用最广泛的编程语言之一,它也被公认为是编程效率比较高的 一种编程方法。无论是开发功能强大、性能可靠的商务软件,还是编写能处理实际 问题的实用小程序,VB 都是最快速、最简便的方法。 4.24.2 绝对定位程序的总体设计绝对定位程序的总体设计 4.2.14.2.1 系统描述与需求分析系统描述与需求分析 基本功能要求: 实现 GPS L1 C/A 码伪距单点定位功能,精度符合 GPS 标准定位服务 SPS 可选择输入/输出文件名,输入不正确时,可识别并提示(即星历和观测值文件不同 步) GPS 绝对定位的程序设计 9 可显示 GPS 时和北京时间的转换 程序运行稳定 输入:原始数据为 RINEX 的 O 文件,星历为 RINEX 的 N 文件或 SP3 输出:每个历元下的单点定位值,方式为屏幕,自定义格式文件 运行环境:Windows 环境下的控制台程序或窗口程序且为单独可执行的文件 4.2.24.2.2 软件总体设计软件总体设计 在需求分析的基础上通过抽象和分解将系统分解为模块,确定系统功能是否实现, 即把软件需求转换为软件模块表示的过程。 该过程是一个分解的过程 图 1 软件的总体设计 4.2.34.2.3 设计软件系统结构设计软件系统结构 采用某种方法,将系统按功能划分成模块。 (划分) 确定模块的功能。 (功能) 确定模块之间的调用关系。 (调用) 确定模块之间传递的信息。 (接口) 评价模块结构的质量。 (质量) 4.2.44.2.4 数据结构与数据库设计数据结构与数据库设计 1)主要的数据结构: 单历元观测值 星历参数(广播星历、精密星历) 坐标 时间 2)数据库设计: 概念设计 逻辑设计 物理设计 输入计算输出 GPS 绝对定位的程序设计 10 4.2.54.2.5 程序中的模块程序中的模块 1)完成各功能的模块: 数据读取模块(RINEX 读取) 读取 RINEX 卫星数据存于星历结构中 读取一历元 RINEX 观测数据 求解卫星发射时刻 的卫星坐标 根据观测历元时刻和观测 值,计算卫星发射时刻 传播时间收敛否 计算坐标及精度信息 组法方程系数,求解法方程 观测值进行各项改正 修正卫星传 播时间 与前一次计算值比较, 收敛否 输出该历元结果 文件结束否 开始 GPS 绝对定位的程序设计 11 图 2 程序流程图 卫星位置计算模块 各项改正模块 数据显示输出模块 2)基础模块: 法方程解算模块(矩阵运算) 时间模块 坐标计算及转换模块 4.2.64.2.6 程序流程程序流程 单点定位程序的流程是一个反复迭代的过程(卫星位置、接收机位置的迭代) ,程序 流程图如图 2 所示。 5 计算实例及误差分析计算实例及误差分析 利用该软件打开星历文件和观测文件,计算出观测文件中连续观测到的卫星坐标、 观测文件中 GPS 卫星的坐标,最终计算出接收机的位置坐标。步骤截图如下: 结束 GPS 绝对定位的程序设计 12 图 3 软件主界面截图 图 4 观测文件中 GPS 卫星的坐标 GPS 绝对定位的程序设计 13 图 5 观测文件中连续观测到的卫星坐标 图 6 坐标及坐标改正数 GPS 绝对定位的程序设计 14 6 6 结论结论 如何利用GPS的广播星历来获得比较准确的卫星位置, 进而为实时、精确的导航 和定位服务是一件相当复杂的工作。如何在工作中考虑各种误差对定位精度的影响, 如何利用不同的算法来提高定位的精度, 一直是人们非常关心的课题。通过一个实 例的计算, 详尽介绍了利用GPS广播星历计算卫星位置和利用观测数据计算地面点坐 标的方法和原理,简单的对计算结果的误差进行了分析, 证实了该算法的可行性。由 于本作者水平有限,文中不足之处还有很多,如何进一步提高GPS定位的精度,还需 要进一步的研究。 致致 谢谢 本论文是在河南工程学院土木系刘小强老师的悉心指导下完成的。刘老师作为 一名优秀的、经验丰富的教师,具有丰富的专业知识和教学经验,在整个论文实验 和论文写作过程中,对我进行了耐心的指导和帮助,提出严格要求,引导我不断开 阔思路,为我答疑解惑,鼓励我大胆创新,使我在这一段宝贵的时光中,既增长了 知识、开阔了视野、锻炼了心态,又培养了良好的实验习惯和科研精神。在此,我 向我的指导老师表示最诚挚的谢意! 在论文即将完成之际,我的心
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水果店卫生监督制度汇编
- 娱乐直播运营奖罚制度
- 卫生院死因监测制度
- 酒吧运营薪酬制度
- 菜品卫生检查制度
- 酒店食品卫生奖惩制度
- 教室卫生制度管理制度
- 基层检察院财务制度
- 跨阶层婚姻财务制度
- 放射卫生监督协管制度
- 买卖肉合同样本
- 2025年中国三氯丙酮市场调查研究报告
- 五下语文快乐读书吧《三国演义》导读单
- 2025届高考语文复习:以《百合花》为例掌握小说考点
- 面向对象系统分析与设计(MOOC版)全套教学课件
- DLT-循环流化床锅炉停(备)用维护保养导则
- 08D800-5 民用建筑电气设计与施工 常用电气设备安装与控制
- JT-T-1248-2019营运货车能效和二氧化碳排放强度等级及评定方法
- 人教PEP英语六年级下册全册教案教学设计及教学反思
- 语文七年级下字帖打印版
- 08年常德地理会考试卷及答案
评论
0/150
提交评论