Триггеры

С триггерами мы уже сталкивались, когда настраивали их в списке тегов. В меню разработчика попадает линейный список всех триггеров вне зависимости от их расположения в дереве проекта.

Триггеры

Триггер позволяет настроить передачу какого-то значения между тегами по срабатыванию определенного условия. Триггер в отличие от привязки тегов при помощи формул не передает данные между тегами при каждом изменении источника. При помощи триггеров удобно "запоминать" какое-либо значение, или совмещать ручное и автоматическое управление каким-либо тегом, передавать значения по расписанию.

Триггеры можно редактировать как через редактор тегов в устройствах, так и при помощи меню "Триггеры"

Добавление триггера

Параметры настройки триггеров:

Название
Название триггера
Тег приемник
Тег в который будет производиться запись значения при срабатывании триггера
Тег триггера
Тег, значение которого используется триггером для проверки условий срабатывания
Значение/формула
Константа или формула, расчетное значение которой записывается в тег приемник при срабатывании триггера
Событие
При установленной галке срабатывание триггера будет попадать в список событий
Раздел
Возможность установить расположение объекта в определенном разделе дерева проекта. Выбор осуществляется при помощи выпадающего списка. Если необходимо, чтобы объект появился в корне дерева проекта выбирается опция "Корень". Если нет необходимости чтобы объект вообще был в дереве, выбирается опция "Нет".

В качестве примера, мы можем настроить триггер для нашего проекта "Нефть и Пиво", который будет ограничивать уровень наполнения бака и выключать клапан наполнения, если уровень превысил 95%. Заведем триггер с параметрами, указанными на картинке выше. Название: StopFilling, тег приемник: TankControl//ValveIn, тег триггера: TankControl//TankLevel, Значение/формула: 0.

Добавление условия срабатывания триггера

Добавим условие для сработки v>95. Теперь, если уровень в баке превысит 95%, сработает триггер и значению ValveIn будет присвоено значение 0. При этом, не будет препятствий, чтобы повторно установить единицу в тег ValveIn: триггер записывает ноль только в момент срабатывания.

Групповые операции над триггерами

Для триггеров доступны групповые операции дублирования и удаления.

Групповые операции над триггерами