iBeacons:与信标有关吗?
Posted
技术标签:
【中文标题】iBeacons:与信标有关吗?【英文标题】:iBeacons: bearing to beacon? 【发布时间】:2013-11-16 10:45:38 【问题描述】:部分是编码问题,部分是数学问题。
第一季度。我有一个启用了指南针的 ios 设备。如果它知道我正在通过 iBeacon 的场 - 或者 Beacon 正在通过我的检测范围 - 手机是否有可能通过一系列读数(大致)计算出该信标的相对方向/方位通过比较信号强度?有人试过吗?
第二季度。是否可以定期(例如:每秒)更改信标的主要和次要值以传递少量信息 - 例如第二个用户的方位和航向?
【问题讨论】:
即使距离度量是完美的(事实并非如此),为了推断信标位置,知道手机的方位方向似乎并没有多大用处,而是您想知道与每个信号强度读数相对应的手机本地 位置。只有在您尝试对 BLE 天线方向性进行建模时,方向才会真正有所帮助,但如果不包括用户的手和身体,这可能会很困难。 【参考方案1】:第一季度。这可能是可能的,但您需要一个受控的环境。信标或电话都需要修理。您还需要处于没有障碍物或无线电干扰源的区域。
然后您需要使用信号强度(马虎且变化相当大)作为一个输入,以及设备的航向信息(这也是非常不准确的)并对其进行一些琐碎的数学运算。
假设您可以计算出数学,输入读数中的倾斜可能会使结果太不确定而无用。 (例如,您如何区分直接向信标移动与向一侧或另一侧移动 30 度?信号强度仍会增加,只是没有那么快。
而且您的算法必须处理边缘情况,例如沿着信标周围的圆圈移动。在这种情况下,信号强度不应改变。
我的直觉是,即使使用聪明的算法,输入数据也太不可靠了,除了“变热”和“变冷”之外,没有什么意义。
【讨论】:
【参考方案2】:如上所述,您必须跟踪设备在场内的移动,包括覆盖的距离和方向,然后通过多次读取信号强度,理论上您可以在一定程度上准确计算与信标的相对方向。
【讨论】:
【参考方案3】:关于您关于更改次要版本号的第二个问题,我没有看到任何信标 API 允许这样做,无论是来自信标制造商还是来自 Apple 的实施。
但是,典型的信标是运行程序的 ARM 或其他带有 BLE 收发器的低功耗处理器。理论上,应该可以创建您自己的 iBeacon 发射器,该发射器更改其中一个参数以传输不断变化的信息。您必须使用仅指定 UUID 或 UUID 和主要 ID 的信标区域设置 iOS 设备(取决于您是只想更改次要 ID 还是同时更改主要和次要 ID 以传输更改的信息。)
还要注意,iBeacons 是 BLE 的一种特殊情况,BLE 标准确实支持发送任意变化的数据。您最好实施自己的 BLE 方案来代替 iBeacons 或在 iBeacons 之外实施。
【讨论】:
以上是关于iBeacons:与信标有关吗?的主要内容,如果未能解决你的问题,请参考以下文章
一个 ibeacon(信标)可以模仿 NFC 的近距离发送通知吗? [关闭]