EPICS Collaboration Meeting Argonne June 2006 EPICS Control
EPICS Collaboration Meeting Argonne June 2006 EPICS Control System Studio (CSS) SIG Workshop Summary Infrastructure and Software Development Argonne, June 15, 2006 Matthias Clausen, DESY
EPICS Collaboration Meeting Argonne June 2006 EPICS The Control System Studion SIG Workshop on Monday 12 th 9: 00 – 12: 00 About 50 -60 participants Two Sessions: • Eclipse/ CSS/ related applications • EPICS Alarm system 2 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS CSS Session: Eclipse introduction Ken Evans CSS introduction Matthias Clausen EPICS IDE Ken Evans ( presented also here) The CLS centralized process database Robby Tanner VDCT plans Emma Shepherd ( presented also here) Archive Viewer Sergei Chevtsov 3 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 Introduction to Eclipse and Eclipse RCP Kenneth Evans, Jr. Presented at the EPICS Collaboration Meeting June 13, 2006 Argonne National Laboratory, Argonne, IL EPICS
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse is an Open Source community It was started in 2001 by IBM ● IBM donated a lot of research ● Controlled the early development, but later relinquished control Out of the box it looks like a Java IDE It is really a Plug-in manager ● That happens to come with Java Development plug-ins. ● You can take these out and put your own (and/or others) in © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 5
EPICS Collaboration Meeting Argonne June 2006 EPICS Very Extensible and Very Flexible Another Tool Java Development Tools (JDT) Eclipse Platform Your Tool Plug-in Development Environment (PDE) Their Tool Eclipse Project © Kenneth Evans, Jr. • Modified From: Tony Lam, ICALEPCS Presentation, October 2004 Matthias Clausen, DESY CSS Overview, 13 -June-06 6
EPICS Collaboration Meeting Argonne June 2006 Eclipse Consortium Strategic Members * * © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 • * Strategic Consumer 7
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse as a Java IDE © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 8
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse As a Rich Client Platform Looks like an application, not an IDE Inherits a lot of functionality ● ● ● Persistence (Properties and Preferences) Help Featured About dialog (like Eclipse’s) Splash screen Dockable windows, and much more … © Kenneth Evans, Jr. • Java Application Matthias Clausen, DESY CSS Overview, 13 -June-06 • RCP Application 9
EPICS Collaboration Meeting Argonne June 2006 Probe on Steroids Leveraging the Eclipse Framework © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 EPICS 10
EPICS Collaboration Meeting Argonne June 2006 EPICS An RCP Application is Also a Plug-In © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 11
EPICS Collaboration Meeting Argonne June 2006 EPICS Useful Books Excellent, Must have © Kenneth Evans, Jr. Matthias Clausen, DESY CSS Overview, 13 -June-06 Only RCP book For the Help Plug-in 12
EPICS Collaboration Meeting Argonne June 2006 EPICS The CLS PV Database Starring Robby Tanner A Candidate for using the Eclipse RCP Framework And he Control System Studio (CSS) 13 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 Preliminary Model © Robby Tanner Matthias Clausen, DESY CSS Overview, 13 -June-06 EPICS 14
EPICS Collaboration Meeting Argonne June 2006 EPICS Functional Requirements Methods of importing and modifying existing data (a la IRMIS). Mechanism to make startup information available for IOCs. Revision control and release management procedures and interface(s). EPICS layer to adjust real-time values. Database abstraction layer All the while, ensuring settings are consistent across facility. © Robby Tanner Matthias Clausen, DESY CSS Overview, 13 -June-06 15
EPICS Collaboration Meeting Argonne June 2006 EPICS Goals Extend our IRMIS-based system Define a generic framework Solicit input to enhance portability Leverage existing progress © Robby Tanner Matthias Clausen, DESY CSS Overview, 13 -June-06 16
EPICS Collaboration Meeting Argonne June 2006 EPICS Archive Viewer (Sergei Chevtsov) Emphasizing the MVC approach Having implemented the initial version following the MVC paradigm, the conversion into an Eclipse RCP application is ‘much’ easier. The archive viewer can become one of the core CSS applications. It can also be used as a strip tool 17 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS CSS Control System Studio CSS Overview Implementation of an Application Infratructure based on the Eclipse RCP Framework 18 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS What is the Control System Studio (CSS)? It is an environment / framework which enables you to create your control system applications. (It’s not an CS-applications on its own) It shall offer a common look and feel for all applications Run on any ‘standard’ operation system It shall provide an infrastructure/ interfaces for the basic CS environment ● ● Control System Data Utility Interfaces (logging…) Management Interfaces (authorization, authentication, update, …) Common Application activation interfaces Must be ready for the next projects at DESY: ● PETRA-III (2008) ● XFEL-Cryogenics (2008/ 9) CSS Core prototype in autumn 2006 CSS Application prototypes by the end of the year 19 EPICS Office
EPICS Collaboration Meeting Argonne June 2006 EPICS The selected Environment Language: ● Java Development environment (IDE): ● Eclipse Uses the Eclipse Rich Client Platform (RCP): 20 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Collaboration/ Contracts with Companies We do not have the necessary manpower and not the necessary experience to develop such a framework all on our own. We are working together with competent partners: Utility Interfaces and overall Design: ● C 1 WPS Gmb. H, Hamburg Control System Interfaces: ● Cosylab, Ljubljana (Slovenia) 21 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse to CSS evolution from Eclipse … Eclipse IDE Plugin Eclipse Core Eclipse IDE Plugin 22 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse Core Graphical User Interface There’s no ‘core’ GUI Even basic GUI functionlity is provided by an Eclipse plugin 23 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Eclipse to CSS evolution to CSS … CSS Management CSS Plugin CSS DAL Startup Plugin CSS Core Plugin CSS Application Plugin Eclipse Core CSS Core UI Plugin CSS Help Plugin CSS Application Plugin 24 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS CSS Data Access Layer (DAL) Requirements collected by Cosylab • CA V 3 compatible • CA V 4 requirements from V 4 core group (contact: Kay) • Other control systems Common Interface for control system data A key feature for the CSS to open CSS to other communities First implementation for EPICS CA(V 3) available Functionality demonstrated the first time in a demo during the meeting. Data Access Layer Shown in Demo: Simulation EPICS V 3 EPICS V 4 other 25 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS CSS – selecting Object Aspects with MB 3 Application Window -Faceplate / Tuning Display Right mouse click (MB 3 On alarm entry Faceplate Display Alarm Display Archive Display Strip Tool Configuration Tool Probe 26 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Object Aspect Management GUI 2 (another View / Plugin) GUI 1 #d 4 #d 2 1 2 3 4 << use >> # #d 2 #d 4 1 55 2334 2 43 34 3 544 4434 4 2323 621 5 5455 53 CORE << extensions >> CSS. DATA. PROVIDER Data CSS. DATA. RECEIVER 27 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Management-Plugin Controls the behaviour of the local CSS (depending on the role of the user) ● Are manual updates allowed? ● Rights-Management Support for LDAP, SSH, JMS, … ● … Controls the Registration in the central Repository for the remote admin access. 28 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Management-Plugin (Updates) 1 << register >> << controlled by operator >> << controlled by admin >> central CSS repository 2 << send update-command >> local CSSinstance << online offline >> << update >> 3 << already registered >> << controlled by operator >> << controlled by admin >> central CSS repository 1 << trigger update >> local CSSinstance << online >> << update >> 2 Matthias Clausen, DESY CSS Overview, 13 -June-06 29
EPICS Collaboration Meeting Argonne June 2006 EPICS Management-Plugin (Rights-Management) << contribution >> Control over Preferences CORE. UI << use >> << extensions >> MANAGEMENT AUTHENT. AUTHOR. CORE LDAP JMS SSH << extensions >> Each Pluging has default settings for it‘s rights management. If the management plugin is implemented, the core plugin will ask the management-plugin o an actual set of rights. This will provide the access rights of the individual roles. Matthias Clausen, DESY CSS Overview, 13 -June-06 30
EPICS Collaboration Meeting Argonne June 2006 EPICS CSS Application Plugin Functionality • Implements Interfaces of core plugins (e. g. MB 3) • Calls methods of core utility plugins (e. g. logging) • Configure Management Preferences ● Update Policy (default: any time) ● Authorized Actions ( default: all) • Provides: ● Preference pages for configuration data ● Online Help pages ● Respect MVC paradigm => A wizard will ease creating CSS Application Plugins in the near future 31 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Open Issues • Drag and Drop Data Type (Da. DDT) Transferring data between CSS and Non-CSS applications. E. g. CSS <-> XAL • Display libraries for the Eclipse environment 32 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Outlook • Collaboration with industries (C 1 -WPS, Cosylab) is very successful. More contracts are possible. E. g. CSS-Plugin Wizard. • Planning for ‘serious’ applications is starting ● CSS-Core/ -Application workshop beginning of August at DESY ● Implementation starting by JSI students. 33 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Alarms Presentations from: The SNS Alarm System Curtis Dunn Soft IOC based Alarm Handler Pam Gurd The Alarm Opt-In/ Out Model Matthias Clausen 34 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS SNS Alarm System Status Curtis Dunn Control System Suite/Eclipse Frameworks Workshop EPICS Collaboration Meeting June 12 -16, 2006
EPICS Collaboration Meeting Argonne June 2006 EPICS Alarm Annunciator Written in Objective-C Uses the EPICS Framework for Cocoa developed by Tom Pelaia Runs 24/7 on a dedicated alarm station in the SNS Central Control Room Designed to Operations Specifications Monitors PV Status and Severity Speaks customizable alarm messages © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 36
EPICS Collaboration Meeting Argonne June 2006 EPICS Alarm Annunciator – Alarm Configuration Intended to monitor summary PV's Automatic save and load Dynamically discovers and displays hierarchies Current severity indicated by text color Allows Silencing of Alarms © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 37
EPICS Collaboration Meeting Argonne June 2006 Parallel Efforts at SNS - Soft-IOC-based EPICS Alarm Handler (Pam Gurd) Focus: Integration of alarm system with EDM control screens © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 38 38
EPICS Collaboration Meeting Argonne June 2006 EPICS Why? Wanted to be able to incorporate alarm summaries in edm screens And to call edm screens from alarm screens. © Pam Gurd Matthias Clausen, DESY CSS Overview, 13 -June-06 39
EPICS Collaboration Meeting Argonne June 2006 EPICS Where? Standard soft IOC Alarm_soft. IOC/Devel…/common. App/ contains everything needed to produce the individual apps. src contains the scripts that follow. Db contains the database templates. src. Opi holds the common alarm screens and the templates to be used to build specific alarm screens. © Pam Gurd Matthias Clausen, DESY CSS Overview, 13 -June-06 40
EPICS Collaboration Meeting Argonne June 2006 EPICS Parallel Efforts at SNS – Alarm Pushing in EPICS (A. Liyu, A. Zhukov) Current EPICS Alarm Model IOC IOC X ch anne ls Y channels Z s l e n n a ch © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 CA Alarm Client … X channels Y channels Z channels … 41
EPICS Collaboration Meeting Argonne June 2006 EPICS Parallel Efforts at SNS – Alarm Pushing in EPICS (A. Liyu, A. Zhukov) IOC X Another Alarm Model ch an ne ls Y channels Alarm server Alarm client ls e n IOC Z n a h c Log file © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 42
EPICS Collaboration Meeting Argonne June 2006 EPICS Parallel Efforts at SNS – Alarm Logging Alarm logging using the Alarm Handler (ALH) (Ernest Williams, Greg Lawson) Importing Alarm Log Files to RDB – ROCS (Ekaterina Danilova, Ernest Williams) © Curtis Dunn Matthias Clausen, DESY CSS Overview, 13 -June-06 43
EPICS Collaboration Meeting Argonne June 2006 The EPICS Alarm Message Scheme user-mode system-mode IOC monitor (selected) alh push (any) message queue cfg filter log filter actions display RDB alarm viewer 44 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS JMS Structure 45 Matthias Clausen, DESY CSS Overview, 13 -June-06
EPICS Collaboration Meeting Argonne June 2006 EPICS Alarms • Message Display ● From Archive (list – with filter (like cmlog)) ● Live display (list, hierarchical) • Display Hierarchies ● How to define hierarchies? Þ Database / Config. File? • Message Properties ● Integrating existing property lists (e. g. cmlog) 46 Matthias Clausen, DESY CSS Overview, 13 -June-06
- Slides: 46