Tengo un Acelerómetro conectado a un dispositivo que alimenta los valores instantáneos de la aceleración en las 3 direcciones. Intenté calcular la distancia para un movimiento vertical usando estos valores con Excel (aplicando dos veces una integración), pero de alguna manera parece que no funciona correctamente.
¿Cómo sería una buena manera de calcular la distancia recorrida a partir de la aceleración medida utilizando tablas de Excel?
A partir de = = 0 y y mediante el seguimiento de múltiples valores de aceleración, ya sea con un intervalo de tiempo o a intervalos fijos, , entonces puedes conseguir el puesto... un poco. Se desviará con el tiempo. Además, su dispositivo no puede girar en absoluto, o necesita un giroscopio para rastrear eso y luego usar la trigonometría para orientar correctamente los valores xy y z del acelerómetro. Asumiendo que siempre está orientado de tal manera que el siempre es una aceleración vertical perfecta (si está en un vehículo que siempre está plano, en cuyo caso z no importa, o si está en un riel de guía vertical),
Además, desde aquí :
Respuesta corta: Olvídalo.
Respuesta más larga: a menos que esté en un riel perfectamente recto, no logrará lo que quiere hacer sin (a) un conjunto de giroscopios; y (b) Sensores mucho más precisos que los que tiene.
Los acelerómetros miden la aceleración en el marco de referencia fijo del cuerpo, mientras que necesita algo de desplazamiento en un marco fijo en la tierra.
Por lo tanto, no solo necesita integrar los acelerómetros, sino también rotarlos en el marco fijo a tierra antes de realizar la integración.
Esto es asumiendo sensores perfectos. Los sensores MEMS están lejos de ser perfectos: he escrito una publicación sobre algunos de los errores aquí.
Considere dos errores: 1. Un sesgo en el acelerómetro. 2. Un error de actitud inicial (inclinación).
Además de cualquier señal de aceleración que haya, integre un sesgo y obtendrá un error de rampa con el tiempo. Integre la rampa y obtendrá un error cuadráticamente creciente con el tiempo. Esto se acumulará muy, muy rápido.
Considere un error de inclinación. Ahora medirá parte del vector de gravedad en la dirección de avance (o en la dirección que sea). Integre este error dos veces y tendrá el mismo problema que el sesgo.
Entonces, mi consejo nuevamente es ¡NO LO HAGAS! Encuentra otro método.
Además, consulte este libro para obtener diseños más detallados, o use cualquier sensor y algoritmo en el que estén estos tipos:
http://www.youtube.com/watch?v=6ijArKE8vKU
Si todavía quiere intentarlo, use el método Trapezoidal en Excel, es bastante fácil. Hay una página de explicación aquí con una muestra, pero aquí hay una forma más completa:
1 Time [A] Acceleration [B] Velocity [C] Distance [D]
2 0 a(z) 0 0
3 1 a(z) =C2+(A3-A2)*(B2+B3)/2 =D2+(B3-B2)*(C2+C3)/2
4 2 a(z) =C3+(A4-A3)*(B3+B4)/2 =D3+(B4-B3)*(C3+C4)/2
5 3 a(z) =C4+(A5-A4)*(B4+B5)/2 =D4+(B5-B4)*(C4+C5)/2
6 4 a(z) =C5+(A6-A5)*(B5+B6)/2 =D5+(B6-B5)*(C5+C6)/2
7 5 a(z) =C6+(A7-A6)*(B6+B7)/2 =D6+(B7-B6)*(C6+C7)/2
8 6 a(z) =C7+(A8-A7)*(B7+B8)/2 =D7+(B8-B7)*(C7+C8)/2
9 7 a(z) =C8+(A9-A8)*(B8+B9)/2 =D8+(B9-B8)*(C8+C9)/2
10 8 a(z) =C9+(A10-A9)*(B9+B10)/2 =D9+(B10-B9)*(C9+C10)/2
11 9 a(z) =C10+(A11-A10)*(B10+B11)/2 =D10+(B11-B10)*(C10+C11)/2
12 10 a(z) =C11+(A12-A11)*(B11+B12)/2 =D11+(B12-B11)*(C11+C12)/2
... ... ... ...
Raskolnikov
Francisco
Francisco
Juan Alexiou