Extended Kalman filter
Description
The Extended Kalman Filter
(EKF) is a recursive estimation algorithm that is used to estimate the state of a dynamic system from a series of noisy measurements. It’s an extension of the traditional Kalman Filter, designed to handle non-linear systems by linearizing them around the current state estimate.
The EKF operates in two main steps: the prediction and the update step. In the prediction step, the filter predicts the new state of the system based on the previous state estimate and the system dynamics. In the update step, the predicted state is corrected using new measurements to produce a more accurate state estimate.
The EKF can be used to fuse the UWB range measurements with other sensor data (like accelerometers, gyroscopes, etc.) to estimate the position and velocity of the mobile tag in a non-linear environment. The EKF linearizes the non-linear UWB measurement equations around the current state estimate, allowing the filter to provide more accurate position estimates despite the inherent non-linearities.
input: a range between tag and a anchor
output: 2D position of the tag
Supported languages
- Python
Supported hardware
This algorithm is meant to be run in the cloud* or on edge devices, thus supporting any hardware capable of determining the ranges between anchors.”
*“In the cloud” suggests that it is not designed for deployment on embedded hardware. <!– ### Performance —
Environment | MAE [cm] | Robustness (95-percentile) |
---|---|---|
Open space | 5 | < 10 cm |
Industrial IOT Lab | 10 | < 20 cm |
Office Lab | 20 | < 40 cm –> |