jueves, noviembre 23, 2006

Tiempo de integración

Para realizar la integración la idea era tomar muestras en forma periódica cada un cierto tiempo prefijado y multiplicar el valor de la muestra por este intervalo de tiempo. Para cumplir con esto fijamos un delta_t de 0.01 sec y si el tiempo del proceso era menor se debía esperar a completar ese tiempo para tomar una nueva muestra.

El problema es que el tiempo de procesamiento estaba superando los 0.01 sec y por tanto la condición "(t2-t1) >= delta_t" siempre se cumplia e inmediatamente se tomaba la nueva muestra. El tiempo entre muestras era variable y por tanto el tiempo de integración no debía ser el prefijado. Se corrigió este error haciendo que el delta_t fuese variable y correspondiese al tiempo entre muestras.

Se probó nuevamente y seguimos con problemas. Luego de mucho rato encontramos que los gyros estando la IMU en reposo varían su salida entre 0.001 y 0.003 rad/sec (siempre positivo). Si se integra cada 1 sec tenemos que el delta_angulo estaría entre 4 y 10 deg. El problema es que los valores son siempre positivos, si la variación fuese aleatoria con media nula no habría problemas pues durante la integración se compensarían estas variaciones dando un valor de salida my próximo a cero.

Hoy vamos a realizar algunas pruebas para determinar por qué sucede esto.