我有几个关于Radius网络信标的问题。
- 我们如何获得android设备和信标到目前为止,我们正在走过的距离"android信标库"正在波动
- 我们如何限制信标的传输半径,比如允许信标只传输5米或20厘米
请找到各种设备(Moto g、Nexus 5、Nexus 4和iPhone 5s)的带有信标距离读数的图像
您总是会看到信标距离估计值的波动,因此您必须适当设置您的期望值信标距离估计是从使用移动设备上的蓝牙无线电测量无线电信号强度开始的。更强的信号意味着信标更近,而较弱的信号则意味着信标更远。信标在1米处发送其预期信号强度的参考值,实际上说"如果你在一米外,你应该看到我的信号电平为-56 dBm"。然后,手机内部的一个公式试图根据任何给定时间的信号水平来猜测它离手机有多远。如果信号比-56dBm弱一点,例如-65dBm,则公式可能估计距离为2.5米。
这种技术并不完美,波动的原因有几个:
- 总是存在背景无线电噪声(如旧AM无线电上的静态噪声),这会导致单个信号强度测量值发生变化
- 蓝牙收音机内部的模数转换器存在错误,这也会导致单个信号强度测量值发生变化
- 蓝牙无线电波从一些物体反射并被其他物体吸收,使实际信号强度在相同距离的不同位置以及附近其他物体移动时发生变化
- 发射器和接收器上的天线方向图都不是完美的球形。这意味着,当你转动手机或信标时,你会看到一个稍微不同的信号水平
您可以做一些事情来最大限度地减少错误:
-
使用尽可能频繁地发射的信标,最好是10Hz或更高频率。更多的传输意味着信号电平的更多统计样本,当将其平均在一起时,这有助于减轻来自上述源1和2的误差。
-
在信标上使用尽可能高的发射机功率设置。信号越强,来自上述源1的噪声水平(相对而言)就越低。
-
如果可能,将信标放置在接收设备视线清晰的地方。开销通常效果最好。
然而,你所能做的最好的事情就是尽可能地减少变化。你无法消除它。因此,你必须设计你的应用程序,这样的变化是可以接受的。如果这对您的用例有帮助,您还可以降低信标发射机的功率,这样设备只有在相对较近的时候才能检测到信标。
使用Radius Networks的RadBeacon USB和RadBeacon Tag型号,您可以使用iOS和OSX的免费RadBeacon配置应用程序调整发射机功率。这些应用程序有一个滑块控制,可以增加和减少发射器的功率。
然而,您应该注意,通过降低发射器功率,您也会增加距离估计的变化量。这是因为信噪比将更低。
全面披露:我是Radius Networks的总工程师。
- 你真的不能告诉一个信标的距离。这就是为什么室内本地化如此困难的原因
- 你不能确切地说一个信标应该传输信号多远,但在大多数信标上(我不知道Radius网络),你可以更改txPower/传输功率。这因信标而异(也取决于信标周围的环境),所以你必须自己做实验才能找到最佳点