Документация Engee

Engee.Интеграции

Интеграция Engee с оборудованием обеспечивается подсистемой Engee.Интеграции, которая подключает Engee к внешним устройствам, интерфейсам, протоколам и программным средам. Поддержка реализуется через пакеты поддержки конкретного оборудования (например, VISA, Arduino, РИТМ и т.д.), включая модули ввода-вывода (подключенные к компьютеру) и встраиваемые системы. Внешнее оборудование и протоколы физически работают на компьютере пользователя, но становятся доступны напрямую в Engee именно через подсистему Engee.Интеграции.


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

engee hardware ru

На схеме показано, что Engee обменивается данными с клиентской программой Engee.Интеграции, установленной на компьютере пользователя; эта программа работает с физическими интерфейсами системы (COM-портами, USB и т.д.) и передает команды/данные подключенному оборудованию. При этом для организации сетевого взаимодействия между Engee и клиентской программой используется сервер на стороне Engee.

Перед началом работы необходимо запустить клиентскую программу Engee.Интеграции на компьютере, к которому подключено оборудование. Браузер с Engee можно открыть как на этом же компьютере, так и на любом другом устройстве в сети. Это позволяет создавать «виртуальные лаборатории» и дает возможность нескольким пользователям подключаться к одному и тому же компьютеру, работая с оборудованием напрямую через Engee.

Подключение к оборудованию

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

Чтобы начать работу с подсистемой Engee.Интеграции, установите основной пакет поддержки, выполнив команду engee.package.install в командной строке img 41 1 2:

engee.package.install("Engee-Device-Manager")

Если основной пакет поддержки распространяется в виде zip-архива, то путь к нему необходимо указывать как именованный аргумент zip_path. Например, если архив называется edmv2.4.zip и находится в папке distr, то используйте команду:

engee.package.install("Engee-Device-Manager", zip_path="/distr/edmv2.4.zip")

После успешной установки в командной строке отобразится сообщение:

engee working hardware 2

В этом сообщении будет предоставлен URL для подключения через клиентскую программу Engee.Интеграции. Также будут предложены ссылки для загрузки архивов с этими клиентскими программами. Выберите нужный архив в зависимости от вашей операционной системы (Windows/Linux):

engee working hardware 3

Скачайте архив на ваш компьютер, распакуйте его и запустите клиентскую программу Engee.Интеграции.

Антивирус может заблокировать установку или запуск клиентской программы Engee.Интеграции. Если при установке или запуске появляются предупреждения системы безопасности, то временно отключите защиту в реальном времени и добавьте исполняемый файл клиента в исключения.

Например, для отключения антивируса «Безопасность Windows» и добавления исключений следуйте инструкции:

Пошаговая инструкция
  1. Откройте поиск windows search и введите «Безопасность Windows».

    disable defender step1

  2. Выберите Защита от вирусов и угроз.

    disable defender step2

  3. Нажмите Управление настройками в разделе «Параметры защиты от вирусов и других угроз».

    disable defender step3

  4. Переключите тумблер Защита в реальном времени в положение «Выкл.» (при появлении запроса контроля учетных записей нажмите Да).

    disable defender step4

  5. В этом же окне пролистайте до блока «Исключения» и нажмите Добавление или удаление исключений.

    defender exceptions 2

  6. Нажмите Добавить исключение и выберите Файл (по умолчанию с именем engee-device-manager.exe):

    defender exceptions 3

  7. При появлении фиолетового окна SmartScreen («Система Windows защитила ваш компьютер») нажмите Выполнить в любом случае:

    defender exceptions 4

    Фиолетовое окно SmartScreen появляется даже в случае добавления файла в исключения и не зависит от положения тумблера «Защита в реальном времени» — это отдельная репутационная проверка.
  8. Запустите клиентскую программу Engee.Интеграции и проверьте соединение в окне клиента (Статус: Подключен).

  9. После установки и первого запуска клиентской программы переключите тумблер Защита в реальном времени обратно в положение «Вкл.».

В корпоративных средах политика безопасности может запрещать добавление исключений пользователем. В этом случае обратитесь к администратору ИБ.

После запуска клиентской программы Engee.Интеграции откроется окно с полем для ввода URL из сообщения:

engee host access ru

Далее скопируйте URL из сообщения в командной строке (текст после Ссылка для подключения:), вставьте его в клиентскую программу Engee.Интеграции и нажмите кнопку Подключиться. Статус подключения должен смениться на «Подключен»:

engee host access 1 ru

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

engee.package.getdemos("Engee-Device-Manager")

Отлично — подсистема Engee.Интеграции установлена и готова к работе!

После перезапуска клиента Engee не нужно заново устанавливать подсистему Engee.Интеграции — достаточно повторно запустить ее серверную программу с помощью команды:

engee.package.start("Engee-Device-Manager")

Интерфейс клиентской программы

Интерфейс клиентской программы Engee.Интеграции имеет следующий вид:

edm interface ru

  1. Название и версия клиентской программы.

  2. Окно статусов оборудования.

  3. Окно настроек.

  4. Кнопка сворачивания в трей (только в версии для Windows).

    При ее нажатии приложение помещается в системный трей, а статус подключения подсвечивается в иконке:

    • Если клиентская программа подключена:

      edm status on

    • Если клиентская программа отключена:

      edm status off

  5. Поле для ввода ссылки для подключения и кнопка подключения.

  6. Статус подключения.

  7. Кнопка очистки логов.

  8. Окно диагностики.

Сообщения об ошибках

В разделе приведены сообщения об ошибках, которые выводятся в окно диагностики клиентской программы или в командной строке Engee.

  1. Текст сообщения: ERROR: An existing client program is already running. Please close it manually or call function Main.EngeeDeviceManager.UTILS_API.stopClientProgram() in Engee to terminate the previous program instance.

    Описание: существует запущенный экземпляр клиентской программы, использование второго экземпляра клиентской программы невозможно.

    Причина возникновения: один экземпляр клиентской программы уже запущен, и пользователь запустил второй.

    Решение: закройте первый экземпляр вручную или выполните в командной строке Main.EngeeDeviceManager.UTILS_API.stopClientProgram().

  2. Текст сообщения: ERROR: A sync error occurred. Please, ensure that the latest version of the Engee.Integrations host client and server program is installed.

    Описание: несовпадение версий серверной и клиентской программы вызывает ошибку синхронизации.

    Причина возникновения: если выполнить в командной строке сначала engee.package.start("Engee-Device-Manager"), а затем engee.package.install("Engee-Device-Manager"), то версия серверной программы может остаться старой.

    Решение: перед установкой серверной программы выполните в командной строке engee.clear_all(). Чтобы избежать ошибки синхронизации, следует выполнять engee.package.install("Engee-Device-Manager") сразу после запуска Engee, тогда установится последняя версия серверной программы.

  3. Текст сообщения: ERROR: Request failed: there is no such host client object for corresponding object Socket! Please, verify the host client is connected and recreate object by calling: socket = SOCKET.Socket()

    Текст сообщения приведен для объекта Socket. Для других объектов наименование в сообщении будет соответствующим.

    Описание: обращение к ранее созданному объекту после перезапуска клиентской программы вызывает ошибку.

    Причина возникновения: перезапуск клиентской программы во время работы с ранее созданным объектом в командной строке или в редакторе скриптов Engee.

    Решение: после перезапуска клиентской программы создайте объект заново (например, через socket = SOCKET.Socket()) и используйте только его — ранее созданный объект восстановлению не подлежит.

  4. Текст сообщения: ERROR: Operation cannot be completed: there is no available route to host client program. Please verify that the host client is connected.

    Описание: создание объекта без активного подключения к клиентской программе вызывает ошибку.

    Причина возникновения: попытка создать объект в командной строке или в редакторе скриптов Engee, когда клиентская программа не подключена.

    Решение: предварительно подключите клиентскую программу, убедитесь в наличии соединения и только после этого создавайте объекты и работайте с ними.

Программное управление

Функции программного управления пакетами поддержки доступны только при установленной и запущенной подсистеме Engee.Интеграции.

Помимо программного управления моделированием, в Engee доступно программное управление пакетами поддержки: