TANGO

Na Galipedia, a Wikipedia en galego.
Saltar para a navegação Saltar para a pesquisa
TANGO logo
TANGO controls logo.png
Desenvolvedor(es) TANGO Consortium
Última versión 9.2.5
(9/1/2017)
Sistema operativo Multiplataforma
Licenza GPL e LGPL
Sitio web www.tango-controls.org

Tango (en inglés "TAco Next Generation Objects") é un sistema libre e aberto de control orientado a obxectos que ofrece ferramentas para o control de calquera tipo de hardware e software nun sistema SCADA. O seu uso principal é o control de aceleradores de partículas tipo sincrotrón e dos experimentos levados a cabo neses aceleradores, pero tamén pode ser utilizado para outros experimentos científicos ou, en xeral, para calquera tipo de programa e/ou maquinaria, xa que se atopa en desenvolvemento activo por un consorcio composto por diversos institutos de investigación.

É un sistema distribuído de control que funciona tanto nunha máquina illada como sobre centos delas conectadas. Tango emprega dous protocolos de comunicación: omniorb, como implementación de CORBA como protocolo de rede, e Zeromq. A comunicación básica segue o modelo cliente-servidor. A comunicación entre clientes e servidores pode ser síncrona, asíncrona ou dirixida por eventos. Omniorb emprégase para a comunicación síncrona e asíncrona, mentres que Zeromq utilízase para a comunicación de eventos (dende a versión 8 de TANGO).

Está baseado no concepto de orientación a obxectos e orientado a servizo. O obxecto modelo soporta métodos, atributos e propiedades. Dentro de TANGO todos os obxectos veñen representados por dispositivos.

Servidores de dispositivos[editar | editar a fonte]

Tango emprégase como Middleware para proporcionar acceso remoto a maquinaria. Esta maquinaria pode ir dende bits dixitais de entrada/saída ata sofisticados sistemas de detección ou sistemas de control completos. O acceso á maquinaria prográmase a través dun proceso chamado Servidor de dispositivos. Este servidor de dispositivos implementa clases de dispositivos que ó mesmo tempo implementan o acceso real á máquina. En tempo de execución o servidor de dispositivos xera os dispositivos que son a representación lóxica das instancias hardware. O cliente importa os dispositivos, por medio duna base de datos, e mándalles peticións usando o protocolo TANGO. Estes dispositivos poden almacenar valores de configuración nunha base de datos MySQL de forma permanente.

Linguaxes soportadas[editar | editar a fonte]

Tanto Controls ten soporte completo en tres linguaxes: C++, Python e Java.[1][2]

Desenvolvemento[editar | editar a fonte]

Tango desenvólvese en aberto empregando subversion e a plataforma SourceForge[3] e Github[4].

A librarías de Tango libérase en dous lanzamentos e con dobre licenza libre: unha coa GPL e a LGPL.[5] As ferramentas de servidores de dispositivos atópanse baixo a licenza GPL.

Consorcio[editar | editar a fonte]

Tango comenzou como un proxecto xeral para controlar aceleradores e experimentación científica. O apoio da industria plasmouse nun consorcio de desenvolvemento aberto.[6]

O consorcio é o grupo de institucións e empresas que participan activamente no desenvolvemento de TANGO. O obxectivo do consorcio é garantir o desenvolvemento de TANGO. No consorcio están algunhas como Petra III Synchrotron (Hamburgo, Alemaña), Fonte de neutróns FRMII (Múnic, Alemaña), sincrotrón ANKA (Karlsruhe, Alemaña), European Synchrotron Radiation Facility (Grenoble, Francia), Soleil Synchrotron (París, Francia), Alba Synchrotron, (Barcelona, España), Elettra Synchrotron (Trieste, Italia), Sincrotrón Solaris (Cracovia, Polonia), Sincrotrón MAX-lab (Lund, Suecia).

Exemplos de uso[editar | editar a fonte]

Unha breve lista de proxectos que usan Tango (ademais dos que forman parte do consorcio):

  1. C3 Prototype da European Mars Analog Station
  2. As diagnoses do Laser_Mégajoule
  3. O equipamento laser CILEX_APOLLON
  4. A fonte compacta de luz ThomX

Notas[editar | editar a fonte]

  1. "Tanto Ecosystem". tango-controls.org. 
  2. "Tango Controls documentation". tango-control.org. 
  3. "TANGO Control System". SourceForge. 
  4. "Tango Control System: The official place for Tango kernel related projects". Github. 
  5. "About us: License". tango-controls.org. 
  6. "Partners". tango-controls.org. 

Véxase tamén[editar | editar a fonte]

Outros artigos[editar | editar a fonte]

  • EPICS—en inglés Experimental Physics and Industrial Control System (Sistema de control industrial e de experimentación física),
  • SCADA—en inglés Supervisory Control And Data Acquisition (Control supervisor e adquisición de datos),
  • openSCADA - implementación en Java de código aberto.

Ligazóns externas[editar | editar a fonte]