卫星定位系统 - GPS/GLONASS/北斗:

关于GPS、GLONASS、北斗、伽利略系统的科普请自行谷歌。

GPS是使用最广泛的全球定位网络,几乎是所有智能手机的标配。进几年,俄罗斯的GLONASS定位功能也逐步加入智能手机芯片,与GPS组成双定位系统,定位速度大幅提升。中国自主研发的北斗导航系统,也开始出现在部分高端机型。至于欧洲的伽利略系统,目前还没有见到有哪部手机支持。

卫星定位系统的优点在于精度高,误差一般在15米以内。GPS芯片会接收天空中多颗卫星的同步信号,然后根据信号的相位差,计算出具体的经纬度。保持多颗卫星信号同步,将误差控制在纳秒级以下,是GPS核心技术之一。

下图是Android平台的著名GPS应用GPSTestPlus截图,可以看到本机支持GPS和GLONASS双定位系统(圆点为GPS卫星,三角形为GLONASS卫星),以及定位卫星在天球上的投影。

WIFI定位:

路由器默认都会进行SSID广播(除非用户手动配置关闭该功能),在广播帧包含了该路由器的MAC地址。此时需要采集装置进行MAC信息采集和信号强度信息采集,并上传到服务器,经过服务器的计算,保存为“MAC-经纬度”的映射。例如谷歌的街景采集车,曾经因隐私问题在德国被定性为非法。在国内,通过用户智能手机应用的后门功能采集,则是数据公司获取“MAC-经纬度”映射信息的主要途径。一般情况下,用户周边会有多个WIFI信号源,此时手机会默默地解析出所有WIFI的MAC地址,如果某些WIFI的信息在数据库中已经存在,则可以根据信号强度,推导出未知WIFI的经纬度。如果没有已知WIFI,而手机碰巧开着GPS,则也能完成数据采集。用户在不知情的情况下为地图公司搜集了所有的数据。可以想象,这样的数据量是非常庞大的。

基站定位:

基站数量远少于WIFI,且基站都有公开的位置数据,因此采集工作相对简单。

多种定位途径的精确度:

卫星定位系统  > WIFI  > 基站(蜂窝网络)。因此优先级也是卫星定位系统最高。

以Android设备为例,如果用户未关闭GPS功能,则优先使用GPS,从GPS模块读取时钟校准、经纬度等数据。如果同时还开着WIFI和基站,则会同时采用WIFI和基站辅助定位,减少GPS芯片的计算步骤,提高定位速度,这就是A-GPS。

如果关闭GPS,而WIFI模块保持开启,手机会读取周边所有WIFI信号的MAC地址和信号强度,并上传至某公司(通常是地图供应商)的服务器,服务器查询并计算后会返回经纬度。WIFI的覆盖范围一般只在50米内,因此定位精度非常接近卫星定位系统。

如果WIFI模块也关闭了,那么只有通过基站(蜂窝网络)了。此时手机会接收到基站的小区ID,上传至服务器查询,服务器同样返回经纬度。但此时精度较差,误差一般在100以上,毕竟基站的覆盖范围也是很大的,仅凭信号强度是难以计算出精确位置的。

需要注意的是,WIFI方式和基站方式,都需要联网,要不你怎么和服务器联系?但是WIFI模块打开后,即可进行WIFI扫描和信息采集,不必连接到某一AP上,基站也是一样,不必打开蜂窝网络。因为向服务器发起查询请求,既可走蜂窝数据流量,也可走WIFI流量。

      

苹果系统中,用户无法控制GPS模块的开启和关闭,因此定位途径会根据状况自行决定。室内会自动使用WIFI或者基站。

手机定位原理 - GPS/GLONASS/北斗 + WIFI + 基站的更多相关文章

  1. 手机定位原理 - GPS/GLONASS/北斗 + WIFI + 基站(转)

    卫星定位系统 - GPS/GLONASS/北斗: 关于GPS.GLONASS.北斗.伽利略系统的科普请自行谷歌. GPS是使用最广泛的全球定位网络,几乎是所有智能手机的标配.进几年,俄罗斯的GLONA ...

  2. 手机定位室内gps没信号

    手机定位一般分3种,gps,手机信号基站,上网地点,其中gps信号一般只有户外有,所以在室外的时候只开启定位和gps就可以定位了,但是在室内没有gps的情况,就需要开网络定位了.

  3. [android] 手机卫士手机定位的原理

    手机定位的三种方式:网络定位,基站定位,GPS定位 网络定位,手机连上wifi 2g 3g的时候,手机会有一个ip,误差很大 基站定位,精确度与基站的多少有关,几十米到几公里的误差 GPS定位,至少需 ...

  4. 手机自带的显示基站命令(android手机定位,iphone基站定位)

    手机自带的显示基站命令(安卓手机定位,苹果手机基站定位) 分类: 通信和网络2012-02-07 17:48 1734人阅读 评论(0) 收藏 举报 手机htciphone中兴三星网络 安卓手机自带快 ...

  5. iOS定位原理和使用建议(转)

    原文:http://ibbs.91.com/thread-1548870-1-1.html 看到很多网友讨论iOS设备定位的问题,这里将我们所了解的关于iPhone.iPad.iPod等的定位原理做详 ...

  6. 最全的LBS手机定位技术说明

    随着手机技术的发展定位方式也发生了非常大的变化.获取手机位置有非常多种方式. 第一种:CELL-ID定位原理 通过移动网络获取设备当前所在的Cell信息来获取设备当前位置.当设备位置更新设备会向当前服 ...

  7. Android手机定位技术的发展

    基于以下三种方式的移动位置:1. 网络位置 :2. 基站定位. 3. GPS定位 1 网络位置 前提是连接到网络:Wifi.3G.2G 到达IP址  比如:彩虹版QQ,珊瑚虫版QQ,就有一个功能显示对 ...

  8. 改Android手机定位位置

    手机定位方法 1,gps等卫星定位,如美国的gps,欧洲的伽利略,中国的北斗等,通过至少三颗卫星,用三角定位和时间等算法,计算出设备的经纬度,到地图上找到这个经纬度的地名 2,移动运营商基站定位,通过 ...

  9. 室内定位系列(一)——WiFi位置指纹(译)

    原文:<Advanced Location-Based Technologies and Services>--chapter 2 WiFi Location Fingerprint 作者 ...

随机推荐

  1. Using OpenCV with gcc and CMake

    Using OpenCV with gcc and CMake Note We assume that you have successfully installed OpenCV in your w ...

  2. 微信小程序资料集合

    一:官方地址集合: 1:官方工具:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html?t=1476434678461 2: ...

  3. having的用法以及与where区别介绍

    having子句可以让我们筛选成组后的各种数据,having子句在查询过程中慢于聚合语句,接下来通过实例介绍下,感兴趣的你可以参考下,希望可以帮助到你 having的用法 having子句可以让我们筛 ...

  4. struts2环境搭建和第一个程序

    环境搭建 项目目录 导入依赖jar包,如上图lib目录所示. 不同的版本可能会不一样,没关系在tomcat启动时,如果报错java.lang.ClassNotFoundException,我们可以按照 ...

  5. android_handler(三)

    这篇记录 android 消息机制中,MainThread 向 WorkThread 发送消息.( MainThread → WorkThread ) 步骤: 1.准备looper对象 2.在子线程中 ...

  6. 百度的android采访分析

    今天早上10分,我接到一个电话采访百度.当然,我说提前.我的病是多么强烈延迟.所以我也没怎么准备,当然,我也看他们的真实水平的思考.在这次审查中! ! ! ! ! !! .! ! ! !.!! !.! ...

  7. android音乐播放器开发 SweetMusicPlayer 播放本地音乐

    上一篇写了载入歌曲列表,http://blog.csdn.net/huweigoodboy/article/details/39856411,如今来总结下播放本地音乐. 一,MediaPlayer 首 ...

  8. Mysql show Status参数详解

    状态名 作用域 详细解释 Aborted_clients Global 由于客户端没有正确关闭连接导致客户端终止而中断的连接数 Aborted_connects Global 试图连接到MySQL服务 ...

  9. delegate和event

    经过查阅资料和自己的理解整理出来的,欢迎大家指教. delegate和event 何时使用: 异步的时候,比如加载完成通知. 需要回调的时候,比如按钮点击.动画播放结束等. 发送事件通知的时候. 比如 ...

  10. hadoop错误DataXceiver error processing WRITE_BLOCK operation

    错误: DataXceiver error processing WRITE_BLOCK operation 原因:     文件操作超租期,实际上就是data stream操作过程中文件被删掉了. ...