Симулятор движения — различия между версиями
Ipe (обсуждение | вклад) (→Построение схемы) |
Ipe (обсуждение | вклад) |
||
Строка 36: | Строка 36: | ||
::1. settings.interval - интервал между изменениями позиции, например: 00:00:05. | ::1. settings.interval - интервал между изменениями позиции, например: 00:00:05. | ||
::2. данные о движении объекта в некотором формате ('''settings.input'''), например: | ::2. данные о движении объекта в некотором формате ('''settings.input'''), например: | ||
− | '' | + | ''33.530997143290094,44.60610992488476,0 33.531297550699776,44.60515951896548,0 33.531426296732484,44.60381052884549,0 33.53151212742096,44.602584146822515,0 33.53078256656891,44.60197094603659,0 33.52983842899565,44.60095915049356,0; |
::3. регулярное выражение для разбора данных ('''settings.pattern'''), должно содержать три именованные группы с именами '''longitude''', '''latitude''' и '''altitude''', например:'' | ::3. регулярное выражение для разбора данных ('''settings.pattern'''), должно содержать три именованные группы с именами '''longitude''', '''latitude''' и '''altitude''', например:'' | ||
− | ''(?:(?<longitude>-?\d+\.?\d*),(?<latitude>-?\d+\.?\d*),(?<altitude>-?\d+\.?\d*))\s*; | + | ''(?:(?<longitude>-?\\d+\\.?\\d*),(?<latitude>-?\\d+\\.?\\d*),(?<altitude>-?\\d+\\.?\\d*))\\s*; |
::4. идентификатор двигаемого объекта ('''settings.target'''), например: dd0385b7-b32a-4658-88ab-afef3743459b. | ::4. идентификатор двигаемого объекта ('''settings.target'''), например: dd0385b7-b32a-4658-88ab-afef3743459b. | ||
Версия 15:51, 20 сентября 2021
Тестирование системы. Скрипт работает с одной локальной базой интеграции.
Содержание
[убрать]Построение схемы
Для построения схемы требуется:
1. Загрузить триггер EgsScenario из http://maps.integra-s.com:5434/resources/typedef2017/egs/Position%20Simulator.put
и добавить на схему через меню действие элементов > импорт элементов.
2. Перейти на вкладку "Типы элементов" и добавить из списка элементы Egs Модуль EgsModule, менеджер AcuarioManager и компьютер Computer.
3. Настроить сетевой адрес компьютера.
Для этого необходимо выделить на схеме компьютер и нажать на кнопку вызова свойств элемента.
В окне свойств элемента указать ip адрес используемого компьютера в строке "Сетевой адрес".
4. Связать EgsScenario и Egs Модуль, подключив пины «Egs вход: EgsInput» у EgsScenario и «Egs выход: EgsOutput» у Egs Модуля.
5. Привязать пин "'Привязка к менеджеру: ManagingContent" из Egs Модуля к пину "Менеджер устройств: ManagingContainer" из Менеджера устройств.
6. Подключить пин "ПО: SoftwareContent" из Менеджера устройств с пином "Установленное ПО: SoftwareContainer" из Компьютера.
7. Настроить следующий параметр триггера:
- задействовать триггер установив галочку у параметра Включен(enabled);
- в настройках:
- 1. settings.interval - интервал между изменениями позиции, например: 00:00:05.
- 2. данные о движении объекта в некотором формате (settings.input), например:
33.530997143290094,44.60610992488476,0 33.531297550699776,44.60515951896548,0 33.531426296732484,44.60381052884549,0 33.53151212742096,44.602584146822515,0 33.53078256656891,44.60197094603659,0 33.52983842899565,44.60095915049356,0;
- 3. регулярное выражение для разбора данных (settings.pattern), должно содержать три именованные группы с именами longitude, latitude и altitude, например:
(?:(?<longitude>-?\\d+\\.?\\d*),(?<latitude>-?\\d+\\.?\\d*),(?<altitude>-?\\d+\\.?\\d*))\\s*;
- 4. идентификатор двигаемого объекта (settings.target), например: dd0385b7-b32a-4658-88ab-afef3743459b.
Настройку параметров триггера можно выполнить, открыв свойства элемента.
Проверка
После запуска скрипта в параметре "Хеш" появится хеш текста скрипта, который должен быть равен тексту по следующей ссылке http://maps.integra-s.com:5434/resources/typedef2017/jsonpath.php?url=/egs/Position%20Simulator.put&path=0/params/hash/value
Хэш-сумма будет совпадать только в том случае, если скрипт был импортирован и не был изменен.
Алгоритм работы
- Находится объект назначения с идентификатором settings.target.
- Данные из settings.input при помощи регулярного выражения из settings.pattern преобразовываются в список групп параметров longitude, latitude и altitude.
- С заданным интервалом из списка выбирается следующая группа параметров по кругу.
- Параметры группы записываются в соответствующие параметры объекта назначения.
Пример работы
Для построения схемы необходимо:
1. Создать схему по выше описанному алгоритму (см. Построение схемы).
2. Добавить элемент "Мужчина". Идентификатор добавленного мужчины скопировать и вставить в параметр settings.target триггера EGS
3. Запустить Acuario Manager
Результат:
В параметр "Расположение" двигаемого элемента с периодичностью в 5 секунду будут меняться значения.