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

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

Автор Тема: Alarm при условиях  (Прочитано 2289 раз)

Dmit

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Alarm при условиях
« : 24 Мая 2023, 10:52:50 »
Добрый день, неделю занимаюсь програмирован.
Есть оборудование несколько компрессоров, значение real  int bool, у меня получилась нарисовать нужную схему вывести параметры изменять цвета и т.д..
Теперь сделал уставки некоторых параметров аварийных,
Когда оборудование в работе, всё отлично, но когда оборудование отключается эти параметры становяться ноль и срабатывает уставка,
Как сделать так чтоб alarm выходил только при работе компрессора?

Мне нужно чтоб всё границы работали только тогда когда включён компрессор,
Нужный бит выведен, а как к нему привязаться не могу найти, тойсть допустим bit5 =0 , alarm не требуется ни какой.
Bit5=1 нужно задействовать границы всех переменных,
+ ещё это нужно сделать после 15 секунд как bit5 стал =1, так как оборудование выходит в рабочий режим только после 10-15 сек!
« Изменён: 26 Мая 2023, 12:39:22 от Simple_Scada »

Simple Scada

  • Глобальный модератор
  • *****
  • Сообщений: 208
    • Просмотр профиля
    • Simple-Scada
Re: Alarm при условиях
« Ответ #1 : 26 Мая 2023, 17:53:54 »
Здравствуйте.

Цитировать
Мне нужно чтоб всё границы работали только тогда когда включён компрессор,
Нужный бит выведен, а как к нему привязаться не могу найти, тойсть допустим bit5 =0 , alarm не требуется ни какой.
Bit5=1 нужно задействовать границы всех переменных,
+ ещё это нужно сделать после 15 секунд как bit5 стал =1, так как оборудование выходит в рабочий режим только после 10-15 сек!

1. Используя свойство LimitType, можно изменять тип границ переменной или отключить границы, например:
Код: (delphi)
myVariable.LimitType := ltNone;              // отключить границы переменной
myVariable.LimitType := ltAlarmsOnly;        // активировать только аварийные границы переменной
myVariable.LimitType := ltAlarmsAndWarnings; // активировать аварийные и предупреждающие границы переменной
2. Отследить изменение переменной можно в скрипте по событию "Изменились переменные". Добавив необходимые переменные в список скрипта, как это описано по ссылке.
3. Задержки можно реализовать только на основе таймеров (пример работы с таймерами можно найти в демо-проекте -> страница "Скрипты" -> "Простые скрипты (1)" -> пример №3) или событий. Если есть возможность, то проще и правильнее будет реализовать это на ПЛК.
4. Чтобы извлечь нужный бит из значения переменной, нужно использовать функцию GetBit.
Пример проекта во вложении.
« Изменён: 26 Мая 2023, 18:06:49 от Simple Scada »