robotics//sensor//sensor calibration//sensor bias
A sensor that reads consistently high or low by the same amount has a **bias**: the mean of its errors is not zero. It is the part of the error that averaging never removes, because every reading carries it (precision and accuracy).
A sensor that reads consistently high or low by the same amount has a bias: the mean of its errors is not zero. It is the part of the error that averaging never removes, because every reading carries it (precision and accuracy).
A Kalman filter assumes zero-mean noise, v∼N(0,R)v\sim\mathcal N(0,R)v∼N(0,R). If the sensor has a bias, the filter will not discover it on its own. There are two ways out. Either calibrate it beforehand, subtracting the bias measured against a known truth in the lab (sensor calibration), or put it in the state and let the filter estimate it along with everything else (colored noise). Doing neither, the filter converges with total confidence to the wrong place.
A bias measured once is only as good as the conditions it was measured in: many biases move with temperature, age and supply voltage, which is why a fixed offset works on the bench and drifts in the field (operating envelope).
A bias that wanders slowly is no longer a constant to subtract but a state to track: the same number, seen over time, becomes a slow error with memory, and the filter needs it in its state to stay honest.
With a single sensor a bias in the state is only partly separable from the quantity measured; a second sensor with a different bias, or a moment of known truth (a vehicle standing still, a known landmark), is what lets the filter tell them apart (controllability and observability).