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

Интеграция Engee с оборудованием

Страница в процессе разработки.

Интеграция (в контексте данной статьи) — это процесс подключения стороннего оборудования, имеющего программное обеспечение (ПО), поддерживающее возможность сетевого взаимодействия, напрямую к Engee. Такой подход позволяет организовать обмен данными с внешними интерфейсами, включая CAN-адаптеры, UDP-протоколы и другие устройства.

В качестве стороннего ПО подразумевается любая программа, способная работать по сети и отправлять/принимать данные по протоколу UDP.

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

Для решения этой задачи используется следующая архитектура взаимодействия:

engee working hardware 1

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

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

Для подключения внешнего оборудования к Engee установите пакет поддержки, выполнив следующую команду в командной строке img 41 1 2:

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

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

engee working hardware 2

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

engee working hardware 3

Скачайте архив, распакуйте его и установите хост-программу на вашем компьютере. После запуска откроется окно с полем для ввода URL:

engee host access

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

engee host access 1

Работа с драйвером VISA

После установки пакета поддержки работы с оборудованием, а также подключения хост-программы, в системе становится доступен драйвер VISA.

VISA (Virtual Instrument Software Architecture) — это универсальный интерфейс для общения с физическими измерительными приборами через порты USB, Ethernet, GPIB и т.д. Благодаря хост-программе Engee получает доступ к этим устройствам через сеть, что позволяет работать с ними напрямую из среды Engee, используя язык программирования Julia.

Работа с VISA в Engee позволяет:

  • Получать список доступных приборов;

  • Управлять доступными приборами — открывать сессии, отправлять команды, считывать ответы;

  • Работать с бинарными данными и I/O-буферами.

Работа с РИТМ

После установки пакета поддержки работы с внешним оборудованием и подключении хост-программы, в системе становится доступен модуль для работы с РИТМ.

РИТМ — это аппаратное решение для работы с моделями в реальном времени, предоставляющее возможность интеграции и управления процессами на реальном оборудовании. С помощью пакета поддержки работы с внешним оборудованием, Engee получает доступ к системе РИТМ и может работать с ней напрямую, используя язык программирования Julia.

Работа с РИТМ в Engee позволяет:

  • Загружать и запускать модели на машине РИТМ;

  • Генерировать Си-обвязку для моделей;

  • Компилировать и запускать модели в различных режимах (Standalone или External);

  • Проверять доступность устройства и работать с файлами на РИТМ;

  • Получать информацию о потребляемой памяти моделью и выводить логи выполнения.

Командное управление

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

В обоих случаях для использования функций требуется установить пакет для работы с оборудованием и явно подключить его модуль:

engee.package.install("Engee-Device-Manager")
using Main.EngeeDeviceManager

1. Брокер — это программный компонент, который координирует обмен данными между различными модулями и внешними интерфейсами. Он обеспечивает передачу сообщений и управление потоками данных, необходимыми для корректной работы системы.