1 / 19

Tango collaboration status

Tango collaboration status. ICALEPCS 2005 Geneva (October 2005). Contents. Introduction What is Tango ? What is new since ICALEPCS 2003 ? Day to day life within the Tango collaboration. Introduction. Control system user needs always increase

liuz
Télécharger la présentation

Tango collaboration status

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tango collaboration status ICALEPCS 2005 Geneva (October 2005)

  2. Contents • Introduction • What is Tango ? • What is new since ICALEPCS 2003 ? • Day to day life within the Tango collaboration

  3. Introduction • Control system user needs always increase • Writing a full featured control system is a huge task • How can one institute develop a control system? • With limited man power and budget • In a reasonable time frame • The answer is • Create or join a collaboration

  4. Introduction • Tango is an example of such a collaboration of 4 institutes • ALBA • New Spanish synchrotron in Barcelona (TU4B.1-10) • ELETTRA • Italian synchrotron in Trieste (MO3.3-10) • ESRF • European synchrotron in Grenoble (France) • SOLEIL • New French synchrotron in Paris (TH4.1-10)

  5. What is Tango ? • It is a distributed object oriented control system • It uses CORBA for network communication • omniORB in C++ and JacORB in Java • It supports two languages (C++ and Java) and 3 OS (Linux, Solaris and Windows) • It is an LGPL licensed software available from ESRF web site as • Source distribution (For UNIX like OS) • Windows binaries package

  6. What is Tango ? • Every controlled equipment is a device belonging to a class and supporting commands (action) and attributes (data) • Tango classes are merged within process called “device server” • Each device server process has a polling mechanism with data cache to speed-up response time in case of a slow device.

  7. What is Tango ? • Tango has an API supporting three kinds of communication between client and server • Synchronously • Asynchronously • Using event

  8. What is Tango ? • It comes with a set of graphical tools to : • Generate code (Pogo) • Viewing, filtering Tango device log messages (LogViewer) • Administrating a complete control system (Astor) • Viewing/Updating its database and low level device testing (Jive)

  9. What is Tango ? • Tango has a Java GUI called ATK (FR2.1-60) • It supports bindings to commonly used commercial products • Matlab, LabView and Igor • Another binding allows client code to be written using Python language

  10. Developments since 2003 • Tango kernel (ESRF / SOLEIL / ELETTRA) • Events system • Group interface • Better way to code Tango device class • New data types for Tango device attribute • Tango archiving service (SOLEIL) based on MySQL or ORACLE

  11. Developments since 2003 • Major updates of : • The Java graphical toolkit (ATK) to support events and to add new graphical viewers (ESRF) • The Python binding to support events and new features of Tango V5 (ELETTRA) • The LabView and Matlab bindings (SOLEIL) • But also improvements of all the Tango tools (Pogo, Jive, Astor….)

  12. Developments since 2003 • Many, many new Tango classes to interface hardware (All institutes) • Instrumentation Technology Libera beam position monitor, OPC link, Fire Wire camera, LabView data socket interface, EPICS link, ADLink boards interface, GPIB interface and GPIB device, miscellaneous power supply, vacuum equipment interface…..

  13. Projects started since 2003 • A WEB access to Tango device and to the Tango history database (ELETTRA) • A C++ Graphical User Interface based on Qt (ELETTRA) • A Tango alarm system (ELETTRA) • A talk this afternoon (WE3B.1-70) • Tango device class (and server) using Python language (ALBA)

  14. Tango collaboration • Tango development started before 2000 at ESRF • In 2002, SOLEIL joined the ESRF to develop Tango • In January 2004, machine control team of ELETTRA decided to use and develop Tango • In December 2004, ALBA also joins us

  15. Tango collaboration • Two or three Tango collaboration meetings organized per year • To take design decisions • To follow-up action plan • Hosted by each institute in a round-robin manner • One Tango coordinator in each institute • A mailing list dedicated to Tango problems, question and sharing (tango@esrf.fr)

  16. Tango collaboration • Developing software within the collaboration • A complete sub-system is assigned to one institute (Archiving service developed by SOLEIL) • Sub-system developed by one institute is taken charge by another one (Python binding from SOLEIL to ELETTRA) • Sub-system development shared by two institutes at the same time (some kernel feature added by ESRF/ELETTRA) • Need CVS server

  17. Tango collaboration • Sharing software and information • Two projects have been created on SourceForge to share sources using their CVS servers • Tango-cs dedicated to Tango kernel source • Tango-ds dedicated to Tango classes source • As soon as a new Tango class is registered in CVS repositories, a mail is sent on the mailing list • More than 200 Tango classes are now publicly available from collaborating institutes WEB pages

  18. Tango collaboration • What we share • Tango kernel • Tango classes (for similar hardware) • Bindings • Tango tools • What we don’t completely share • Graphical User Interface • ESRF uses pure ATK (Java), SOLEIL uses a scada system above ATK (GlobalScreen), Elettra uses Qt-based C++ graphical user interface. ALBA has not chosen yet

  19. Conclusion • Thanks to the collaboration, Tango is now a mature control system • Most of the basic features for modern control system are now implemented • 200 Tango classes available • Even if collaboration is sometimes heavy (fixing meeting dates….), it is the only way to have this level of features and a large classes catalog within reasonable delay and limited man power

More Related