3

我完成了一个机器人蓝牙应用程序的实现。在服务器方面,我使用 Windows 7 作为带有 MS-BT-Stack 的操作系统,并使用 C# 作为带有“In the hand”-蓝牙库的语言。
目标是在机器人在范围内时通过蓝牙连接机器人。

就像扩展一样,我试图读取信号强度以确定机器人的距离(估计)。好的,在谷歌搜索(以及在 stackoverflow 上搜索^^)时,我发现你不能用我用过的 BT-stack 做到这一点。从那以后,我试图找出一种解决方法来计算或估计信号强度(或距离)。
比如通过蓝牙发送一个字节,看看应答时间有多长。虽然由于时间不够,我还没有实现它,但有人认为这是一个好主意吗?或者对这个问题有其他想法?

我真的很感激任何意见。

谢谢!

4

1 回答 1

4

不,我认为这不是一个好主意。您将无法根据响应时间获得有意义的距离估计。MAC 层和软件堆栈中有许多因素会引入可变性。

即使使用 RSSI 也不能很好地工作,因为

1) 室内 2.4GHz 的 RSSI 存在严重的多径问题,这意味着您可以离开并看到信号变得更强

2) 蓝牙具有功率控制反馈,两侧不断调整 Tx 功率,使其处于固定的黄金范围内。所以你走开,RSSI 瞬间下降,然后功率控制回路提高 Tx 功率以将 RSSI 保持在固定水平。

3) 蓝牙硬件通常具有低精度的 RSSI 测量值,这意味着您只能获得粗略的测量值,而不是您可以准确依赖的东西来获得良好的距离指标。

于 2012-04-30T22:46:38.033 回答