4
\$\begingroup\$

We are trying trace a vehicle movement when the GPS goes down. We are using accelerometer and gyroscope sensors. And also get the vehicle speed from the OBD (dashboard.) The data will be collected for every second and uploaded to the server for post processing. So it need not be real time. I can calculate the distance covered by the vehicle. And I will try to match the result to the road map that we have already stored in the database for the region we are interested in.

Now I have to determine whether the vehicle made a turn or not at the intersections. I am planning to use the gyroscope reading for this. Can someone point me in the right direction to determine the vehicle turning from Gyroscope (X, Y and Z) values. And also what are the other readings I might need to get this working?

\$\endgroup\$
0
5
\$\begingroup\$

VERY difficult! You just need data from ONE of the Gyroscope channels, as a vehicle (we hope) only turns around one axis (earth-vertical). A gyroscope reports angular velocity, and thus to get angular direction, you would need to integrate, and integrating accumulates errors over time, so often that data is high-pass filtered and you lose the mean.

Similarly, from accelerometers you can integrate to yield velocity, and double integrate to yield path, with the same accumulation of errors problem.

You need a magnetomer system. This will give you direction of the car with respect to magnetic north. Sometimes, systems with magnetometers are called "9 dof" systems ( https://www.sparkfun.com/products/10736 ) , as they have three axes of gyros, accelerometers, and magnetometers. You could get an isolated magnetometer ( https://www.sparkfun.com/products/10530 ) , and that and the obd should be all you need.

\$\endgroup\$
3
  • \$\begingroup\$ In addition to Gyroscope and OBD data, I also have all the roads in the area I am interested in the database as SQLGeography. So I can try to map to those roads even if they are 50 meters off. So I think I can handle those double integration errors. So can you point me to the right direction how to integrate the Gyroscope data, using the right filters etc. \$\endgroup\$ Oct 26 '12 at 14:17
  • \$\begingroup\$ Sure. The integration is simply the running sum times the sample period. The high pass filter is a little too complex for me to address right now, but if I gave youa difference equation or an FIR high pass filter, would you be able to implement it? \$\endgroup\$ Oct 26 '12 at 16:05
  • \$\begingroup\$ Yes I can try to do that. \$\endgroup\$ Oct 26 '12 at 16:56
3
\$\begingroup\$

Are you able to change/choose the rest of the hardware? What you want is already done in some GPS receptors that support external or internal sensors for dead-reckoning, for instance the JN3 from Telit. Take a look at its documentation.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.