TANGO (TANGO)
TANGO | |
---|---|
Тип | свободное и открытое программное обеспечение |
Разработчик | TANGO Consortium |
Операционная система | кроссплатформенность |
Первый выпуск | 19 апреля 2001 |
Последняя версия |
|
Репозиторий | gitlab.com/tango-control… |
Лицензия | GNU LGPL и GNU GPL |
Сайт | tango-controls.org |
TANGO (от англ. TAco Next Generation Objects) — свободная объектно-ориентированная система, предназначенная для управления ускорителями, экспериментальными установками, а также различным оборудованием и программным обеспечением. Система TANGO активно разрабатывается сообществом (в основном) операторов синхротронов
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. В настоящее время консорциум состоит из следующих институтов:
- ESRF — Европейский центр синхротронного излучения, Гренобль, Франция
- SOLEIL — Синхротрон Soleil, Париж, Франция
- ELETTRA — Синхротрон Elettra, Триест, Италия
- ALBA — Синхротрон Alba, Барселона, Испания
- DESY — Синхротрон Petra III, Гамбург, Германия
- MAX IV — Синхротрон MAX-IV, Лунд, Швеция
- Solaris — Синхротрон Solaris, Краков, Польша
- INAF — Итальянское национальное астрономическое общество
- SKAO — Square Kilometer Array Organization, головная структура строительства радиотелескопа SKA в ЮАР
Цель консорциума — гарантировать развитие TANGO.
Использование в России
[править | править код]Система TANGO используется[2]:
- на станциях Курчатовского источника синхротронного излучения,
- для управления ускорительным комплексом ионного коллайдера NICA, ОИЯИ, Дубна,
- в ускорителе ЛИУ-20 ИЯФ СО РАН, Новосибирск.
См. также
[править | править код]- EPICS — Experimental Physics and Industrial Control System
Ссылки
[править | править код]- ↑ https://www.tango-controls.org/community/news/2020/10/26/tango-source-distribution-934/
- ↑ Р. А. Сенин и др.//Кристаллография, 2013, том 58, № 3, с. 520—525