Win CE 6.0 获取手持机GPS定位1----基础知识 (C#)
一.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#)的更多相关文章
- Win CE 6.0 获取手持机GPS定位2----示例代码 (C#)
一.须知 1.手持机(PDA)必须有GPS模块,才能通过代码使用串口通信获取GPS相关信息 2.要清楚自己手持机(PDA)固定的GPS通信串口号,如我们公司的手持机获取GPS信息的串口为COM4 3. ...
- 从0开始学爬虫4之requests基础知识
从0开始学爬虫4之requests基础知识 安装requestspip install requests get请求:可以用浏览器直接访问请求可以携带参数,但是又长度限制请求参数直接放在URL后面 P ...
- Python黑帽编程3.0 第三章 网络接口层攻击基础知识
3.0 第三章 网络接口层攻击基础知识 首先还是要提醒各位同学,在学习本章之前,请认真的学习TCP/IP体系结构的相关知识,本系列教程在这方面只会浅尝辄止. 本节简单概述下OSI七层模型和TCP/IP ...
- [As3.0] 获取本机信息
package { import flash.display.Sprite; import flash.events.Event; import flash.net.NetworkInfo; impo ...
- Win CE 5.0 增加电池电量显示
摘自 http://blog.csdn.net/li0531/article/details/8818243 同时只在右上角显示一个 Label 控件,因此代码量精简了很多. [DllImport(& ...
- 获取手机的gps定位
只要手机有GPS模块,可以用HTML5的Geolocation接口获取 在HTML5中,geolocation作为navigator的一个属性出现,它本身是一个对象,拥有三个方法: - getCurr ...
- js if for 详解 获取元素方式 及一些js 基础知识
##获取元素的新方法## --document.querySelector('Css Selector{css选择器}') 接收一个css选择器(通配,群组,类,包含,id....等) 若这个选择器对 ...
- Object-C 1.0 第三章:面向对象编程基础知识(OOP)
1. 间接(indirection) 1.1 变量和间接(使用变量来代替一些数字) 1.2 使用文件名的间接 const 表示一个变量不允许 ...
- 关于GPS偏移的基础知识
转载地址 我们平时用到的地球坐标系统,叫做WGS84坐标,国家保密插件,也叫做加密插件或者加偏或者SM模组,其实就是对真实坐标系统进行人为的加偏处理,按照几行代码的算法,将真实的坐标加密成虚假的坐标, ...
随机推荐
- String类的重要方法与字段
1.Length():获取当前字串长度 2.charAt(int index):获取当前字符串对象下标index处的字符 3.getChars():获取从指定位置起的子串复制到字符数组中 参数:int ...
- 花生壳DDNS为何不支持LetsEncrypt申请
Inspired by Let's Encrypt Community , thx to sahsanu, jsha, and orzorc. 开端 Lets Encrypt 是一款免费的网站 SSL ...
- python爬虫scrapy框架——人工识别登录知乎倒立文字验证码和数字英文验证码(2)
操作环境:python3 在上一文中python爬虫scrapy框架--人工识别知乎登录知乎倒立文字验证码和数字英文验证码(1)我们已经介绍了用Requests库来登录知乎,本文如果看不懂可以先看之前 ...
- setTimeout,setInterval你不知道的事
javascript线程解释(setTimeout,setInterval你不知道的事) 标签: javascript引擎任务浏览器functionxmlhttprequest 2011-11-21 ...
- php的mysql语句里变量加不加单引号问题
第一种[{$_GET['id']}加不加单引号都能正常执行没问题] $sql = "select * from `news` where `id` = {$_GET['id']}" ...
- 201521123117 《Java程序设计》第4周学习总结
1. 本周学习总结 Q1.1 尝试使用思维导图总结有关继承的知识点. Q1.2 使用常规方法总结其他上课内容. 答:控制可见性的4个访问修饰符private -- 仅对本类可见public -- 对所 ...
- 201521123061 《Java程序设计》第三周学习总结
1. 本章学习总结 2. 书面作业 **Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2 ...
- 201521123113 《Java程序设计》第2周学习总结
1.本周学习总结 学习了各种java数据类型以及各种运算符的使用 string类之所以好用是因为这是人可以看得懂的类型,操作简便 Scanner扫描器与标准输出输入用法上的不同,Scanner较标准输 ...
- 201521123117 《Java程序设计》第14周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 建立数据库,将自己的姓名.学号作为一条记录插入.(截图,需出现自 ...
- 201521123001《Java程序设计》第10周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常与多线程相关内容. 2. 书面作业 本次PTA作业题集异常.多线程 finally 题目4-2 1.1 截图你的提交结果(出现学 ...