这部分涉及编码和数学问题。
问题1:如果我使用带有指南针的iOS设备,并且它知道我正在iBeacon的范围内移动,或者iBeacon正在我检测范围内移动,通过比较信号强度的一系列读数,能否粗略地计算出该信标的相对方向/方位角?是否有人尝试过这个方法?
问题2:是否可以定期更改信标的Major和Minor值(例如:每秒钟)以传递小的信息片段,例如第二个用户的方位和航向?
这部分涉及编码和数学问题。
问题1:如果我使用带有指南针的iOS设备,并且它知道我正在iBeacon的范围内移动,或者iBeacon正在我检测范围内移动,通过比较信号强度的一系列读数,能否粗略地计算出该信标的相对方向/方位角?是否有人尝试过这个方法?
问题2:是否可以定期更改信标的Major和Minor值(例如:每秒钟)以传递小的信息片段,例如第二个用户的方位和航向?
问题1:这可能是有可能的,但需要一个受控环境。信标或手机中的一个需要被固定,而且你还需要处于没有障碍物或无线电干扰源的区域。
然后,你需要使用信号强度(不太准确且变化较大)作为一个输入,以及设备的方向信息(也非常不准确),并对其进行一些复杂的数学计算。
假设你能解决数学问题,输入读数的不准确性可能会导致结果过于模糊,无法发挥实际用途。(例如,你如何区分直接朝向信标与向左或向右30度移动的区别?信号强度仍会增加,只是增长速度不同。)
而且你的算法还必须处理像围绕信标移动的圆等边缘情况。在这种情况下,信号强度不应该改变。
我的直觉是,即使有聪明的算法,输入数据也过于不可靠,除了“越来越暖”和“越来越冷”之外,很难从中获得任何有意义的信息。