Tango

Fiche logiciel validé
  • Création ou MAJ importante : 18/02/13
  • Correction mineure : 18/02/13
Mots-clés
Pour aller plus loin
  • Fiches logiciel PLUME connexes : EDNA

Tango : contrôle d'expériences ou d'installations

Description
Fonctionnalités générales

Tango est un "système de contrôle" permettant le contrôle informatique de divers types d'expérience et/ou d'installations.
Il permet d'interfacer tous types d'équipements utilisés dans l'installation ou dans l'expérience. Une fois interfacés, tous ces équipements présentent une interface normalisée autorisant l'écriture de programmes de contrôle de haut niveau de ces équipements. Tango prend également en compte l'aspect distribué des installations informatiques d'aujourd'hui. C'est un bon exemple de système SCADA (Supervisory Control And Data Acquisition).

Autres fonctionnalités

Tango supporte 3 langages (C++, python et Java) aussi bien pour l'écriture du logiciel interfaçant l'équipement que pour un logiciel de
contrôle de haut-niveau. L'accès aux équipements est également possible à partir de logiciel propriétaire comme LabView ou Matlab.
Tango supporte 3 types de communication réseau entre le logiciel de contrôle de haut niveau et les équipements :

  • Communication synchrone
  • Communication asynchrone
  • Communication asynchrone  déclenchée par événements

En sus de ces aspects communications liés à une informatique répartie, Tango incorpore une suite d'outils graphiques pour :

  • Générer un squelette du code spécifique à chaque type d'équipement
  • Configurer les équipements
  • Administrer un système Tango de A à Z
  • Gérer les droits d'accès aux équipements des utilisateurs

Tango propose également plusieurs bibliothèques graphiques (C++, Java ou Python) facilitant l'écriture de la partie interface utilisateur d'applications de contrôle de haut niveau. Un système complet d'archivage des données en provenance des équipements est aussi disponible.

Contexte d'utilisation dans mon laboratoire/service

Tango est utilisé à l'ESRF pour le contrôle des accélérateurs mais également pour le contrôle des lignes de lumières et des expériences.

Limitations, difficultés, fonctionnalités importantes non couvertes

Tango est un logiciel comportant de nombreux aspects. Sa prise en main peut demander un certain temps (plusieurs semaines) d'acclimatation avant de bien en saisir les subtilités.

Environnement du logiciel
Distributions dans lesquelles ce logiciel est intégré
  • Pour Windows, une distribution binaire est disponible sur le site WEB.
  • Une distribution source ("configure", "make", "make install") est également disponible sur le site WEB
  • Des paquets officiels Debian pour une partie du logiciel Tango sont disponibles pour la distribution "Debian". Ces paquets sont également disponible dans les dépôts officiels Ubuntu.
Plates-formes

Linux / Windows.

Autres logiciels aux fonctionnalités équivalentes

EPICS, surtout utilisé dans les synchrotrons anglais et aux USA. ACS qui est utilisé pour le téléscope ALMA, comme tango, il est GPL et repose sur CORBA. PVSS qui est utilisé pour contrôler le LHC; contrairement aux autres, il n'est par contre ni libre ni gratuit.

Environnement de développement
Type de structure associée au développement

Projet SourceForge multi développeurs et multi-instituts. Par exemple, le kernel et les outils graphiques de base sont développés à l'ESRF mais le système d'archivage est developpé à Soleil (institut synchrotron de la banlieue parisienne) tandis que l'interface python et la couche graphique python sont développées par le synchrotron Espagnol Alba.

Eléments de pérennité
  • En développement depuis 2000
  • Une communauté maintenant forte de 8 instituts répartis en Europe (Allemagne, Espagne, Italie, Suède, Pologne et France)
Références d'utilisateurs institutionnels

Tango est utilisé dans les instituts suivants :

Environnement utilisateur
Liste de diffusion ou de discussion, support et forums

Une liste de diffusion et un site WEB sont dédiés au logiciel Tango et à son utilisation.

Documentation utilisateur

La documentation (en anglais) est disponible sur le site WEB du projet.

On peut aussi citer le "webinaire" RI3 de mars 2012 sur Tango (en français ... majoritairement) présentation

Commentaires