Presentation is loading. Please wait.

Presentation is loading. Please wait.

Diamond Light Source Data Acquisition System Paul Gibbons.

Similar presentations


Presentation on theme: "Diamond Light Source Data Acquisition System Paul Gibbons."— Presentation transcript:

1 paul.gibbons@diamond.ac.uk Diamond Light Source Data Acquisition System Paul Gibbons

2 paul.gibbons@diamond.ac.uk What has this got to do with EPICS? Surely just another channel access client!

3 paul.gibbons@diamond.ac.uk How do we use the beam line to get an electron density map of a protein?

4 paul.gibbons@diamond.ac.uk A complete experiment requires: User Login Sample Identification Initial data collection to characterise sample. Data collection Data processing Store all artefacts in database for remote access Repeat automatically for many samples.

5 paul.gibbons@diamond.ac.uk At Diamond we delegate the tasks EPICS – Provide software abstraction of hardware GDA – Provide GUI, Experiment Logic, Access to external databases/file systems

6 paul.gibbons@diamond.ac.uk XPS Motor Controller Delta-Tau Motor Controller'Soft' motor EPICS -Motor Record GDA - Scannable EpicsMotorAbstractMotorDetectorJython object

7 paul.gibbons@diamond.ac.uk EPICS GDA Client GDA Server Photonic CCD I18 Beamline Components Jython Scripts Image Pro XsPress2 Multilayer Ion Chambers Vortex MCA Detectors

8 paul.gibbons@diamond.ac.uk Sample Control

9 paul.gibbons@diamond.ac.uk Experiment control

10 Data Acquisition Features GUI closely integrates the detector suite: Rapid2D Hotwaxs Hotsaxs TFG2 That is important for: short time experiments targeted user community

11 Data Analysis Features plugin system for external Java software user assisted q calibration upcoming: more analysis features –data visualisation –live view of incoming detector data

12 paul.gibbons@diamond.ac.uk Jython Interpreter allows users to easily write very powerful experiment scripts.

13 paul.gibbons@diamond.ac.uk Scan - PseudoDevice Get value Set value scan value

14 paul.gibbons@diamond.ac.uk Scanning & reading data

15 paul.gibbons@diamond.ac.uk I16 Hardware / Experiments Six circle diffractometer Five point and two Pilatus detectors. Goodies: –Incident polarisation selection –Reflected polarisation analyser –Sample coolers and magnets Wide range of diffraction experiments –Command line control only –Scan command… –Temporary scripts… –Pilatus GUI…

16 paul.gibbons@diamond.ac.uk Illustrative Scans Versatile system of 1) Interchangeable Scannables: slits, phi, energy, hkl, ct, pil 2) Scan command Examples: –Scan to keep still –One-night-only scannable > scan energy 5.95 6.05.0005 hkl [1 0 1] pol 90 ct 1 > voltage = 1.54 > scan energy 5.95 6.05.0005 flipper [voltage 20 2]

17 paul.gibbons@diamond.ac.uk Illustrative Experiment Script posHkl = [0,0,2] pos hkl posHkl for posPhi in frange(-90, 90, 1): pos phi phiPos if posPhi%45==0: scancn theta.02 40 t 2 checkbeam pos eta FindScanPeak('APD')['eta'])‏ scancn chi.02 40 t 2 checkbeam pos chi FindScanPeak('APD')['chi'])‏ posHkl = hkl()‏ pos hkl hklPos pos pp111 [en() -.075] scancn eta.02 40 ct 2 en pp111 pos pp111 [en() +.075] scancn eta.02 40 ct 2 en pp111 1) Find a reflection’s exact hkl position 2) Move phi in loop: b) occasionally recentre on reflection i) centre eta on reflection ii) centre chi on reflection iii) store hkl position c) move to hkl position d) loop polarisation i) scan eta & read ct AlgorithmScript (night24sept08a.py)‏

18 paul.gibbons@diamond.ac.uk Pilatus 2M > pos pil 10> scan phi 0 1.1 pil 10

19 paul.gibbons@diamond.ac.uk Combining Jython with EPICS objects Easy to use High level language Combine EPICS devices together to make full experiment with speed of execution of EPICS. Hardware interface is robust to user error

20 paul.gibbons@diamond.ac.uk Epics Interface

21 paul.gibbons@diamond.ac.uk Controls Group provides an IOC device description in XML – Automatic Object Creation

22 paul.gibbons@diamond.ac.uk EPICS devices available to scripts and GUI without needing to know PV names. The GDA EpicsDevice and its methods are accessible over CORBA along with all other Java objects in GDA.

23 paul.gibbons@diamond.ac.uk Access any field, e.g. DESC Access value in various format, e.g. DBR_CTRL

24 paul.gibbons@diamond.ac.uk So What Next Support more complex EPICS devices e.g. motor controller trajectory scan object. Role Based Access Remote Access Eclipse RCP

25 paul.gibbons@diamond.ac.uk The Eclipse framework is a mechanism for hosting various software written by different organisations to work together to create a single application. Allows more structured development on GDA as plugins. Breaks large monolithic structure into separately developed components. Professional looking product – context sensitive help, auto-completion. Make use of plugins written by others e.g. IDL visualisation plugins.

26 paul.gibbons@diamond.ac.uk Main Panels now Eclipse Views

27 paul.gibbons@diamond.ac.uk PyDev plugin used to provide script editor and console with context sensitive help.

28 paul.gibbons@diamond.ac.uk Eclipse cheat sheets guide user interactively.

29 paul.gibbons@diamond.ac.uk Putting it all together as a complete experiment application.


Download ppt "Diamond Light Source Data Acquisition System Paul Gibbons."

Similar presentations


Ads by Google