1 / 16

INTEGRATION OF EPICS AND MDSplus G. Manduchi , A. Luchetta, C. Taliercio, R. Capobianco

INTEGRATION OF EPICS AND MDSplus G. Manduchi , A. Luchetta, C. Taliercio, R. Capobianco Consorzio RFX – Euratom-ENEA Association. Outline Introduction MDSplus Overview EPICS and MDSplus Integration MDSplus Channel Archiver MDSplus Channel Access Server mdsput Record mdsaction Record

mdorr
Télécharger la présentation

INTEGRATION OF EPICS AND MDSplus G. Manduchi , A. Luchetta, C. Taliercio, R. Capobianco

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 INTEGRATION OF EPICS AND MDSplus G. Manduchi, A. Luchetta, C. Taliercio, R. Capobianco Consorzio RFX – Euratom-ENEA Association • Outline • Introduction • MDSplus Overview • EPICS and MDSplus Integration • MDSplus Channel Archiver • MDSplus Channel Access Server • mdsput Record • mdsaction Record • mdsevent Record • Conclusions

  2. MDSplus (1 of 2) • MDSplus is a data system widely used in the fusion community • Provides tools and libraries for the management of a rich variety of data. • Used in several fusion experiments for data acquisition • Used in fusion as a common format to exhcange experimental data EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010

  3. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 MDSPlus Main Components (2 of 2) • Data Management • It is the basic layer: handles a wide variety of data types in a uniform way • Every data item is an Expression. Expression may be as simple as scalars, or complex combination of data items • It follows a “python-like” data approach • Database support • Both configuration and experimental results stored in pulse files. • Pulse files are hierarchically organized • Seamless data access for both local and remote pulse files • Distributed pulse files are supported • Support for data acquisition • Actions and devices are concepts which allow integrating new hardware in the systems and supervising the data acquisition process.

  4. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 MDSplus and EPICS Integration (1 of 2) • MDSplus and EPICS have a limited overlap • EPICS addresses control and supervision • MDSplus addresses Data Acquisition and Data Management • When properly integrated EPICS and MDSplus may offer a pervasive system for the full management of fusion devices • Required integration for: • Data Flow • EPICS uses data for control and supervision • MDSplus is the data manager and handles both configuration and experimental results • Not all data are of interest to EPICS (actually a small fraction) • Co-ordination

  5. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 MDSplus Pulse File CAS Channel Archiver (CAC) Ch. Access mdsip(TCP) PV mdsput mdsevent (UDP) EPICS IOC MDSplus wave STORE INIT mdsaction ADC MDSplus-EPICS Integration Overview (2 of 2)

  6. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 MDSplus Channel Archiver (1 of 3) • Mainly intended to store trend data into MDSplus pulse files • Trend data, e.g. from PLC, are traditionally managed in IOC for monitoring and alarm handling • Traditionally, the EPICS Channel Archiver has been used to store trend data in indexed files • No more supported, new archiver at SNS uses a Relational Database for storage • A new implementation of Channel Archiver provides storage of trend data in MDSplus pulse files • Written in Java, using the pure java JCA Channel Access Client library and the Java interface of MDSplus • Instead of XML configuration files, it relies on the hierarchical structure of the pulse file • Conversion tools for XML are available (from the old Archiver XML to the MDSPlus XML pulse file description)

  7. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 MDSPlus channel archiver (2 of 3) • The MDSPlus Channel Archiver can sustain a much larger data throughput • Tests carried out at RFX pointed out the limits in the old archiver (lost samples and CPU load) • With the new Archiver, data loss (0.05% of the total samples) starts at a rate of 300 kUpdate/s. • In the original EPICS Archiver data loss begins at a rate of 20 kUpdates/s • More Archivers can access the same MDSplus pulse files and data can be read in parallel • MDSplus is a rugged data system since it has been used for almost 20 years in fusion devices for handling online and offline data acquisition

  8. MDSPlus Channel Archiver (3 of 3) • Remote data access was provided by the original EPICS Channel Archiver • Based on XML RPC • Limited support for programmatic data access (management of XML RPC protocol) • When stored on MDSplus pulse files, data are natively available worldwide • Use the mdsip protocol, optimized for communication speed • Available in a variety of languages (Fortran, C, C++, Java, Python, IDL, Matlab) • jScope provides interactive visualization of stored waveforms. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010

  9. MDSPlus Channel Access Server • MDSplus pulse files are normally used to contain both configuration and experimental results • Parameters are read from pulse files • Acquired data are written in the same database • In order to let IOC access configuration parameters, a Channel Access server will export the contents of the pulse file EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010

  10. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 mdsput Record (1 of 2) • mdsput record provides storage of incoming data into MDSplus pulse files • It represents an alternative data path in respect to Channel Access • Channel Access exports PV values • Mdsput stores data either locally or remotely using the mdsip protocol • Local data access may be required for large data throughput, such as camera acquisition • MDSplus supports distributed pulse files • It allows storing a single sample or multiple samples when processed • Samples are stored one by one when coming from slow devices • ADC operating at higher sampling speed will interrupt the system when their FIFO is half full, and in this case a set of samples is read in a single operation

  11. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 mdsput Record (2 of 2) • The time associated with single samples can be either the EPICS time or the relative time from the start of the experiment • For block of samples, time has to be derived in a different way • Two record fields, TRIG and PRD are used for the trigger time and the period, respectively. • Based on this information it is possible to associate a timestamp to each sample in the pulse file • Every sample can be a scalar value, an 1D array or a 2D array • Scalar values may be used for storing a single data channel • 1D arrays may be used for multichannel ADCs • 2D arrays may be used to store data coming from frame grabbers

  12. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 mdsaction record (1 of 2) • MDSplus defines an “Action” data type which describes an operation to be performed during the experiment sequence. • Often actions refer to device methods. • In MDSplus a device is represented by a set of data items, actually stored in a sub-tree, containing all the required information to specify an hardware device; • Methods are associated with devices: typically an INIT and STORE method • Device Methods can be implemented in C or python and extend MDSplus functionality to support specific hardware • A large set of supported devices is available in the MDSplus Web Site

  13. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 mdsaction record (2 of 2) • The mdsaction record triggers the execution of an MDSplus action • mdsaction record resembles the SUB record • Basically both execute a routine (e.g. a device method for MDSplus) • However mdsaction record allows to define remote actions, i.e. actions which have to be executed on different machines • This would allow a given IOC to supervise operations on different (possibly embedded) non-EPICS computers

  14. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 mdsevent Record • MDSplus events are used for asynchronous communication • The latest MDSplus event implementation uses UDP multicast and can be used in real-time • The mdsevent record represents the bridge between MDSplus events and EPICS IOCs • As MDSplus events can also bring data, mdsevent record will also optionally produce data • They are actually implemented as a new Device for the Waveform record • This record represents therefore a possible source of external data for the EPICS IOC

  15. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 Conclusions • The proposed set of tools and Records aims at providing a closer integration of EPICS and MDSplus • Some work has already been done at NSTX and KSTAR, but none pushed integration so far • Possible future developments could address the integration of the Java Tools of MDSplus in CSS • The final target is a pervasive system covering all the requirements for a large fusion device.

  16. EPICS Collaboration Meeting, Aix-en-Provence, Spring 2010 INTEGRATION OF EPICS AND MDSplus G. Manduchi, A. Luchetta, C. Taliercio, R. Capobianco Consorzio RFX – Euratom-ENEA Association QUESTIONS?

More Related