Zone Controller (Детектор слежения за целями в зоне) — различия между версиями

Материал из Integra-S Wiki
Перейти к: навигация, поиск
(Новая страница: «== Назначение == # Определение вхождения целей (Движущиеся объекты)в охраняемые зоны Zone. # Г…»)
 
(Замечания)
 
(не показано 11 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
== Назначение ==
 
== Назначение ==
# Определение вхождения целей (Движущиеся объекты)в охраняемые зоны Zone.
+
# Определение вхождения целей (Движущиеся объекты) в охраняемые зоны Zone.
 +
# Расчет и сохранение списка зон, в которые входит цель trace_zones(Зоны слежения).
 +
# Расчет числового приоритета (очередности) цели trace_order.
 
# Генерирование событий ZoneEvent(Событие в зоне) о входе цели в зону и выходе цели из зоны.
 
# Генерирование событий ZoneEvent(Событие в зоне) о входе цели в зону и выходе цели из зоны.
# Расчет и сохранение списка зон, в которые входит цель trace_zones(Зоны слежения).
 
 
# Генерирование событий о резком изменении скорости и направления цели.
 
# Генерирование событий о резком изменении скорости и направления цели.
 
# Генерирование событий об остановке и начале движения после остановки.
 
# Генерирование событий об остановке и начале движения после остановки.
 
# Генерирование событий об превышении скорости и возврате к нормальной скорости.
 
# Генерирование событий об превышении скорости и возврате к нормальной скорости.
 
# Генерирование событий об начале и окончании опасного сближения.
 
# Генерирование событий об начале и окончании опасного сближения.
# Расчет числового приоритета (очередности) цели trace_order.
+
 
== Настройки (settings) ==
+
== Создание схемы ==
# values - числовые значения для некоторых приоритетов:
+
 
## high - повышенный приоритет (1 < high < MaxValue).
+
# Добавить следующие элементы в редакторе СКАДА:
## low - пониженный приоритет (0 < low < 1).
+
## Компьютер или сервер.
## server - строка содержащая либо гуид сервера, на который следует отправлять события, либо имя параметра самого события, содержащего этот гуид, например: server.
+
## Менеджер устройств(Acuario Manager).
[[File:zone_controll.png|центр]]
+
## EGS Модуль.
После запуска скрипта в параметре Хеш появится хеш текста скрипта, который должен быть равен тексту по следующей  [http://maps.integra-s.com:5434/resources/typedef2017/jsonpath.php?url=/egs/Zone%20Controller.put&path=0/params/hash/value ссылке], в том случае если скрипт не был изменен.
+
## Зона.
 +
## Скрипт Zone Сontroller (Скрипт можно импортировать [http://maps.integra-s.com:5434/resources/typedef2017/egs/Zone%20Controller.put отсюда]).
 +
# Связать элементы:
 +
## Zone Controler: EGS вход:EGSInput + EGS Модуль: EGS Выход: EGSOutput
 +
## EGS Модуль: Привязка к менеджеру: ManagingContent + Менеджер устройств: Менеджер устройств: ManagingContainer
 +
## Менеджер устройств: ПО:SoftwareContent + Компьютер или Сервер: Установленное ПО:SoftwareContainer
 +
[[File:schemas.jpg|800px|центр]]
 +
 
 +
== Настройка элементов ==
 +
# У компьютера должен быть настроен параметр ip.
 +
# У Zone Contoller должны быть настроены следующие параметры:
 +
## Включен(enabled) - задействовать триггер.
 +
## Настройки:
 +
### values - числовые значения для некоторых приоритетов:
 +
#### high - повышенный приоритет (1 < high < MaxValue).
 +
#### low - пониженный приоритет (0 < low < 1).
 +
### server - строка содержащая либо гуид сервера, на который следует отправлять события, либо имя параметра самого события, содержащего этот гуид, например: server. После запуска скрипта в параметре Хеш появится хеш текста скрипта, который должен быть равен тексту по следующей  [http://maps.integra-s.com:5434/resources/typedef2017/jsonpath.php?url=/egs/Zone%20Controller.put&path=0/params/hash/value ссылке], в том случае если скрипт не был изменен.
 +
### target_position_timeout - помечать параметр Расположение(position) движущейся цели (MoveableObject) атрибутом устаревший(outofdate), если он не изменялся в течении этого таймаута, например: 00:01:00.
 +
### undefined_position_timeout - помечать параметр Расположение неопределенной цели (UndefinedTarget) атрибутом устаревшийe, если он не изменялся в течении этого таймаута.
 +
# Охраняемая зона(Zone) должна быть настроена следующим образом:
 +
## Область(area) - полигон зоны(Заполняется при создании зоны в клиенте Интегра Планета Земля).
 +
## Высота области(area_heights) - высоты точек из полигона(Заполняется при создании зоны в клиенте Интегра Планета Земля).
 +
## Дополнительный делитель числового приоритета для зоны(trace_factor). Для назначения разной важности различным зонам.
 +
## Настройки слежения(trace_settings):
 +
[[File:trace_settings.jpg|400px|центр]]
 +
::::: 1. defaults - таблица соответствия типа цели приоритету(указываются типы движущихся объектов с приоритетами слежения)
 +
::::: 2. detectors - список различных настроек детекторов, содержит следующие параметры:
 +
:::::: 1. enabled - включить\выключить детектор.
 +
:::::: 2. types - список типов, для которых настраивается данный детектор.
 +
:::::: 3. exit_threshold - погрешность позиции для определения выхода из зоны, например: 10.
 +
:::::: 4. speed_limit - максимальная допустимая скорость, например: 7.
 +
:::::: 5. speed_change_threshold - порог изменения скорости, например: 20.
 +
:::::: 6. heading_change_threshold - порог изменения направления, например: 40.
 +
:::::: 7. stop_threshold - порог отсутствия движения, например: 0.6.
 +
:::::: 8. approach_threshold - минимальное допустимое расстояние между целями, например: 20.
 +
::::: 3. alarm_actions - список флагов для выбора действий по зоне, которые считаются тревожными. Определяются следующие действия цели в зоне:
 +
:::::: 1. enter - вход в зону.
 +
:::::: 2. exit - выход из зоны.
 +
:::::: 3. stop - остановка.
 +
:::::: 4. start - начало движения.
 +
:::::: 5. too_fast - превышение скорости.
 +
:::::: 6. not_too_fast - прекращение превышения скорости.
 +
:::::: 7. severe_speed_change - резкое изменение скорости.
 +
:::::: 8. severe_heading_change - резкое изменение направления.
 +
:::::: 9. dangerous_approach - опасное сближение.
 +
:::::: 10. no_dangerous_approach - прекращение опасного сближения.
 +
::::: 4. attention_actions - список флагов для выбора действий по зоне, по которым необходимо привлечение внимания.
 +
== Замечания ==
 +
# Для целей в зоне с приоритетом ignore осуществляются все расчеты, однако никакие события не генерируются.
 +
# Для целей в зоне с позицией, помеченной outofdate, расчеты не осуществляются и события не генерируются, однако сами цели не удаляются из зоны.
 +
# Для целей в зоне с пустой позицией расчеты не осуществляются, события не генерируются и сами цели удаляются из зоны.
 +
# Если цель без указанного пользователем приоритета (т.е. DEFAULT) входит сразу в несколько зон с различными настройками приоритетов по умолчанию defaults, то выбирается наибольший, т.к. такая ситуация может сложиться только в том случае, если зоны пересекаются.
 +
# Цель считается вошедшей в зону, если ее позиция входит внутрь соответствующего полигона зоны.
 +
# Цель считается вышедшей из зоны, если круг радиуса exit_threshold вокруг позиции цели полностью выходит из соответствующего полигона зоны.
 +
 
 +
== Замечания ==
 +
 
 +
# Для целей в зоне с приоритетом ignore осуществляются все расчеты, однако никакие события не генерируются.
 +
# Для целей в зоне с позицией, помеченной outofdate, расчеты не осуществляются и события не генерируются, однако сами цели не удаляются из зоны.
 +
# Для целей в зоне с пустой позицией расчеты не осуществляются, события не генерируются и сами цели удаляются из зоны.
 +
# Если цель без указанного пользователем приоритета (т.е. DEFAULT) входит сразу в несколько зон с различными настройками приоритетов по умолчанию defaults, то выбирается наибольший, т.к. такая ситуация может сложиться только в том случае, если зоны пересекаются.
 +
# Скрипту необходима актуализация параметра position целей (пометка как outofdate или сброс в null) и trace_enabled поворотного устройства.
 +
# Цель считается вошедшей в зону, если ее позиция входит внутрь соответствующего полигона зоны.
 +
# Цель считается вышедшей из зоны, если круг радиуса exit_threshold вокруг позиции цели полностью выходит из соответствующего полигона зоны.
 +
 
 +
== Пример работы ==

Текущая версия на 14:46, 30 июля 2021

Назначение

  1. Определение вхождения целей (Движущиеся объекты) в охраняемые зоны Zone.
  2. Расчет и сохранение списка зон, в которые входит цель trace_zones(Зоны слежения).
  3. Расчет числового приоритета (очередности) цели trace_order.
  4. Генерирование событий ZoneEvent(Событие в зоне) о входе цели в зону и выходе цели из зоны.
  5. Генерирование событий о резком изменении скорости и направления цели.
  6. Генерирование событий об остановке и начале движения после остановки.
  7. Генерирование событий об превышении скорости и возврате к нормальной скорости.
  8. Генерирование событий об начале и окончании опасного сближения.

Создание схемы

  1. Добавить следующие элементы в редакторе СКАДА:
    1. Компьютер или сервер.
    2. Менеджер устройств(Acuario Manager).
    3. EGS Модуль.
    4. Зона.
    5. Скрипт Zone Сontroller (Скрипт можно импортировать отсюда).
  2. Связать элементы:
    1. Zone Controler: EGS вход:EGSInput + EGS Модуль: EGS Выход: EGSOutput
    2. EGS Модуль: Привязка к менеджеру: ManagingContent + Менеджер устройств: Менеджер устройств: ManagingContainer
    3. Менеджер устройств: ПО:SoftwareContent + Компьютер или Сервер: Установленное ПО:SoftwareContainer
Schemas.jpg

Настройка элементов

  1. У компьютера должен быть настроен параметр ip.
  2. У Zone Contoller должны быть настроены следующие параметры:
    1. Включен(enabled) - задействовать триггер.
    2. Настройки:
      1. values - числовые значения для некоторых приоритетов:
        1. high - повышенный приоритет (1 < high < MaxValue).
        2. low - пониженный приоритет (0 < low < 1).
      2. server - строка содержащая либо гуид сервера, на который следует отправлять события, либо имя параметра самого события, содержащего этот гуид, например: server. После запуска скрипта в параметре Хеш появится хеш текста скрипта, который должен быть равен тексту по следующей ссылке, в том случае если скрипт не был изменен.
      3. target_position_timeout - помечать параметр Расположение(position) движущейся цели (MoveableObject) атрибутом устаревший(outofdate), если он не изменялся в течении этого таймаута, например: 00:01:00.
      4. undefined_position_timeout - помечать параметр Расположение неопределенной цели (UndefinedTarget) атрибутом устаревшийe, если он не изменялся в течении этого таймаута.
  3. Охраняемая зона(Zone) должна быть настроена следующим образом:
    1. Область(area) - полигон зоны(Заполняется при создании зоны в клиенте Интегра Планета Земля).
    2. Высота области(area_heights) - высоты точек из полигона(Заполняется при создании зоны в клиенте Интегра Планета Земля).
    3. Дополнительный делитель числового приоритета для зоны(trace_factor). Для назначения разной важности различным зонам.
    4. Настройки слежения(trace_settings):
Trace settings.jpg
1. defaults - таблица соответствия типа цели приоритету(указываются типы движущихся объектов с приоритетами слежения)
2. detectors - список различных настроек детекторов, содержит следующие параметры:
1. enabled - включить\выключить детектор.
2. types - список типов, для которых настраивается данный детектор.
3. exit_threshold - погрешность позиции для определения выхода из зоны, например: 10.
4. speed_limit - максимальная допустимая скорость, например: 7.
5. speed_change_threshold - порог изменения скорости, например: 20.
6. heading_change_threshold - порог изменения направления, например: 40.
7. stop_threshold - порог отсутствия движения, например: 0.6.
8. approach_threshold - минимальное допустимое расстояние между целями, например: 20.
3. alarm_actions - список флагов для выбора действий по зоне, которые считаются тревожными. Определяются следующие действия цели в зоне:
1. enter - вход в зону.
2. exit - выход из зоны.
3. stop - остановка.
4. start - начало движения.
5. too_fast - превышение скорости.
6. not_too_fast - прекращение превышения скорости.
7. severe_speed_change - резкое изменение скорости.
8. severe_heading_change - резкое изменение направления.
9. dangerous_approach - опасное сближение.
10. no_dangerous_approach - прекращение опасного сближения.
4. attention_actions - список флагов для выбора действий по зоне, по которым необходимо привлечение внимания.

Замечания

  1. Для целей в зоне с приоритетом ignore осуществляются все расчеты, однако никакие события не генерируются.
  2. Для целей в зоне с позицией, помеченной outofdate, расчеты не осуществляются и события не генерируются, однако сами цели не удаляются из зоны.
  3. Для целей в зоне с пустой позицией расчеты не осуществляются, события не генерируются и сами цели удаляются из зоны.
  4. Если цель без указанного пользователем приоритета (т.е. DEFAULT) входит сразу в несколько зон с различными настройками приоритетов по умолчанию defaults, то выбирается наибольший, т.к. такая ситуация может сложиться только в том случае, если зоны пересекаются.
  5. Цель считается вошедшей в зону, если ее позиция входит внутрь соответствующего полигона зоны.
  6. Цель считается вышедшей из зоны, если круг радиуса exit_threshold вокруг позиции цели полностью выходит из соответствующего полигона зоны.

Замечания

  1. Для целей в зоне с приоритетом ignore осуществляются все расчеты, однако никакие события не генерируются.
  2. Для целей в зоне с позицией, помеченной outofdate, расчеты не осуществляются и события не генерируются, однако сами цели не удаляются из зоны.
  3. Для целей в зоне с пустой позицией расчеты не осуществляются, события не генерируются и сами цели удаляются из зоны.
  4. Если цель без указанного пользователем приоритета (т.е. DEFAULT) входит сразу в несколько зон с различными настройками приоритетов по умолчанию defaults, то выбирается наибольший, т.к. такая ситуация может сложиться только в том случае, если зоны пересекаются.
  5. Скрипту необходима актуализация параметра position целей (пометка как outofdate или сброс в null) и trace_enabled поворотного устройства.
  6. Цель считается вошедшей в зону, если ее позиция входит внутрь соответствующего полигона зоны.
  7. Цель считается вышедшей из зоны, если круг радиуса exit_threshold вокруг позиции цели полностью выходит из соответствующего полигона зоны.

Пример работы