All the parts

Author
Affiliation

Aaron Nielsen

White Noise Technology, LLC

Published

March 12, 2025

Abstract

Loading and processing data, putting it all together.

Pyodide yaml

pyodide:
  packages:
    - matplotlib
    - numpy
    - pandas
    - r3f
    - seaborn
    - https://whitenoisetech.codeberg.page/2025-03-12-ddl-pyodide/_external/sgl/dist/sgl-2.1.5-py3-none-any.whl
  resources:
    - https://raw.githubusercontent.com/AFIT-EENG-MagNav/example-data/refs/heads/main/mit-aia/flight1002/10Hz_Mag_INS_Aux_Flt1002.xyz.zip
    - "_external/inu/inu.py" # path must be relative to this file

Python imports

Load the data

Loading a data example from MIT-AF AI Accelerator (Gnadt et al. 2023).

Parse out needed variables

Compute velocity from position

Plot the flight path

Somewhere near Ottawa, ON.

Define simulation

Inverse mechanize to get simulated IMU

Computes accelerometer and gyro measurements from the trajectory.

Forward mechanize no altitude aiding

Compare forward mechanize and original

Forward mechanize and fix altitude

Compare with and without altitude aiding

Add noise to IMU data

Extended Kalman fitler

Run the extended Kalman filter

Compare truth and filter

Somewhere near Ottawa, ON.

References

Gnadt, Albert R., Joseph Belarge, Aaron Canciani, Lauren Conger, Joseph Curro, Alan Edelman, Peter Morales, et al. 2023. DAF-MIT AIA Open Flight Data for Magnetic Navigation Research.” Zenodo. https://doi.org/10.5281/zenodo.4271803.

Pyodide interactive python web pages with Quarto by Aaron Nielsen is licensed under CC BY-NC-SA 4.0