Цитата(Stanislav @ Jan 14 2014, 01:23)

...Называть "интегрированием" фильтрацию скользящим средним можно только в понятийном пространстве, ортогональном к общепринятому.
Скользящее среднее это именно интегрирование на заданном временном интервале. В самом общепринятом смысле.
Stanislav, не стоит мешать этому обсуждению, оно достаточно интересно и, по большому счету, не выходит за рамки исходной темы. Просто "детский" вопрос оказался непростым.
Попробую немного по другому выразить уже сказанное раньше. Разность текущей и предыдущей сумм S[i] - S[i-1] равна разности текущего отсчета Х[i] и отсчета N тактов ранее X[i-N], где N - длина суммирования.
Т.е. X[i]=S[i]-S[i-1]+X[i-N].
Если мы теперь откатим на N точек назад и сделаем то же самое, то увидим, что разность S[i-N] - S[i-N-1]=X[i-N]-X[i-2N], т.е. X[i-N]=S[i-N]-S[i-N-1]+X[i-2N]. Подставив в предыдущее выражение получим
X[i]=S[i]-S[i-1]+X[i-N]=S[i]-S[i-1] + S[i-N]-S[i-N-1] + X[i-2N].
Т.е. если мы будем суммировать разности сумм (S[i]-S[i-1]) с шагом N (такую сумму разностей назовем SS), то сможем вычислить текущее значение X[i] зная значение в точке k*N (k-целое) тактов назад
X[i]=SS + X[i-k*N].
Если провести подобную операцию с N последовательными точками, т.е. вести N сумм SS (SS[m], где m=0...N-1), то мы в любой момент времени можем вычислить текущее значение зная значение в точке, с которой мы начали вести суммы SS (SS[0],m=0).
X[i]=SS[m] + X[m], где m - остаток от деления i/N, а X[m]-константа (истинный отсчет, значение буфера сумматора...)
Это полностью эквивалентно знанию всех значение буфера сумматора в какой-то момент времени с дальнейшим отслеживанием его содержимого.
Если вдуматься, то уже можно с высокой степенью достоверности утверждать, что задача восстановления исходных значений сводится к задаче восстановления содержимого буфера сумматора. Любые иные методы дадут дополнительные ошибки.
А сделать это можно или получая пропись с самого начала (нулевой буфер) или, как предложил ViKo, подав калибровочный сигнал. Если форма и время начала сигнала известны, то буфер можно восстановить практически точно (до погрешности АЦП). И вот как именно это сделать и стоит подумать. Как пример, в процессе работы вместо сигнала с датчика подать некоторый медленный и достаточно длинный сигнал (период заведомо много больше N). Если время его включения неизвестно, можно попытаться поиграться с корреляцией (по самим суммам) и максимально точно определив его время подогнать значения в буфере (уже по отсчетам). Можно сделать несколько итераций.
Да, давайте считать все вычисления в целых, без деления и т.д. Понятно, что любая плавучка даст погрешности и они приведут к ошибкам, но это следующий уровень приближения. Если калибровочный сигнал велик, то отосительные погрешности восстановления буфера будут порядка погрешностей АЦП, а это уже неистребимые никакими цифровыми методами ошибки.