robotics//sensor//sensor error model
A sensor error model is an equation that writes the number a sensor delivers as the true quantity distorted by each of its known imperfections, and it is the first thing to write down for any sensor that feeds an estimator, a controller or a model. Almost every real sensor fits in one line:
A sensor error model is an equation that writes the number a sensor delivers as the true quantity distorted by each of its known imperfections, and it is the first thing to write down for any sensor that feeds an estimator, a controller or a model. Almost every real sensor fits in one line:
yk=Q [(1+s) x(tk−τd)+b(tk)+nk].y_k = Q\!\left[(1+s)\,x(t_k-\tau_d) + b(t_k) + n_k\right].yk=Q[(1+s)x(tk−τd)+b(tk)+nk].
The true quantity is xxx and yky_kyk is the number received at the sampling instant tkt_ktk. The scale factor error sss is a multiplicative gain error: with s=0.005s=0.005s=0.005 the sensor reads 100.5 where there is 100. The bias bbb is an offset that varies slowly with time and temperature (sensor bias); when it moves, that movement is drift. The noise nkn_knk is the fast random part (measurement noise, white noise). The delay τd\tau_dτd is the sensor latency: the number describes the world of a while ago, because of filtering, conversion, the bus and processing. And Q[⋅]Q[\cdot]Q[⋅] is the quantization of the converter.
Every sensor fits in one line, and each term asks for a different remedy.
Scale and bias are calibrated, noise is averaged or filtered, latency is timestamped and compensated, quantization is bought down with bits; mistaking one for another (filtering a bias, calibrating a delay) spends effort where the error does not live.
The terms are reached through their own notes: scale and bias through sensor calibration, the species of noise through noise characterization and the Allan variance, the latency through time synchronization, the bits through the analog-to-digital converter. Where in the hardware each one is born is the measurement chain.
The line leaves out nonlinearity, cross-sensitivity (an accelerometer that also responds to temperature, a gyroscope to acceleration) and saturation, when the quantity exceeds the range and the reading pins at its limit. The conditioning adds interference picked up by the wiring and ground loops, which reach the number as noise with structure (the 50 Hz of the mains). Each matters when the sensor is pushed to the edges of its operating envelope.
The worst errors look like physics. A frozen value, a sensor that stopped while the driver keeps repeating its last reading, looks like a very stable process; a bias leads estimator and controller to the wrong place with full confidence. Neither raises an alarm by itself, which is why plausibility checks (does a noisy signal still move? is the sample counter advancing?) belong next to the model.