可以在不使用GPS的情况下计算移动方向吗?
我的应用程序用于汽车,此应用程序通过BT连接到另一台设备。这个设备告诉我1x 5秒我们的坐标+方向角。
/*direction angle = */ location.bearingTo(location);
但是1x / 5秒秒是不够的。所以我想计算以下坐标:D可以这样做吗?
我有:
1. sec - speed, coordinates, angle
2. sec - speed, ?, ?
3. sec - speed, ?, ?
4. sec - speed, ?, ?
5. sec - speed, coordinates, angle
坐标不能更频繁地发送导致硬件...而且我也不想使用GPS,导致电池......
我希望通过在Android中使用一些传感器来完成......也许......(加速计或磁传感器等)
感谢您的回答。
编辑:
我有2台设备
1. android phone with my app (app which i programm) - mobile in my pocket
2. other device writen in ASM by another programmer we can call him "parek" - fixed (static) device - build-in car.
我的应用已连接到" parek"通过BT。 " parek"有GPS模块,他可以告诉我坐标和方向角(但只有1x,持续5秒,不再有)。
" parek"可以给我1倍的车速1秒(这不是问题)但是坐标&方向角他不能,导致硬件老了。
但我的应用程序需要每1秒进行一次坐标,我无法提供。我不想在手机中使用GPS(在我的口袋里,在车里)。
答案 0 :(得分:0)
如果您的设备相对于汽车是固定的,您可以使用之前已知的速度和磁力计输入在最后一次已知修正后推断您的坐标。
当您更新问题时,如果设备未修复,则更难。你必须使用一些传感器融合算法来调整基于加速度计和陀螺仪输入的速度计算,并且(看看卡尔曼滤波器如何工作)。
来自该算法的信息可以与先前的GPS定位相关联,以便估计设备相对于汽车的位置(想想磁力计在读取期间读取的内容,让我们说,右转如果手机在左侧口袋中,那么这条路是否在右侧口袋中。不幸的是,您不必知道手机始终指向挡风玻璃。