如何使用 RSSI 改进蓝牙距离测量?

How to improve Bluetooth distance measuring using RSSI?

对于我的项目,我需要估计智能手机和蓝牙模块之间的距离。估计不必非常精确。我只需要确定误差范围约为 50cm 的距离。

我确实在distance-steps 10cm处测试了两个蓝牙模块的RSSI。我为每个步骤测量了 5 次 RSSI,并获得了 5 次测量的平均值。平均值如下图所示:

红线和蓝线类似于两个蓝牙模块。您可以看到结果不是很线性。造成这种情况的原因之一是干扰,所以我寻找解决干扰问题的方法。我发现的两种方法是:

但是我真的不明白如何使用上述技术来获得更高的准确性。对于 SNR,我需要噪声值,我如何获得噪声值?

对于比率 rssi/txPower,我可以通过简单地从模块测量 1 meter 处的 rssi 来获得 txPower。所以我知道所有需要的值。但我不知道从现在开始该怎么办。我如何使用这些值来获得更准确的距离估计?

我可以使用任何其他技术来提高准确性吗?

您 运行 了解此技术的实际限制。在短距离(2 米以下)而不是超过 10 米的长距离的理想条件下,获得 +/- 50 厘米的估计精度是可能的。

我写了一篇更长的博客 post 关于这里的限制:http://developer.radiusnetworks.com/2014/12/04/fundamentals-of-beacon-ranging.html

回答您的具体问题:

  1. 不,没有实用的方法可以知道单个 RSSI 测量值的哪些部分来自信号,哪些部分来自噪声。您可以对许多样本取平均值,如果发射器和接收器在样本间隔内保持静止,这会部分消除噪声。

  2. 您询问的技术确实可以为您提供距离估计,但它们具有上述技术的局限性。