Цифровые фильтры

Фильтры:
1. RC-фильтр (RC).
Формула работы:
Dacc = Dacc + in – out;
out = Dacc / K;
period – период работы в милисекундах.
Постоянная времени фильтра = K*period, за это время out = 0,63*in.

2. Скользящее среднее на 8 точек (wind).
Формула работы:
out = (temp1+temp2+temp3+temp4+temp5+temp6+temp7+temp8) / 8;
где temp – предыдущие значения входного сигнала (массив).
После каждого вычисления массив значений сдвигается (самое старое значение удаляется, новое заносится в массив).

3. Фильтр аномальных значений (anomal_1).
in – текущее входное значение.
in_1 – предыдущее входное значение.
Если (in – in_1) входит в диапазон (delta), то текущее значение попадает на выход.

4. Фильтр аномальных значений (anomal_2).
in – текущее входное значение.
in_x – предыдущие входные значения.
Если (in – in_1 + in_2 – in_3) входит в диапазон (delta), то их среднеарифметическое значение попадает на выход.

5. Фильтр аномальных значений (anomal_3).
in – текущее входное значение.
in_x – предыдущие входные значения.
in_summ – среднеарифметическое предыдущих четырех измерений.
Если (in – in_summ) входит в диапазон (delta), то текущее входное значение попадает на выход.

6. Медианный фильтр на 10 и 20 точек (median).
Принцип работы:
Есть ряд значений (11,10,12,100,500,30,10,9,10,12,11), которые запомнил фильтр.
Фильтр раскладывает их по возрастанию (9,10,10,10,11,11,12,12,30,100,500) и на выход выдает средний член этого ряда (11).

7. Фильтр Калмана.

Также в архиве есть пара файлов Exel с реальными тестами работы фильтров с болтающимся в воздухе аналоговым входом Arduino.

Видео по использованию фильтра Кальмана.


3

Вложения

  • zip Test_filtr
    Date added: 03.02.2018 10:07 File size: 268 КБ Downloads: 1715

Автор публікації

Офлайн 1 тиждень

Сергей Глушенко

782
Коментарі: 15Публікації: 391Реєстрація: 04-02-2018

Залишити коментар

Войти с помощью: