Control System Studio- CSS -Overview
Kay Kasemir, Ph.D.
ORNL/SNSkasemirk@ornl.gov

July 2011 at
Managed by UT-Battelle
for the Department of Energy

What is CSS?
a) To End Users:– Integrated control systemuser interfaceb) To Developers:– A Collaboration– An Architecture– A Toolkit

http://www.wendolene.co.uk/Pictures/Happy.jpg
http://www.citytowninfo.com/images/education-articles/how-to-become-a-software-engineer-2.jpg

2 Managed by UT-Battelle
for the Department of Energy

Original EPICS Operator Interface
 primarily for Linux/X11 Many disjoint tools– Static layout– Inconsistent Look– Online help?
– Data exchange: at best copy/paste PV names

3 Managed by UT-Battelle
for the Department of Energy

Example Work Flow: React to AlarmCSS includes an alarm system.

Operator notices an alarm…

4 Managed by UT-Battelle
for the Department of Energy

Example Work Flow: React to Alarm..

Context menu of alarm…
(“right click”)
5 Managed by UT-Battelle
for the Department of Energy

Example Work Flow: React to Alarm…

Inspect history of PV, annotate, …
6 Managed by UT-Battelle
for the Department of Energy

Finally: Data Browser  E-Log
After inspecting alarmPV‟s history,
post commented plot
to E-Log!

7 Managed by UT-Battelle
for the Department of Energy

A Collaboration
 Started 2006 between DESY and SNS– Joined by CLS, APS, BNL,
KEK/J-PARC?

, Diamond, …,

 https://.net/apps/trac/cs-studio/wiki– Code repository, Wiki, Mailing lists

 Growing presence at EPICS meetings– Benefits from Eclipse community:
Participants from ~30 countries
8 Managed by UT-Battelle
for the Department of Energy

A Control System Architecture– Portable environment (Windows, Linux, OS X)– Excellent (free!) development tools– Extensible bundling: Plug-Ins, Extension points,Registry– Rich Client Platform (RCP) for windows, menus,
online help, preferences, online update, …

9 Managed by UT-Battelle
for the Department of Energy

CSS: A Software Toolkit
 It‟s BIG– Repository: ~ 1.500.000 lines of Java Code

 Structured– 70 „core‟ plugins, about 300 total– About 40% of code is comments and formatting You pick what you need
– SNS uses ~300.000 (20%)
Perl cloc tool on July 2011 cs-studio3.0 repo and SNS source snapshot, excluding zip files
10 Managed by UT-Battelle
for the Department of Energy

CSS Plugin Examples
 Library Plug-Ins– Control system data types (PV, Sample, …), Life data access,Historic Data Access, Logbook , E-Mail, Authentication,Authorization, …
– Extension Points
 Life data: Channel Access, Simulated, Local PVs
 Historic Data: XML-RPC, RDB, …
 Authentication: Kerberos, LDAP, …

 Application Plug-Ins– Strip-Chart: Data Browser– OPI: SDS, BOY– Alarms: NAMS, BEAST– Archive: DESY Archive, BEAUTY– Utilities: Probe, Clock, PV Tree, Psychiatrist

List of plugins: http://cs-studio.sourceforge.net/plugins.html
11 Managed by UT-Battelle
for the Department of Energy

Basic CSS Tools
Probe– Current value of a PV

EPICS PV Tree
– Trace PV links

Both: Resize Drop-downs
keep previousentries
12 Managed by UT-Battelle
for the Department of Energy

Localization

CSS Translations– All: (US) English– Most: German– Few: French, Chinese

Could be 日本!

13 Managed by UT-Battelle
for the Department of Energy

Data Browser
Plot „live‟ and historic data over time

14 Managed by UT-Battelle
for the Department of Energy

Data Browser
Archive search, Plot Configuration

15 Managed by UT-Battelle
for the Department of Energy

Alarm System (BEAST)
Tabular or Tree view, voice annunciations, …

Select byName,Description
Sort by Time,Severity, …

16 Managed by UT-Battelle
for the Department of Energy

Acknowledge

Flexible Layout
 Panels can be closed,
reopened, repositioned
 Multiple Perspectives– Name, Save, Restore Multiple document
instances share same
configuration panels

17 Managed by UT-Battelle
for the Department of Energy

CSS PV Exchange PV in any CSS Tool
 Context Menu  Select other PV Tools– Opens other tool with that PV

18 Managed by UT-Battelle
for the Department of Energy

PV Fields Viewer

Detailed configuration info for a PV
@SNS: Info in Oracle, live data from EPICS

19 Managed by UT-Battelle
for the Department of Energy

PV Fields Viewer: Site-Specific?
Fine, but how would I
benefit from an SNSspecific tool?

It‟s “Pluggable”!
PV Fields API

You can provide the glue
code to your EPICS
config in RDB, LDAP,
text files

20 Managed by UT-Battelle
for the Department of Energy“get info for PV Name”

SNSImplementation

YourImplementation

Get info from Oracle

Get info from …

Integrated Help, Preferences Uniform access to settings,
searchable help
– Applications– Support Libraries
 Logging Control System access

21 Managed by UT-Battelle
for the Department of Energy

BOY – Best OPI, Yet
Operator Interface Editor

Similar to EDM, MEDM, SDS, DM2K, but possibly better
22 Managed by UT-Battelle
for the Department of Energy

RuntimeOPI Editor

23 Managed by UT-Battelle
for the Department of Energy

Simple Things are Easy
1. Drag a widget, e.g. Knob, from palette to editor
2. Enter the PV name in Properties view
3. Click the “Run” button to execute!

What you will get PV value as text and via knob position
 PV severity reflected in border color

PV name and value shown in tool-tip
PV‟s display limits set the knob‟s default range
Indicate „disconnected‟ state via a pink border
Widget will be greyed-out if read-only

24 Managed by UT-Battellefor the Department of Energy

Editing Features
Add Widgets– Drag & Drop from Palette– Copy/paste, Ctrl+Drag existing widgets to duplicate– Snap to grid, guideline, other widgets– Align, distribute

Select multiple widgets to– Edit common properties– Adjust size or move around
25 Managed by UT-Battelle
for the Department of Energy

Screen Navigation
 Idea: Minimize number of open screens.
 Similar to Web Browser links:– Default: Related displays replace the current display.
– Optional open in „tabs‟ or new window– Allow previous/next navigation over display history

26 Managed by UT-Battelle
for the Department of Energy

Displays in „Tabs‟

Send PV name to other CSS tools
Use common CSS Process Variable context menu tosend PV name to other CSS tools

27 Managed by UT-Battelle
for the Department of Energy

Rules, Scripts
Rules create dynamic displays– Easy: PV → Widget Property

Scripts can to “anything”– Read PVs,change widget properties,
open dialog, …

– JavaScript or Python (Jython)

28 Managed by UT-Battelle
for the Department of Energy

SNS Examples

29 Managed by UT-Battelle
for the Department of Energy

SNS Examples
 Top-level displays createdby operators

Tim Southern, Nick Luciano
30 Managed by UT-Battelle
for the Department of Energy

SNS “Steering” Tool

Try to get spot
into the green,at least intoorange

Tim Southern, Nick Luciano
31 Managed by UT-Battelle
for the Department of Energy

Two Views of CSS
Developer– Understands Toolkit,Architecture, Java, Eclipse– Installs CSS in control room
– Offers CSS download for local office users– Extends CSS for local needs

End User– Uses CSS
http://www.citytowninfo.com/images/education-articles/how-to-become-a-software-engineer-2.jpg

http://www.wendolene.co.uk/Pictures/Happy.jpg

32 Managed by UT-Battelle
for the Department of Energy

Hardest Part: Starting Site-Specific Setup

1. Decide whichparts of SNSyou need
2. Web site:
Initial download

33 Managed by UT-Battelle
for the Department of Energy

… Site-Specific Setup
1. Select..
2. Web site

3. Product:Tools andsettings
for your users
at your site

34 Managed by UT-Battelle
for the Department of Energy

… Site-Specific Setup
1. Select
2. Web site

3. Product for yoursite
4. Automatedupdates

35 Managed by UT-Battelle
for the Department of Energy

Need Site-Specific Setup
Developer:
Select,…
automated updates

End User: Happy
Steep Learning Curve forDevelopers– … but also many Books, online
Tutorials– Invest to learn it, and you‟ll like it

36 Managed by UT-Battelle
for the Department of Energy

So What is CSS?
Various control-system
tools combined
intoa consistent product

Excellent
forend-users!

37 Managed by UT-Battelle
for the Department of Energy

Based onhttp://buzzynews.com/wp-content/uploads/2008/01/steve-jobs-presentele-mac-book-air-lordinateur-portable-le-plus-fin-du-monde.jpg

Links CSS– http://cs-studio.sourceforge.net/– http://sourceforge.net/apps/trac/cs-studio Eclipse– http://www.eclipse.org/

 Similar projects, Beam Line Data Acquisition
GDA: Diamond Light Source, UK
http://www.opengda.org/
GumTree: ANSTO, Australia
http://docs.codehaus.org/display/GUMTREE/Home38 Managed by UT-Battellefor the Department of Energy