2

iam facing issue in calculating distance moved by the device. I am using android Linear Acceleration sensor

Issues: acceleration across x y z axis doen not show zero even when device is idle, so double integral of acceleration is giving erroneous distance.

I am using low pass filter with Alpha value of 0.15. device is held on YZ plane and coordinates are remapped accordingly.

Is there any way to find total displacement of device Can we calliberate magnetometer/accelerometer to get initial orientation value to 0,0,0, & then start reading acceleration value from that point.

please suggest

deepti
  • 21
  • 2
  • possible duplicate of [Android accelerometer accuracy (Inertial navigation)](http://stackoverflow.com/questions/7829097/android-accelerometer-accuracy-inertial-navigation) – Ali Apr 25 '14 at 10:46
  • This question has come up a zillion times. You can use the accelerometer and gyroscopes to track orientation (and this works really well) but not distance. If you need distance no matter what, you either have to make [domain specific assumptions](http://www.cl.cam.ac.uk//techreports/UCAM-CL-TR-696.pdf) (page 33) or use some external reference that does not drift. – Ali Apr 25 '14 at 10:49
  • @Ali thanks for your comment. Yes i have tried it using assumtions. But it fails terribly if the assumptions do not hold true. – deepti May 21 '14 at 09:53
  • is there any way , in which we can reorient the devices sensors to read 0,0,0, at the start? Any idea will be appreciated. – deepti May 21 '14 at 09:54
  • Yes, exactly, that's the weakness of assumptions. :( – Ali May 21 '14 at 09:54
  • I am afraid I don't understand your question. Please try to rephrase it. – Ali May 21 '14 at 09:55
  • Can we calliberate magnetometer/accelerometer to get initial orientation value to 0,0,0, & then start reading acceleration value from that point. I mean , even when the device is idle it reads some orientation value ..viz with respect to magnetic field north. As we can remap coordinates from X to Y ..or any other. Can we someow make orientation values 0,0,0 and then start reading new values with respect to it. – deepti May 21 '14 at 09:57
  • I am still not sure I understand. If I understand correctly: No, you (1) either have to figure out the initial orientation yourself (2) or make your method in such a way that after a while it converges even if the initial orientation was totally wrong. – Ali May 21 '14 at 10:08

0 Answers0