Presentation is loading. Please wait.

Presentation is loading. Please wait.

Overview of TANGO Control system

Similar presentations


Presentation on theme: "Overview of TANGO Control system"— Presentation transcript:

1 Overview of TANGO Control system
                                                                       Overview of TANGO Control system EUROPEAN SYNCHROTRON RADIATION FACILITY SYNCHROTRON SOLEIL SYNCHROTRON ELETTRA SYNCHROTRON ALBA June 2010 JM Chaize, ESRF/CERN control workshop

2 TANGO Software Bus distributed on a network
A software bus development tools Generic Services User environment Matlab,Labview Igor, Python Data Analysis Config Monitor Sequencing Archiving Application Tool-Kit API Library TANGO Software Bus distributed on a network Catalog of device servers Hardware Device Device Hardware Device Hardware Device Hardware Device Hardware Interface Generator June 2010 JM Chaize, ESRF/CERN control workshop

3 CORBA Common Object Request Broker Architecture
Standardize the communication between distributed objects Many advantages Vendor independent: Sponsored by many companies Language independent: Interface Definition Language Platform independent: Supports heterogeneity Object oriented: Code re-use, encapsulation … Very fast BUT… Not trivial to use… Does not address specific needs of control. June 2010 JM Chaize, ESRF/CERN control workshop

4 JM Chaize, ESRF/CERN control workshop
What is TANGO ? A CORBA framework for doing control A toolbox to implement the system A specialization of CORBA adapted to Control Hide the complexity of Corba to the programmer Control System TANGO CORBA June 2010 JM Chaize, ESRF/CERN control workshop

5 The fundamental brick of TANGO is the Device
TANGO software Bus The device is a remote object Interface Device class Tango est un bus logiciel, et on vient clipser des éléments dessus. L’élément de base s’appelle un Device Server Un DS: c’est un server logiciel qui gère un équipement HW. c’est le representant logiciel du HW Standard interface for hardware equipment or service HW (motor…) June 2010 JM Chaize, ESRF/CERN control workshop

6 Example: motor interface:
TANGO devices Example: motor interface: MOTOR: Commands: On(), Off(), … Attributes: Speed, Position State: On, Off, Alarm, Fault Interface Automatic code generator L’interface c’est la partie « visible » du device server Attributs: principalement une grandeur quantifiable Commande: non quantifiable Hardware control code To be written By the programer June 2010 JM Chaize, ESRF/CERN control workshop

7 TANGO devices 1 Device can also interface complex systems
Hierarchical structure Client Client TANGO Software Bus Macro device: e.g. Accelerator sub devices: e.g. powersupplies sub devices: e.g. ADC, modbus… June 2010 JM Chaize, ESRF/CERN control workshop

8 JM Chaize, ESRF/CERN control workshop
TANGO devices 1 Device can also interface complex systems Bridge to other protocols TANGO Software Bus Interface Device LINAC other Control system e.g. TACO RPC June 2010 JM Chaize, ESRF/CERN control workshop

9 TANGO devices 1 Device can also interface complex systems
Bridge to other protocols TANGO Software Bus Interface Device ID Build a TANGO object from a set of channels Channel Access June 2010 JM Chaize, ESRF/CERN control workshop

10 TANGO devices 1 Device can also interface complex systems
Bridge to other protocols TANGO Software Bus Interface Device Air Conditioning Build TANGO device from a set of OPC TAGs Infrastructure server OPC June 2010 JM Chaize, ESRF/CERN control workshop

11 JM Chaize, ESRF/CERN control workshop
TANGO devices 1 Device can also interface complex systems Bridge to other protocols TANGO Software Bus Interface Device I/O Embedded system Modbus TCP/IP June 2010 JM Chaize, ESRF/CERN control workshop

12 TANGO devices 1 Device can also interface complex systems
Bridge to other protocols TANGO Software Bus Interface Device I/O Build a TANGO device from DataSocket urls DataSocket June 2010 JM Chaize, ESRF/CERN control workshop

13 JM Chaize, ESRF/CERN control workshop
TANGO Communication Synchronous Client Send request Wait Get Answer TANGO Software Bus server Do the job June 2010 JM Chaize, ESRF/CERN control workshop

14 JM Chaize, ESRF/CERN control workshop
TANGO Communication Asynchronous Client Send request Do other job Get Answer When needed TANGO Software Bus server Do the job June 2010 JM Chaize, ESRF/CERN control workshop

15 JM Chaize, ESRF/CERN control workshop
TANGO Communication Event Driven Client Subscribe once Callback Do other job TANGO Software Bus Signal event When occurs (state change) Do its job server June 2010 JM Chaize, ESRF/CERN control workshop

16 Abstract interface classes
Standardise interfaces of equipment of the same types TANGO software Bus Interface Implem Concrete Abstract motor Different types of motors Interface Implem Concrete Abstract powersupply Different types of powersupplies Tango est un bus logiciel, et on vient clipser des éléments dessus. L’élément de base s’appelle un Device Server Un DS: c’est un server logiciel qui gère un équipement HW. c’est le representant logiciel du HW June 2010 JM Chaize, ESRF/CERN control workshop

17 Much more than a software bus
Code generator for C++, Java Configuration tool Administration tool Archiving service Access control service Logging service Scan service Application Toolkit for Java Application Toolkit for QT Synopsis animation tool Alarm service Web interface Python client and servers Bindings for Matlab Bindings for Labview Binding to a SCADA Bridge with EPICS Many utility classes List of abstract classes Hardware access class catalog Mailing list and Wiki Tutorials June 2010 JM Chaize, ESRF/CERN control workshop

18 Jdraw: Generic Synoptic animation
June 2010 JM Chaize, ESRF/CERN control workshop

19 Jive Database browser and Test Device Launcher

20 POGO Device Server Code Generator
C++ or Java

21 POGO Device Server Code Generator

22 ATKpanel a generic client
June 2010 JM Chaize, ESRF/CERN control workshop

23 Astor/Starter Tango Control System Manager
Get host list DB server Ethernet Host n Starter server DS Host n Starter server DS Get status Host n Starter server DS Host n Starter server DS Host n Starter server DS Host n Starter server DS Host n Starter server DS Host 1 Starter server DS Get server list

24 Embedded TANGO servers
Traditional architecture TANGO client TANGO Software Bus Device I/O Interface TCP/IP Embedded system PC HOST June 2010 JM Chaize, ESRF/CERN control workshop

25 Embedded TANGO servers
Embedded server TANGO client TANGO Software Bus Interface Embedded system June 2010 JM Chaize, ESRF/CERN control workshop

26 Embedded TANGO servers
Next steps TANGO client TANGO Software Bus TANGO server Mapped into a FPGA June 2010 JM Chaize, ESRF/CERN control workshop

27 Embedded TANGO servers
Next steps TANGO client TANGO Software Bus Gumstix SBC June 2010 JM Chaize, ESRF/CERN control workshop

28 JM Chaize, ESRF/CERN control workshop
The work continue… Improve the performance of the event system Distributed naming service ? Better manage the large number of available classes Search machine… Better packaging Generalization of abstract interfaces More generic servers Java GUI panels supplied for each abstract interface Split the documentation in several books Tutorials and examples… June 2010 JM Chaize, ESRF/CERN control workshop

29 Thank you for your attention
WWW sites for TANGO Common site June 2010 JM Chaize, ESRF/CERN control workshop


Download ppt "Overview of TANGO Control system"

Similar presentations


Ads by Google