18
28/03/2003 1 Réunion Contrôle Expérience Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

Embed Size (px)

Citation preview

Page 1: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 1Réunion Contrôle Expérience

Experiments Controls Vision, ideas, tasks to begin with

Alain ButeauAndy Götz

Page 2: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 2Réunion Contrôle Expérience

Vision

Functional description of the problem:

A guiding “Use Cases document” Division of the problem in

“independent” subproblems Develop the so called “Experiment

development framework”

Experiment Control System

Control Equipements

Configuration of Control System

Logging services

Spectrum Management

Visualize Data

Supervision Tools

Parameter "Acquisition Logics"

Sequence and control of "Acquisition logic" execution

Historical DataBase Archiving

Snapshots archiving

Controls System Services

Archiving services

Acquisition logic Services

"Results Management...

Electronics

Acquisition systems

Motion Controller

Sample environment

Experimentalist

Beamline scientist

Page 3: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 3Réunion Contrôle Expérience

Logging

Bus Logiciel TANGO

SupervisionConfigurationSéquencementAcquisition

AcquisitionLogic

Services

Control of equipements

How to we present the architecture to our future customers

Device

ADC

Signal

Acquisition

Device

ADC

Signal

Acquisition

Capteur

Device

Capteur

DeviceDevice

Control systems services

Archiving

Archiving services

Fits …

Scientific data Management

/Analysis

Database File storage

Spectra creation

Page 4: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 4Réunion Contrôle Expérience

Control of equipements

SOLEIL’s philosophy: Control of equipements Must always be done with TANGO devices Because all upper layers services are based

on the TANGO software bus Coupling of devices must also be done within

TANGO devices : Example of Monochromator, Slits,etc

Task : Define standard interfacesIt must be possible to develop Tango

Devices with a scripting langage Task : Python DeviceServers

Page 5: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 5Réunion Contrôle Expérience

Control systems services

Page 6: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 6Réunion Contrôle Expérience

Control system services

Configuration : Jive is a good candidate even if a « jive for

dummies » would be appreciated Ideas :

• Importation in jive of predefined configuration files for « common hardware » with predefined parameters

• Implement the jive functionnalities described in last year Jens’ specs (« DataViews »,etc ..)

Tasks : • Nothing really urgent for

experiments !!• Enhance the tool for the Machine may

be enough for now• Add support for SKINS (different

views of database)

Page 7: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 7Réunion Contrôle Expérience

Control system services

Logging : Gathers, displays,

filters messages from DeviceServer and output of « acquisition logic » scripts

Tasks : Develop logging

mechanisms in bindings (python for instance) as messages are also emitted by this upper layer

Page 8: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 8Réunion Contrôle Expérience

Supervision: control individually each equipement on the beamline

Ideas 1 generic

application as DeviceTree

Some specific applications like Synoptics and/or specific panels for ergonomy

Tasks Work on this

topic for Machine !!

Page 9: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 9Réunion Contrôle Expérience

Archiving services

Page 10: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 10Réunion Contrôle Expérience

Archiving services

Historical DataBase May be useful for beamline engineers Not use to manage experimental data !! Tasks

• Make it work with good extraction tools for the Machine • Use free DATABASE (MySQL?) as scientists are probably

not ready to pay for a service they ignore the existence Snapshots

Service of major importance on beamlines Tasks

• Make it work with good extraction tools for the Machine • Use free DATABASE

Page 11: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 11Réunion Contrôle Expérience

Acquisition logicor

Batch files

Page 12: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 12Réunion Contrôle Expérience

Acquisition logics

Idea : 1 acquisition logic = 1 batch = 1 script Scripts may be written in Users Environments like MATLAB or IGOR if :

• Scientists maintain this part of the software• Acquition logic on the beamline are not well defined and are subject to

frequent changes Python is a good scripting choice for Controls Systems provided as « turn key »

systems by the Controls group Tasks :

Define in TANGO the notion of « attribute alias » :Phi px1/sample_environment/galilbox1/galilaxis1

• So that it is possible at each step of scan to – Change a writeable attribute (like the SPEC notion of motor) – Read a readable attribute (like the SPEC notion of counter)

Write generic scripts from the SPEC list of macros : • Ascan, a2scan ,

Write hkl scripts at least for diffractometers

Page 13: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 13Réunion Contrôle Expérience

Acquisition logics: Execution systems

Ideas : Parameter each recipe for a « particular execution »

• This « acquisition logic/batch » is a scan on motor phi with 5° steps and with sample « AlCuO »

Executes sequences of recipes, linked by transitions Tasks

Begin with NICOS as a python sequencer to provide a command line end user interface

Find a good existing product to make a first GUI command line interface (from SCADA and/or GPL)

Time of Flight Acquisition

Scan on motor phi: 10 steps of scan

Motor scan

TOF Counting

Simple Counting

Page 14: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 14Réunion Contrôle Expérience

Scientific Data management

Page 15: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 15Réunion Contrôle Expérience

Spectrum creation

Definition : At predefined steps in an acquisition logic, scientists want to :

Create a file called spectrum/image containing :• Either raw data from electronics or data pre-treated by

the script • The context of the experiment :

– Name of sample, of scientist– Position of all encoders, pressure, temperature,etc

Controls people want to have a file creation mechanism independent of

• The hardware existing on the experiment • The physical format of the output file

A possible solution : Use a self describing data format with an API to access Data inside the file

• NeXus is a good candidate Display experiment status on the web

Page 16: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 16Réunion Contrôle Expérience

Spectrum creation

Tasks : Write a DeviceServer whose task is :

• to create the Spectrum/Image envelop creation • to deal with underlying NeXus file format• Gather all the context of the experiment

The FRM II TACO NexusDataCollector is a good starting point

Enhance NeXus format to use XML as the underlying physical format instead of HDF

• (to avoid binary format for small files)

Page 17: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 17Réunion Contrôle Expérience

DataVisualisation

Problem definition : transfer the data from the batch and/or hardware to the end user favorite

plotting tool from the end user favorite plotting tool to the running

recipe to continue the data collection

Ideas : Write batch files in generic data visualisation terms (to avoid

plotting tools religion wars): • Ex: plot(my_vector) or Image (my_matrix)

Use TANGO as the software bus to transfer Data between these 2 worlds ?

• Pros : benefit from existing bindings• Cons : need to define a DataManager TANGO interface

Tasks : Develop NeXus spectrum/image reader for MATLAB, IGOR

Page 18: Réunion Contrôle Expérience 28/03/2003 1 Experiments Controls Vision, ideas, tasks to begin with … Alain Buteau Andy Götz

28/03/2003 18Réunion Contrôle Expérience

Conclusion

Future Work on the integration of these various software in a coherent

whole Now :

Put all source code on SourceForge SOLEIL tasks list :

Batch sequencer Scanning scripts Hkl scripts DataBase topics NeXus ??

ESRF tasks list : Beamline server to serve experiment context Attributes as objects Define standard interfaces Web interface Test on ID14