Control Software at ESRF beamlines

Download Report

Transcript Control Software at ESRF beamlines

Continuous / Fast
Acquisitions
Motivation for a framework
Vicente Rey Bakaikoa
BLISS Day Out / 15 Jan. 2007
Continuous Acquisitions

Beamlines:
25

Total number of setups:
35 to 40
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
BL
Macro
Data
Moving Sync
Comment
ID1
zap
Vct6+hook
Vpap
Vct6
Diffract.
ID2
specific
Frelon (cont)
Vpap
No
Saxs/waxs
old dld
Gas Filled d.
ID3
Tfg
Vct6+hook
Galil
Opiom?
hkl scans
Opiom
Reflectom.
BM5
zap
Vct6+hook
Vpap
ID8
specific
Vct6+hook –os9
Vpap
ID9
oscil
Mar165 / Vct6
Vpap
ID10 (A)
zap
Musst+MCA
Vct6
Vpap
specific
Princeton+Vct6
ID13
specific
Mar / Musst
Micos
Musst
oscil
ID14 (1,2,4)
collect
Adsc-Mar /
Galil
Musst
oscil
Peaksear.
Vct6
Oscil
Ccd
Musst
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
BL
Macro
Data
Moving
Sync
Comment
ID15
specific
Dalsa / Sarnoff..
Micos
Opiom
tomo
ID17
specific
Frelon / Ge.
Vpap
Opiom
tomo
specific
Frelon / Ge.
Vpap
Opiom
bronco
Vct6
ID18
See ID22
ID20
zap
Vct6
Vpap
ID21
zap
Vct6+Xia
Vpap/Vscan Opiom
zap
McaAIM+Vct6
Vpap/Vscan Opiom,
McaAIM
zap
Musst MCA,
Vct6, Xia
Vpap/Vsca Opiom
n.+Gap
ID22
zap
McaAIM, Vct6, Xia
Vpap/Vscan Opiom,
.
McaAIM
ID22NI
specific
Frelon
fasttomo
motor
zap
Frelon,Xia,Musst
New motor
(newport?)
Opiom
(soon)
Rocking c.
Mapping
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
BL
Macro
Data
Moving
Sync
Comment
ID23
collect
Adsc or Mar /
Musst
Galil
Musst
oscil
specific
Musst (Rontec)
Micos
Musst
Escan
specific
Frelon / Ge.
Vpap
Opiom
bronco
turboscan
Vct6
Vpap
zap
Vct6+Musst
Vpap
Vct6
specific
Vdl
Pm304+Gap
Vdl+Ga
p
zap
Vct6+Xia
Pm304+Gap
Opiom
ID27
oscil
Musst
Vpap
Musst
oscil
ID29
collect
Musst+adsc
Galil
Musst
oscil
specific
Musst(Rontec)
Micos
Musst
Escan
hookscan
Vct6 (P201 too
slow)
Flexmotion
Vct6
10000
p/sec
ID24
(now)
ID26
(now)
ID31
Xanes
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
BL
Macro
Data
Moving
Sync
Comment
BM1
zap
P201 / dxp2x Xia
?
?
(soon)
BM16
collect
Musst
?
Musst
oscil
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Changing conditions

Motors



Programming
Reading of encoder input
Trigger for start



Motor types:




Constant speed
Start movement
Existing: Vpap+Smpap, Vscanner, Pm304, FlexMotion, Galil,
Micos, ID19 Fasttomo
Coming soon: Icepap, Aerotech, SpaceFab, Newport
Special conditions: breathing, chopper
Time only
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Data sources

Sliced by sync:






Vct6 + hook
P201 + hook
Musst (counter, encoder, Mca)
Xia/XMAP
Frelon ( espia familly: Dalsa, Sarnoff, soon Medipix)
Dalsa (Coreco)

McaAIM: Master only

Other: Mar, Adsc (integration during oscil)
Gas Filled Detector

V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Synchronization

Slicing:





Opiom
Vct6, P201, MUSST
Trigger signal from detector
McaAIM
Start / Stop
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Sequencer

Coordinate programming and
configuration of all actors

Reads buffers during acquisition

Online data visualization

Reconstructation of data, save...
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Existing sequencers

Zap

Oscillation familly of macros



Set detector to integrate
Sync. Motor, shutter and acquire data during
acquisition
Beamline specific macros
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Zapscans

Generalization of continuous acquisition

Handles configuration of data readers, motors

Provides modes, plot, data reconstruction…

Different scan types: zapline, zapimage…
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
How to get your zap working
With just 6 clicks and 35 cts !!
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
How to get your zap working








Dial 2531 on your phone (4 clicks)
Pronounce the password: “café?”
Walk to the cafeteria with “He”
Enter 35cts in the coffee machine
Click item selected by “He” (5th click)
Now put your warmest clothes and get out of the
cafeteria
Click on the lighter to light his cigarette (6th click)
Ask for you zap
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Automatic zap configuration

If you followed the previous method
correctly “He” will:

Copy /users/blissadm/local/spec/macros/id21zap.mac
from xrmd

Rename it in idxxzap.mac

Adapt the idxxzapsetup macro to your beamline

Remove the 2554 zap pseudo counters macros you don’t
care from this file

Touch a lot of cables
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
def idxxzapsetup '{
# zap framework setup
zapconfig 3
The idxxzap.mac file
# zap interruption generator
zapintgenconfig "OPIOM"
# zap hook configuration
zaphookconfig "VCT6" "LINUX" "idxx/hook/10" "idxx/Vct6_00/2“
# define hook counter
zapcntadd("arr_sdd2", "idxx/vct6_01/6","VCT6", "0“,"substract", 1)
zapcntadd("arr_mono", "cc133_0","CC133", "0x00 9","encoder",1)
# define pseudo counter
zappseudoadd("arr_srcur", "idxx_zap_pseudo_srcur_read", "COUNTER", 0) # machine
current
zappseudoadd("arr_energy", "idxx_zap_pseudo_energy_read", "MOTOR", 0) # energy in KeV
# ZAP motors (if constant speed needed)
zapcstspeed 1
zapmotconfig "OPIOM“
zapmotadd(dety, "MAXE", 0, 15000)
zapmotadd(sampz, "VSCANNER", 4, 100000)
# constant speed
# motor multiplexer
# VPAP+SMPAP
# piexo + VSCANNER
# zap plotting
ZAP_PLOT["plot1D"] = 1
}’
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
def idxxzapsetup '{
# zap framework setup
zapconfig
The idxxzap.mac file
(more likely)
# zap interruption generator
zapintgenconfig “VCT6" “idxx/Vct6_00/1”
# zap hook configuration
zaphookconfig "VCT6" "LINUX" "idxx/hook/10" "idxx/Vct6_00/2“
# define hook counter
zapcntadd("arr_sdd2", "idxx/vct6_01/6","VCT6", "0“,"substract", 1)
zapcntadd("arr_mono", "cc133_0","CC133", "0x00 9","encoder",1)
# No constant speed
zapcstspeed
# zap plotting
ZAP_PLOT["plot1D"] = 1
}’
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
Then just run:
zapline mne start stop time npoints
V.Rey Bakaikoa
BLISS Day Out – 15 Jan 2007
And now with you…