¿Cómo puedo detectar baches usando un acelerómetro montado en un vehículo?

9

Actualmente estoy estudiando DSP y FFT, soy muy nuevo en esto y he estado haciendo electrónica durante mucho tiempo con Arduino y proyectos de hobby. Recientemente, estoy haciendo un proyecto con el objetivo de mapear los baches a lo largo de su viaje diario en el automóvil, midiendo la aspereza de la carretera. Este no es el perfil de la carretera, sino la aspereza del recorrido que el conductor siente durante el viaje. Tengo una aceleración montada para medir la aceleración "vertical" del eje Z del automóvil, cuando se golpea un bache los amortiguadores y los resortes amortiguan la fuerza según el modelo del cuarto de automóvil por simplicidad.

Básicamente, quiero poder crear un detector que detecte baches utilizando FFT para encontrar la frecuencia dominante de la aceleración vertical, luego tal vez pueda combinarlo con el patrón para detectar el golpe de la puerta del automóvil o una tapa de pozo de un bache tal vez en el futuro.

No estoy seguro de si FFT es el camino a seguir, cualquier aportación o consejo e ideas son muy apreciadas, he hecho un filtro de paso bajo para filtrar la vibración de mayor frecuencia del tren de transmisión y el motor.

¿Alguna idea sobre la "aspereza" expuesta por los pasajeros / conductor en el automóvil? Estaba pensando en hacer pruebas de carretera en un camino liso, camino de grava, camino de ladrillos, camino en mal estado, y llegar a un umbral de la magnitud de la aceleración vertical y hacer una escala de alguna manera en lo que se considera "áspero"

Los baches detectados también se registrarían con GPS en sus ubicaciones, estoy tratando de usar el Rasberry Pi para esto, con el almacenamiento de datos y su velocidad como un buen proyecto para ello.

Gracias, cualquier ayuda o ideas son apreciadas, libros, tutoriales, sabiduría, etc.

ACTUALIZAR:

Transfiera datos adicionales aquí:

/electronics/56238/accelerometer-data-smoothing-filtering-pothole-detection

zacharoni16
fuente
2
La respuesta de PAK-9 a continuación tiene algunas buenas sugerencias. El paso 1 para usted probablemente debería ser recopilar algunos datos mediante pruebas de carretera (como sugirió) para ver cómo se ven realmente las características que le gustaría detectar.
Jason R
¿Los va a enviar automáticamente a seeclickfix.com? :)
endolito
Sí, podría hacerlo si funciona correctamente, jaja. La ciudad de Boston creó una aplicación para teléfonos inteligentes que hace esto, tenían miles de dólares en subvenciones a las personas para sus presentaciones. El mío será un simple subconjunto de eso, me imagino que con un teléfono inteligente la mayoría de las personas lo mueven en su automóvil, por lo que tendrías que tener el teléfono en un soporte para obtener lecturas precisas o molestas al dejarlo caer o moverlo mientras El auto está en movimiento. Así que estoy usando un acelerómetro externo para evitar esas complicaciones
zacharoni16
@ user978563 ¿Cuál es esta marca externa de acelerómetro que está utilizando por cierto?
Spacey
La marca es KXPS5-3157 Hoja de datos dz863.com/downloadpdf-lovdnabsxg-KXPS5-3157.pdf
zacharoni16

Respuestas:

8

No está realmente interesado en la información de frecuencia en su señal tanto como en las características detectables, por lo que sugeriría que aquí no hay tanta utilidad en una FFT.

Lo que realmente quiere hacer es correlacionar la 'señal del automóvil' continua registrada en el automóvil con una señal diferente, que es la 'firma' del bache. Necesitará adquirir esta firma grabándola en un automóvil pasando por un bache (tal vez grabando muchos y usándolos para producir una señal genérica que es una buena representación de un bache). Una vez que lo tenga, puede correlacionarlo con la señal de su automóvil. Es posible que desee hacer esto en el dominio de la frecuencia, en cuyo caso debe cruzar correlacionar la FFT de su firma con una FFT deslizante de la señal del automóvil.

Es posible que desee procesar la señal del automóvil antes de usarla para eliminar, por ejemplo, el ruido de alta frecuencia (con un filtro de paso bajo). Puede hacer esto de manera bastante efectiva a simple vista: juegue con varios filtros en las señales del automóvil para ver cuál elimina la información más extraña mientras deja intacta la información importante del bache.

PAK-9
fuente
¿Sería muy difícil hacer esta correlación cruzada programáticamente? Quiero que todo esto se haga automáticamente en el software. Supongo que la parte más difícil es obtener la "señal genérica" ​​para un bache lo suficientemente amplio como para hacer coincidir la FFT con la FFT de los datos actuales en el automóvil. El FFT deslizante, ¿cuál sería la función de ventana? Lo único que me confunde acerca de FFT es la ventana, ¿sería una ventana deslizante? Parece que las frecuencias de baches ocurren en el rango de 5HZ a 20HZ, la frecuencia muy baja a SHM de la suspensión amortiguada
zacharoni16
2
La correlación cruzada no es especialmente difícil de hacer programáticamente, es muy similar a la convolución (que en esencia están iterando sobre dos matrices y realizan alguna función con una muestra de cada una). Estoy seguro de que hay bibliotecas disponibles si no desea escribe lo tuyo. La firma puede ser un poco difícil de adquirir, pero si obtiene una carga de datos, debería ver emerger algunas características, además de que la correlación cruzada no es binaria, el resultado es esencialmente un valor de 'confianza' para que pueda limitarlo como lo desee.
PAK-9
1
La ventana fn del FFT deslizante puede ser lo que quieras, no debería afectar el resultado demasiado dramáticamente. Esperaría ver un gran impulso que se amortigua en un corto período (SHM de la suspensión como usted dice) para que pueda sintetizar algo como esto en función de las observaciones de las señales.
PAK-9
Ah, eso tiene sentido, la parte difícil es obtener la firma, ¿hay algún tutorial, libro o sitio con un ejemplo similar del procedimiento? sobre ellos un montón de veces para obtener muchos datos. Sin embargo
zacharoni16
2
Simplemente conduciendo sobre una carga de golpes y agujeros, luego cortar esas partes de la señal le dará una biblioteca de firmas. FFT cada uno de ellos para darle una firma espectral, si algunos son muy diferentes en la inspección visual, luego sepárelos en grupos que sean similares. Luego puede realizar algún tipo de promedio en cada grupo de firmas para terminar con una firma 'maestra' final de cada grupo que puede comparar con las señales del automóvil.
PAK-9