4.7.2. TANGO

Примечание

Адаптер 8SMC4-USB-Eth был переименован в 8Eth1 [1] . Все доступные инструкции в нашем руководстве актуальны и применимы к обоим устройствам.

4.7.2.1. Обзор

../../../_images/logo_tangocontrols.png

Наши контроллеры поддерживают TANGO!

TANGO - свободная объектно-ориентированная система, предназначенная для управления ускорителями, экспериментальными установками а также различным промышленным и научным оборудованием и программным обеспечением. Система TANGO активно разрабатывается сообществом энтузиастов и профессиональных инженеров.

TANGO основывается на концепции устройств. Устройства реализуются объектно-ориентированными и ориентированными подходами к архитектуре программного обеспечения. Модель устройства в TANGO реализует команды/методы, атрибуты/поля данных и свойства для настройки устройств. В TANGO все объекты управления - это устройства и аппаратный доступ, управляемые в процессе, называемом Device Server.

Сервер устройства реализует классы, обеспечивающие доступ к оборудованию. В процессе работы сервер устройства создает экземпляры устройств, отображающие логические сущности компонент оборудования. Клиент взаимодействует с устройствами, используя протоколы CORBA и zeromq.

Контроллер Standa 8SMC5-USB поддерживает работу с TANGO 8.1 при помощи специально разработанного сервера устройств. Предполагается два основных сценария:

../../../_images/TangoComplex.png

Использование интерфейса TANGO через сервер устройств, запущенный напрямую на вашем ПК

../../../_images/TangoSimple.png

Использование интерфейса TANGO через адаптер Standa 8Eth1

4.7.2.2. Конфигурация и запуск сервера устройства, объявление устройства

Предупреждение

Сервер устройств для Standa 8SMC5-USB разрабатывался на основе библиотек TANGO версии 8.1. Любая версия инфраструктуры TANGO старше 7 (включительно) также должна быть совместима с данной реализацией, однако тестирование не проводилось.

Для того, чтобы приступить к работе с новым TANGO-совместимым устройством, в первую очередь необходимо зарегистрировать его в БД-Сервере TANGO. Наиболее распространённый и простой способ - использовать для этого Jive:

Важно

В видео по настройке TANGO совместимого устройства показаны те же действия, что в и в инструкции ниже
Видео инструкцию по настройке TANGO можно посмотреть по этой ссылке

  1. Подключите Jive к вашему локальному БД-Серверу TANGO (Edit -> Change Tango Host).

  2. Запутсите помощник регистрации сервера устройств (Tools -> Server Wizard).

    ../../../_images/jivewizard.png

    Интерфейс помощник регистрации сервера устройства Jive

  3. Введите «Standa8smc4usb» в поле Server Name. В поле Instance name необходимо ввести любое удобное для вас буквенно-цифровое имя, идентифицирующее конкретный экземпляр сервера устройств TANGO (например «TestDevice»).

  4. Нажмите next - это приведёт к открытию окна Start the server. На этом шаге необходимо запустить сам сервера устройств (Jive при этом закрывать не нужно).

    • Если у вас есть Standa 8Eth1, и вы собираетесь использовать его встроенную поддержку TANGO, то для её активации и настройки вам необходимо использовать интерфейс администрирования.

      ../../../_images/motion.png

      Страница управления сервисом TANGO в интерфейсе администрирования

    • Если же вы собираетесь использовать сервер устройств TANGO напрямую со своего компьютера, то вам необходимо самостоятельно скомпилировать его под вашу платформу из исходных кодов. В результате вы получите исполняемый файл Standa8smc4usb, которому при запуске необходимо передать в качестве аргумента ранее указанное в «Jive» имя экземпляра (например, «TestDevice»). Если сервер был успешно запущен, то в стандартном потоке вывода вы увидете надпись Ready to accept requests.

      Примечание

      Имя экземпляра сервера устройств, которое вы указали в Jive, должно совпадать с тем, что вы указываете при запуске самого экземпляра сервера устройств (как в случае использования исполняемого файла, так и при запуске через интерфейс администрирования).

      Примечание

      Перед запуском сервера устройств «Standa8smc4usb» убедитесь в том, что переменная среды «TANGO_HOST» содержит в себе адрес и порт вашего локального БД-Сервера Tango (например, «192.168.0.172:11000»).

  5. Перключитесь обратно на Jive, в котором по-прежнему должно быть открыто окно Start the server. Нажмите кнопку next.

  6. В открывшемся окне Class Selection выберите класс Standa8scm4usb и нажмите кнопку Declare device.

  7. В следующем окне в поле Device name введите соответсвующее спецификации TANGO имя конкретного устройства (например «a/b/c»), после чего нажмите next.

  8. Следующий шаг требует ввода серийного номера экспортируемого в TANGO контроллера в поле SerialNumber. Узнать серийный номер контроллера можно либо в разделе Common в интерфейсе администрирования, если вы используете Ethernet-адаптер Standa 8Eth1, или через программу XiLab (Settings -> About Device -> Serial number).

    Примечание

    XiLab также может быть использован для определения серийных номеров контроллеров, подключенных к Ethernet-адаптеру Standa 8Eth1, но для этого на адаптере при помощи интерфейса администрирования должен быть включен сервис «LibXimc server». Более детально об этих функциях XiLab можно узнать из документации.

  9. Далее потребуется ввод двух параметров: CalibrationRatio и CalibrationUnits. Они служат для отображения шагов в пользовательские единицы и должны трактоваться как «1 шаг = CalibrationRatio CalibrationUnits». Если вам не требуется пересчёт в какие-либо единицы, то задайте «1.0» и пустую строку соответственно.

  10. Непосредственно процедура регистрации устройства (т.е. предыдущие 3 шага) должна быть повторена для каждого из подключенных контроллеров, которые требуется использовать через интерфейс TANGO.

../../../_images/ATKpanel.png

Пример содержимого стандартной ATK-панели для экспортированного в TANGO контроллера

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

[1]Вендор-код был изменен в 2020 году, ранее этот продукт имел вендор-код 8SMC4-USB-Eth.