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


  1. 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 –>