Ну вобщем да, вместо обнуления каждые 30 секунд лучше непрерывно вычислять "скользящее" среднее по последним N измерениям. Возможно по такому закону, чтобы более ранние измерения давали меньший вклад, а свежие -- больший.

хорошо бы еще определиться, какие вам точность и время реакции нужны.