Цитата:
Сообщение от serg-el
Посмотрел. Сравнил. Путём моделирования выяснил, что лучше всего работает связка exp + alpha-beta(TVF). Для лучшего понимания, и подборов коэффициентов промоделировал в Excel. Ещё почитал здесь, познавательно.
|
Боюсь вас разочаровать, но то что написано в статье по вашей ссылке это экспоненциальный фильтр. Просто другая форма записи. Постараюсь доказать свою точку зрения:
Y(n)=Y(n-1) + (X(n)-Y(n-1))*b
Это стандартная формула экспоненциального фильтра.
0<b<1
Y(n) - значение на выходе фильтра в текущем такте
Y(n-1) - значение на выходе фильтра в предыдущем такте
X(n) - значение на входе фильтра в текущем такте
Раскроем скобки:
Y(n)=Y(n-1) + b*X(n) - b*Y(n-1)
Сгруппируем множители:
Y(n)= (1-b)*Y(n-1) + b*X(n)
Введем новый коэффициент:
a=1-b
И запишем формулу уже с новым коэффициентом:
Y(n)=a*Y(n-1) + b*X(n)
Проверим соотношение
a+b=1:
a+b=1-b+b=1
Все как в вашей ссылке. Сам наталкивался на этот сайт. Наличие в формуле
a и
b ни как не относится к реальному альфа-бета фильтру. Причем автор статьи ни кого не пытается обманывать. В статье прямо говорится:
Цитата:
Математически цифровой фильтр 1-го порядка описывается различными способами. Мы будем использовать такое представление:
Y(n) = Alfa*Y(n-1) + Beta*X(n)
|
Фильтр 1-го порядка это и есть экспоненциальный фильтр.
Более гладкие кривые после последовательного применения двух фильтров вполне понятны - это уже фильтр 2-го порядка. Примените последовательно еще один фильтр и результаты будут еще лучше. Только постарайтесь применять все фильтры с одинаковой постоянной времени. Как говорилось в той же статье:
Цитата:
Цифровой фильтр (равно как и не цифровой) имеет как бы 2 лица: частотную характеристику и переходную (временнУю) характеристику.
....
Лучше фильтрация — хуже переходной процесс.
|
Мало давить помехи, надо знать когда фильтр должен устаканится.