I am developing an Android App to track indoor position. My phone is an Google Nexus S using two sensors, the first being an Accelerometer and the second being a Gyroscope.
My idea is that from a starting reference point (a known GPS position), using the 2 sensors (accelerometer for motion and Gyro for directions) track the phone when moving. And display on a map when the user is going.
But the problem is that i have no idea how to combine both of these sensors to give me an actual position?
I have read some article on internet that talk about "kalman filter" and after some more research i found out that that filter is very very complex /too much for me) especially to code it in java for Android (cpu killer)
Does someone has some experience that he can share with me about indoor positioning system using Gyro and accelerometer?
However, if you want position and orientation, then you can determine orientation from the accelerometer data (if you have all 3 axes) and compare or update it with gyroscopes to compensate for accelerometer drift.
Accelerometers measure linear acceleration (specified in mV/g) along one or several axis. A gyroscope measures angular velocity (specified in mV/deg/s).
The main difference between the two devices is simple: one can sense rotation, whereas the other cannot. In a way, the accelerometer can gauge the orientation of a stationary item with relation to Earth's surface.
Yes they both can be used to together describe the motion of a device, but they can also be used to correct each other. For example, I read and experimented that the drift in the gyroscope can be corrected by using the accelerometer even though they don't essentially measure the same thing.
Gyros and accelerometers are not enough.
You get position by integrating the linear acceleration twice but the error is horrible. It is useless in practice.
Here is an explanation by (Google Tech Talk) at 23:20. I highly recommend this video.
As for indoor positioning, I have found these useful:
I have no idea how these methods would perform in real-life applications or how to turn them into a nice Android app.
A similar question is Calculating distance within a building.
I think this is a great post answering your question. This kalman filter combine data from accelerometers and gyros. Hope it helps.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With