first experiences with “jddd” for petra vacuum...

21
PcaPAC2008, E.Sombrowski XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser First experiences with “jddd” First experiences with “jddd” for PETRA vacuum controls for PETRA vacuum controls jddd: An Editor for control system panels jddd: An Editor for control system panels for DOOCS & TINE & TANGO for DOOCS & TINE & TANGO and a Runtime Engine and a Runtime Engine Elke Sombrowski Elke Sombrowski DESY, Hamburg DESY, Hamburg

Upload: others

Post on 18-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

First experiences with “jddd” First experiences with “jddd” for PETRA vacuum controlsfor PETRA vacuum controls

jddd: An Editor for control system panelsjddd: An Editor for control system panels

for DOOCS & TINE & TANGOfor DOOCS & TINE & TANGO

and a Runtime Engineand a Runtime Engine

Elke SombrowskiElke SombrowskiDESY, HamburgDESY, Hamburg

Page 2: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

2

Content

Motivation for jddd development

The jddd editor:

Components / widgets

Functionality

New jddd features:

The subversion browser

The plugin interface

Petra vacuum controls

Experience & Outlook

Page 3: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

3

Motivation

We don't want do design all panels in the controls group (Flash: ~ 1300 control panels)

Non-programmers / subsystem experts should develop graphical control panels

Synaptical displays editor: simple creation of control panels with a set of standard components: text, buttons, graphical components…

Replace old ddd (DOOCS data display, C++)

→ jddd (Java DOOCS data display)

Page 4: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

4

jddd

jddd implementation:

Use JAVA for platform independence

Standard JAVA technology (Swing, Java Beans)

Save panels in xml file format

We decided to write a completely new editor because:

Independence of external libraries

Highest flexibility

Demands on the editor:

Stability, extendability, ergonomic and intuitive machine interface

Import old ddd files

Page 5: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

5

jddd Editor

Editor Window

ComponentInspector

ComponentPalette

ComponentProperties

Page 6: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

6

33 jddd components

Pane Components:

• LayeredPane

• TabbedPane

• IncludeComponent

• DynamicList

• Alive

Static Components:

• Label

• Line

• Oval

• Rectangle

• Triangle

• Icon

Dynamic Components:

• Button

• ToggleButton

• Value

• Dial

• TextField

• ComboBox

• CheckBox

• ProgressBar

• Slider

• StatusRegister

• Audio

• ColouredIndicator

• LocationChooser

• CameraImage

• TextArea

• DeviceTree New Components

Logic Components:

• If

• Switch

Plot Component:

• PlotSpectrum

• PlotHist

• PlotLocation

• PlotXY

Page 7: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

7

jddd components

Dynamic List

in edit mode: in run mode:

Page 8: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

8

jddd components

Buttons with different functions:

Set one or multiple control system values

Open new window, replace window, override window

Execute shell command

Print panel

Help (opens a predefined web page in a browser)

Set component property (to set one or multiple property values)

Page 9: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

9

jddd components

Buttons with Set Component Property function:

Page 10: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

10

jddd components

Plot Components (Time domain, History, Location, XY plots)with mathematical functions for online data analysis

Page 11: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

11

jddd new features

jddd new features:Subversion file browser

Plugin interface

Page 12: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

12

jddd subversion browser

SubversionFile Browser:

• Central place for data storage

• Keep file history

• New developmentusing theSvnkit libraryhttp://svnkit.com

Page 13: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

13

jddd plugin interface

Plugin Interface:

A plugin.jar is needed containing wrapper classes for all Java beans.

• ATKPlugin (Tango)• ACOPPlugin (Tine)

Page 14: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

14

jddd new features

Jddd sample panels from

PETRA vacuum controls

Page 15: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

15

PETRA vacuum controls

Page 16: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

16

PETRA vacuum controls

Page 17: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

17

PETRA vacuum controls

LocationChooser: changes the base address of the whole panel

Pump Station Panel (imported from ddd)

Page 18: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

18

PETRA vacuum controls

Page 19: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

19

Experience & Outlook

Experience with jddd:

The jddd editor can be used for designing highly complex control panels.

The subversion browser keeps the control panels history and enables many users to work on the same panels.

The plugin interface allows other institutes to use jddd with their own Java beans.

Page 20: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

20

Experience & Outlook

Outlook on future jddd development:

API improvements:

Implementation of asynchronous DOOCS calls

Read history data from the data acquisition system (DAQ)

Improved interface to TANGO and new interface to EPICS control systems

New middle layer server for:

Caching the subversion file system

Keeping a list of file dependencies

Providing runtime statistics

Updating panels in running applications

Page 21: First experiences with “jddd” for PETRA vacuum controlsepaper.kek.jp/pc08/talks/tuz04_talk.pdf · PcaPAC2008, E.Sombrowski The European XFEL X-Ray Laser Project X-Ray Free-Electron

PcaPAC2008, E.Sombrowski

XFELThe EuropeanX-Ray Laser Project X-Ray Free-Electron Laser

21

How to start jddd

Java Webstart links on http://jddd.desy.de

Thank you for your attention !