Wishlist/Determine Position

From Openmoko

Revision as of 13:20, 31 August 2008 by DolfjeBot1 (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Determine Position

GPS can be used to determine the position with a fair accuracy.

GPS requires you to be able to see the GPS satellites. If you are in a tunnel or on a subway this will not work.

Absence of GPS - Accelerometers

Another way that might be considered to determine your position is using inertial navigation. If you know the position, speed and orientation precisely at a given time and you know all the accelerations and rotations done since that time you can compute the current location.

You need both accelerometers, and gyroscopes to determine your position by this method. Even disregarding budget, the current devices available are not good enough for this for any more than very short periods (seconds). See Accelerometer Fundamentals for more details.

[1] is the datasheet for an example of the sort of accelerometer that might be put into the neo.

Accelerometers have a certain amount of noise.

This noise gives you severe positioning errors. An error of only a thousandth of a G gives an uncertainty of velocity of 10mm/s after a second, 1.2m/s after 2 minutes. This is 80m after 1 minute, 8Km after 10 minutes. The integrated gyroscopes are around as bad, and drift typically at degrees per minute.

Accelerometers have also been utilized creatively doing:

  • drop detection
  • over-engineered pedometers. Nokia have 'sports' mobiles with this feature.
  • automatic wakeup

Absence of GPS - OBD-II interface

If the accelerometers are not accurate enough, there is another method which could be used in a car. The phone could interface itself (e.g. via bluetooth) to a "scan tool" connected to the OBD-II interface of the car. See Carman.

So, at least an user that has such a scan tool, could enable a useful feature.

From the OBD-II interface I think one could obtain the speed of the car quite accurately. The direction could be a problem though. Even a gyroscope in the phone could not suffice. But having a map of the streets, and supposing that the driver does not do a u-turn in a tunnel, a quite good guess could be done in absence of GPS signal.

Kalman filter

What about using something like Kalman filter to use both gps and accelerometers and get some more precision?

Personal tools

Determine Position

GPS can be used to determine the position with a fair accuracy.

GPS requires you to be able to see the GPS satellites. If you are in a tunnel or on a subway this will not work.

Absence of GPS - Accelerometers

Another way that might be considered to determine your position is using inertial navigation. If you know the position, speed and orientation precisely at a given time and you know all the accelerations and rotations done since that time you can compute the current location.

You need both accelerometers, and gyroscopes to determine your position by this method. Even disregarding budget, the current devices available are not good enough for this for any more than very short periods (seconds). See Accelerometer Fundamentals for more details.

[1] is the datasheet for an example of the sort of accelerometer that might be put into the neo.

Accelerometers have a certain amount of noise.

This noise gives you severe positioning errors. An error of only a thousandth of a G gives an uncertainty of velocity of 10mm/s after a second, 1.2m/s after 2 minutes. This is 80m after 1 minute, 8Km after 10 minutes. The integrated gyroscopes are around as bad, and drift typically at degrees per minute.

Accelerometers have also been utilized creatively doing:

  • drop detection
  • over-engineered pedometers. Nokia have 'sports' mobiles with this feature.
  • automatic wakeup

Absence of GPS - OBD-II interface

If the accelerometers are not accurate enough, there is another method which could be used in a car. The phone could interface itself (e.g. via bluetooth) to a "scan tool" connected to the OBD-II interface of the car. See Carman.

So, at least an user that has such a scan tool, could enable a useful feature.

From the OBD-II interface I think one could obtain the speed of the car quite accurately. The direction could be a problem though. Even a gyroscope in the phone could not suffice. But having a map of the streets, and supposing that the driver does not do a u-turn in a tunnel, a quite good guess could be done in absence of GPS signal.

Kalman filter

What about using something like Kalman filter to use both gps and accelerometers and get some more precision?