Автор Тема: Фильтрация переменных  (Прочитано 9938 раз)

Оффлайн Миханик

  • Newbie
  • *
  • Сообщений: 7
    • Просмотр профиля
Фильтрация переменных
« : 24.09.2019, 11:06:30 am »
Добрый день.
У вас уже реализовано масштабирование значений переменных.
Прошу добавить еще к этому функционалу и фильтрацию значений, например, фильтром Калмана (очень простой в реализации). Пользователь выбирает активировать функцию фильтрации или нет и задает коэффициент Калмана для каждой переменной.

Оффлайн Айрат

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 324
    • Просмотр профиля
Re: Фильтрация переменных
« Ответ #1 : 24.09.2019, 22:35:09 pm »
Здравствуйте.

Насколько это востребовано? Где применяется?

Айрат

Оффлайн Миханик

  • Newbie
  • *
  • Сообщений: 7
    • Просмотр профиля
Re: Фильтрация переменных
« Ответ #2 : 25.09.2019, 03:34:19 am »
Применяется в системах мониторинга, когда данные получаешь не с контроллера, а со сборщиков, которые не умеют обрабатывать сигнал и получается что значение очень сильно скачет.
Конкретно сейчас стоит задача измерения уровня в больших резервуарах и там уровень не может плавать плюс минус метр.
Да частенько и температурные датчики выдают очень большой разброс значений.

Оффлайн Айрат

  • Administrator
  • Sr. Member
  • *****
  • Сообщений: 324
    • Просмотр профиля
Re: Фильтрация переменных
« Ответ #3 : 25.09.2019, 14:41:15 pm »
Добрый день.

Спасибо за информацию.
Думаю что встраивать подобные вещи в OPC сервер не совсем правильно. На мой взгляд такие вещи должны иметь возможность гибко настраиваться и желательно пользователем под конкретную ситуацию.
Такие вещи легко делаются в скадах Мастер скада или SimpleScada с помощью скриптов.
Как вариант, могу предложить использовать Modbus эмулятор (https://ardsoft.ru/mEmulator.html), он может по OPC данные забрать с OPC сервера, с помощью скриптов выполнить расчёт и положить в Modbus ячейку результат. С помощью того же arOPC вы по Modbus забираете данные из эмулятора и передаёте на скаду.

Айрат