masar server & application

13
MASAR Server & Application Guobao Shen Photon Sciences Department Brookhaven National Laboratory Collaboration Working Group Oct 02, 2013

Upload: arnie

Post on 08-Jan-2016

48 views

Category:

Documents


2 download

DESCRIPTION

MASAR Server & Application. Guobao Shen Photon Sciences Department Brookhaven National Laboratory Collaboration Working Group Oct 02, 2013. What ’ s MASAR?. MASAR Machine Snapshot, Archiving, and Retrieve An EPICS tool for experimental control system Machine - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: MASAR Server & Application

MASAR Server & Application

Guobao Shen

Photon Sciences Department

Brookhaven National Laboratory

Collaboration Working Group

Oct 02, 2013

Page 2: MASAR Server & Application

What’s MASAR?

MASAR Machine Snapshot, Archiving, and Retrieve An EPICS tool for experimental control system

Machine A facility controlled by EPICS, accelerator for example

Snapshot Data at specific time point

Value, time stamp, connection status, alarm status, alarm severity

Similar tools, but different purpose IOC automatic save & restore

IOC bumpless rebooting Channel Archiving

Archive pre-defined configuration periodicallyAll data saved time serially

2

Page 3: MASAR Server & Application

MASAR Architecture

3

Service EngineService Engine

pvAccess/channelRPCpvAccess/channelRPC

PyQtPyQt

Channel Access

Gather/C++Gather/C++

Low Level Python Client Library pvAccess/channelRPC Client (C++)Low Level Python Client Library

pvAccess/channelRPC Client (C++)

pvAccess

DSL-PY ModuleDSL-PY Module

PYMASAR (SQLite)

PYMASAR (SQLite)

ScriptingScripting

IOCIOCIOCIOC IOCIOC

ScriptingScripting

High Level Scripting APIHigh Level Scripting API CSS/BOYCSS/BOY

pvAccess Client API Library (Java)

pvAccess Client API Library (Java)

Finished User Apps Planning Developing

Others(Matlab)Others

(Matlab)

Page 4: MASAR Server & Application

MASAR Service

An EPICS V4 service V4 C++ modules

pvData beta2 pvAccess beta2 pvIOC beta2 normativeTypes

Communication mechanism channelRPC

4

Page 5: MASAR Server & Application

V3 Type Support

Support all scalar and waveform PV types float, double, string, and enum

Could be a mix of any of the types

5

Page 6: MASAR Server & Application

MASAR Functions

Functions supported by service

Data Structure used by request

6

structure NTNameValue string[] names string[] values string function xxxxxx // function name as above

Page 7: MASAR Server & Application

MASAR Data Structure

NTTable Scalar value

Need NTVariantArray

7

structure timeStamp long secondsPastEpoch 0 int nanoSeconds 0 int userTag 0structure alarm int severity 0 int status 0 string message string[] label [...] // value field in label fieldstring pv name []string value []double value []long value []int dbr_type []bool isConnected []long secondsPastEpoch []int nanoSeconds []string alarmSeverity []string alarmStatus []bool is_array []structure array_value [structure[]]

Page 8: MASAR Server & Application

MASAR Client

Python library 7 APIs API naming convention

Retrieve/Save: RDB orientedGet/Put: PV oriented

8

Page 9: MASAR Server & Application

MASAR UI

PyQt4 based graphic user interface On top of Python client library

Browse configuration Browse event Take snapshot Retrieve data Compare data Restore machine Export data to

external file

9

Page 10: MASAR Server & Application

MASAR UI

Multiple comparison Support up to 9 data sets

10

Page 11: MASAR Server & Application

MASAR UI

11

Data plotting

Page 12: MASAR Server & Application

MASAR CSS Integration

pvAccess plug-in in CSS Map NT type into V Type/pvManager

Basic type Name/value Table

NT type Java support Widget development

Reuse existing widget Table, …

Table manipulationJoin, comparison

PlottingColumns in single table Columns in multiple tables

URI pva://pva… 12

Page 13: MASAR Server & Application

System Wide Application

Interactive with other services Channel finder

Get PV list to create a new configuration Olog

Create a new entry automatically whenever needed Lattice/Model

Get a machine live latticeCalculate beam parameters of live latticeSave model resultsNeed MUNICONV service support

Engineering unit (Ampere) Model unit (K value)

Assemble into CSS Each item is or will be a CSS application Need to assemble them together

13