march 2005jm chaize pcapac20051 tango a control system framework for accelerator and beamlines...

30
March 2005 JM Chaize PCaPac2005 1 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel Chaize On behalf of TANGO teams ESRF, SOLEIL,ELETTRA, ALBA

Upload: sheila-bartron

Post on 29-Mar-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 1

TANGO

A control system framework for accelerator and beamlines

• Design principles• Basic concepts• Status and projects

Jean-Michel ChaizeOn behalf of TANGO teams ESRF, SOLEIL,ELETTRA, ALBA

Page 2: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 2

TANGO design principles

Da Vinci

• Innovation – services e.g. web services, administration,

monitoring…– automation e.g. Sequencing, scanning…

Budda

• We Change – RPC -> CORBA– OS9 -> Windows and Linux– C,TCL -> C++, Java, Python

Darwin

• We keep (Natural Selection)– distributed objects– Network– Unix

Control system running since 1991

Improvement became difficult

=> We decided to refurbish

Control system running since 1991

Improvement became difficult

=> We decided to refurbish

Page 3: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 3

DataAnalysis

Config Archiver

What is TANGO?

TANGO Software Bus

Generic Services

Hardware

Device

Scanserver

Sequencer

User environmentMatlab,Labview Igor, Python

Device

Hardware

Device

Hardware

Device

Hardware

Device

Hardware

Catalog of device servers

development tools

InterfaceGenerator

API Library

logging

JavaApplication Tool-Kit

Page 4: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 4

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

CORBACommon Object Request Broker Architecture

• BUT…– Not trivial to use…– Does not address specific needs of control.

Page 5: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 5

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

CORBA

TANGO

Control System

Page 6: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 6

TANGO software Bus

Device class

Interface

HW (motor…)

The device is a remote object

Standard interface for hardware equipment or service

The fundamental brick of TANGO is the Device

network

Page 7: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 7

Example: motor interface:

MOTOR:Commands: On(), Off(), …

Attributes: Speed, Position

State: On, Off, Alarm, Fault

Round robin buffer, polling thread, event triggering…

Interface

Hardware control code

Automaticcode generator

To be writtenBy the programer

TANGO devices

Page 8: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 8

Pogo code generator

C++ or Java

Attributes propertiesFor genericity

Page 9: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 9

TANGO devices

• 1 Device can also interface complex systems– Bridge to other protocols

TANGO Software Bus

DeviceLINAC

other Control system

e.g. TACORPC

Interface

Page 10: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 10

TANGO devices

• 1 Device can also interface complex systems– Bridge to other protocols

TANGO Software Bus

DeviceID Channel Access

Interface

Build a TANGO object from a set of channels

Page 11: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 11

TANGO devices

• 1 Device can also interface complex systems– Bridge to other protocols

TANGO Software Bus

DeviceAir Conditioning

Infrastructure

server

OPC

Interface

Build TANGO device from a set of OPC TAGs

Page 12: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 12

TANGO devices

• 1 Device can also interface complex systems– Bridge to other protocols

TANGO Software Bus

DeviceI/O Modbus TCP/IP

Interface

Embeddedsystem

Page 13: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 13

TANGO devices

• 1 Device can also interface complex systems– Bridge to other protocols

TANGO Software Bus

DeviceI/O DataSocket

Interface

Build a TANGO device from DataSocket urls

Page 14: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 14

TANGO Communication

• Synchronous

TANGO Software Bus

server

Client

Sendrequest Wait Get Answer

Do the job

~0.2 ms

Page 15: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 15

TANGO Communication

• Asynchronous

TANGO Software Bus

server

Client

Sendrequest Do other

jobGet Answer When needed

Do the job

Page 16: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 16

TANGO Communication

• Event Driven

TANGO Software Bus

server

Client

Subscribeonce

Do otherjob

Do its job Signal event When occurs(state change)

Callback

State change eventOn change eventPeriodic eventArchive event….Corba

Notificationservice

Page 17: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 17

TANGO software Bus

Standardise interfaces of equipment of the same types

Interface

Implem

Concrete

Abstractmotor

Implem

Concrete

Implem

Concrete

Implem

Concrete

Different types of motors

Interface

Implem

Concrete

Abstractpowersupply

Implem

Concrete

Implem

Concrete

Implem

Concrete

Different types of powersupplies

Abstract interface classes

Page 18: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 18

Abstract interface classes

• Standardize interface to families of equipments– Powersupply, motors, function generators, bpm, orbit, correctors….

• Decouple high level clients from hardware choices• Ease code reuse and interoperability between sites

– Multiples beamlines, inter institutes exchange…

– Sharing of accelerator physics, data analysis, matlab macros etc…

• Allow using different hardware for similar functions• Allow to build a catalog of compliant device servers

– Sharing hardware solutions over multiple institutes, beamlines…

Page 19: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 19

TANGO: Many clients available

DevDev Dev Dev Dev Dev

SPEC

TANGO Software Bus

OPC

Dev

TANGOJAVA ATK(Swing)

QTScan

Service

Java, C++,PythonLinux, Windows, Solaris

Linux, Windows, Solaris Labview RT

Page 20: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

Astor: Administration tool

Page 21: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

Jive: Database browsing

Page 22: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 22

ATKpanel a generic client

Page 23: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 23

Jdraw: Generic Synoptic animation

Page 24: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 24

20042000

2005

2002

4 meetings per year

•Planning follow-up

•Decision making

TANGO Collaboration

Page 25: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 25

TANGO@esrf

Grenoble (France)

Light source 6 GeV (844m)

40 beamlines

Light for users since 1992

Control system modernization

• 150 control computers (accel)

• Linux, Windows, Solaris

• VME, PC, CompactPCI, SUN

Tango used for accelerator control modernization

150 servers running, 546 devices on 54 hosts

(RF, Fast feedback, vacuum, tune etc…)

Several beamlines use it (progressive migration)

Page 26: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 26

TANGO@soleil

Gif sur Yvette (France)

Light Source 2.75 GeV (345m)

23 beamlines

Linac control, transfer line ready,

Booster in construction

Storage ring and 11 beamlines for 2006

Light for users: 2006

PC, CompactPCI, PLCs Windows, Linux, Labview…

Tango used for accelerator and beamlines control

Lucia beamline operational at SLS (epics interface)

Servers for a collection of Cpci boards ready

Control of Linac, transfer line OK,

Global Screen SCADA, Archiving…

Matlab middle layer for prototyping…

Page 27: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 27

TANGO@elettra

Booster Injector

FERMI@ELETTRA

Tango used for accelerator control system upgrade:

•14 servers running (RF Master Oscillator Plant, Digital BPM, Fast Local Orbit Feedback…)

Tango is the control system of the new projects:

- Booster injector (construction started beg. 2005)

- Free Electron Laser (FEL) FERMI@ELETTRA

Trieste (Italy)

Light source 2-2.4 GeV (260m)

1Gev Linac, no booster

Light for users since 1993

21 beamlines, 1000 users annually

Control system modernization:

PC with Linux

VME, PowerPC, Linux+RTAI

Page 28: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 28

Barcelona (Spain)

Light source 3 GeV (268.8 m)

23 straight sections

Emittance = 4.3 nmrad

Starting construction soon

Light for the users: 2009 Tango will be used for accelerator and beamlines control

TANGO@alba

Page 29: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 29

Status

• TANGO is mature and well tested– 150 servers and 25 applications installed at ESRF– Control of the first elements of Soleil – A beamline at SLS (managed by Soleil team)– 14 servers and 7 applications running at ELETTRA

• The development continues:– On abstract classes code generation, device servers…– Redundancy– Synoptic applications, Application Tool Kit…– New beans ATKviewers– TANGO box soon available pre-installed (via Cosylab)– Training of new users…– Eclipse plugins…

Page 30: March 2005JM Chaize PCaPac20051 TANGO A control system framework for accelerator and beamlines Design principles Basic concepts Status and projects Jean-Michel

March 2005 JM Chaize PCaPac2005 30

• WWW sites for TANGO– http://www.esrf.fr/tango

• Main page

– http://www.esrf.fr/tango/tango_src• Download tango

– http://sourceforge.net/projects/tango-cs• Share source

– http://www.synchrotron-soleil.fr:8001– http://www.omg.org (All about CORBA)

Thanks to TANGO team of ESRF, SOLEIL, ELETTRA and ALBA