2


我正在使用 iBeacons 撰写关于室内导航的学士论文。为此,我使用三边测量来找到我的位置。我一直在使用 android 信标库,现在称为 AltBeacon 库来检测信标并计算距离。我注意到,我得到的距离不是那么准确,经过一番搜索后,我看到了 DavidYoung 的一篇文章,说因为大多数设备都有不同的蓝牙天线,我在计算距离时必须考虑到这一点。
AltBeacon 库像这样计算距离(取自 DavidYoungs的帖子):

protected static double calculateAccuracy(int txPower, double rssi) {
  if (rssi == 0) {
    return -1.0; // if we cannot determine accuracy, return -1.
  }

  double ratio = rssi*1.0/txPower;
  if (ratio < 1.0) {
    return Math.pow(ratio,10);
  }
  else {
    double accuracy =  (0.89976)*Math.pow(ratio,7.7095) + 0.111;    
    return accuracy;
  }
}   

我现在的问题是:我如何计算我的 Lg G2 的这些值(0.89976、7.7095、0.111),并从信标以特定的米间隔进行 RSSI 测量?
我发现是作为计算系数的测量值的示例。

Nexus 5 距离数据

米 RSSI
0.25 -41
0.5 -43
1 -49
2 -65
3 -58
4 -57
5 -67
6 -67
7 -77
8 -70
9 -69
10 -75
12 -72
14 -72
16 -78
18 -83
20 -81
25 -81
30 -75
40 -83

Android 设备:
版本:4.4.2
build_number:LPV79
型号:Nexus 5
制造商:LGE

信标信息:
RadBeacon 标签
每秒广告数:10
发射功率:最大

iPhone 5s 平均 RSSI @1m:-51

为这些值计算的距离公式系数

:截距:0.1820634
乘数:0.8229884
幂:6.6525179

术语截距表示线性回归,但是当我将这些值放入线性回归计算器时,它给出的结果与这些值相去甚远。
我希望你能帮助我,我的问题很清楚:)

4

1 回答 1

3

在进行最佳拟合回归时,您可以使用多种公式。对于距离计算,我们使用功率曲线,免费的 R 统计包支持拟合。您可以在此处阅读有关如何执行此操作的更多信息:

https://github.com/AltBeacon/android-beacon-library/issues/47

虽然获得特定于设备的公式将帮助您获得更好的距离估计,但您从三边测量输出中看到的大部分误差可能来自信号噪声、衰减障碍物和多径。了解即使使用特定于设备的公式,信标测距也是不精确的,并且距离设备越远,精度就越差。为了减轻这些影响,如果可能的话,尽可能靠近移动设备,让您的信标保持清晰的视线。

于 2015-01-14T12:08:49.880 回答