Synoptic - Fermilabbeamdocs.fnal.gov/AD/DocDB/0040/004090/001/synoptic... · 2012-03-14 ·...

Post on 11-Jul-2020

2 views 0 download

Transcript of Synoptic - Fermilabbeamdocs.fnal.gov/AD/DocDB/0040/004090/001/synoptic... · 2012-03-14 ·...

SynopticAndrey Petrov

Accelerator Controls’ Seminar Series

March 2, 2012

1Wednesday, March 14, 2012

Synoptic is fully operational since Summer 2010.

tnow

NMLHINSHTS

NOνAfar

detector

CMTFMuCool

CHL

507 displays; 47 recently modified.

2Wednesday, March 14, 2012

3Wednesday, March 14, 2012

Synoptic = drag-and-dropGraphical User Interface (GUI) builder

and runtime environment.

4Wednesday, March 14, 2012

The “old” GUI environment (ACNET Console) is inadequate

5Wednesday, March 14, 2012

The “new” GUI environment (Java et al.) is too complex

6Wednesday, March 14, 2012

Synoptic = environment forapplications created by users.

Not specific to any particularsystem or experiment.

The LCD approach:set of functions that suits the majority

of users and works everywhere.

7Wednesday, March 14, 2012

Family Relations

LexSA ➔ Synoptic (FNAL)

EDM (Epics)

JDDD (DESY)

LabVIEW (National Instruments)

8Wednesday, March 14, 2012

Why Synoptic?

• Part of the Controls’ infrastructure (a service, not just an application).

• Accessibility.

• Live Web displays.

• Integration with other tools.

9Wednesday, March 14, 2012

10Wednesday, March 14, 2012

Web Display Address

http://www-bd.fnal.gov/synoptic/display/Demo/Meteo

base URL display name

.gif

.png

.svg— static images

(DEV=g:outtmp,BG=gold) — parameters

11Wednesday, March 14, 2012

controlsystem

webserver

webbrowser

displayrepository

displayrenderer

JavaScript

HTTP

12Wednesday, March 14, 2012

Web Display Support

WindowsMacLinux

FirefoxChrome

SafariOpera

Internet Explorer

13Wednesday, March 14, 2012

On iPhone & iPad

Works in the default browser app.

14Wednesday, March 14, 2012

Does not work in the default browser app.,works in Firefox or Opera.

On Android

15Wednesday, March 14, 2012

16Wednesday, March 14, 2012

17Wednesday, March 14, 2012

controlsystem

webserver

webbrowser

displayrepository

displayrenderer

JavaScript

HTTP

18Wednesday, March 14, 2012

controlsystem

webserver

viewerapplication

displayrepository

displayrenderer

HTTP

AMQP

19Wednesday, March 14, 2012

Web Display Viewer Application

Available from anywhere Available on-site only

Read-only Reading and setting

Anonymous access Requires Kerberos ticket

No incoming connections ➔ no firewall issuesNo incoming connections ➔ no firewall issues

Runs in a web browser Requires Java 6

20Wednesday, March 14, 2012

Viewer App Address

http://www-bd.fnal.gov/appix/start?p=60000393&a=/Demo/Meteo

base URL display name

http://www-bd.fnal.gov/appix/start?p=60000393&a=-v

21Wednesday, March 14, 2012

Starting Synoptic off Acnet Console

D99, F48, N24, N25, N26, N4822Wednesday, March 14, 2012

23Wednesday, March 14, 2012

24Wednesday, March 14, 2012

Component Types

1. Active components.

• Visible: gauges, plots, state indicators.

• Invisible: data sources & converters.

2. Links between active components.

3. Passive components: static images.

4. Embedded displays.

25Wednesday, March 14, 2012

Anatomy of a Gaugedesign-time run-time

outputinput

26Wednesday, March 14, 2012

/Demo/Gauges

27Wednesday, March 14, 2012

/Demo/StateIndicators

28Wednesday, March 14, 2012

/Demo/StateIndicators

29Wednesday, March 14, 2012

Meaning of Boolean States

False

= 0

OffNormalOpen

True

≠ 0

OnAlarmClosed

30Wednesday, March 14, 2012

/Demo/Simulation(time plot)

31Wednesday, March 14, 2012

/Demo/ArrayGauges(array plot, contour gauge, text array display)

32Wednesday, March 14, 2012

/Demo/PositionPlot

33Wednesday, March 14, 2012

Data Sourcesdesign-time run-time

invisiblereading

setting

Good for readingand setting of

primitive data types (numbers, strings, boolean)

34Wednesday, March 14, 2012

Data Sources

Convert structured data into primitive data types.

35Wednesday, March 14, 2012

• Array Splitter.

• Bitmask.

• Comparator.

• Delay Line.

• Discriminator.

• Expression.

• Integrator.

• Multiplexer.

• Splitter.

• Subtractor.

Converters

36Wednesday, March 14, 2012

Connecting Components

To start a link, click or “c”.

37Wednesday, March 14, 2012

Who Produced Data?

• Data Tag is generated by data sources and converters and distributed through links along with data.

• Can be used in formatted text output produced by some gauges.

• For simple data sources, the data tag is set to the device name by default.

38Wednesday, March 14, 2012

Data Tags

Tag1

Tag2

39Wednesday, March 14, 2012

Static Images

40Wednesday, March 14, 2012

Data Request Format 2.0http://www-bd.fnal.gov/controls/public/drf2

41Wednesday, March 14, 2012

DRF2 Attributes

1. Device (required).

2. Property.

3. Range.

4. Field.

5. Event.

42Wednesday, March 14, 2012

Device Property Range Field Event

I:BEAM

Z:TEST.ANALOG_ALARM

Z:TSTDEV.SETTING[7:14]

L:H156Q.RAW

M:OUTTMP@E,8F

M:ZEUS1.READING[0].SCALED@Q,10H,TRUE

F:FOOBAR.DIGITAL.ALARM_STATUS

Z_CACHE[3]

43Wednesday, March 14, 2012

44Wednesday, March 14, 2012

45Wednesday, March 14, 2012

Anatomy of a Controldesign-time run-time

adjustmentinput

output

• Adjustment input is for setting thecomponent’s initial visual state.

• Adjustment values are not sentto the output.

46Wednesday, March 14, 2012

/Demo/Controls

SettingEnabled

47Wednesday, March 14, 2012

48Wednesday, March 14, 2012

Parametrized Displays

49Wednesday, March 14, 2012

Parameters are passed to the display during startup, e.g.:

/Demo/Meteo(DEV=g:outtmp,BG=gold)

Each parameter replaces one or more component properties.

50Wednesday, March 14, 2012

Two Methods

1. Declaring global properties:One or more properties are mapped to a name available externally.

2. Text substitution:Part of a text property value is substituted with a string provided externally.

51Wednesday, March 14, 2012

52Wednesday, March 14, 2012

/Demo/Embedded

53Wednesday, March 14, 2012

Saving Displays

54Wednesday, March 14, 2012

controlsystem

webserver

viewerapplication

displayrepository

HTTP

CVS

PServer

55Wednesday, March 14, 2012

To Use CVS...

• Request Java CVS account.

• Follow procedures from Users’ Guide.

56Wednesday, March 14, 2012

57Wednesday, March 14, 2012

Suggestions on new features and discussions of use cases are always

welcome!

58Wednesday, March 14, 2012

Synoptic isn’t good for...

• One-shot data acquisition.

• Components that require complex configuration.

• Changing DAQ attributes on the fly.

• User input other than device settings.

59Wednesday, March 14, 2012

Portability

• Open-source version is publicly available (BSD license).

• You’ll have to set up the entire infrastructure.

• Using multiple control systems in one installation won’t work.

60Wednesday, March 14, 2012

Synoptic Instance #1:

Fermilab site. Main control system.

Synoptic Instance #2 (in progress):

Ash River site. Acnet-in-a-Rack.

61Wednesday, March 14, 2012

Upcoming Features

• Built-in parameter lookup table.

• ACL scripts.

• 3D plots.

• Mobile version, HTML5 support.

62Wednesday, March 14, 2012

Synoptic • 2001-

Tim Bolshakov, Andrey Petrov, Brian DeGraff

Thanks to: Charlie Briegel, Kevin Cahill, Denise Finstrom, Gary Ganster, Elvin Harms, Brian Hendricks, Arkadiy Klebaner, Sharon Lackey, Bill Marsh, Alex Martinez,

Dave McGinnis, Dennis Nicklaus, Jim Patrick.

http://synoptic.fnal.gov

synoptic-support@fnal.gov

63Wednesday, March 14, 2012