TANGO (от англ. TAco Next Generation Objects) — свободная объектно-ориентированная система, предназначенная для управления ускорителями, экспериментальными установками, а также различным оборудованием и программным обеспечением. Система TANGO активно разрабатывается сообществом (в основном) операторов синхротронов

TANGO
Логотип программы TANGO
Тип свободное и открытое программное обеспечение
Разработчик TANGO Consortium
Операционная система Cross-platform
Первый выпуск 19 апреля 2001
Последняя версия 9.3.3
Тестовая версия
Лицензия LGPL, GPL
Сайт tango-controls.org

TANGO — распределённая система управления. Она может работать как на одной, так и на сотнях машин. TANGO использует omniorb реализацию CORBA в качестве сетевого протокола. Основной моделью взаимодействия является модель клиент-сервер. Взаимодействие между клиентами и серверами может быть синхронным, асинхронным, либо событийно-ориентированным.

TANGO основана на принципах объектной и сервисной ориентированности. Объектная модель TANGO поддерживает методы, атрибуты и свойства. В TANGO все объекты являются представлениями устройств.

В состав TANGO входит база данных, в которой хранятся все зарегистрированные в системе устройства, среда быстрой разработки приложений, а также большое число вспомогательных инструментов.

Основные компоненты TANGOПравить

Ядро TANGOПравить

Средства разработки и развёртывания приложенийПравить

JIVEПравить

JIVE — независимое Java-приложение, созданное для просмотра и редактирования базы данных TANGO. JIVE написан на Swing и для его запуска требуется виртуальная машина Java версии выше 1.8.0.

POGOПравить

POGO — генератор кода для серверов устройств TANGO.

Средства запуска и управления системой TANGOПравить

Astor/StarterПравить

Astor — программный менеджер для системы TANGO. Astor может:

  • Управлять хостами;
  • Запускать/останавливать сервера устройств;
  • Посылать простые команды серверу устройства.

АрхивированиеПравить

Система TANGO также содержит встроенную систему архивирования, использующую либо MySQL либо Oracle. Система архивирования позволяет сохранять необходимые вам данные, поступающие от устройств.

Сервера устройствПравить

TANGO в первую очередь используется, чтобы предоставить доступ к оборудованию по локальной сети. При этом диапазон оборудования может меняться от простейших регистров ввода-вывода, пересылающих отдельные байты, до сложнейших детекторных систем или даже целых систем управления заводом. Доступ к оборудованию программируется в процессах, называемых Сервер устройства (англ. Device Server). Сервер устройства реализует классы, обеспечивающие доступ к оборудованию. В процессе работы сервер устройства создаёт экземпляры устройств, отображающие логические сущности компонент оборудования. Клиент взаимодействует с устройствами, используя TANGO протокол.

Поддерживаемые языки программированияПравить

ЛицензияПравить

TANGO распространяется в основном под двумя лицензиями. Библиотеки лицензируются в соответствии с GNU Lesser General Public License (LGPL). Средства разработки и сервера устройств лицензируются (если не указано иное) под GNU General Public License (GPL). Также часть библиотек/компонент распространяются под MIT или Apache 2.0 лицензиями.

КонсорциумПравить

Консорциум — группа институтов, активно разрабатывающих TANGO. Чтобы присоединиться к консорциуму институт должен подписать Меморандум и активно принимать участие в разработке TANGO. В настоящее время консорциум состоит из следующих институтов:

  1. ESRF — Европейский центр синхротронного излучения, Гренобль, Франция
  2. SOLEIL — Синхротрон Soleil, Париж, Франция
  3. ELETTRA — Синхротрон Elettra, Триест, Италия
  4. ALBA — Синхротрон Alba, Барселона, Испания
  5. DESY — Синхротрон Petra III, Гамбург, Германия
  6. MAX IV — Синхротрон MAX-IV, Лунд, Швеция
  7. Solaris — Синхротрон Solaris, Краков, Польша
  8. INAF — Итальянское национальное астрономическое общество
  9. SKAO — Square Kilometer Array Organization, головная структура строительства радиотелескопа SKA в ЮАР

Цель консорциума — гарантировать развитие TANGO.

Использование в РоссииПравить

Система TANGO используется[1]:

См. такжеПравить

  • EPICS — Experimental Physics and Industrial Control System

СсылкиПравить

  1. Р. А. Сенин и др.//Кристаллография, 2013, том 58, № 3, с. 520—525