Wishlist/Determine Position

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Reverting vandalism)
m (Determine Position: update)
Line 5: Line 5:
 
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.
 
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.
  
Another way to determine you position is using accelerometers. If you know the position and the speed at a given time and you know all the accelerations done since that time you can compute the current location. It is computed as: position + integral speed + integral integral accelerations.
+
Another way that might be considered to determine your position is using [http://en.wikipedia.org/wiki/inertial_navigation 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.  
  
To do this accurately you need to read the accelerometers very often. If the reading is done in a FPGA it can be done several 1000 times per second. Depending on the power consumption this may be more power efficient than determining the GPS position again and again.
+
You need both accellerometers, 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).
  
----
+
[http://www.analog.com/en/prod/0,,764_800_ADXL202,00.html] is the datasheet for an example of the sort of accellerometer that might be put into the neo.
 
+
This is not possible, firstly, you need some orientation reference, such as an gyroscope or compass.
+
 
+
Unfortunately also, the accellerometers are simply not good enough for this.
+
 
+
[http://www.analog.com/en/prod/0,,764_800_ADXL202,00.html] is the datasheet for an example of the sort of accellerometer in the neo.
+
  
 
Accellerometers have a certain amount of noise.
 
Accellerometers have a certain amount of noise.
Simply reading them often does not reduce - and in some cases may increase this 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 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.
 
This is 80m after 1 minute, 8Km after 10 minutes.
 +
The integrated gyroscopes are around as bad, and drift typically at degrees per minute.

Revision as of 22:51, 10 April 2007

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.

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 accellerometers, 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).

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

Accellerometers 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.

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.

Another way to determine you position is using accelerometers. If you know the position and the speed at a given time and you know all the accelerations done since that time you can compute the current location. It is computed as: position + integral speed + integral integral accelerations.

To do this accurately you need to read the accelerometers very often. If the reading is done in a FPGA it can be done several 1000 times per second. Depending on the power consumption this may be more power efficient than determining the GPS position again and again.


This is not possible, firstly, you need some orientation reference, such as an gyroscope or compass.

Unfortunately also, the accellerometers are simply not good enough for this.

[1] is the datasheet for an example of the sort of accellerometer in the neo.

Accellerometers have a certain amount of noise. Simply reading them often does not reduce - and in some cases may increase this 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.