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
63Wednesday, March 14, 2012