一.GPS全球定位系统的组成

(1)GPS卫星(空间部分)

由沿接近环形的地球轨道运行的24颗卫星组成,位于距地表20200千米的高空,均匀分布在6个轨道面上(每个轨道面4颗),轨道倾角55度。此外,还有4颗有源备份卫星在轨道运行。卫星分布使得全球任何地方、任何事件都可观测到4颗以上的卫星,并能保持良好的定位几何图象,这就提供在时间上连续的全球导航能力。

(2)地面监控系统(地面控制部分)

由1个主控站、5个全球监测站和3个地面控制站组成。5个监控站分布在世界各地,不间断追踪监控卫星,通过地面和卫星链接将原数据和导航信号传到主控站。主控站从各监测站手机跟踪数据,计算出卫星的轨道和时钟参数,然后将结果送到3个地面控制站。地面控制站在每颗卫星运行至上空,把这些导航数据及主控站指令注入到卫星。

(3)GPS信号接收机(用户设备部分)

GPS信号接收机根据射频信号的行驶时间测量卫星距离,根据一个简单数学原理(三维空间的三边测量)推断自身位置,当接收机捕获到跟踪卫星信号后,即可测量出接收天线至卫星的伪距离和距离的变化率,解出卫星轨道参数等数据。根据这些数据,接收机中的微处理计算机就可按定位解算方法进行定位计算,计算出用户所在地理位置的经纬度、高度、速度、时间等信息。

二、NMEA

(1)简介

NMEA协议是为了在不同GPS导航设备中建立统一的标准,NMEA协议有0180、0182、0183三种,0183是目前GPS接收机使用最广泛的协议。GPS接收机根据NMEA-0183协议标准规范,将位置、速度等信息通过串口传送到PC机、PDA等嵌入式设备中。

(2)NMEA-0183协议使用

命令 说明
$GPGGA 全球定位数据
$GPGSA 导航偏差和有源卫星
$GPGSV 卫星状态信息
$GPRMC 运输定位数据
$GPVTG 地面速度信息
$GPGLL 大地坐标信息

语句格式:$aaccc,ddd,ddd,...,ddd*hh<CR><LF>

$:帧命令起始位

aaccc:地址域,前两位为标示符,后三位为语句名

ddd...ddd:数据

*:校验和前缀

hh:校验和(check sum),$与*之间所有自负ASCII码的检验和各字节做异或运算,得到校验和后,再转换十六进制格式的ASCII字符

<CR><LF>:回车和换行

例如:$GPGGA,012440.00,3202.1798,N,11849.0763,E,1,05,2.7,40.2,M,0.5,M,*6F

时间:01时24分40秒

纬度:北纬32度02.1798分

经度:东经118度49.0763分

定位:1=(定位sps模式)0=(未定位)

应用卫星数:5个

HDOP:2.7米

海拔:40.2

海拔单位:M=米

WGS84水准划分:0.5

WGS84水准划分单位:M(米)

校验位:6F

Win CE 6.0 获取手持机GPS定位1----基础知识 (C#)的更多相关文章

  1. Win CE 6.0 获取手持机GPS定位2----示例代码 (C#)

    一.须知 1.手持机(PDA)必须有GPS模块,才能通过代码使用串口通信获取GPS相关信息 2.要清楚自己手持机(PDA)固定的GPS通信串口号,如我们公司的手持机获取GPS信息的串口为COM4 3. ...

  2. 从0开始学爬虫4之requests基础知识

    从0开始学爬虫4之requests基础知识 安装requestspip install requests get请求:可以用浏览器直接访问请求可以携带参数,但是又长度限制请求参数直接放在URL后面 P ...

  3. Python黑帽编程3.0 第三章 网络接口层攻击基础知识

    3.0 第三章 网络接口层攻击基础知识 首先还是要提醒各位同学,在学习本章之前,请认真的学习TCP/IP体系结构的相关知识,本系列教程在这方面只会浅尝辄止. 本节简单概述下OSI七层模型和TCP/IP ...

  4. [As3.0] 获取本机信息

    package { import flash.display.Sprite; import flash.events.Event; import flash.net.NetworkInfo; impo ...

  5. Win CE 5.0 增加电池电量显示

    摘自 http://blog.csdn.net/li0531/article/details/8818243 同时只在右上角显示一个 Label 控件,因此代码量精简了很多. [DllImport(& ...

  6. 获取手机的gps定位

    只要手机有GPS模块,可以用HTML5的Geolocation接口获取 在HTML5中,geolocation作为navigator的一个属性出现,它本身是一个对象,拥有三个方法: - getCurr ...

  7. js if for 详解 获取元素方式 及一些js 基础知识

    ##获取元素的新方法## --document.querySelector('Css Selector{css选择器}') 接收一个css选择器(通配,群组,类,包含,id....等) 若这个选择器对 ...

  8. Object-C 1.0 第三章:面向对象编程基础知识(OOP)

    1. 间接(indirection)        1.1 变量和间接(使用变量来代替一些数字)        1.2 使用文件名的间接                const  表示一个变量不允许 ...

  9. 关于GPS偏移的基础知识

    转载地址 我们平时用到的地球坐标系统,叫做WGS84坐标,国家保密插件,也叫做加密插件或者加偏或者SM模组,其实就是对真实坐标系统进行人为的加偏处理,按照几行代码的算法,将真实的坐标加密成虚假的坐标, ...

随机推荐

  1. 大型网站的 HTTPS 实践(三)——基于协议和配置的优化

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt389 1 前言 上文讲到 HTTPS 对用户访问速度的影响. 本文就为大家介 ...

  2. js中面向对象的写法

    function Circle(r){ this.r = r; }//构造(实例对象的)函数[思路二:这是一个类] Circle.PI = 3.14159; //属性 Circle.prototype ...

  3. 九度OJ 1017 还是畅通工程

    #include <iostream> #include <string.h> #include <sstream> #include <math.h> ...

  4. 第07周-集合与GUI

    1. 本周作业简评与建议 本周8分以上的同学有32人(占1/4),其中9分以上的同学有13人(占1/10).大作业未完成的最高评分一般高于6分.被认定为抄袭的为-10分.请大家认真完成大作业,后面每周 ...

  5. 201521123037 《Java程序设计》第14周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 1.1 建立数据库,将自己的姓名.学号作为一条记录插入.(截图, ...

  6. Java:静态内部类的使用目的、使用限制、与非静态内部类的对比

    Java之静态内部类(static class) 在一个类中创建另外一个类,叫做成员内部类.这个成员内部类可以静态的(利用static关键字修饰),也可以是非静态的. 一.静态内部类的使用目的. 在 ...

  7. 13.Linux键盘驱动 (详解)

    版权声明:本文为博主原创文章,未经博主允许不得转载. 在上一节分析输入子系统内的intput_handler软件处理部分后,接下来我们开始写input_dev驱动 本节目标: 实现键盘驱动,让开发板的 ...

  8. SQLite中Cursor类的说明

    在Android 查询数据是通过Cursor 类来实现的.当我们使用 SQLiteDatabase.query()方法时,就会得到Cursor对象, Cursor所指向的就是每一条数据. Cursor ...

  9. birt 集成到现有的web应用中

     我们已经有了一个Javaweb应用,现在要实现对报表的集成 我的应用是这个样子的  说明: 1)  这里使用的是birt4.4版本的, 下载birt-runtime-4.4.zip(在官方下载),然 ...

  10. Spring写第一个应用程序

    ref:http://www.importnew.com/13246.html 让我们用Spring来写第一个应用程序吧. 完成这一章要求: 熟悉Java语言 设置好Spring的环境 熟悉简单的Ec ...