View Single Post
  #5   Spotlight this post!  
Unread 13-01-2012, 01:28
Sparks333's Avatar
Sparks333 Sparks333 is offline
Robotics Engineer
AKA: Dane B.
FRC #1425 (Wilsonville Robotics)
Team Role: Alumni
 
Join Date: Feb 2004
Rookie Year: 2003
Location: Wilsonville, Oregon
Posts: 184
Sparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of lightSparks333 is a glorious beacon of light
Send a message via AIM to Sparks333
Re: Anything better than a gyro?

Try a complimentary filter - it biases measurements depending on the frequency of the input. The gyro would be useful for high-frequency measurements, but will quickly drift in a low-frequency environment. An encoder, likewise, will probably be susceptible to wheel slippage at high speeds, but will work well when speed is slow. A very, very simple two-tap complimentary filter is simply to do:

total_rotation = 0.5*gyro_new - 0.5*gyro_old + 0.5*enc_new + 0.5*enc_old;
gyro_old = gyro_new;
enc_old = enc_old;

This is essentially a high-pass filter on the gyro with a low-pass filter on the encoder. This has the inherent flaw that it allows high-frequency noise from the gyro to enter the system, so a low-pass with a higher cutoff than the highpass filter might be required for the gyro first.

Hope this is useful.

Sparks
__________________
ICs do weird things when voltage is run out of spec.

I love to take things apart. The fact that they work better when I put them back together it just a bonus.

http://www.ravenblack.net/random/surreal.html
Reply With Quote