Simulateur interactifDébutant

Simulateur de capteurs : étalonnage et fusion

Explorez le bruit, le biais, la dérive, la quantification, les pertes, le filtrage et la fusion dans un simulateur de capteurs interactif et déterministe.

Catégorie
Capteurs
Durée
60–150 min
Plateforme
Navigateur · Microcontrôleur
Schéma technique : Simulateur de capteurs : étalonnage et fusionSAMPLE → FILTER → FUSE

01 / Commencez ici

Introduction

Les robots agissent sur des mesures retardées, biaisées, bruitées et incomplètes. Ce projet rend ces limites visibles. Comparez la vérité, les échantillons bruts et les estimations filtrées ; modifiez les conditions d'échantillonnage ; et apprenez comment l'étalonnage affecte la commande en aval sans prendre un modèle pédagogique pour un capteur précis.

Live lab / Deterministic measurement model

Robot sensor simulator

Compare a known signal with noisy absolute readings and a filtered estimate. Change one error source at a time to see what calibration can—and cannot—fix.

Browser native
This simulator compares truth, absolute samples, and the selected estimate over time. Use the controls below to run it, or read the theory and algorithm after this lab.

The main plot compares solid truth, individual absolute-sensor samples, and the thicker dashed estimate. The lower band shows signed estimation error around zero; gaps mark dropped absolute samples.

Simulation

Paused. Press Start or Step to collect samples.

Measurement
Reliability & filtering
Truth
—
Absolute
—
Estimate
—
Error
—
RMSE
—
Dropped
0

Keyboard: focus the plot, then use Space to run/pause, N to step, R to reset, and F for full screen.

Commandes

Choisissez un signal vrai lisse ou en escalier, puis ajustez la fréquence d’échantillonnage, la quantification, le bruit aléatoire, la dérive, le biais, les pertes et la mémoire du filtre. Comparez les données brutes aux estimations par moyenne mobile, passe-bas, médiane et complémentaires. Les préréglages rendent les comportements de capteurs bruités, biaisés et peu fiables répétitives.

Théorie

Chaque capteur a une plage de mesure, une résolution, une précision, une bande passante, une latence et un comportement en panne. La précision de fiche technique ne décrit qu’une partie du système ; le montage, la température, le bruit d’alimentation, les interférences électromagnétiques et les propriétés de surface dominent souvent les résultats réels.

La fusion fonctionne quand les capteurs apportent des informations complémentaires et que leur incertitude est représentée honnêtement. Combiner deux mesures biaisées ne crée pas automatiquement la vérité. Commencez par l’étalonnage, les horodatages, les repères de coordonnées et les contrôles de qualité des données.

Tracé temporel comparant un signal vrai lisse, des échantillons bruts bruités dispersés autour, et une estimation filtrée passe-bas. La ligne filtrée rejette la majeure partie du bruit mais reste visiblement en arrière de la vérité pendant la montée rapide.
Un filtre passe-bas échange du bruit contre du retard : il lisse les échantillons bruts vers la vérité, mais l'estimation reste en arrière dès que le signal varie vite. Télécharger le SVG

Algorithme

  1. Horodatez et contrôlez la plage de chaque échantillon à la frontière d’acquisition.
  2. Convertissez les unités brutes avec l’échelle, l’écart et l’alignement des axes d’étalonnage.
  3. Rejetez les sauts impossibles ou marquez-les invalides au lieu d’inventer des données.
  4. Appliquez le filtre le plus léger qui satisfait l’exigence de bruit en aval.
  5. Transformez les mesures dans un repère commun et fusionnez-les en utilisant l’incertitude connue.
  6. Enregistrez les valeurs brutes et traitées pour que les pannes restent reproductibles.

Code source

Un filtre passe-bas exponentiel est utile quand sa constante de temps est choisie délibérément :

class LowPass:
    def __init__(self, alpha):
        self.alpha = alpha
        self.value = None

    def update(self, sample):
        if self.value is None:
            self.value = sample
        else:
            self.value += self.alpha * (sample - self.value)
        return self.value

Enregistrez l’échantillon brut à côté du résultat filtré. Sinon un tracé séduisant peut masquer l’écrêtage, les pertes et les erreurs d’étalonnage.

Hypothèses et différences avec le matériel

Ce labo est un modèle de signal pédagogique, pas la fiche technique d’un capteur précis. Le bruit est gaussien ou uniforme amorcé avec un réglage que vous commandez ; une vraie centrale inertielle ou un vrai capteur ToF ajoute un biais dépendant de la température, des pics non gaussiens et une gigue de temporisation de bus que ce modèle simplifie. L’échantillonnage est parfaitement périodique ici, mais sur un microcontrôleur la temporisation de boucle et la latence d’interruption rendent les horodatages essentiels — c’est pourquoi chaque mode de traitement dans les commandes compare ensemble la vérité, les échantillons bruts et l’estimation. Le filtrage semble séduisant sur un tracé, pourtant chaque lissage ajoute un retard qui apparaîtra plus tard comme un retard de commande sur le matériel ; le même compromis est couvert dans le tutoriel sur le bruit des capteurs.

Schéma de câblage

Vérifiez la tension du bus, les exigences de résistances de rappel, les adresses et la longueur maximale de câble avant de connecter plusieurs capteurs.

Schéma fonctionnel d'un bus de capteurs mixte. Un capteur analogique rejoint le contrôleur via un CAN, des capteurs I²C partagent les lignes SDA et SCL, et un capteur SPI utilise sélection de puce, horloge et lignes de données. Le contrôleur écrit un journal horodaté.
Différents bus de capteurs convergent vers un contrôleur, qui horodate chaque échantillon pour que les valeurs brutes et traitées restent reproductibles. Télécharger le SVG

Expériences guidées

Les réglages de ce labo existent pour vous permettre de produire délibérément chaque défaut de capteur, puis de voir quel outil le corrige. Le faire une fois vaut beaucoup de lecture.

1. Prouvez que le filtrage ne peut pas corriger un biais

Mettez le bruit à zéro et le biais à un écart net. Essayez ensuite chaque filtre tour à tour — moyenne mobile, passe-bas, médiane. Aucun ne rapproche l’estimation de la vérité, car les trois atténuent la variation et un biais ne varie pas.

Mettez ensuite le biais à zéro et le bruit haut, et regardez les mêmes filtres bien fonctionner. C’est la distinction la plus utile du travail sur les capteurs : bruit, biais et dérive se ressemblent sur un tracé et exigent trois corrections différentes, et plus de filtrage ne guérit jamais un biais.

2. Regardez une moyenne étaler un pic qu’une médiane rejette

Activez les pertes ou les pics, et comparez une moyenne mobile à une médiane de même fenêtre.

Filtre Ce qu’une valeur aberrante fait
Moyenne mobile de 5 Décale l’estimation pendant cinq échantillons consécutifs
Médiane de 5 N’apporte rien du tout

Le bruit des ultrasons et du temps de vol n’est pas gaussien — ce sont des valeurs aberrantes occasionnelles contre un signal stable par ailleurs. C’est exactement le cas qu’une moyenne gère le plus mal.

3. Mesurez ce que coûte le retard

Basculez sur le signal vrai en escalier et abaissez l’alpha du filtre (ou allongez la fenêtre). L’estimation devient plus lisse et arrive plus tard. Lisez le retard sur le tracé à chaque réglage :

Réglage du filtre Retard typique À 0,3 m/s cela fait
Médiane de 3 ~1 échantillon 3 mm
Moyenne mobile de 10 ~4,5 échantillons 14 mm
Passe-bas, α = 0,1 ~9 échantillons 27 mm
Passe-bas, α = 0,02 ~49 échantillons 147 mm

La dernière ligne produit une trace magnifiquement lisse et dirige un robot là où l’obstacle était il y a 15 cm. Vérifiez toujours le retard dans les unités qui comptent pour le robot, pas en échantillons — c’est la façon la plus fréquente dont un filtre bien intentionné aggrave un robot.

4. Voyez ce que la fusion peut et ne peut pas faire

Réglez une source bruitée-mais-non-biaisée et l’autre lisse-mais-dérivante, et regardez l’estimation complémentaire prendre la bonne moitié de chacune. Donnez ensuite aux deux sources le même biais et regardez l’estimation fusionnée l’hériter exactement.

La fusion exploite les erreurs indépendantes. Une erreur de mode commun survit intacte, c’est pourquoi l’étalonnage vient avant la fusion plutôt qu’après.

Ce que vous devriez observer

Configuration Brut Meilleur filtre Pourquoi
Bruit gaussien, sans biais Dispersé symétriquement Moyenne mobile ou passe-bas Le bruit se moyenne vers la vérité
Pics occasionnels Globalement bon, rares valeurs aberrantes Médiane Rejette les valeurs extrêmes d’emblée
Écart constant Resserré mais faux Aucun — étalonnez Le filtrage ne peut pas voir l’écart
Dérive lente Juste au début, s’éloigne Aucun — réétalonnez ou fusionnez Besoin d’une référence absolue
Pertes Trous Médiane, plus maintien de la dernière bonne Une valeur inventée est pire qu’un trou marqué
Quantifié Atterrit sur des paliers discrets Aucun — c’est votre résolution Filtrer entre les paliers ajoute du retard, pas de l’information

Transposition au matériel

Ce labo Un vrai capteur
L’échantillonnage est parfaitement périodique La temporisation de boucle et la latence d’interruption rendent les horodatages essentiels
Le bruit est gaussien ou uniforme amorcé Pics non gaussiens, et biais qui bouge avec la température
La vérité est disponible pour comparaison Vous n’avez aucune vérité — c’est pourquoi vous étalonnez contre une entrée connue
Les pertes sont explicites Une perte peut ressembler à une valeur plausible
Un capteur à la fois Plusieurs bus, plusieurs fréquences, et des problèmes d’alignement entre eux

La procédure pratique pour un vrai capteur est courte : tenez-le immobile face à une entrée connue, enregistrez quelques milliers d’échantillons horodatés, et tracez à la fois la série temporelle et un histogramme. L’histogramme est la partie que l’on saute et la plus informative — le bruit gaussien fait une cloche, les valeurs aberrantes font une cloche avec quelques points loin dans les queues, et les deux exigent des filtres différents. La méthode complète est dans bruit, biais et filtrage des capteurs.

Liste de vérification du matériel

Composants

  • Microcontrôleur ou ordinateur monocarte
  • Un ou plusieurs capteurs numériques ou analogiques
  • Références d'étalonnage connues
  • Alimentation régulée stable et niveaux logiques corrects
  • Liaison d'enregistrement pour des expériences répétitives

Explorer le graphe

Où ce simulateur est utilisé

Les projets, parcours d'apprentissage et tutoriels qui s'appuient sur ce labo.

Continuer la construction

Ressources à télécharger

Utilisez ces références sur la page pendant que vous avancez dans le projet. Les archives de projet téléchargeables ne seront ajoutées qu'une fois leur source et leur version publiées.

Questions courantes

Questions fréquentes

Un signal plus lisse est-il toujours un meilleur signal ?

Non. Un filtrage fort peut supprimer du mouvement utile et introduire du retard. Choisissez un filtre à partir du spectre de bruit, du temps de réponse requis et des décisions qui consomment la mesure.

Quelle est la différence entre biais et bruit ?

Le biais est un écart répétitif par rapport à la valeur vraie, tandis que le bruit varie entre les échantillons. L'étalonnage peut estimer le biais ; moyenner ou filtrer peut réduire le bruit aléatoire mais ne peut pas supprimer fiablement un biais inconnu.

Qu'est-ce que la dérive d'un capteur, et en quoi diffère-t-elle du biais ?

Le biais est un écart fixe que vous pouvez mesurer une fois et soustraire. La dérive est une variation lente de cet écart dans le temps, généralement avec la température ou le vieillissement des composants, donc un étalonnage pris au démarrage cesse progressivement de correspondre à la réalité. La dérive est pourquoi les longs essais ont besoin d'un réétalonnage périodique ou d'une référence contre laquelle l'estimateur peut se corriger.

Quel filtre dois-je utiliser : moyenne mobile, passe-bas ou médian ?

Une moyenne mobile et un passe-bas exponentiel lissent tous deux le bruit de type gaussien, en arbitrant entre réactivité et lissage via leur fenêtre ou constante de temps. Un filtre médian est meilleur pour supprimer les pics et pertes occasionnels car quelques mauvais échantillons ne déplacent pas la valeur médiane. Choisissez le filtre le plus léger qui satisfait l'exigence en aval plutôt que le plus lisse en apparence.

Quel retard le filtrage ajoute-t-il ?

Chaque filtre de lissage retarde le signal vrai, et plus de lissage signifie plus de retard : un filtre passe-bas avec une longue constante de temps rejette plus de bruit mais reste plus en arrière sur les variations rapides. Tracez toujours l'estimation filtrée face aux échantillons bruts et à la vérité pour que le retard soit visible avant de vous y fier dans une boucle de commande.

Qu'est-ce que la fusion de capteurs et quand aide-t-elle réellement ?

La fusion combine plusieurs capteurs en une estimation, et elle n'aide que lorsque les capteurs apportent des informations complémentaires et que leur incertitude est représentée honnêtement. Combiner deux mesures biaisées ne crée pas la vérité. Un filtre complémentaire, par exemple, fait confiance à un capteur aux hautes fréquences et à un autre aux basses fréquences ; commencez par l'étalonnage, les horodatages et les repères de coordonnées avant de fusionner.

Pourquoi chaque échantillon doit-il être horodaté ?

Les échantillons arrivent rarement à intervalle parfaitement fixe, et la fusion et le filtrage supposent que vous savez quand chaque valeur a été mesurée. Les horodatages permettent de détecter la gigue, d'aligner les données de différents capteurs et de rejeter les mesures périmées. Enregistrer les valeurs brutes à côté des valeurs traitées garde les pannes comme l'écrêtage, les pertes et les erreurs d'étalonnage reproductibles.

Pour aller plus loin

Références

Des sources faisant autorité pour aller plus loin que le modèle pédagogique, borné, de ce simulateur.