¿Es posible hacer un velocímetro con un acelerómetro? Estoy trabajando con el hardware Arduino.
¿Es posible hacer un velocímetro con un acelerómetro? Estoy trabajando con el hardware Arduino.
TL; DR Básicamente, no, para la mayoría de las situaciones.
Dado que la aceleración es la derivada de la velocidad, la integración de la salida de un acelerómetro debería proporcionarle la velocidad, sin embargo, existen varias fallas en esa pomada (sic).
En primer lugar, si recuerda su cálculo, la integración deja una constante arbitraria, por lo que debe conocer la velocidad inicial para determinar una nueva velocidad. Para decirlo de otra manera, un objeto que se mueve a velocidad constante no tiene aceleración.
En segundo lugar, los acelerómetros MEMS utilizados en los acelerómetros de consumo típicos tienen una gran cantidad de desviación y desplazamiento. El desplazamiento también se integra y, por lo tanto, tiende a aumentar sin límite en el tiempo. Otros errores, como la histéresis y los errores de escala, también afectarán los resultados del cálculo.
En tercer lugar, el acelerómetro responderá a la fuerza de gravedad de 1 g. Desde el punto de vista del acelerómetro, un acelerómetro sentado sobre la mesa parece estar acelerándose. Edición: Hacia arriba, alrededor de 10 m / s ^ 2. Incluso si intentas ignorar ese eje, g puede deslizarse dentro de los otros ejes. Un objeto en caída libre parecerá no tener aceleración, ya sea que caiga hacia el suelo, en órbita o en algún lugar fuera del espacio. Para aplicaciones normales, eso significa que la orientación del acelerómetro debe ser conocida por su alta precisión; un error de solo un grado o dos causará un gran error en la estimación de la velocidad en segundos.
Por lo tanto, un acelerómetro de bajo costo solo es útil en un subconjunto muy limitado de aplicaciones de estimación de velocidad: el 'cómputo muerto' no es muy útil con los acelerómetros de bajo costo. Sin embargo, si la señal del acelerómetro pudiera combinarse de alguna manera con algún tipo de medición precisa pero lenta de la posición (por ejemplo, GNSS como GPS o GLONASS), entonces podría tener una estimación de velocidad de respuesta rápida que no se desvíe. Esto se puede hacer con un algoritmo que tenga en cuenta los errores de las dos mediciones y las pese adecuadamente (normalmente con un filtro de Kalman).
Es posible utilizar acelerómetros muy precisos en combinación con giroscopios precisos y muy costosos para determinar la velocidad y la posición bastante bien durante períodos de tiempo relativamente cortos. Esto es útil en caso de que quisiera entregar algo, digamos un "paquete" importante de algún tipo, a las personas en una parte distante de la tierra muy rápidamente (minutos) y no podría depender de una medición de posición absoluta (por ejemplo, ver una luz brillante). estrella o GNSS) para todo el viaje (es probable que conozca la posición inicial). La combinación de acelerómetros y giroscopios se denomina IMU (unidad de medición inercial). Cuando se combinan con GNSS, se llaman algo así como sistemas de navegación inercial asistidos por GNSS).
Depende. Lo que estás queriendo hacer es algo que se llama estimación de cuentas, donde se calcula la velocidad mediante la integración de la aceleración. El problema al hacer esto es que también integras cualquier error y ruido, por lo que con el tiempo tu velocidad calculada se vuelve cada vez más inexacta. Desafortunadamente, todos los acelerómetros comerciales de bajo costo que puede comprar funcionan muy mal en esta área.
Sin embargo, he visto un rendimiento razonable (dependiendo de sus necesidades) al integrar un sensor de bajo costo sentado en el asiento del pasajero de un vehículo. En tandas cortas (< 500m) sin duda dio una indicación razonable de velocidad. Pero si no tiene nada después de este tiempo para permitir que el sistema obtenga una referencia absoluta, los resultados rápidamente se vuelven inutilizables.
La aceleración es la derivada de la velocidad, por lo que podría integrar la aceleración de su acelerómetro a lo largo del tiempo para obtener su velocidad actual si conoce la velocidad en cualquier momento dado, por ejemplo. tienes que estar parado (v = 0) cuando comiences a medir.
Sin embargo, esto será muy inexacto, ya que también integrará todo el error de su acelerómetro.
Lea otras preguntas en las etiquetas arduino sensor accelerometer