iBeacons:承载着灯塔?

时间:2013-11-16 10:45:38

标签: ibeacon

部分是编码问题,部分是数学问题。

Q1。我有一个指南针活跃的iOS设备。如果它知道我正在穿过iBeacon的领域 - 或者信标正在我的检测范围内移动 - 那么手机是否可以通过一系列读数(粗略地)计算出该信标的相对方向/方位通过比较信号强度?有人试过这个吗?

Q2。是否有可能定期更改灯塔的主要和次要值(例如:每秒)以传递一小段信息 - 例如第二个用户的方位和路线?

3 个答案:

答案 0 :(得分:3)

Q1。它可能是可能的,但你需要一个受控的环境。信标或电话需要修复。您还需要处于没有障碍物或无线电干扰源的区域。

然后你需要使用信号强度(这是一个草率并且变化很大)作为一个输入,以及设备的标题信息(这也是非常不准确)并对其进行一些小的数学计算。< / p>

假设你可以计算出数学,输入读数中的斜率可能会使得结果也很有用。 (例如,你如何区分直接朝向信标移动30度到一侧或另一侧?信号强度仍然会增加,而不是那么快。

您的算法必须处理边缘情况,例如沿着信标周围的圆圈移动。在这种情况下,信号强度不应改变。

我的直觉是,即使使用聪明的算法,输入数据也太不可靠了,除了“变暖”和“变冷”之外,还有其他意义。

答案 1 :(得分:0)

如上所述,你必须跟踪你的设备在场内的移动,包括距离覆盖和方向,然后通过多次信号强度读数,你理论上可以计算到信标的相对方向。准确度。

答案 2 :(得分:0)

至于关于更改次要版本号的第二个问题,我没有看到任何信标API允许这些信号API来自信标制造商或Apple的实现。

然而,典型的信标是ARM或其他具有BLE收发器的低功耗处理器,运行程序。从理论上讲,应该可以创建自己的iBeacon发射机,改变其中一个参数,以便传输不断变化的信息。您必须设置具有信标区域的iOS设备,仅指定UUID或UUID和主要ID(取决于您是只想更改次要内容还是更改主要和次要ID以传输更改信息。)

另请注意,iBeacons是BLE的特例,BLE标准确实支持发送任意的,不断变化的数据。除了iBeacons之外,您可能最好不要实施自己的BLE方案。