Comment détecter les nids-de-poule à l'aide d'un accéléromètre monté dans un véhicule?

9

J'étudie actuellement DSP et FFT, je suis très nouveau dans ce domaine et je fais de l'électronique depuis longtemps avec des projets Arduino et hobby. Récemment, je fais un projet dans le but de cartographier les nids de poule le long de votre trajet quotidien en voiture, en mesurant la rugosité de la route. Ce n'est pas le profil de la route, mais la rugosité soumise de la conduite que le conducteur ressent pendant le trajet. J'ai une accélération montée pour mesurer l'accélération "verticale" de l'axe Z de la voiture, quand un nid de poule est frappé, les amortisseurs et les ressorts amortissent la force selon le modèle du quart de voiture pour plus de simplicité.

Fondamentalement, je veux pouvoir créer un détecteur qui détectera les nids-de-poule en utilisant la FFT pour trouver la fréquence dominante de l'accélération verticale, alors je peux peut-être l'adapter au modèle pour détecter le claquement de la porte de la voiture ou un couvercle de trou d'homme d'un nid de poule peut-être à l'avenir.

Je ne sais pas si la FFT est le chemin à parcourir, toute entrée ou conseil et idée est grandement appréciée, j'ai créé un filtre passe-bas pour filtrer les vibrations à plus haute fréquence de la transmission et du moteur.

Des idées sur la "rugosité" soumise ressentie par les passagers / conducteur dans la voiture? Je pensais faire des essais routiers sur une route lisse, une route de gravier, une route de brique, une mauvaise route, et arriver à un seuil de l'ampleur de l'accélération verticale et faire une échelle d'une manière ou d'une autre sur ce qui est considéré comme "rugueux"

Les nids de poule détectés seraient également enregistrés avec le GPS de leurs emplacements, j'essaie d'utiliser le Rasberry Pi pour cela, avec le stockage de données et sa vitesse comme un bon projet pour cela.

Merci toute aide ou idée est appréciée, livres, tutoriels, sagesse, etc.

MISE À JOUR:

Reportez des données supplémentaires ici:

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

zacharoni16
la source
2
La réponse de PAK-9 ci-dessous contient de bonnes suggestions. L'étape 1 pour vous devrait probablement consister à collecter des données à l'aide d'essais routiers (comme vous l'avez suggéré) pour voir à quoi ressemblent réellement les fonctionnalités que vous souhaitez détecter.
Jason R
Allez-vous les soumettre automatiquement à seeclickfix.com? :)
endolith
Oui, je pourrais le faire fonctionner correctement lol, la ville de Boston a fait une application pour smartphone qui fait ça, ils avaient des milliers de dollars en subventions aux gens pour leurs soumissions. Le mien va être un simple sous-ensemble de cela, j'imagine qu'avec un smartphone, la plupart des gens le déplacent dans leur voiture, vous devez donc avoir le téléphone dans un support pour obtenir des lectures précises ou ne pas laisser tomber le téléphone ou le déplacer tout en la voiture bouge. J'utilise donc un accéléromètre externe pour éviter ces complications
zacharoni16
@ user978563 Quelle est cette marque externe d'accéléromètre que vous utilisez btw?
Spacey
La marque est KXPS5-3157 Fiche technique dz863.com/downloadpdf-lovdnabsxg-KXPS5-3157.pdf
zacharoni16

Réponses:

8

Vous n'êtes pas vraiment intéressé par les informations de fréquence dans votre signal autant que par les fonctionnalités détectables - en tant que tel, je suggère qu'il n'y a pas tant d'utilité dans une FFT ici.

Ce que vous voulez vraiment faire, c'est corréler le «signal de voiture» continu enregistré dans la voiture avec un signal différent qui est la «signature» de la bosse de nid-de-poule. Vous devrez acquérir cette signature en l'enregistrant dans une voiture passant au-dessus d'un nid-de-poule (peut-être en enregistrant plusieurs et en les utilisant pour produire un signal générique qui est une bonne représentation d'un nid-de-poule). Une fois que vous l'avez, vous pouvez le corréler avec le signal de votre voiture. Vous voudrez peut-être le faire dans le domaine fréquentiel, auquel cas vous devez croiser la FFT de votre signature avec une FFT glissante du signal de la voiture.

Vous souhaiterez peut-être traiter le signal de la voiture avant de l'utiliser pour supprimer, par exemple, le bruit haute fréquence (avec un filtre passe-bas). Vous pouvez le faire assez efficacement à l'œil nu - jouer avec divers filtres sur les signaux de la voiture pour voir qui supprime les informations les plus étrangères tout en laissant les informations importantes sur les nids de poule intactes.

PAK-9
la source
Cette corrélation croisée serait-elle très difficile à faire par programme? Je veux que tout se fasse automatiquement dans le logiciel. Je suppose que la partie la plus difficile est d'obtenir le "signal générique" pour un nid de poule suffisamment large pour faire correspondre la FFT avec la FFT des données actuelles dans la voiture. La FFT coulissante, quelle serait la fonction de fenêtrage? La seule chose qui me déroute à propos de la FFT est la fenêtre, ce serait une fenêtre coulissante? Il semble que les fréquences des nids-de-poule se produisent dans la gamme 5HZ à 20HZ très basse fréquence pour SHM de la suspension amortie
zacharoni16
2
La corrélation croisée n'est pas particulièrement difficile à faire par programme, elle est très similaire à la convolution (qui sont toutes deux en train d'itérer sur deux tableaux et d'effectuer une fonction avec un échantillon de chacune) - Je suis sûr qu'il existe des bibliothèques disponibles si vous ne voulez pas écrivez votre propre. La signature peut être un peu difficile à acquérir, mais si vous obtenez une charge de données, vous devriez voir certaines fonctionnalités émerger, plus la corrélation croisée n'est pas binaire, le résultat est essentiellement une valeur de `` confiance '' afin que vous puissiez la définir comme vous le souhaitez.
PAK-9
1
Le fn de fenêtrage de la FFT coulissante peut être ce que vous voulez, cela ne devrait pas affecter le résultat de manière trop spectaculaire. Je m'attendrais à voir une grande impulsion qui est atténuée sur une courte période (SHM de la suspension comme vous le dites) afin que vous puissiez synthétiser quelque chose comme ça en fonction des observations des signaux.
PAK-9
AH qui a du sens, la partie difficile est d'obtenir la signature.Y a-t-il un tutoriel ou un livre ou un site avec un exemple similaire de la procédure, en ce moment je pense que j'ai juste besoin de faire des bosses synthétiques un peu comme des ralentisseurs, des nids de poule et un pilote sur eux un tas de fois pour obtenir beaucoup de données. Je ne suis pas sûr des fonctionnalités que je devrais considérer pour la signature
zacharoni16
2
Il suffit de conduire sur une charge de bosses et de trous, puis de couper ces parties du signal pour vous donner une bibliothèque de signatures. FFT chacun d'eux pour vous donner une signature spectrale, si certains sont très différents lors de l'inspection visuelle, séparez-les en groupes similaires. Vous pouvez ensuite effectuer une sorte de moyenne sur chaque groupe de signatures pour vous retrouver avec une signature finale «maître» de chaque groupe que vous pouvez comparer aux signaux de la voiture.
PAK-9