寻找蓝牙低功耗设备的RSSI值的距离

我正在开发蓝牙低功耗概念项目。 我正在获取1到100之间的RSSI值。移动标签时,RSSI值随着外围设备离开iPhone而增加,并随着距离越来越近而减小。

任何人都可以帮助我根据RSSI值得到iPhone和蓝牙标签之间的确切距离吗? 有没有可用的公式?

我正在通过这个蓝牙获得设备的RSSI值低能量委托方法:

- (void)centralManager:(CBCentralManager *)central didDiscoverPeripheral:(CBPeripheral *)peripheral advertisementData:(NSDictionary *)advertisementData RSSI:(NSNumber *)RSSI 

我用另一个线索回答了这个问题,在这里重复。

在视线范围内(没有任何障碍导致RSSI变化),- 6dB似乎是距离的两倍

如果你在1m距离读RSSI -40dB然后2m给-46dB,4m给-52dB,8m给-58dB,16m给-64dB。

你不能得到一个确切的位置,只有一个圆形的最大距离。

使用2-3个或更多的设备进行三angular测量,您可以获得更准确的定位结果。 您可以纯粹从广告软件包得到这个,但是您必须禁用扫描 – >启用扫描或告诉iOS CoreBluetooth报告所有adv软件包。

在前台模式,你可以做到这一点,但在后台模式下,你不能得到所有的adv包。 您必须连接并阅读RSSI才能在后台执行此操作。

有相当多的基于RSSI的定位技术,如三angular测量和指纹识别。 没有一个是完美的。 RSSI受障碍,多path衰落,天线极化和跨体屏蔽等诸多因素的影响。

RSSI和距离之间的理论关系如下所示:

 RSSI[dbm] = −(10n log10(d) − A) 

其中d是距离, A是距离BLE装置测量的RSSI 1米点的偏移量。

只需谷歌的RSSI[dbm] = −(10n log10(d) − A) ,你会发现一些关于它的来源。

从RSSI发现距离是有点棘手,它取决于很多因素,甚至testing环境和天线方向等。下面的文章是有一些研究相同的http://www.s2is.org/Issues/v1/n2/papers/ paper14.pdf