Upload
sherman-damian-ferguson
View
217
Download
0
Embed Size (px)
DESCRIPTION
O AK R IDGE N ATIONAL L ABORATORY U. S. D EPARTMENT OF E NERGY 3 Control System Studio Based on Eclipse Modern GUI framework: Window behavior, menus, preference pages, online help, … Portable Java code (Win32, Linux, Mac OS) Plugin mechanisms Deployment options Control System Studio adds… Data types for Front-End Computer (FEC), Process Variable (PV), Live and archived data samples APIs for accessing control system Guidelines for integration into menu, online help, preferences, … See Software Technology talk: Jan Hatje (DESY), "Control System Studio"
Citation preview
Applications
Kay KasemirORNL/SNS
Using Information and pictures from
Matthias Clausen, Jan Hatje, and Helge Rickens (DESY)
October 2007
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
2
Purpose
Overcome limitations of current control system GUI tools. Inconsistent Look and Feel
Menus, configuration panels, online help Data exchange = copy/paste of PV name
Using different mouse/keyboard gestures Mostly X11/Motif
Dwindling support Limited to EPICS
Many sites now need multi-protocol support
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
3
Control System Studio
Based on Eclipse Modern GUI framework:
Window behavior, menus, preference pages, online help, … Portable Java code (Win32, Linux, Mac OS) Plugin mechanisms Deployment options
Control System Studio adds… Data types for Front-End Computer (FEC),
Process Variable (PV), Live and archived data samples APIs for accessing control system Guidelines for integration into menu, online help, preferences, …
See Software Technology talk: Jan Hatje (DESY), "Control System Studio"
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
4
Simple 'Probe' Example Same Basic function
Enter PV name, see values.
CSS Version Portable, uses native
GTK/OS-X/MS Windows widgets Localized Window resizes Drop-down list of recently
entered PV names
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
5
CSS/Eclipse Preferences
CSS apps use the Eclipse preference system No environment
variables, nor special setup files for each application
GUI Pre-installed defaults,
various levels
Not just for apps! Also for libs like EPICS
Channel Access support
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
6
CSS/Eclipse Online Help
Eclipse offers online help system
CSS apps encouraged to contribute under one of the CSS categories
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
7
CSS/Eclipse Version Info
Previous apps: Inconsistent version info.
In Eclipse, everything packaged as "plugin" with version info.
Common GUI for viewing installed versions.
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
8
EPICS 'PV Tree'
CSS Application plugin for Eclipse that displays EPICS record data flow Inputs of 'calc' record etc. Descending recursively
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
9
CSS Contributions to Eclipse Context Menus Open context menu
on PV, FEC, …, and get list of other CSS apps that handle PVs, FECs, … Example: Open Probe
on a channel name in the PV Tree.
Implementation: Eclipse "Object Contributions" No compilation, no
configuration when adding new application
Can filter on number of selected PVs etc.
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
10
DESY Namespace Browser,Alarm Tree
CSS Application plugins for Eclipse that browse DESY LDAP server
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
11
DESY Message Log Viewer
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
12
DESY Alarm System, Namespaces,…
DESY Alarm System development would fill another talk.
Different sites may have very different namespace environments, and thus need to implement different tools. Remember TCL/TK?
Based on CSS, these are automatically integrated with other tools Same look & feel, preferences, online help TCL/TK script could start StripTool, but:
Try to teach StripTool about your script!
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
13
Data Browser
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
14
Data Browser Features
Combined "StripTool" and "Archive Viewer" Eclipse Extension points for data sources
Live: EPICS Archived: Channel Archiver, DESY AAPI, Archive Record Data merged from multiple sources for same PV
Usability Drop data onto…
Plot: new axis. Axis: add PV to that axis
Change axis assignments, colors, ranges with fewer clicks than in existing EPICS StripTool or Archive Viewer
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
15
CSS Samples
Markers indicate source Live Sample? Channel Archiver? Archive Record?
Samples have 'quality' Original sample Interpolated Sample Ideally, data server
automatically switches from interpolated to original when zoomed in "far enough"
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
16
Multiple Data Browser Instances
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
17
Synoptic Display EDM/MEDM-type display tool for multiple
protocols In early stages of usability, promising
ideas Everything
is dynamic "Text Update"
widget= Label with dynamic text
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
18
Synoptic Display Example
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
19
Integration & Deployment Options Sites can package and deploy CSS components
(and other Eclipse plugins) to suit their needs Provide either …
empty CSS core, then download the desired application plugins
or prepackage desired components for your site as one application.
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
20
CSS Startup Choices Startup with login/password for your XMPP server .. or workspace selector
.. or other site-specific authentication
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
21
Customizable Welcome Screen
Different sites can customize depending on local needs.
OAK RIDGE NATIONAL LABORATORYU. S. DEPARTMENT OF ENERGY
22
Conclusion
Eclipse offers a modern, portableapplication framework
CSS adds control-system specific APIs and guidelines
There are already several useful general-purpose CSS applications
You can add site-specific CSS applications All can be packaged as needed, everything is
integrated; common look, behavior, data exchange, …