it-swarm.cn

基于陀螺仪和加速度计的室内定位系统

我正在开发一个Android应用程序来跟踪室内位置。我的手机是使用两个传感器的Google Nexus S,第一个是加速度计,第二个是陀螺仪。

我的想法是,从起始参考点(已知的GPS位置),使用2个传感器(用于运动的加速度计和用于方向的陀螺仪)在移动时跟踪手机。并在用户出发时显示在地图上。

但问题是我不知道如何将这两种传感器结合起来给我一个实际位置?

我在互联网上阅读了一些关于“kalman过滤器”的文章,经过一些研究后我发现过滤器对我来说非常复杂/太多了)特别是用Java编写代码(cpu杀手)

有人有经验,他可以与我分享使用陀螺仪和加速度计的室内定位系统吗?

67
Alexis

陀螺仪和加速度计是不够的。

通过将线性加速度积分两次得到位置,但 错误很可怕。它在实践中毫无用处。

这是 (Google Tech Talk)的解释 23:20。我强烈推荐这个视频。

至于室内定位,我发现这些有用:

我不知道这些方法在现实应用程序中的表现如何,或者如何将它们变成一个漂亮的Android应用程序。

类似的问题是 计算建筑物内的距离

64
Ali

我认为这是一个很好的 帖子 回答你的问题。该卡尔曼滤波器组合来自加速度计和陀螺仪的数据。希望能帮助到你。

7
Allen Jee

要从某个参考点开始跟踪室内位置,只有陀螺仪和加速度计是不够的。使用加速度计,您可以计算速度,使用陀螺仪可以获得移动设备的方向,但是要计算室内位置,您还需要有移动方向,因此在这种情况下您需要使用磁传感器。这种方法称为航位推算方法,将所有3个传感器组合在一起以获得适当的室内位置非常复杂。卡尔曼滤波器可以让您平滑测量并滤除一些噪声,但这不是计算室内位置的方法。如果你想获得室内位置你可以尝试iBeacon方法和Trilateration方法,有一些库(比如 这一个 )已经有这个功能,所以你可以尝试从这些libs调查这个方法。

1
Dr.Lean

有关新兴室内定位技术的其他有趣读物,请查看此 来自Qubulus的博客文章 。有几个初创公司和研究项目试图在室内找到一个很好的GPS替代品。尝试范围从Dead Reckoning到 QR Code ,到光脉冲到无线电指纹。看起来任何可行的解决方案都将结合多种技术(类似于大多数智能手机依赖A-GPS的方式,其中卫星信号由 蜂窝塔多点定位辅助 )。

祝你的应用好运!

1
nicksuch

我认为回答这个问题为时已晚,但现在,有一个很好的解决方案叫做iBeacon技术。

您可以通过智能手机扫描 iBeacon 设备,您可以从iBeacon获取rssi。所以,你可以通过那些rssi来计算你的位置。

1
Stanley Kou