使用iBeacon RSSI进行房间进入/退出检测

时间:2017-11-20 05:32:55

标签: android ibeacon rssi

我正在使用iBeacon检测某人是否进入或离开房间。实施如下:
每个房间放置两个信标。一个在门,另一个在门附近。
2.要检测进入,用户必须通过门信标,然后通过房间内的信标。退出时,反之亦然。

问题:
如果存在彼此过于相邻的房间,则会发生重叠,导致检测错误

计划解决方案:
当检测到内部房间时,使用RSSI检测哪一个是最近的信标。我想在给定的时间内检查RSSI分布的偏度,比如自用户检测到内部信标以来大约1到2秒。

是否有其他统计分析或任何数据分析可用于确定或检查用户输入的房间的概率?

1 个答案:

答案 0 :(得分:0)

除非房间非常大(听起来它们不是基于您遇到的麻烦),我认为您找到的任何技术都会有很高的错误率。您可以通过识别无法做出决定并且在这些情况下拒绝执行此操作以避免错误确定的情况,将此错误率降低到可接受的程度。

您最好的选择是从不同的信标数据包中采样多个RSSI测量值(至少10个以滤除噪声),然后对它们取平均值,可能会在此之前抛出最高值和最低值。如果该平均RSSI足够强,则说< -80 dB(这是你从所有信标中看到的最强信号)你很有可能在信标指示的房间里。

如果你远离房间里的灯塔,RSSI可能会下降,因为上述标准不符合并不意味着你不在房间里。

请记住,如果所有信号都很弱,则无法确定哪个信标最接近 - 噪声变得比信号更重要。因此,除非一个信标的RSSI强于-85 dBm,否则不能得出结论。

确保您的信标尽可能强烈地传输并尽可能频繁地进行广告宣传。后者将确保您在短时间内获得足够的RSSI样本。

最后,请记住,不同的Android手机具有不同的蓝牙天线,并且或多或少地接收相同的信标包。华为P9 Lite检测BLE信号的RSSI比同样放置​​的Moto G4 +弱20 dB。无论如何,手机通常不会检测到-100 dBm和-90 dBm以下的信标信号,测量结果非常弱,以至于无法确定相对距离。