Quiero procesar algorítmicamente los datos del medidor de energía . El medidor de energía mide un productor de calor o energía o un consumidor de calor o energía (pero no ambos, por lo que la energía medida siempre tendrá un signo positivo). No se conoce información adicional sobre el sistema de energía (como la carga máxima) ni sobre el tipo de medidor de energía: solo se puede acceder a los datos almacenados en una base de datos. El procesamiento se realizará mediante un algoritmo que analiza los datos durante un intervalo de tiempo determinado (sin procesamiento en vivo).
Por lo general, los datos son débilmente monótonos de la forma
2015-04-01 00:00 20.78 kWh
2015-04-01 00:05 30.80 kWh
2015-04-01 00:10 73,99 kWh
2015-04-01 00:20 82.30 kWh
2015-04-01 00:25 82.30 kWh
2015-04-01 00:30 83.44 kWh
...
La energía producida o consumida durante un período dado es simplemente la diferencia de los recuentos del medidor de energía. Hasta aquí todo bien. Sin embargo, el algoritmo tiene que lidiar con los siguientes tres problemas:
1. Los valores atípicos "anteriores" deben detectarse como datos no válidos.
2015-04-01 00:00 20.78 kWh
2015-04-01 00:05 30.80 kWh
2015-04-01 00:10 500 kWh
2015-04-01 00:20 82.30 kWh
2015-04-01 00:25 82.30 kWh
2015-04-01 00:30 83.44 kWh
....
2. Los valores atípicos "a continuación" deben detectarse como datos no válidos.
2015-04-01 00:00 20.78 kWh
2015-04-01 00:05 30.80 kWh
2015-04-01 00:10 20 kWh
2015-04-01 00:20 82.30 kWh
2015-04-01 00:25 82.30 kWh
2015-04-01 00:30 83.44 kWh
....
En casos poco probables, puede haber varios valores atípicos consecutivos arriba o abajo o una combinación de ambos.
3. Un reinicio del medidor de energía debe detectarse automáticamente.
2015-04-01 00:00 20.78 kWh
2015-04-01 00:05 30.80 kWh
2015-04-01 00:10 3.99 kWh
2015-04-01 00:20 12.30 kWh
2015-04-01 00:25 12.30 kWh
2015-04-01 00:30 13.44 kWh
...
Después de un reinicio, el conteo comienza de nuevo desde otro nivel (un reinicio es simplemente un cambio de nivel). El nivel desde el que comienza el conteo después del reinicio es a menudo cero, pero también puede ser cualquier otro número positivo. Un reinicio puede ocurrir en un punto arbitrario en el tiempo (generalmente no con demasiada frecuencia).
A mis ojos, los problemas 1. - 3. parecen omnipresentes en la ingeniería de medición y ya deben haberse abordado. Sin embargo, no pude encontrar ninguna literatura sobre este tema. ¿Alguien sabe acerca de las soluciones existentes para este problema? Toda ayuda será muy apreciada.