![]() |
1
0
除非房间很大(听起来好像不是因为你遇到的麻烦),否则我认为你找到的任何技术都会有很高的错误率。通过识别无法确定的情况并在这些情况下拒绝这样做以避免错误确定,您可能能够将错误率降到可以接受的程度。 最好的办法是从不同的信标数据包中采样多个RSSI测量值(至少10个以滤除噪声),然后对它们进行平均,可能在这样做之前抛出最高值和最低值。如果这个平均RSSI足够强,比如说<-80 dB(这是您从所有信标上看到的最强信号)您很可能在信标指示的房间内。 如果您远离房间内的信标,RSSI可能会下降,因此不满足上述标准并不意味着您不在房间内。 请记住,如果所有信号都很弱,则不可能确定哪个信标最近——噪声比信号更重要。因此,除非一个信标的RSSI大于,比如说-85 dBm,否则不要下结论。 确保你的信标尽可能强烈地传播信息,并尽可能频繁地进行广告宣传。后者将确保您在短时间内获得足够的RSSI样本。 最后,请记住,不同的安卓手机具有不同的蓝牙天线,或多或少地接收相同的信标数据包。华为P9 Lite在RSSI 20 dB处检测到BLE信号,比类似位置的Moto G4+弱。尽管如此,手机通常不会检测到弱于-100 dBm和低于-90 dBm的信标信号。测量值非常弱,几乎无法用于确定相对距离。 |