zoukankan      html  css  js  c++  java
  • GPS基础知识

    GPS基础知识

    冷启动

    冷启动是指模块内部没有任何参的星历或历书的情况下,模块的首次启动,一般而言,由于模块内部没有星历参数,这个时候接收卫星信号开始,就要在天线接收的范围内不停的寻找并下载星历,它的首次运作时功耗大,内部运算复杂,需要不停的下载当前天空的有效星历,需要一定的时间,冷启动时的灵敏度较弱,主要是模块对自己所处的大概位置没有星历的情况下无法估算,就比如我们到了一个陌生的沙漠荒野,无法得知自己当前所处的方向一样,没有可参照物,为了搞清楚自己所在的位置,你需要找到几个参照物来确定自己所处的位置,你需要做的事情就是仔细的把不熟悉的环境里面每个角落全部找一遍,找出能够得知现有位置的参照物.

    其实GPS模块的工作原理同我们人一样,冷启动的时候要做很多无用功,就是需要把天空里的每一个角落里面的信号象过筛子一样的全部搜索一遍,这个过程中的耗电非常大,在找到一颗卫星之后,要开始下载星历,如果在下载的途中因为信号程度的变化,如比开车途中,车的位置不停的改变,它接受的信号也是无法获得完整的信息,势必造成冷启动的过程延长,在信号弱的地方下载星历的时候也会延长.

    其实这个下载星历的速度比喻跟我们上网没有两样,例如我们刚开机联线,从网上下载一个文件,如果遇上网速好,则很快就可以下载完成,若信号不稳定,有时候会遇上断线,我们的网线下载过程必须重新建立连线,重新开始,而用CDMA/GPRS的用户更有体会,在火车上上网的时候时断时续,当然没有在基站附近效果好.

    当GPS模块连续的寻找到三颗或以上的卫星的时候,它的日子就开始好过了,就比如我们人在野外临时凭感觉绘制了一张草草的地图,你至少可以判定自己的大概位置,这个时候,GPS查找新卫星所设定的范围就会缩小,2D定位,也就是平面定位OK了,接下来就是花的时间去找更多的卫星,到了四颗卫星的时候,OK,3D定位,也就是高度都出来了.

    当模块再工作一阵子,当前的信息都下载得差不多了的时候,模块才正式的进入信号稳定接受的状态,也就是说轻微的移动或是信号的变化对它的影响已经不是太强烈了,主要是内部存储了相应的当前星历,即使短暂丢失,就象是我们熟悉了一个新的环境,凭记忆也能够很快的找回到当前的坐标,这个时候,是不是我们花的时间就会更少呢?

    卫星或是星历就是这样不停的刷新的资料,稳定下来之后呢,耗电自然就降低了.

    这个情况就象你第一次去了大观园,第一次去的时候看到了真正的大象,猴子,老虎,假山,密林,把你弄得个眼花缭乱,分不清东西南北,在里面呆久了,到处都逛遍玩了一整天了,地形也就熟悉了,到头看来大观园就那么巴掌大的地盘,这时来了个顽皮鬼把你眼睛蒙上松开一下,相信你也能很快分清东南西北了.

    于是乎,GPS在这个状态了,即使是偶尔又跑到信号弱的地方,只要是重新调整一下,它重新可以马上进入比较良好的接受状态,即便是工作环境不怎么样,它也能凭些记忆或是内部运算获得定位情况远比在同一地点的冷启动的情况好很多.

    你肯定会想,哦,原来模块正常工作了,这个时候才是我们最想要的,要是模块没有冷启动这个过程多好呀,当然可以通过网络到u-blox的网站里面下载历书也能够做接近的程度,可是不要忘记了,星历跟历书是有区别的,历书是u-blox通过全世界范围内182个地面接受器接受到的卫星资料再通过电脑软件进行卫星模拟轨迹的运算,这个时候历书形成了,可以是1天,7天,或是2周的历书,理论上也可以是几年,也就是说在某些情况下几年都不需要冷启动就能实现上述的情况.

    现实里面遇到的问题是,卫星的运动轨迹并不是我们可以轻易控制,它的运动范围会不停的改变,然后地面站会进行修正指引,再改变再修正,也就是理论上计算完美动运轨迹的历书是不太适合精确范围的定位,但无论有了好的历书之后一定会缩短我们的冷启动时间,所以u-blox的A-GPS也好,还是AssistNow,都是很经典的发明,只是现实应用中需要联网受限罢了.

    热启动

    如果说冷启动的过程是艰难的,就象我们不情愿的每天在一个陌生地要适应新环境,我们有时候要保持自己清醒的头脑,让自己生活在一个熟悉的环境里,看熟悉的电视,听熟悉的音乐,睡熟悉的床,过心情爽朗的晴朗夏日.

    而我们也希望模块也能时候保持这样的好心情,就是熟悉它自己的环境.有的时候我们需要短暂关闭GPS或是整机,为了保存它的使用环境,让它在下一次尽快的进入现有的状态,我们需要给它进行当前星历的保存,让它保存的方法就是使用后备电池,后备电池可以维持模块8-12小时的工作时间,如果我们由于某些原因,在让断电的机器重新启动,也就意味着模块在2个小时以内再次加电,这个时候它的启动会比较快,大约是3秒钟左右达到正常定位的水平,原因是当前天空的卫星状态没有太大的改变,也就是说经过我们头顶的卫星移动变化得不是很远,就象是我们在家里附近的地区你往往也能够很快找到回家的路,因为这个时候你的参照物变化得比较小.

    别看这一颗小小的后备电池或后备电源,足可以让你省去许多的烦琐的等待过程.

    温启动

    有的时候我们未必就选择在2小时内开机,除非是你真的很有耐心每两个小时启动一次,可是谁又会这样做呢?如果机器关闭即模块主供电断电2个小时之后,在后备电池还有电能的情况下,在不超过8个小时之内的情况是,当我们再次启动模块导航的时候,就会发现模块启动也不是很快,比热启动慢了很多,只是比冷启动收星要快,对环境的要求比冷启动要求有降低,这种情况会分很多种不同的原因,例如时间或头顶的卫星状况越接近保存时候的状态,它的定位时间就会越短,反之就会越长,通俗点来讲就是模块断电的时间越长,它所再次接通导航花的时间也会增加.

    解释它的原因就是如果我们离家离的时间越是相隔得短,再次回到家里你越快熟悉周围的环境,如果这个时候你的脑袋里的记忆棒没有出问题的话.

    而一旦时间太长,时过境迁的话,头顶的卫星全部变化了,星历也不起多大的作用了,例如过了20小时,没办法,机器仍旧是冷启动了.

    计算机是人设计的程序指行机器,它的思维不能超越人的思维模式,而很多时候人工IA的智能产品例如GPS系统,其实也是基于人工想法的实现,在自然规律的变化中找到相应的解决方案,了解我们人类自身的思维活动规律,就可以更好的为我们的产品进行更好的更新的设计服务.

  • 相关阅读:
    百度mp3地址解密码
    VB 在EXE后附加信息
    截屏函数
    Base64和StrToByte
    The Android ION memory allocator, DMABUF is mentioned as well
    DDC EDID 介绍
    Memory management for graphic processors TTM的由来
    科普 写display driver的必看 How video card works [2D的四种主要操作]
    GEM vs TTM
    DMABUF 背景介绍文章 Sharing buffers between devices
  • 原文地址:https://www.cnblogs.com/Mysterious/p/5758571.html
Copyright © 2011-2022 走看看