TANGO
Encyclopedia
The TAco Next Generation Objects (TANGO) control system is a free open source object-oriented control system for controlling accelerators, experiments and any kind of hardware or software being actively developed by a consortium of (mainly) synchrotron
Synchrotron
A synchrotron is a particular type of cyclic particle accelerator in which the magnetic field and the electric field are carefully synchronised with the travelling particle beam. The proton synchrotron was originally conceived by Sir Marcus Oliphant...

 radiation institutes.

TANGO is a distributed control system. It runs on a single machine as well as hundreds of machine. TANGO uses the omniorb implementation of CORBA
Çorba
Chorba , ciorbă , shurpa , shorpo , or sorpa is one of various kinds of soup or stew found in national cuisines across Middle East...

 as its network protocol. The client-server model is the basic communication model. Communication between clients and servers can be synchronous, asynchronous or event driven.

TANGO is based on the concepts of object oriented and service oriented. The object model in TANGO supports methods, attributes and properties. In TANGO all objects are representations of devices.

Device Servers

TANGO is primarily used to provide network access to hardware. Hardware can range from single bits of digital input/output up to sophisticated detector systems or entire plant control systems. Hardware access is programmed in a process called a Device Server. The device server implements device classes which implement the hardware access. At runtime the device server creates devices which represent logical instances of hardware. Clients "import" the devices and send requests to the devices using the TANGO protocol.

List of common device servers here

Bindings

TANGO supports bindings to the following languages :
  • C
  • C++
    C++
    C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

  • Java
  • Python
    Python (programming language)
    Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

  • MATLAB
    MATLAB
    MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

  • LabVIEW
    LabVIEW
    LabVIEW is a system design platform and development environment for a visual programming language from National Instruments. LabVIEW provides engineers and scientists with the tools needed to create and deploy measurement and control systems.The graphical language is named "G"...


Licencing

TANGO is distributed under 2 licenses. The libraries are licensed under the GNU Lesser General Public License
GNU Lesser General Public License
The GNU Lesser General Public License or LGPL is a free software license published by the Free Software Foundation . It was designed as a compromise between the strong-copyleft GNU General Public License or GPL and permissive licenses such as the BSD licenses and the MIT License...

 (LGPL). Tools and device servers are (unless otherwise stated) under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 (GPL).

Open Source

TANGO is an open source project. Anyone can download and use TANGO. Source code is stored in two CVS repositories on SourceForge :
  1. kernel source code
  2. device server source code


Local modifications or bug fixes can be made to the source code but committing changes to the repository requires authorization.

Consortium

The consortium is a group of institutes who are actively developing TANGO. To join the consortium an institute has to sign the Memorandum of Understanding and actively commit resources to the development of TANGO. The consortium currently consists of the following institutes :
  1. ESRF - European Synchrotron Radiation Facility, Grenoble, France
  2. SOLEIL - Soleil Synchrotron, Paris, France
  3. ELETTRA - Elettra Synchrotron, Trieste, Italy
  4. ALBA - Alba Synchrotron, Barcelona, Spain
  5. DESY - Petra III Synchrotron, Hamburg, Germany


The aim of the consortium is to guarantee the development of TANGO.

See also

  • EPICS
    EPICS
    The Experimental Physics and Industrial Control System is a software environment used to develop and implement distributed control systems to operate devices such as particle accelerators, telescopes and other large experiments. EPICS also provides SCADA capabilities...

     -- Experimental Physics and Industrial Control System
  • ESRF -- European Synchrotron Radiation Facility
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK