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

Фильтры:
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
    Дата добавления: 03.02.2018 10:07 Размер файла: 268 КБ Кол-во скачиваний: 1714

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

не в сети 1 неделя

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

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

Оставьте комментарий

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