0.5.0
To add minikalman/0.5.0 to your project, run
cargo add minikalman@0.5.0or use
[dependencies]
minikalman = "0.5.0"To install the latest version, run
cargo add minikalmanBreaking Changes
This release reworks the construction of Kalman Filters on both no_std using macros, but adds
builder support for std and alloc targets. Extended Kalman Filters are now available as well.
Added
- #10: Builder types were added for Kalman filters, control inputs and observations. The
KalmanFilterBuildertype serves as a simple entry point onalloccrate features. - #21: Added the functions
make_identity,make_scalar,make_comatrixandset_diagonal_to_scalarfor square matrices. - #25: Added support for Extended Kalman Filters.
- #28:
micromathis now an optional dependency again.
Changed
- #9: Data ownership was reworked: Filters, control inputs and measurements/observations are now backed by a generic buffer type that can operate on stack- or heap allocated arrays, immutable and mutable references. Some features are gated behind the
alloccrate feature. - Types were remodeled into new modules in order to arrange them in a slightly more logical way.
- #18: "Inputs" naming was changed to "Control" to align more closely with common usages of Kalman filters.
- #20: "Measurements" naming was changed to "Observation" in places where it aligns with common usages of Kalman filters. In addition, type name ambiguity between process and measurement noise covariance was reduced.
Removed
- The
create_buffer_Xmacros were removed from the crate due to their relatively complicated use.
Internal
- #8: The repository was restructured into a Cargo workspace to allow for easier handling of cross-compilation examples.
- #27: Added an EKF example with radar measurements of a moving object.
Pull Requests
- Convert to cargo workspace by @sunsided in #8
- Rework matrix data ownership by @sunsided in #9
- Add Kalman Filter, Input and Measurement builders by @sunsided in #12
- Remove minikalman-traits package by @sunsided in #16
- Move buffer types into buffer module by @sunsided in #17
- Rename inputs to controls by @sunsided in #18
- Rename measurements to observations by @sunsided in #20
- Add linear acceleration example by @sunsided in #21
- Simplify trait bounds and add inspection functions by @sunsided in #23
- Simplify vector and matrix inspection / application functions by @sunsided in #24
- Extended Kalman Filters by @sunsided in #25
- Remove apply_mut and inspect_mut in favor of apply and inspect by @sunsided in #26
- EKF example: Radar measurements of a moving object by @sunsided in #27
- Re-enable micromath support by @sunsided in #28