EGS workflow скрипты — различия между версиями
Материал из Integra-S Wiki
Wikiadmin (обсуждение | вклад) (→По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне) |
Wikiadmin (обсуждение | вклад) (→По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне) |
||
Строка 135: | Строка 135: | ||
:4. EgsOnUpdate:Egs следующий:EgsNext + EgsIfMatches:Egs предыдущий:EgsPrev | :4. EgsOnUpdate:Egs следующий:EgsNext + EgsIfMatches:Egs предыдущий:EgsPrev | ||
:5. EgsIfMatches:Egs следующий:EgsNext + EgsDoUpdate:Egs предыдущий:EgsPrev | :5. EgsIfMatches:Egs следующий:EgsNext + EgsDoUpdate:Egs предыдущий:EgsPrev | ||
+ | [[File:on_light.jpg|центр]] | ||
:6. Ip видеокамера:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin | :6. Ip видеокамера:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin | ||
:7. Уличное освещение:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin | :7. Уличное освещение:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin | ||
+ | [[File:зона камер.jpg|центр]] | ||
: Настроить параметры элементов: | : Настроить параметры элементов: | ||
:1. Указать IP адрес компьютера | :1. Указать IP адрес компьютера |
Версия 14:12, 8 июня 2020
Содержание
- 1 Назначение
- 2 Примеры
- 2.1 Вызов хранимой процедуры БД (Чистка архива) по расписанию
- 2.2 Копирование команд Включить(turn_on) и Выключить(turn_off) из StreetLighting в связанный с ним по LogicLink элемент StilSoftRelay
- 2.3 Копирование состояний ok_true, ok_false и error_defective из StilSoftRelay в связанный с ним по LogicLink элемент StreetLighting
- 2.4 По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне
Назначение
- Вызов хранимой процедуры Базы Данных по расписанию
- Копирование команд от элемента к элементу
- Копирование состояний от элемента к элементу
- Отправка команды при тревоге любого датчика
- Трансляция состояний в события (StateEvent)
- Трансляция состояний устройств в состояние зоны
- Отсечение ложных срабатываний путем перевода зоны в тревогу по минимум двум тревожным устройствам
Примеры
Вызов хранимой процедуры БД (Чистка архива) по расписанию
Для этого необходимо добавить элементы в редакторе СКАДА:
- 1. Компьютер
- 2. Acuario Manager
- 3. EGS Модуль
- 4. EgsOnSchedule
- 5. EgsDoCallStored
- Добавить связи между элементами:
- 1. Компьютер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
- 2. Менеджер устройств: Менеджер устройств: ManagingContainer + Egs Модуль: Привязка к менеджеру: ManagingContent
- 3. EGS Модуль: Egs выход:EGSOutput + EgsOnSсhedule: Egs вход:EgsInput
- 4. EgsOnShedule: Egs следующий:EGSNext + EgsDoCallStored: EGS предыдущий:EgsPrev
- Настроить параметры элементов:
- 1. Указать IP адрес компьютера
- 2. У EgsOnSchedule:
- 2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
- 2.2 Имя объекта(name)
- 2.3 В параметре "Расписание" указать желаемую дату и время запуска.
Пример расписания:
- * * * * * * - каждую секунду;
- * 10 * * * * - раз в минуту когда секунды будут = 10 (например: в 13часов 1минута 10сек; 13часоов 2минуты 10сек);
- * 10 * * * * - раз в час когда минута будет = 10 (например: в 13часов 10минут 0 сек; 14часов 10минут 0сек)
- * 10 * 3 * * - каждого 3-го числа месяца раз в час когда минута будет = 10;
- * 10 * 3 6 *- запуск расписания 3 июня раз в час когда минута будет = 10;
- * 10 * * * 0 - запуск расписания по воскресеньям раз в час когда минута будет = 10;
- 3. У EgsDoCallStored:
- 3.1 Имя объекта(name)
- 3.2 Имя хранимой процедуры БД(proc): graph.clearing_all_archive
- 3.3 Параметры хранимой процедуры БД: ServerId, "1 month", где первым параметром является идентификатор сервера, на котором выполняется скрипт, а вторым - интервал времени, ранее которого будут удалены записи. Если задать следующий аргумент: ServerId, "7 days", то будут сохранены записи за 7 дней от текущей даты, остальные будут очищены.
- 3.4 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего записывает этот ответ в Результат(result) в виде json
Копирование команд Включить(turn_on) и Выключить(turn_off) из StreetLighting в связанный с ним по LogicLink элемент StilSoftRelay
Для этого необходимо добавить элементы в редакторе СКАДА:
- 1. Компьютер
- 2. Acuario Manager
- 3. EGS Модуль
- 4. EgsOnUpdate
- 5. EgsIfMatches
- 6. EgsDoUpdate
- 7. Уличное освещение (StreetLighting)
- 8. Реле Стилсофт (StilSoftRelay)
- Добавить связи между элементами:
- 1. Компьютер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
- 2. Менеджер устройств: Менеджер устройств: ManagingContainer + Egs Модуль: Привязка к менеджеру: ManagingContent
- 3. EGS Модуль:Egs выход:EGSOutput + EgsOnUpdate:Egs вход:EgsInput
- 4. EgsOnUpdate:Egs следующий:EGSNext + EgsIfMatches:EGS предыдущий:EgsPrev
- 5. EgsIfMatches:Egs следующий:EGSNext + EgsDoUpdate:EGS предыдущий:EgsPrev
- 6. Уличное освещение:Логический вход:LogicInput + Реле Стилсофт:Логический выход:LogicOutput
- Настроить параметры элементов:
- 1. Указать IP адрес компьютера
- 2. У EgsOnUpdate:
- 2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
- 2.2 Имя объекта(name) - lamp
- 2.3 Параметр элемента(param) - command
- 2.4 Тип элемента(typename) - StreetLighting
- 3. У EgsIfMatches:
- 3.1 Значение параметра(pattern) - turn_*
- 3.2 Имя объекта(name)
- 3.3 Установить чекбокс - Ожидаемый(expected)
- 3.4 Параметр элемента(param) - command
- 4. У EgsDoUpdate:
- 4.1 Значение(value) - lamp.command, где lamp - это имя объекта указанное в EgsOnUpdate
- 4.2 Имя объекта(name)
- 4.3 Параметр объекта(param) - command
- 5. У линка, соединяющий EgsIfMatches с EgsDoUpdate указать в параметре Путь(path) - LogicInput/StilSoftRelay
Копирование состояний ok_true, ok_false и error_defective из StilSoftRelay в связанный с ним по LogicLink элемент StreetLighting
Для этого необходимо добавить элементы в редакторе СКАДА:
- 1. Компьютер
- 2. Acuario Manager
- 3. EGS Модуль
- 4. EgsOnUpdate
- 5. EgsIfMapped
- 6. EgsDoUpdate
- 7. Уличное освещение (StreetLighting)
- 8. Реле Стилсофт (StilSoftRelay)
- Добавить связи между элементами:
- 1. Компьютер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
- 2. Менеджер устройств: Менеджер устройств: ManagingContainer + Egs Модуль: Привязка к менеджеру: ManagingContent
- 3. EGS Модуль:Egs выход:EGSOutput + EgsOnUpdate:Egs вход:EgsInput
- 4. EgsOnUpdate:Egs следующий:EGSNext + EgsIfMapped:EGS предыдущий:EgsPrev
- 5. EgsIfMapped:Egs следующий:EGSNext + EgsDoUpdate:EGS предыдущий:EgsPrev
- 6. Реле Стилсофт:Логический вход:LogicInput + Уличное освещение:Логический выход:LogicOutput
- Настроить параметры элементов:
- 1. Указать IP адрес компьютера
- 2. У EgsOnUpdate:
- 2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
- 2.2 Имя объекта(name) - relay
- 2.3 Параметр элемента(param) - state
- 2.4 Тип элемента(typename) - StilSoftRelay
- 3. У EgsIfMapped:
- 3.1 Имя объекта(name) - lampstate
- 3.2 Установить чекбокс - Ожидаемый(expected)
- 3.3 Параметр элемента(param) - state
- 3.4 Таблица соответствий (mapping) - { "ok_true": "ok_active", "ok_false": "ok_inactive", "error_defective": "error_defective" }, где ok_true - это состояние Реле Стилсофт(StilSoftRelay), ok_active - Уличное освещение)StreetLighting
- 4. У EgsDoUpdate:
- 4.1 Значение(value) - lampstate
- 4.2 Имя объекта(name)
- 4.3 Параметр объекта(param) - state
- 5. У линка, соединяющий EgsIfMapped с EgsDoUpdate указать в параметре Путь(path) - LogicInput/StreetLighting
По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне
Для этого необходимо добавить элементы в редакторе СКАДА:
- 1. Компьютер
- 2. Acuario Manager
- 3. EGS Модуль
- 4. EgsOnUpdate
- 5. EgsIfMatches
- 6. EgsDoUpdate
- 7. Ip видеокамера
- 8. Уличное освещение(StreetLighting)
- 9. Зона
- Добавить связи между элементами:
- 1. Компьютер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
- 2. Менеджер устройств: Менеджер устройств: ManagingContainer + Egs Модуль: Привязка к менеджеру: ManagingContent
- 3. EGS Модуль:Egs выход:EGSOutput + EgsOnUpdate:Egs вход:EgsInput
- 4. EgsOnUpdate:Egs следующий:EgsNext + EgsIfMatches:Egs предыдущий:EgsPrev
- 5. EgsIfMatches:Egs следующий:EgsNext + EgsDoUpdate:Egs предыдущий:EgsPrev
- 6. Ip видеокамера:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
- 7. Уличное освещение:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
- Настроить параметры элементов:
- 1. Указать IP адрес компьютера
- 2. У EgsOnUpdate:
- 2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
- 2.2 Имя объекта(name) - state
- 2.3 Тип элемента(typename) - BaseObject
- 3. У EgsIfMatches:
- 3.1 Имя объекта(name)
- 3.2 Установить чекбокс - Ожидаемый(expected)
- 3.3 Параметр элемента(param) - state
- 3.4 Значение параметра(pattern) - alarm_*
- 4. У EgsDoUpdate:
- 4.1 Значение параметра(pattern) - turn_on
- 4.2 Имя объекта(name)
- 4.3 Параметр объекта(param) - command
- 5. У линка, соединяющий EgsIfMatches с EgsDoUpdate указать в параметре Путь(path) - Link/Zone/Link/StreetLighting