Module sim

Module sim 

Source
Expand description

Simulation utilities and CSV data loading for strapdown inertial navigation.

This module provides tools for simulating and evaluating strapdown inertial navigation systems. It is primarily designed to work with data produced from the Sensor Logger app, as such it makes assumptions about the data format and structure that that corresponds to how that app records data. That data is typically stored in CSV format and is represented by the TestDataRecord struct. This struct is fairly comprehensive and should be easily reusable for other applications. Modeling off of that struct is the NavigationResult struct which is used to store navigation solutions from simulations, such as dead reckoning or Kalman filtering.

This module also provides basic functionality for analyzing canonical strapdown inertial navigation systems via the dead_reckoning and closed_loop functions. The closed_loop function in particular can also be used to simulate various types of GNSS-denied scenarios, such as intermittent, degraded, or intermittent and degraded GNSS via the measurement models provided in this module. You can install the programs that execute this generic simulation by installing the binary via cargo install strapdown-rs.

Modules§

health

Structs§

NEDCovariance
Struct representing the covariance diagonal of a navigation solution in NED coordinates.
NavigationResult
Generic result struct for navigation simulations.
TestDataRecord
Struct representing a single row of test data from the CSV file.

Functions§

closed_loop
Closed-loop GPS-aided inertial navigation simulation.
dead_reckoning
Run dead reckoning or “open-loop” simulation using test data.
initialize_ukf
Helper function to initialize a UKF for closed-loop mode.
print_ukf
Print the UKF state and covariance for debugging purposes.