Systèmes embarqués et traitement du signal
Mesure du taux de rotation de la terre
Ce projet s'inscrit dans le cadre des systèmes embarqués et utilise un ensemble de gyroscopes MEMS pour réaliser une mesure expérimentale du taux de rotation de la Terre. L'objectif est de démontrer qu'avec des composants peu coûteux et facilement accessibles, il est possible de confirmer des concepts scientifiques fondamentaux, tout en mettant en pratique des techniques avancées de traitement du signal et de contrôle.


Le dispositif est basé sur les éléments suivants :
PI PICO
Capteurs BMI 160 (x2) : gyroscopes A et B
Driver A4988
Ecran 3.5 pouce tactile
Moteur pas à pas NEMA17
PCB dédié
Fonctionnalité
Le dispositif permet de mesurer le taux de rotation de la Terre en utilisant des gyroscopes MEMS. Cette mesure est complexe car le taux de rotation est extrêmement faible (0,00416°/s), ce qui est proche de la LSB des capteurs utilisés (environ 0,004°/s). On pourrait en conclure que la mesure n'est pas possible. Paradoxalement, c'est la présence du bruit de mesure qui permet par une approche statistique (Kalman) de révéler la valeur du taux de rotation de la terre.
Pour surmonter les défis liés à la précision et aux dérives des capteurs, le système effectue des mesures en quatre positions différentes. La position 1 est une mesure colinéaire à l'axe de rotation de la Terre, c'est à dire orienté de 90° - l'angle azimut par rapport à l’horizontale et orienté vers le nord. Un cycle de mesure comprend 128 lectures (32 par position, 16 pour chaque capteur), et chaque cycle dure environ 10 secondes.
La position 2 s'obtient après une rotation de 180°. Les positions 3 s'obtient par une rotation de 90° supplémentaire. Et la position 4 est obtenu par une rotation complémentaire de 180°.
Cycle de Mesure
Le support des capteurs est déplacé en quatre positions successives, permettant de compenser les biais et les dépendances à la gravité et à la température. Les positions sont décalées de 90° pour couvrir différentes orientations par rapport à l'axe de rotation de la Terre.
Acquisition des Données
À chaque position, les gyroscopes mesurent le taux de rotation. Les données sont collectées et stockées pour traitement.
Objectifs Pédagogiques et Scientifiques
Ce dispositif a un intérêt principalement pédagogique et scientifique :
Démonstration Pratique : Il montre qu'il est possible de réaliser une mesure précise avec des composants simples et bon marché
Techniques Avancées : Il illustre l'application de techniques avancées de traitement du signal, comme le filtre de Kalman, dans des systèmes embarqués.
Confirmation Expérimentale : Il fournit une confirmation expérimentale simple et locale du taux de rotation de la Terre, utile dans des contextes de scepticisme scientifique.
Perspectives
Un tel système, coûtant moins d'une trentaine d'euros, est pleinement opérationnel pour mesurer le taux de rotation de la Terre et permet la visualisation aisée des résultats. Une perspective intéressante serait de l'utiliser pour développer un gyrocompas (je l'ai fait, le résultat est présenté dans la suite du portfolio).
Résultats
Mots clefs
Systèmes embarqués, gyroscope, BMI160, MEMS, PI PICO, taux de rotation de la Terre, filtre de Kalman, platisme, moteur pas à pas, traitement du signal, mesure expérimentale, interface utilisateur, scepticisme scientifique, confirmation expérimentale.


Voici un exemple de dépouillement réalisé avec MATLAB (le dimensionnement et les essais du filtre de Kalman ont été réalisés préalablement au déploiement sur le microcontrôleur avec MATLAB), avec le même traitement du signal que celui implémenté dans le microcontrôleur. On voit un accord entre la valeur théorique et l'expérience de l'ordre de quelques pourcents, avec un résultat qui fluctue légèrement autour de la valeur cible dès qu'on a itéré un nombre suffisant de cycles d'acquisition.



Inclinomètre moto
Ce dispositif est capable de mesurer et d'afficher l'inclinaison d'une moto en temps réel, en utilisant des gyroscopes et accéléromètres MEMS pour obtenir des données précises malgré les perturbations dues aux accélérations et vibrations. Ce projet illustre non seulement la conception matérielle, mais aussi l'intégration logicielle nécessaire pour traiter des données en temps réel, fusionner l'informations issues de plusieurs capteurs et fournir une visualisation instantanée.


Le dispositif est basé sur les éléments suivants :
PI PICO
Capteurs BMI 160 (x2) : gyroscopes A et B
Ecran 3.5 pouce tactile
Moteur pas à pas NEMA17
PCB dédié
Boîtier : Conçu sur mesure pour se fixer au guidon de la moto, intégrant tous les périphériques nécessaires
Fonctionnalité
Le système mesure l'inclinaison de la moto à l'aide des gyroscopes, en intégrant les taux de rotation. Les accéléromètres sont utilisés pour recalibrer la position verticale lorsque la moto est stable (pas d'accélération ni de virage et une inclinaison proche de 0°), permettant ainsi une mesure précise même en présence de perturbations.
Méthodologie et Traitement du Signal :
Fusion des Données : Les mesures des deux gyroscopes sont fusionnées à l'aide d'un filtre de Kalman (implémentation similaire au projet de la mesure du taux de rotation de la terre), permettant de réduire les biais individuels des capteurs. Le vecteur d'état inclut le taux de rotation et les biais des deux capteurs, tandis que la matrice de mesure est constituée des mesures des taux de rotation pour chaque capteur. Cela permet de compenser les dérives inhérentes aux gyroscopes.
Réétalonnage : Un filtre à complément est utilisé pour réétalonner l'inclinaison en utilisant les données des accéléromètres lorsque la moto évolue à vitesse constante (c'est-à-dire lorsque l'accélération correspond principalement à celle de la pesanteur terrestre, orientée vers le bas). Ce réétalonnage périodique corrige les déviations cumulées et assure une mesure précise sur le long terme.
Optimisation Logicielle : La bibliothèque utilisée pour les capteurs BMI160 a été modifiée pour permettre l'utilisation de deux ports I2C du Pi Pico, augmentant ainsi le taux d'acquisition et éliminant les problèmes d'adressage. Cette modification a permis de doubler la fréquence d'échantillonnage, offrant des mesures plus fréquentes et donc plus précises.
Affichage Temps Réel : Les données traitées sont affichées en temps réel sur l'écran tactile, avec un taux de rafraîchissement d'environ 40 ms, offrant une visualisation continue des inclinaisons maximales enregistrées. L'interface utilisateur est conçue pour être intuitive, permettant au pilote de consulter facilement les données pendant la conduite. L'inclinaison maximum à gauche et à droite est sauvegardée.
Mots clefs
Systèmes embarqués, gyroscope, BMI160, MEMS, PI PICO, taux de rotation, filtre de Kalman, filtre à complément, mesure d'inclinaison, moto, traitement du signal, temps réel
Perspectives et Applications :
Ce dispositif démontre la faisabilité de mesurer avec précision l'inclinaison d'une moto en utilisant des composants accessibles et peu coûteux.
Pourquoi mesurer son inclinaison ? Par jeu et pour se comparer aux autres pilotes ! Cela permettrait certainement de faciliter l'apprentissage du "posée de genoux" qui reste un enjeu pour les jeunes pilotes.
Il ouvre la voie à diverses améliorations, telles que :
Ajout d'un Lecteur de Carte SD : Pour enregistrer les données d'inclinaison sur une longue période, facilitant l'analyse post-course.
Intégration d'un Module GPS : Pour corréler les données d'inclinaison avec la position géographique, fournissant des informations sur les conditions de conduite spécifiques (vitesse, rayon des courbes, etc.).
Traitement du Signal : Explorer l'utilisation d'autres filtres comme le filtre de Madgwick.
Ces améliorations permettraient de transformer ce dispositif en un outil complet pour l'analyse et l'optimisation des performances de conduite.


tous droits réservés ©

Système de captation longue distance du son


Le dispositif est basé sur les éléments suivants :
ESP32
2 micros MEMS INMP441
décodeur audio UDA1334A
La parabole et les racks de fixation, réalisés à l'impression 3D
Contexte et Objectif du Projet
Ce projet vise à développer un dispositif capable d'amplifier les sons lointains tout en réduisant le bruit ambiant. En utilisant des technologies embarquées, ce système offre une solution performante et abordable pour capter des sons à longue distance, démontrant ainsi ma capacité à réaliser un traitement du signal en temps réel dans le domaine audio.
Mots clefs
Systèmes embarqués, ESP32, Micros MEMS, INMP441, parabole acoustique, DSP, temps réel, UDA1334A, décodeur audio, traitement du signal, filtre de Wiener
Un des micros est positionné au foyer d'une parabole acoustique imprimée en 3D. Le diamètre de cette parabole est de 280 mm, offrant un gain d'environ 28,94 dB, ce qui semble réaliste comparé à l'ouverture de l'oreille humaine, qui est d'environ 1 cm². L'autre micro capte le bruit ambiant en étant placé à l'extérieur du faisceau de la parabole. Un décodeur audio UDA1334A, connecté sur l'autre port I2S disponible, est utilisé pour restituer le son amplifié.
Le gain total du système, qui combine la sensibilité des micros (-26 dB) et le gain acoustique de la parabole, atteint plus de 50 dB. Ce gain est essentiel pour permettre la captation de sons faibles à longue distance, en les amplifiant de manière significative.
Perspectives
Ce dispositif, dont le coût est inférieur à 30 euros, pourrait être utilisé pour des applications de surveillance acoustique ou d'étude environnementale, où la captation de sons à longue distance est cruciale. Des améliorations futures pourraient inclure l'intégration de techniques d'intelligence artificielle pour un filtrage plus adaptatif, comme l'utilisation d'algorithmes d'apprentissage automatique pour ajuster dynamiquement les paramètres de filtrage en fonction de l'environnement sonore. Ces techniques pourraient permettre de mieux différencier les signaux utiles du bruit de fond en temps réel, optimisant ainsi les performances du dispositif.


Architecture du programme
Le programme s'articule autour de quatre threads pour un traitement en temps réel. Le premier thread, prioritaire, gère l'acquisition des données via l'accès direct en mémoire (DMA), libérant ainsi le processeur pour d'autres tâches. Le second thread, dédié au traitement du signal, applique une FFT sur les deux signaux entrants, un filtre de Wiener, puis une IFFT sur la sortie du filtre, avant de placer les données traitées dans une nouvelle file d'attente. Le troisième thread lit ces données, applique un filtre FIR pour renforcer les basses, et les envoie au décodeur audio (DMA). Enfin, le dernier thread contrôle le clignotement de la LED RGB de l'ESP32 et permet surtout de savoir si l'application est plantée et si le dispositif est allimenté.


Présentation du dispositif
Le système repose sur un microcontrôleur ESP32, associé à deux micros MEMS INMP441 connectés via un premier port I2S, avec les micros reliés sur les canaux gauche et droit du port.
Innovation
Systèmes embarqués, intelligence artificielle, deep learning, solutions sur mesure, efficacité, innovation, sécurité, fiabilité.
Contact
contact@selvasystems.net
SIREN 939271441
© 2025. All rights reserved.
© 2025. Tous droits réservés.