iBeacon如何定位

来源:互联网 发布:三菱plc编程软件fx 编辑:程序博客网 时间:2024/05/21 19:27

首先什么是iBeacon?

  它是一种基于BLE(低功耗蓝牙)的信号广播设备。每一个设备有一个唯一的ID(UUID+Major+Miner)。iBeacon利用这种特性,在一个区域内广播自己的信号,通过这种方式它就完成了对一个特定的区域的标记。当用户拿着手机进入iBeacon的范围时,手机中的APP将会被唤醒,这样手机就可以感知到用户的地理位置发生了变化,判断是否要触发一些事件。目前Apple在其iOS SDK中提供了完整的支持来实现这些功能。

  然后,我们讲下如何测距

  iBeacon的信号强度采用RSSI值表示。与其他无线信号一样,随着距离的远近,RSSI值会产生变化。我么可以通过RSSI值的变化来判断用户距离iBeacon设备的远近。而设备距离iBeacon的距离,在iOSSDK中可直接通过iBeacon对应的Accuracy值读出,单位为米。下图我们先对一个iBeacon设备进行的距离测试测试距离分别为1米和4米。

  Sensoro在实践中发现,由于信号的波动,以及物理空间复杂的环境因素,iBeacon的距离测算并不是十分精准。Apple定义了四种范围值:

  1. Immediate 很近,小于1米。

  2.Near 附近,约1米-3米。

  3.Far 较远。

  4.Unknown 未知,一般出现在启动阶段,或者因为某些原因无法判断。

  这里需要注意的是,当处于Far的状态并不一定距离iBeacon真的很远,很可能我们距离iBeacon很近(比如1米),但还没有足够的数据证明我们距iBeacon很近。所以Far只是表示了一个大圈的范围,设备可能在范围内的任意一个点。

  Sensoro实践——定位方案

  传统的GPS定位精度在10米左右,而iBeacon的定位精度可从一米至几十米。从这一点来说,iBeacon的定位精度要优于GPS。 GPS可以定位出一个误差较大范围,比如判断用户在某个楼内。而利用iBeacon可以判断出用户是否在某个位置附近,以及大致的距离。下面Sensoro和您探讨下利用iBeacon进行定位的不同的解决方案。

  方案一:单点定位

  在识别设备位置时,如果有Near范围内的iBeacon,则取该iBeacon点的坐标。采用这种方式可以通过密集部署iBeacon设备来达到比较高的精准定位,比如咖啡馆桌子定位。也可以实现精度要求比较低的室内定位,如商场地图识别现在的位置,可接受的精度应该在5米范围内。这种方案对部署人员的要求最低。

  方案二:两点定位

  一条直线,部署两个点。用户在两点之间的某一点时,通过RSSI信号来计算距离比例,判断用户的位置。X/Y = n;用户的范围是一条双曲线,然后根据距离用户最近的iBeacon点的Accuracy值判断用户位置。这种方案需要一定的部署经验,适合走廊之类狭窄的区域。

  方案三:多点定位

  Sensoro实践中,还可以记录每一个点的坐标,然后根据测得的RSSI值进行复杂的计算,得出用户的坐标位置。 这种方案对部署要求较高,需要较准确地标记设备的坐标,适合于较空旷的屋子。

  小结

  目前在Sensoro的实践过程中,单点定位被应用的最为广泛,实施难度小,定位精准程度可调。在咖啡馆,博物馆可以轻松完成位置识别与互动交互,具有很重要的实际意义。而多点定位多被用于宽敞的室内,可以用来时时定位用户的大致位置。多点定位算法难度较高,又由于信号可能被室内其他物体遮挡,在实施过程中需要专业团队的支持才能达到一定效果。Sensoro建议:目前实施室内定位,采用单点定位方式较为理想,但可以采用布点密度来弥补定位精度问题,同时可以加入两点定位用于对精度要求不高的位置。

  iBeacon的实施难点

  1. 安装难点。部署iBeacon需要记录该iBeacon的部署位置,在地图上的坐标。还要确保设备的信号尽量不被遮挡。

  2. 开发难点。由于硬件设备在物理世界中信号收到或多或少的影响,多点定位难度较高。

  3. 维护难点。如何保证iBeacon设备的正常运转?巡检、防丢、维修,都是有待解决的问题。

  总结

  iBeacon作为一种新型的位置感知技术,前景巨大。虽然目前还有很多问题需要解决,但随着这项技术的发展以及生态系统的完善,Sensoro相信iBeacon终将为世界带来颠覆性的改变。


0 0
原创粉丝点击