Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

Une sortie IMU stationnaire non nulle ne correspond pas uniquement à du bruit aléatoire. Il convient de distinguer le décalage moyen, la dispersion à court terme et la stabilité sur différentes durées de moyennage. Cet article analyse un axe gyroscopique à l'aide d'un outil CSV validé sur des données synthétiques aux propriétés connues.

Établissement des conditions stationnaires et de la durée de validité

Fixez l'IMU et enregistrez la période de préchauffage, la fréquence de sortie, le filtrage, la température, la durée et les unités. Les vibrations du bureau, les forces exercées par les câbles ou les variations de température invalident une interprétation basée uniquement sur le bruit du capteur. Les accéléromètres stationnaires incluent la gravité ; par conséquent, la valeur quasi nulle attendue du gyroscope ne doit pas être convertie en accélération.

La vitesse angulaire moyenne peut contenir plus que le biais, notamment la rotation terrestre lorsque la sensibilité et l'installation le justifient. Le guide d'évaluation ADI préconise des enregistrements sans perturbation et à température contrôlée ; ses paramètres d'acquisition spécifiques à l'appareil ne constituent pas des exigences universelles pour les IMU.

Fichier CSV et reproduction

Utilisez les colonnes time_s,gyro_rad_s, en secondes et en rad/s. Téléchargez le script d'analyse (/uploads/labs/expansion/imu_noise.py) :

python3 imu_noise.py --synthetic
python3 imu_noise.py stationary.csv

La deuxième ligne correspond à une autre commande pour votre propre fichier. Le mode synthétique a été exécuté avec Python 3.12.3, NumPy 1.26.4 et Matplotlib 3.6.3. Les données d'entrée doivent comporter au moins 100 échantillons finis, avec des intervalles de temps strictement croissants et des écarts d'intervalle ne dépassant pas 1 % de l'intervalle médian. Ce seuil de 1 % correspond à la règle de validation de cet exercice et non à une spécification de l'IMU.

Ne comblez pas les lacunes et ne considérez pas l'échantillonnage comme uniforme. Divisez d'abord les intervalles continus. Le rééchantillonnage modifie également le bruit par interpolation/filtrage et doit être documenté.

Moyenne et écart type

Les entrées synthétiques contiennent 60 000 points sur 600 s à 100 Hz, avec une valeur initiale de 7 : un décalage constant de 0,01 rad/s auquel s’ajoute un bruit gaussien indépendant d’écart type de 0,002 rad/s. Les résultats donnent une moyenne de 0,009991 rad/s et un écart type de 0,001994 rad/s. Téléchargez les fichiers input et statistics.

La moyenne caractérise cet intervalle, et non chaque cycle de température ou de puissance. L’écart type seul ne permet pas de distinguer correctement les variations lentes du bruit rapide. Faites varier la durée de moyennage.

Écart d’Allan en fonction de la durée de moyennage

Divisez les vitesses angulaires en K blocs non chevauchants de m échantillons, avec des moyennes de bloc ȳ. La statistique implémentée est :

\sigma_A(\tau)=\sqrt{\frac{1}{2(K-1)}\sum_{j=1}^{K-1}(\bar y_{j+1}-\bar y_j)^2},\qquad \tau=m\Delta t

Les unités restent en rad/s. Pour chaque m, les échantillons finaux ne pouvant former un bloc complet sont supprimés. La différence entre les moyennes adjacentes annule un décalage constant ; l’écart d’Allan seul ne peut donc pas révéler son amplitude. NIST SP 1065 explique la définition et la variante avec chevauchement. Bien que cette référence concerne la stabilité de fréquence, ce code applique la statistique de la moyenne adjacente aux vitesses angulaires du gyroscope.

Lire le résultat synthétique

Diagram 1 · Use the button to switch views
Écart d’Allan sans chevauchement du bruit blanc synthétique du gyroscope, en rad/s en fonction du temps de moyennage en secondes.

Pour un bruit blanc indépendant, le moyennage de m échantillons réduit la dispersion approximativement en 1/√m. La courbe théorique tracée est de 0,002/√(100τ). Des temps de moyennage longs impliquent moins de blocs et des estimations plus incertaines. Le fichier CSV d'Allan (/uploads/labs/expansion/imu-synthetic-allan.csv) inclut les paires adjacentes. Au moins dix blocs sont nécessaires, mais environ neuf paires adjacentes à la fin ne fournissent qu'une faible indication.

Aucune instabilité de biais ni marche aléatoire n'a été ajoutée. Une courbe descendante ne renseigne pas sur la stabilité à long terme d'une centrale inertielle réelle. Identifier son minimum comme une instabilité de biais nécessite également de vérifier le modèle de bruit, la pente et le coefficient dépendant de la convention.

Enregistrer suffisamment de conditions pour la comparaison

Enregistrer le modèle/micrologiciel, l'ODR, la bande passante, les unités, la plage de température, la durée totale, le taux de données manquantes, l'axe, la moyenne, l'écart type et le nombre de paires pour chaque τ. L'ODR correspond au débit de données de sortie interne du capteur, et non à la fréquence d'interrogation de l'hôte. Le filtrage modifie les courbes, même sur un matériel identique. Poursuivez avec l'échantillonnage et le repliement de spectre pour comprendre pourquoi une interrogation plus rapide ne crée pas d'informations nouvelles.

Related reading

Distinguish ODR, polling rate and bandwidth.Échantillonnage et repliement de spectre : pourquoi un intervalle d’interrogation plus rapide ne suffit pasExplore another aspect of this fieldConception de l'alimentation des robots — diagnostic des réinitialisations de l'ordinateur lors du démarrage du moteurExplore another aspect of this fieldAccélérateurs d'IA en périphérie — Coral, Jetson, Movidius