EGS workflow скрипты — различия между версиями

Материал из Integra-S Wiki
Перейти к: навигация, поиск
Строка 40: Строка 40:
 
[[File:id_serv.jpg|400px|центр]]
 
[[File:id_serv.jpg|400px|центр]]
 
::3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего  записывает этот ответ в Результат(result) в виде json
 
::3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего  записывает этот ответ в Результат(result) в виде json
 +
 +
=== Вызов хранимой процедуры БД (Снимок(snapshot) базы данных) по расписанию  ===
 +
Данная схема предназначена для выполнения снепшотов через указанный интервал времени.
 +
 +
Для этого необходимо добавить элементы в редакторе Скада:
 +
: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
 +
[[File:snapshot.jpg|700px|центр]]
 +
: Настроить параметры элементов:
 +
:1. Указать IP адрес компьютера
 +
:2. У EgsOnSchedule:
 +
::2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
 +
::2.2 В параметре "Расписание"(schedule) указать желаемую дату и время запуска.
 +
Пример расписания:
 +
* * * * * * * - каждую секунду;
 +
* 0 10 * * * * - раз в час когда минута будет = 10 (например: в 13часов 10минут 0 сек; 14часов 10минут 0сек)
 +
* 0 0 9 * * * - каждый день в 13 часов (разница в 4 часа), т.е. для того чтобы запустить расписание в 13 часов необходимо добавить расписание 0 0 9 * * *
 +
* 0 0 9 3 * * - каждого 3-го числа месяца раз в 13 часов;
 +
* 0 0 9 3 6 *- запуск расписания 3 июня в 13 часов;
 +
* 0 0 9 * * 0 - запуск расписания по воскресеньям в 13 часов;
 +
:3. У EgsDoCallStored:
 +
::3.1 Имя хранимой процедуры БД(proc): graph.get_time
 +
::3.2 Параметры хранимой процедуры БД(args): "ServerId", "0", где первым является идентификатор сервера, на котором выполняется скрипт, а вторым - номер версии, с которой необходимо получать данные (в данном случае 0, т.е. весь снимок базы)
 +
[[File:args.jpg|400px|центр]]
 +
::3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего  записывает этот ответ в Результат(result) в виде json
 +
  
 
=== Копирование команд Включить(turn_on) и Выключить(turn_off) из StreetLighting в связанный с ним по LogicLink элемент StilSoftRelay ===
 
=== Копирование команд Включить(turn_on) и Выключить(turn_off) из StreetLighting в связанный с ним по LogicLink элемент StilSoftRelay ===
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 79: Строка 113:
 
=== Копирование состояний ok_true, ok_false и error_defective из StilSoftRelay в связанный с ним по LogicLink элемент StreetLighting ===
 
=== Копирование состояний ok_true, ok_false и error_defective из StilSoftRelay в связанный с ним по LogicLink элемент StreetLighting ===
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 118: Строка 152:
 
=== По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне ===
 
=== По тревоге от любого устройства источника BaseObject(например: Ip видеокамера) отправка команды turn_on всем прожекторам StreetLighting в той же зоне ===
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 157: Строка 191:
 
=== Отправка команды "Выключить" включенным прожекторам StreetLighting по истечении таймаута после включения и только в том случае, если не находится в тревоге ни одна из зон, в которых находятся другие прожекторы StreetLighting подключенные к одному и тому же исполнительному устройству StilSoftRelay ===  
 
=== Отправка команды "Выключить" включенным прожекторам StreetLighting по истечении таймаута после включения и только в том случае, если не находится в тревоге ни одна из зон, в которых находятся другие прожекторы StreetLighting подключенные к одному и тому же исполнительному устройству StilSoftRelay ===  
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 209: Строка 243:
 
=== Отправка команды Запустить(start) совместно с соответствующим параметром "Идентификатор файла(fileId)" на "Слаботочная сирена МЕТА(LowCurrentSirenMeta)" находящийся с датчиком источником либо в одном пространстве либо в одной зоне ===  
 
=== Отправка команды Запустить(start) совместно с соответствующим параметром "Идентификатор файла(fileId)" на "Слаботочная сирена МЕТА(LowCurrentSirenMeta)" находящийся с датчиком источником либо в одном пространстве либо в одной зоне ===  
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 250: Строка 284:
 
=== Трансляция состояний в события (StateEvent) ===
 
=== Трансляция состояний в события (StateEvent) ===
 
Для этого необходимо добавить элементы в редакторе Скада:
 
Для этого необходимо добавить элементы в редакторе Скада:
:1. Компьютер
+
:1. Компьютер или сервер
 
:2. Acuario Manager
 
:2. Acuario Manager
 
:3. EGS Модуль
 
:3. EGS Модуль
Строка 328: Строка 362:
 
# Шлагбаум - высота, расположение, номер телефона для открытия шлагбаума.
 
# Шлагбаум - высота, расположение, номер телефона для открытия шлагбаума.
 
При вхождении движущегося объекта в зону шлагбаума, отправляется команда "открыть" шлагбауму в этой зоне, так же у движущегося объекта заполняется параметр "Зоны слежения(trzce_zones)" значением гуида зоны, в которую выполнен вход.
 
При вхождении движущегося объекта в зону шлагбаума, отправляется команда "открыть" шлагбауму в этой зоне, так же у движущегося объекта заполняется параметр "Зоны слежения(trzce_zones)" значением гуида зоны, в которую выполнен вход.
 
=== Снимок(snapshot) базы данных ===
 
Данная схема предназначена для выполнения снепшотов через указанный интервал времени.
 
 
Для этого необходимо добавить элементы в редакторе Скада:
 
: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
 
[[File:snapshot.jpg|700px|центр]]
 
: Настроить параметры элементов:
 
:1. Указать IP адрес компьютера
 
:2. У EgsOnSchedule:
 
::2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
 
::2.2 В параметре "Расписание"(schedule) указать желаемую дату и время запуска.
 
Пример расписания:
 
* * * * * * * - каждую секунду;
 
* 0 10 * * * * - раз в час когда минута будет = 10 (например: в 13часов 10минут 0 сек; 14часов 10минут 0сек)
 
* 0 0 9 * * * - каждый день в 13 часов (разница в 4 часа), т.е. для того чтобы запустить расписание в 13 часов необходимо добавить расписание 0 0 9 * * *
 
* 0 0 9 3 * * - каждого 3-го числа месяца раз в 13 часов;
 
* 0 0 9 3 6 *- запуск расписания 3 июня в 13 часов;
 
* 0 0 9 * * 0 - запуск расписания по воскресеньям в 13 часов;
 
:3. У EgsDoCallStored:
 
::3.1 Имя хранимой процедуры БД(proc): graph.get_time
 
::3.2 Параметры хранимой процедуры БД(args): "ServerId", "0", где первым является идентификатор сервера, на котором выполняется скрипт, а вторым - номер версии, с которой необходимо получать данные (в данном случае 0, т.е. весь снимок базы)
 
[[File:args.jpg|400px|центр]]
 
::3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего  записывает этот ответ в Результат(result) в виде json
 

Версия 13:24, 16 февраля 2021

Содержание

Назначение

  1. Вызов хранимой процедуры Базы Данных по расписанию
  2. Копирование команд от элемента к элементу
  3. Копирование состояний от элемента к элементу
  4. Отправка команды при тревоге любого датчика
  5. Трансляция состояний в события (StateEvent)
  6. Трансляция состояний устройств в состояние зоны

Примеры

Вызов хранимой процедуры БД (Чистка архива) по расписанию

Для этого необходимо добавить элементы в редакторе Скада:

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
Схема процедуры.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnSchedule:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 В параметре "Расписание"(schedule) указать желаемую дату и время запуска.

Пример расписания:

  • * * * * * * - каждую секунду;
  • 0 10 * * * * - раз в час когда минута будет = 10 (например: в 13часов 10минут 0 сек; 14часов 10минут 0сек)
  • 0 0 9 * * * - каждый день в 13 часов (разница в 4 часа), т.е. для того чтобы запустить расписание в 13 часов необходимо добавить расписание 0 0 9 * * *
  • 0 0 9 3 * * - каждого 3-го числа месяца раз в 13 часов;
  • 0 0 9 3 6 *- запуск расписания 3 июня в 13 часов;
  • 0 0 9 * * 0 - запуск расписания по воскресеньям в 13 часов;
3. У EgsDoCallStored:
3.1 Имя хранимой процедуры БД(proc): graph.clearing_all_archive
3.2 Параметры хранимой процедуры БД(args): "ServerId", "1 month", где первым параметром является идентификатор сервера, на котором выполняется скрипт, а вторым - интервал времени, ранее которого будут удалены записи. Если задать следующий аргумент: "ServerId", "7 days", то будут сохранены записи за 7 дней от текущей даты, остальные будут очищены.
Id serv.jpg
3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего записывает этот ответ в Результат(result) в виде json

Вызов хранимой процедуры БД (Снимок(snapshot) базы данных) по расписанию

Данная схема предназначена для выполнения снепшотов через указанный интервал времени.

Для этого необходимо добавить элементы в редакторе Скада:

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
Snapshot.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnSchedule:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 В параметре "Расписание"(schedule) указать желаемую дату и время запуска.

Пример расписания:

  • * * * * * * - каждую секунду;
  • 0 10 * * * * - раз в час когда минута будет = 10 (например: в 13часов 10минут 0 сек; 14часов 10минут 0сек)
  • 0 0 9 * * * - каждый день в 13 часов (разница в 4 часа), т.е. для того чтобы запустить расписание в 13 часов необходимо добавить расписание 0 0 9 * * *
  • 0 0 9 3 * * - каждого 3-го числа месяца раз в 13 часов;
  • 0 0 9 3 6 *- запуск расписания 3 июня в 13 часов;
  • 0 0 9 * * 0 - запуск расписания по воскресеньям в 13 часов;
3. У EgsDoCallStored:
3.1 Имя хранимой процедуры БД(proc): graph.get_time
3.2 Параметры хранимой процедуры БД(args): "ServerId", "0", где первым является идентификатор сервера, на котором выполняется скрипт, а вторым - номер версии, с которой необходимо получать данные (в данном случае 0, т.е. весь снимок базы)
Args.jpg
3.3 Таймаут - ожидание ответа от сервера в течении указанного времени, после чего записывает этот ответ в Результат(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
Схема StreetLighting.jpg
6. Уличное освещение:Логический вход:LogicInput + Реле Стилсофт:Логический выход:LogicOutput
Схема StreetLighting и реле.jpg
Настроить параметры элементов:
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
Схема копи состояний.jpg
6. Реле Стилсофт:Логический вход:LogicInput + Уличное освещение:Логический выход:LogicOutput
Схема копи состояний реле.jpg
Настроить параметры элементов:
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
On light.jpg
6. Ip видеокамера:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
7. Уличное освещение:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
Зона камер.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnUpdate:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 Имя объекта(name)
2.3 Параметр элемента (param) - state
2.4 Тип элемента(typename) - BaseObject
3. У EgsIfMatches:
3.1 Имя объекта(name)
3.2 Установить чекбокс - Ожидаемый(expected)
3.3 Параметр элемента(param) - state
3.4 Значение параметра(pattern) - alarm_*
4. У EgsDoUpdate:
4.1 Значение(value) - turn_on
4.2 Имя объекта(name)
4.3 Параметр объекта(param) - command
5. У линка, соединяющий EgsIfMatches с EgsDoUpdate указать в параметре Путь(path) - Link/Zone/Link/StreetLighting

Отправка команды "Выключить" включенным прожекторам StreetLighting по истечении таймаута после включения и только в том случае, если не находится в тревоге ни одна из зон, в которых находятся другие прожекторы StreetLighting подключенные к одному и тому же исполнительному устройству StilSoftRelay

Для этого необходимо добавить элементы в редакторе Скада:

1. Компьютер или сервер
2. Acuario Manager
3. EGS Модуль
4. EgsIfMatches(2шт)
5. EgsIfElapsed
6. EgsOnSchedule
7. EgsDoUpdate
9. Ip видеокамера
10. Уличное освещение(StreetLighting)
11. Реле Стилсофт
12. Зона
Добавить связи между элементами:
1. Компьютер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
2. Менеджер устройств: Менеджер устройств: ManagingContainer + Egs Модуль: Привязка к менеджеру: ManagingContent
3. EGS Модуль:Egs выход:EGSOutput + EgsOnSchedule:Egs вход:EgsInput
4. EgsOnSchedule:Egs следующий:EgsNext + EgsIfMatches:Egs предыдущий:EgsPrev
5. EgsIfMatches:Egs следующий:EgsNext + EgsIfElapsed:Egs предыдущий:EgsPrev
6. EgsIfElapsed:Egs следующий:EgsNext + EgsIfMatches:Egs предыдущий:EgsPrev
7. EgsIfMatches:Egs следующий:EgsNext + EgsDoUpdate:Egs предыдущий:EgsPrev
Выкл прожекторов.jpg
8. Ip видеокамера:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
9. Уличное освещение:Привязка к зоне:ZoneInputPin + Зона:ZoneOutputPin
10. Реле Стилсофт:Логический выход:LogicOutput + Уличное освещение:Логический вход:LogicInput
Выкл прожекторов2.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnSchedule:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 Имя объекта(name)
2.3 Указать в расписание желаемое время запуска
3. У EgsIfMatches:
3.1 Имя объекта(name) - lamp
3.2 Установить чекбокс - Ожидаемый(expected)
3.3 Параметр элемента(param) - state
3.4 Значение параметра(pattern) - ok_active
4. У EgsIfElapsed:
4.1 Параметр элемента - state
4.2 Таймаут - например 00:00:30. Т.е. если включается освещение, то только по истечении 30 секунд будет отправлена команда выключить.
5. У EgsIfMatches:
5.1 Параметр элемента - state
5.2 Значение параметра - alarm_*
5.2 Задействовать чекбокс - Соединение
6. У EgsDoUpdate:
6.1 Значение параметра(pattern) - turn_off
6.2 Имя объекта(name)
6.3 Параметр объекта(param) - command
7. У линка, соединяющий EgsOnSchedule с EgsIfMatches указать в параметре Путь(path) - */StreetLighting
8. У линка, соединяющий EgsIfElapsed с EgsIfMatches указать в параметре Путь(path) - LogicInput/StilSoftRelay/LogicOutput/StreetLighting/ZoneLink/Zone
9. У линка, соединяющий EgsIfMatches с EgsDoUpdate указать в параметре Путь(path) - lamp

Отправка команды Запустить(start) совместно с соответствующим параметром "Идентификатор файла(fileId)" на "Слаботочная сирена МЕТА(LowCurrentSirenMeta)" находящийся с датчиком источником либо в одном пространстве либо в одной зоне

Для этого необходимо добавить элементы в редакторе Скада:

1. Компьютер или сервер
2. Acuario Manager
3. EGS Модуль
4. EgsOnUpdate
5. EgsIfMapped
6. EgsDoUpdate(2шт.)
7. Слаботочная сирена МЕТА(LowCurrentSirenMeta)
8. Болид Пожарная кнопка(BOLID_FireButton)
9. Зона
Добавить связи между элементами:
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. EgsDoUpdate:Egs следующий:EgsNext + EgsDoUpdate:Egs предыдущий:EgsPrev
Схема запуска сирены.jpg
7.Зона:Привязка к зоне:ZoneOutPutPin + Слаботочная сирена МЕТА:Привязка к зоне:ZoneInputPin
8.Зона:Привязка к зоне:ZoneOutPutPin + Болид Пожарная кнопка:Привязка к зоне:ZoneInputPin
Схема сирены.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnUpdate:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 Имя объекта(name)
2.3 Параметр элемента(param) - state
2.4 Тип элемента (typename) - BOLID_FireButton
3. У EgsIfMapped:
3.1 Имя объекта(name) - fileId
3.2 Установить чекбокс - Ожидаемый(expected)
3.3 Параметр элемента(param) - state
3.4 Таблица соответствий(mapping) - {"alarm_*": "2", "error_*": "1" }
4. У линка, соединяющий EgsIfMapped с EgsDoUpdate указать в параметре Путь(path) - Link/Space|Zone/Link/LowCurrentSirenMeta
5. У EgsDoUpdate:
5.1 Параметр элемента(param) - fileId
5.2 Значение параметра(value) - fileId
6. У EgsDoUpdate:
6.1 Параметр элемента(param) - command
6.2 Значение параметра(value) - start

Трансляция состояний в события (StateEvent)

Для этого необходимо добавить элементы в редакторе Скада:

1. Компьютер или сервер
2. Acuario Manager
3. EGS Модуль
4. EgsOnUpdate
5. EgsIfMatches
6. EgsDoCreate
Добавить связи между элементами:
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 + EgsDoCreate:Egs предыдущий:EgsPrev
State event.jpg
Настроить параметры элементов:
1. Указать IP адрес компьютера
2. У EgsOnUpdate:
2.1 Задействовать скрипт установив чекбокс - Включен(enabled)
2.2 Дополнительное имя(alias) - source
2.3 Параметр элемента(param) - state
2.4 Тип элемента (typename) - если необходимо получать событие состояния(state event) со всех типов датчиков на схеме, то указываем BaseObject, если только с одного типа датчика, то например IpVideoCamera, если с нескольких типов датчиков (например Видеокамера, Зона, Болид пожарный датчик), то добавить на схему количество элементов EgsOnUpdate = количеству типов датчиков с которых необходимо получать событие состояния.
EGSupdate.jpg
3. У EgsIfMatches:
3.1 Значение параметра(pattern) - возможно указать как одно значение (например alarm_*), так и несколько (alarm_*|error_*) или полностью наименование (alarm_alarm), где:
alarm_* - все тревоги;
alarm_*|error_* - все тревоги и все ошибки;
alarm_alarm - только определенное значение (тревога).
3.2 Параметр элемента(param) - state
3.3 Соединение(joint) -
4. У EgsDoCreate:
4.1 Имена параметров(identity) - owner,state
4.2 Обновляемые параметры(novelty) - event_status
4.3 Таблица соответствий(mapping) - {"owner":"source.Id","server":"source.ServerId","position":"source.position","state":"source[\"state\"].Text?.Replace?('_', '.')","datetime":"source[\"state\"].DateTime","version":"source[\"state\"].Version","itemtype":"source.MyType","name":"source.name","alarm_info":"(source as Zone)?.alarm_info"}
4.4 Тип элемента(typename) - StateEvent

Открытие шлагбаума по sip при вхождении цели в зону

Данная схема предназначена для открытия шлагбаума по sip при вхождении указанных целей. Для создания данной схемы необходимо добавить следующие элементы:

  1. Компьютер или Сервер (Computer/Server)
  2. Менеджер устройств (AcuarioManager)
  3. EGS Модуль (EGSModule)
  4. Zone Controller (Скрипт необходимо скачать отсюда) и импортировать в редакторе Скада
  5. EGS активация обновления (EgsOnUpdate)
  6. EGS обновление параметра (EgsDoUpdate)
  7. IntegraVideo7Sip
  8. Зона (Zone) - создать через редактор зон клиента Интегра планета Земля. Как это сделать, можно посмотреть по ссылке
  9. Шлагбаум (Bascule_barrier)

Для того, чтобы импортировать скрипт необходимо в редакторе Скада нажать на меню Действия > Импорт элементов > выбрать сохраненный скрипт.
Необходимо добавить следующие связи:

  1. Компьютер или Сервер: Установленное ПО:SoftwareContainer + Менеджер устройств: ПО:SoftwareContent
  2. Менеджер устройств: Менеджер устройств: ManagingContainer + IntegraVideo7Sip: Привязка к менеджеру: ManagingContent
  3. IntegraVideo7Sip: Логический выход: LogicOutput + Шлагбаум: Логический вход: LogicInput
  4. Шлагбаум: Логический вход: LogicInput + Зона: Логический выход: LogicOutput
  5. Менеджер устройств: Менеджер устройств: ManagingContainer + EGS Модуль: Привязка к менеджеру: ManagingContent
  6. EGS Модуль: EGS Выход: EGSOutput + Zone Controler: EGS вход:EGSInput
  7. EGS Модуль: EGS Выход: EGSOutput + EgsOnUpdate: EGS вход:EGSInput
  8. EgsOnUpdate: Следующий:EgsNext + EgsDoUpdate: Предыдущий: EgsPrev
Schemas barrier.jpg

Далее необходимо настроить параметры элементов в свойствах элемента:

  1. Компьютер или Сервер - настроить сетевой адрес
  2. IntegraVideo7Sip - Сетевой адрес sip, пароль sip, порт sip, Адрес URL, Логин, Пароль. При отправке команды на шлагбаум если соответствующий номер прописан, на сервер Интегра-Видео VII sip будет послана команда "sip: invite"
  3. Zone Controller:
    1. Настройки (settings):
      1. values - числовые значения для некоторых приоритетов:
        1. high - повышенный приоритет (1 < high < MaxValue)
        2. low - пониженный приоритет (0 < low < 1)
        3. server - строка содержащая либо гуид сервера, на который следует отправлять события, либо имя параметра самого события, содержащего этот гуид, например: server
  4. EgsOnUpdate:
    1. Включен(enabled)
    2. Параметр элемента(param) - trace_zones
    3. Тип элемента(typename) - Тип движущегося объекта, например MoveableObject(все движущиеся объекты)
  5. EgsDoUpdate:
    1. Значение(value) - open
    2. Параметр элемента(param) - command
  6. EgsFlow (связь между EgsOnUpdate и EgsDoUpdate) - trace_zones/Zone/Pin/Bascule_barrier
  7. Зона(Zone):
    1. Область обслуживания(area), высоты области(area_heights), дополнительный делитель числового приоритета для зоны(trace_factor) заполняются после создания зоны через редактор зон.
    2. Настройки слежения по зоне(trace_settings) можно посмотреть по ссылке
  8. Шлагбаум - высота, расположение, номер телефона для открытия шлагбаума.

При вхождении движущегося объекта в зону шлагбаума, отправляется команда "открыть" шлагбауму в этой зоне, так же у движущегося объекта заполняется параметр "Зоны слежения(trzce_zones)" значением гуида зоны, в которую выполнен вход.