Tengo un sensor de sonar que lee el nivel del agua midiendo la distancia a la superficie del agua y enviando de vuelta como un número de punto flotante.
Realiza mediciones individuales a intervalos fijos y las envía justo después.
pero de vez en cuando, debido a factores ambientales, hay un pico en la lectura que no coincide con la cantidad física que mide.
esperado: 100 105 95 97 103 101 100 98 99 103 ... n (valores que rondan el 100)
recibido: 100 105 250 95 97 102 101 20 105 98 ... n (250 y 20 son picos)
el valor 205 y 20 es falso porque por diseño no es posible que el nivel del agua cambie tan rápido.
¿Qué método debo utilizar para ignorar estos grandes cambios? Puedo disminuir el intervalo de muestreo para obtener más muestras con las que comparar y corregir antes de informar, pero ¿cómo lo hago matemáticamente?
El promedio no funciona porque el pico arrastrará el valor hacia él.