Помогите собрать фильтр с адаптивным коэфициентом

Создаем свой блок. Вопросы, помощь знатоков.
Ответить
Sams
Рядовой
Сообщения: 22
Зарегистрирован: 31 мар 2023, 13:28
Имя: Вася

Помогите собрать фильтр с адаптивным коэфициентом

Сообщение Sams »

Код: Выделить всё

// бегущее среднее с адаптивным коэффициентом
float expRunningAverageAdaptive(float newVal) {
  static float filVal = 0;
  float k;
  // резкость фильтра зависит от модуля разности значений
  if (abs(newVal - filVal) > 1.5) k = 0.9;
  else k = 0.03;
  
  filVal += (newVal - filVal) * k;
  return filVal;
}
Naladchik
Капитан
Сообщения: 908
Зарегистрирован: 04 окт 2015, 19:10
Откуда: Новосибирск
Имя: Павел
Благодарил (а): 20 раз
Поблагодарили: 22 раза

Помогите собрать фильтр с адаптивным коэфициентом

Сообщение Naladchik »

собрано в версии 8.2.3
P.S.
Небольшая корректировка.
Добавил блок в проф. редакторе (не создает лишних переменных).
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Win10-64. FLProg Portable.
Изображение
Ответить

Вернуться в «Разработка пользовательских блоков»

Кто сейчас на конференции

Сейчас этот форум просматривают: Amazon [Bot] и 3 гостя