Tango in a Nutshell - PowerPoint PPT Presentation

About This Presentation
Title:

Tango in a Nutshell

Description:

WEB protocol for the java application toolkit (ATK) ... (objects) on the network hiding how they are connected to a computer (serial line, USB, sockets, ... – PowerPoint PPT presentation

Number of Views:125
Avg rating:3.0/5.0
Slides: 18
Provided by: mcss151
Category:

less

Transcript and Presenter's Notes

Title: Tango in a Nutshell


1
Tango in a Nutshell
2
Tango in a Nutshell
  • What is Tango?
  • Who dances the Tango?
  • How to dance the Tango?

3
What is Tango?
  • A toolbox to implement control systems using
    CORBA as the transport layer
  • A specialization of CORBA adapted to Control
  • Hides the complexity of Corba to the programmer
  • Adds specific control system features

4
CORBA
  • Common Object Request Broker Architecture
  • CORBA defines the ORB a way to call an object
    method wherever the object is
  • In the same process
  • In another process
  • In a process running somewhere on the network
  • CORBA also defines services available for all
    objects (naming, notification, event)

5
CORBA
  • CORBA allows mixing languages
  • a client is not necessarily written in the same
    language as the server
  • CORBA uses an Interface Definition Language (IDL)
  • CORBA defines bindings between IDL and the
    computing languages (C, Java, Python, Ada, .)

6
Tango and CORBA
  • Tango encapsulates the CORBA communication
    protocol
  • Allows the use of other communiction protocols
  • Tango uses a narrow CORBA interface
  • All objects on the network have the same
    interface
  • Allows the use of generic applications
  • Avoids recompilation when new objects are added

7
What is Tango?
  • A software bus for distributed objects

Java, C,Python
Linux, Windows, Solaris
Archiving Service
TANGO ATK Java
Qtango C
Scan Service
TANGO Software Bus
Dev
Dev
Dev
Dev
Dev
Dev
Dev
OPC
Linux, Windows, Solaris
Labview RT
8
What is Tango?
  • Provides an unified interface to devices
    (objects) on the network
  • hiding how they are connected to a computer
    (serial line, USB, sockets, )
  • Hides the network
  • Location transparency
  • Genericity
  • APIs for C, Python and Java
  • For the server and the client side

9
What is Tango?
  • More than only a software bus
  • Database for persistancy
  • Code generator to implement networked devices
  • Central services (Archive, snapshots, logging,
    alarms, scans, security, )
  • Application Toolkits (Java, C and Python)
  • Comercial bindings (Labview, Matlab, IgorPro)
  • Control system administration (Starter, Astor)
  • Hundrets of available classes
  • Web interfaces (PHP, Java)

10
Who dances the Tango?
2007
2002
2004
2000
ALBA
2005
11
Who dances the Tango?
  • Tango_at_Elettra
  • Used for accelerator control
  • Development of
  • The Python interface (Release 2.x)
  • An alarm service
  • Canone A WEB interface using PHP
  • E-Giga A WEB interface above the Tango archiving
    service
  • QTango C application toolkit using Qt

12
Who dances the Tango?
  • Tango _at_ Soleil
  • Used for accelerator and experiment control
  • Development of
  • Logging service
  • Archiving service (Tango HDB) using ORACLE or
    MySQL
  • Snapshot service also using ORACLE or MySQL
  • Comercial bindings (Labview, Matlab, )
  • WEB protocol for the java application toolkit
    (ATK)

13
Who dances the Tango?
  • Tango _at_ Alba
  • Used for accelerator and experiment control
  • Development of
  • Python device servers (PyTango release 3.x)
  • Sardana Control software for experiments
  • Python application toolkit using Qt
  • Tango_at_DESY
  • Used for experiment control at the new PETRAIII
    synchrotron

14
Who dances the Tango?
  • Tango _at_ ESRF
  • Used for accelerator and experiment control
  • Development of
  • The Tango core libraries (C and Java)
  • Pogo Code generator
  • Jive Configuration tool
  • Astor / Starter administration service
  • Java application toolkit

15
How to dance the Tango?
  • Lets dance together
  • Two collaboration meetings per year
  • A mailing list (tango_at_esrf.fr)
  • One Tango coordinator per site
  • WEB site to download code, get documentation,
    search the mailing list history, read
    collaboration meeting minutes,
  • http//www.tango-controls.org
  • Collaborative development using SourceForge

16
How to dance the Tango?
  • You can download Tango from
  • http//www.tango-controls.org/download
  • As a source package for UNIX like OS
  • As a Windows binary distribution
  • For Unix (and co), do not forget to first
    download, compile and install
  • omniORB
  • omniNotify
  • For Windows all libraries and binaries for
    omniORB and omniNotify are included in the
    distribution.

17
How to dance the Tango?
  • A list of all Tango classes is available with
    their documentation under
  • http//www.tango-controls.org/device-servers
  • Common interest class sources are stored on a CVS
    server hosted by SourceForge
  • Project name tango-ds
  • http//sourceforge.net/projects/tango-ds/
  • Local class sources are stored in a local CVS
    repository at each institute
Write a Comment
User Comments (0)
About PowerShow.com