Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Интеграл в скаде  (Прочитано 1287 раз)

Серега

  • Постоялец
  • ***
  • Сообщений: 209
    • Просмотр профиля
Интеграл в скаде
« : 17 Июня 2020, 16:06:31 »
Добрый день!
Многие могут сказать зачем это надо. Поверьте надо. На форуме есть темы связанные с интегрированием при ... формировании отчета.
Меня попросили реализовать как бы runtime и в живую наблюдать график изменения. Но вот вопрос как.
Кратко о задаче. Есть ток и напряжение. формула простая Ток умножаем на Напряжение делим это все на 3600 и берем интеграл по времени действа (от 0 до окончания процесса секунд 40).
Один из способов 1секундный скрипт считаем, передаем в переменную под архивированием. В конце запрос к базе на сумму за период
или
Второй способ 1секундный скрипт считаем, передаем в переменную под архивирование и в локальный массив.
Еще пару способов то же самое но по изменению тока и напряжения.
Если кто может что нибудь подсказать.
Жду вопросов и предложений

Neskad

  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Re: Интеграл в скаде
« Ответ #1 : 18 Июня 2020, 12:34:52 »
А ток и напряжение меняются во времени, или заранее определены?

Simple_Scada

  • Администратор
  • *****
  • Сообщений: 1178
    • Просмотр профиля
Re: Интеграл в скаде
« Ответ #2 : 18 Июня 2020, 19:55:15 »
Здравствуйте.

Цитировать
На форуме есть темы связанные с интегрированием при ... формировании отчета.
В скаде есть аналогичный функционал вычисления интеграла из архивных данных - см. процедуру ArchiveIntegral.

Серега

  • Постоялец
  • ***
  • Сообщений: 209
    • Просмотр профиля
Re: Интеграл в скаде
« Ответ #3 : 19 Июня 2020, 13:53:24 »
Добрый день!
Neskad да ток и напряжение меняются.
НО функция походу решит задачу.
Буду пробовать.

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 2998
    • Просмотр профиля
    • Simple-Scada
Re: Интеграл в скаде
« Ответ #4 : 20 Июня 2020, 10:24:35 »
Здравствуйте.

Цитировать
Судя по значениям интегралов по различным слоям - для получения правильного значения  необходимо умножение  на номер слоя.
Если нужна максимальная точность, то просто вызывайте ArchiveIntegral для основного слоя и не используйте другие слои. Будут взяты все точки тренда и по ним произведён расчет интеграла.
Если использовать другие прореженные слои (минутный, часовой, суточный), то интеграл будет вычисляться быстрее, но точность будет ниже. Основной слой содержит все точки тренда (самый точный и самый медленный). Минутный слой содержит четыре точки за каждую минуту. Часовой четыре точки в час. Суточный - четыре в день (наименее точный и самый быстрый).
« Изменён: 26 Июня 2020, 09:57:16 от Simple-Scada »