计算用户在车辆中移动时距信标的距离

时间:2015-07-31 11:44:02

标签: android bluetooth-lowenergy ibeacon ibeacon-android altbeacon

如果用户在2-15kmph的车辆中移动,如何使用BLE信标计算距离?另外,如果距离不能给我准确的结果,还有其他任何机制可以帮我计算最近的beacon。默认实现不能给我正确的结果,因为距离估计有20秒的滞后。 其次,在哪些情况下应使用ARMA过滤器。

1 个答案:

答案 0 :(得分:3)

信标距离估算值仅为估算值,因此您必须相应地设置准确度预期值。为了降低无线电信号电平的噪声,许多样本在一段时间内取平均值。

确定适当的平均时间取决于用例。如您所知,Android Beacon Library默认使用20秒的运行平均值。这给出了基于过去20秒内车辆平均位置的距离估计值。

对于行驶速度达到15公里/小时(约5米/秒)并且信标传输半径为50米的车辆,它将在信标的范围内最多10秒。您需要进行多少距离测量?如果一个足够,平均超过10秒。如果您需要更多,请将周期设置得更短。

了解减少采样间隔会为距离估计增加更多噪声误差,因为您将使用更少的统计样本。您可以采取一些措施来充分利用您获得的样本:

  1. 将信标设置为尽可能频繁地进行广告。一些信标以1Hz或更低的频率通告以节省电池电量。这导致差距估计不佳。如果可能的话,将其增加到10Hz或更高。

  2. 关闭信标上的蓝牙可配置性/可连接性。某些Android设备在可连接模式下每个BLE扫描只允许一个信号级样本(默认情况下在库中为1.1秒)。这可能会使您的样品在10 Hz时失去90%。

  3. 将信标发射机配置为最高功率设置并正确校准。信号越强,信噪比越高,距离估计越好。

  4. ARMA过滤器使用基于每个样本中%变化的不确定样本间隔。对于慢速移动信标接收器的用例更合适。