PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data...

64
PVSS-UNICOS Module 1 1 PVSS-UNICOS Module 1

Transcript of PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data...

Page 1: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 1

PVSS-UNICOS Module 1

Page 2: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 2

Module – 1Overview of PVSS

presentation of the most important conceptPVSS manager

UNICOS-PVSSConcept, principleInternal organizationDelivery, release plan of work, future workDescription of the UNICOS components

Page 3: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 3

PVSS II

Toolkit for developmentLike BridgeViewInterpreter of PVSS scripting language: C like

Open:New feature easily added

Few configuration toolsPermanent data base

On diskData are persistentAt startup, latest saved value before shutdown is restored

Page 4: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 4

Manager overview –1

User Interface LayerUser Interface Layer

Processing LayerProcessing Layer

Driver LayerDriver Layer

CtrlCtrl APIAPI

EVEV

DD

UIMUIM

DBDB Communication and Communication and Memory LayerMemory LayerArchArch

Page 5: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 5

Manager overview – 2Connection between manager via tcp-ip

Configurable port numberNo secure socketHackers can corrupt the system

Each manager of same type connected to the Ev must have a unique numberPVSS is considered event drivenBut…

Internally this is a polling systemAll the managers inherit from base class:

A wait is done periodically on the socket connectionsAny message on the socket will exit the wait and will be dispatched.

All the messages are time stamped and processed in order of reception

Page 6: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 6

Platform

Linux and WindowsSame PVSS script on both platform

UIM: Motif on linux plateformWindows activeX only on windows platform

Page 7: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 7

PVSS vocabulary – 1Data point type (DPT): C structure likePVSS system: Ev+DbData point (DP): instance of a data point type, unique within a system

Cannot be renamedDP deleted archive lost event if created again afterwards

Data point element (DPE): node or leaf node of a data point

Basic: struct, int, float, string, bool, etc.Arrays: basic element of same type can be addedDyn list

Config on data point elementTo define the behavior of the data point element

Alias on data point and data point elementCan be changed, no impact on the archive

Page 8: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 8

PVSS vocabulary – 2Panel: graphical view (window in PcVue, VI in LabVIEW):

Script interpreted, valid only in the panelNo panel exchange of data within panels at run-time except through the Db.Can have parameters, evaluated at startup

Script: sequence of PVSS function and codeScript: when executed by Ctrl manager it is a file containing a sequence of PVSS function and code with a main function.Library: function reusable in the panels, in other library or in the scriptsProject path: set of folder to locate the panel, script, etc.

Modified file always saved in the last project pathFirst occurrence found is used.

Page 9: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 9

PVSS Manager vocabulary – 1

PVSS scattered system: 1 Ev, 1 Db, and other managers distributed

PVSS distributed system: many scattered systems interconnected via a Dist: distributed manager

Linux

Ev, DB, Ctrl

Linux

Arch, API, D

WNT

UIM

W2000

UIM

Ev, DB, Ctrl, Arch, D, API

W2000

UIM

LinuxEv, DB, Ctrl, Arch, D, API

Linux

UIM

WNT

Page 10: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 10

PVSS Manager vocabulary – 2

Linux

Ev, DB, CtrlArch, API, D

WNT

UIM

W2000

UIM

W2000

Ev, DB, CtrlArch, API, D

PVSS redundant system:Via a Rm: redundant managerOne passive, one activeSoftware redundancyRedundancy of all the managersDistributed system

PVSS project: Scattered, distributed, redundantconfig file

per scattered system, read at startup of the managerA remote UIM can also have a config file Section per manager in the config file

Page 11: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 11

Event manager: Ev

Administrator of:data point, data point element, configsUser accessCurrent process image of the data point

Receive, evaluate and distribute the messageBottleneck of the system

Any request (set, get, connect, etc.) is via the Ev.

Redundancy: the passive Ev blocks message,Update of the passive Ev by the active Ev

EVEV

Page 12: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 12

Ev data point element config

Value:Original: from hardware, set by operatorOnline: the one currently usedDefault: default value for the online config if original is invalid or out of PVSS rangeValue time stamped

Pvss range: range of the value, invalid if outside

online

default original

Original: invalid,Out of range

Page 13: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 13

Ev: other config

Alert_class: define the behavior of the alertArchive, acknowledge, color, etc.

Alert_hdl: the alert itselfDp_fct: to do calculation based other data point element:

Calculation, average, log, sum, etc.Offline: retrieve the archived valueArchive: define the archivingCorr: to add correction value to an archived data

Page 14: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 14

Data base manager: DbProprietary database:

Last value, configsArchive of configsAccess through the Ev, no direct access

SQL query supportedAt startup

the last value read from the data base and restoredThe configs are sent to the managers

Archive the alarm dataPurge of old alarm

Archive history of configs disk space problem

Not possible to delete old config from the DBRedundancy: via the Ev

DMDM

Page 15: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 15

Driver manager – 1Manage the connection to the hardwareTransformation to correct DPE typeConfigs hold by the driver:

Address, distrib: connection to the hardware via a driverSmoothing: filtering, reduction of data flow with the EvMsg_conv: raw to engineering conversionCmd_conv: engineering to raw conversionData point element either from or to hardware, not both

DD

EvEv

smoothing

msg_conv

cmd_conv

Old/new

transformation

hardware

address

Page 16: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 16

Driver manager – 2

Startup:Input DPE are read from hardware and sent to Ev (no smoothing, no old/new)Ev is not sending the output DPE to the driver

Single query of the DPE value (DPE as In)General query of all the DPE (DPE as In) hold by the driver

Page 17: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 17

Driver limitation

Too many data from the hardware at too high rate may lead to a memory increase:

Ev too slow (generally Db)The memory buffers increase up to a limit

Then only one value per dataLoss of value

Driver not started, no access to the driver DPE config

Page 18: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 18

Ctrl Manager

PVSS script: C likeInterpreterMultithreadAccess to all the data point value, configExecution of process program

CtrlCtrl

Page 19: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 19

API manager

C++Same functionality as Ctrl but in C++Allow link to existing C++ softwareIntegrated with PVSS functions

APIAPI

Page 20: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 20

Archive manager

Archive the data not the alarmMulti threadedOne manager per archive classHandle the archive behavior

Switch archive filesMove the archive file to backupCompress archive files

Handle the archive retrieval

ArchArch

Page 21: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 21

UIM

Graphical interface: run panels, scriptsAnimation of graphic object

(event driven, polling)Receive and send data to the EvTrendEtc.

User access2 tools:

Development: GEDI: panel, script and library developmentPARA: data point configuration, creation, delete

Run time: no panel development, no access to the PARA toolCan run a panel that does data point configuration

Page 22: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 22

Message flow

11 Hardware sends data for value change22 Driver creates PVSS message 33 EV writes altered values to respective DP and sends updated DP to DB, Arch, Ctrl and UIM3.a3.a UIM:creates visualizastion of value change 3.b3.b Ctrl: carries out calculations with new DP value3.c3.c DB: archives value change44 User reacts to value change and sends value change to for the hardware55 EV processes user reaction and sends value change to DB for logging and to the driver66 Driver converts value to a hardware

Ctrl

D

UIM

EVDB

2

1

3

334

5

5

6

Arch

3

Page 23: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 23

Other PVSS features

Groups of data pointRecipesPanel hierarchical navigationActiveX Web serverODBCOPC Client, OPC ServerMODBUS/UNICOS driverDB backup (ORACLE, etc.) integrated via ODBCExcel macroEtc.

Page 24: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 24

PVSS scripting language – 1

Similar to C; as the end of execution line

InterpretedNo compilation, no linkTypical errors:

Wrong function call, wrong variable name, etc.

Debugging:Script debugger: not so easy to use, basicPrintout function

Multithreaded:no exclusive access on a variable (can be implemented)

Page 25: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 25

PVSS scripting language – 2

Global variable to a manager or to a panelConstant, dynamic list, array, basic elements, etc.Callback function trigger on one or many value change (dpConnect function)

Sequentially calledData point name and value given to the functionShould be fastNot advised to query data because no coherency is guaranteed with the data given to the callback functionUIM: Number of pending call can be limited: the last one is executed.

Page 26: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 26

Identification of the data

[system:]dpName.[dpElements]:config.[detail].attributesystem: name of the PVSS systemdpName: data point namedpElement(s): data point element name(s)config: the type of configdetail: number of the configattribute: attribute of the config

[] optionalSeveral dpElement are separated by .

In a distributed system, if system is not specified the current system name is used

Page 27: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 27

Example of data identification

Valve1struct

readoutstruct

positionfloat

originaldefault

online

addresssmooth stime

value

setPostionfloat

System1:valve1:readout.position:_online.._valuevalve1.readout.position:_online.._value

setValue1float

originaldefault

online

addresssmooth stime

value

System1:setValue1.:_online.._stimesetValue1.:_online.._value

Page 28: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 28

Panel developmentGraphical view inside a module (container of a panel)

Child panel, root panel, etc.Contains PVSS script: library call, etc.

Typical drawing tools:Default font, style, layer

Basic graphical element:Button, comboBox, text field, radio button, etc.Each object has a unique name

Add ActiveX:Embed an ActiveX

Add reference (symbol): generic panelEmbed an existing PVSS panel: executed in the context of the parent panel.

The panel and the graphical attribute have associated events and attributes

Page 29: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 29

Panel event(general): global function of the panel, not known by the embedded panelsEventClick: when one does a click in the panelEventClose: when one closes the module (x)EventDblClick: when one double click in the panelEventInitialize: at startup of the panelEventRightClick: when one does a right clickEventTerminate: when the panel is close (e.g.: panelOff function call)EventZoom: when zooming

Page 30: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 30

Basic object eventEventAcknowledge: when one acknowledge an alarm when in PVSS acknowledge modeEventClick: when one clicks on the objectEventInitialize: at start of the panelEventRightClick: when one does a right click on the object

And other depending on the object:EventCommand: when one does enter a valueEventChange: when one changes a positionEventColumnCommand: when one changes a value in a tableEventMouseDown, EventMouseUp: mouse up and down on a buttonActiveX event: event published by the ActiveXEtc.

Page 31: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 31

Object attribute – 1

Static attributeE.g.: name

Modifiable at run-time:Visible, enabled, color, text, value etc.

Access by:setValue, getValue function call. notation:

val = object1.text() equivalent to getValueobject1.text(val) equivalent to setValue

Page 32: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 32

Object attribute – 2

Can be modified from a scriptExecuted in the context of the panel: dpConnect, event of the panelOf an event of another object: dpConnect, eventAssociated to the configs, value of a data point element (dpGet, dpSet, dpConnect, etc.)

Value of a data point elementAlert color of a data point elementSet a value of a data point elementMask an alert of a data point elementEtc.

Object attribute of an embedded panel can be modified from the parent panel (setValue, getValue)

Page 33: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 33

Symbol: reference panel

Generic panel:Same panel for many data point

Parameters can be given to the panel: dollar parameters:

Data point name, value, etc.Dyn_string, dyn_int cannot be passed (they are translated in a contiguous string)Evaluated at initialization

Page 34: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 34

Panel as reference: development

Panel can be embedded in a panel:Catalog menu: one per project path.

Folders in project’s catalogSave in catalog, change icon, etc.

Via the reference buttonA panel can be opened when adding the reference panel to configure the dollar parameters if any.

Page 35: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 35

Panel as a reference: run-time

Reference panel can be added/removed at run-time

addSymbol, removeSymbol function callWith dollar parameterThe configuration panel is not openedMust have a unique name

Page 36: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 36

Panel limitation

All the scripts are started in a separate threadTake care to multiple user actionE.g.: enable/disable button

All the thread are killed when the panel is stopped

Callback function are also killed: automatic dpDisconnect

It is not possible to trigger an event script of a graphical objectNo dpConnect on a graphical object attribute

Page 37: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 37

Alert concept

Alert_class config: define the behavior of the alert:

Acknowledgeable, acknowledge old alert, archive, color, priority, etc. Script to be executed

Alert_hdl config: the alert handlerAlert transition:

CAME: transition to an alert stateWENT: transition from an alarm state

One alert message created per transition

Page 38: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 38

Alert_hdl config

Ranges, hysteresis, alert text, panel to open, etc.Can be modified

Associated with alert_class:Of any data point element

Executed when the data point element value is modifiedTime stamp of the data point element valueAll attributes can be modified via PVSS scriptConnected to the attribute of a graphical objectCan be masked (de-actived) and un-masked (activated)

Page 39: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 39

Alert status

alert range (A)alert range (A)type of type of

acknowledgment: 4acknowledgment: 4

good range (G)good range (G)

state of alert state of alert handling:handling:

current range:current range:

executed alert:executed alert:

““GG““nono

alertalert““WW““

camecame““AA““

came /came /unacknow.unacknow.

““AA““went/went/

unacknow.unacknow.

““WW““camecame

““GG““nono

alertalert

GG WW AA WW GG

W W camecame A A

camecame

A wentA went W W wentwent

acknowledgement of alert

Page 40: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 40

Alert visualization

Alert screenFilter: short sign, priorityTime range: current, previousLoad, save, filterAcknowledge single alert, not allMasking not possible

Alert row

Page 41: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 41

Alert limitation – 1

An alert can be generated even if the value is invalid (no default configured, etc.): need programming to avoid it Alert range are not data point elementIt is not possible to configure the automatic mask/un-mask an alert based on a value of another data point element

Can be done by inventing a script

No global acknowledge of the alert from the PVSS alert screenNo masking of the alert from the PVSS alert screen

Page 42: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 42

Alert limitation – 2

No list of data point element having an alert_hdlbut not activated (can be done by a PVSS script)No execution based on priority in case of avalancheMemory load

A lot of config attributes for an alertCPU Load

Alert evaluated by EvScript in alert class executed by EvSlow down the whole PVSS project

Page 43: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 43

Archive concept

Archive class data point: define the behavior of the archive fileArchive config: archive the data point element online value, time stamps, status bits

The archive classThe smoothing of the archive

Offline config: to retrieve the archived valueCorr config: to add correction value to a archive data

Replace an archived valueNot possible to add intermediate value between two archived value

Page 44: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 44

Archive class DP: HistoryDBSeries of chronologically ordered archival filesMaximum of DPE and maximum of DPE value change per archive fileConstraint:

same change rates of all DPEs in the same archive to avoid empty block in the archive file

Can be backup in another mediaActivity:

Backup and archived fileInformation:

Status, etc.

Max DPE value

MAX

DPE

Page 45: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 45

Archive Limitation

Can be slow:Retrieval and archive is done by the same process

memory increase (manager buffer size can be modified for optimization)

Errors or archive offline or not running does not prevent an operator to configure the archive config or archive class

Max DPE reached, etc.Errors are written to the log file when the value changeBut no error from the a dpSet function

Page 46: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 46

PVSS limitation – 1

UIM can set a data point element even if it has an address config

Modified by the driver if the value change again (most of the time) Take care to inconsistencies

Db is writing on file for each value change (not archiving)

Can be disabled but loosing functionalityDb on a powerful computer with a fast diskDb file must be closed correctly to avoid corruption

Otherwise DB repaired at startup: possible risk of DB file corruptedDb PC on UPS.

Page 47: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 47

PVSS limitation – 2Data point can be delete/added/modified online (in a production system)

Data point deleted means archive history deletedEv kernel of PVSS: no Ev no PVSS project running

All messages go through it (except few cases: getting archived data)Ev on a powerful computer with a battery

Message buffer for each manager connectionMessage to process are buffered if the manager can not treat itIncrease of memory

Emergency mode: to avoid swapping and disk fullDb must be re-started project temporary stopped.

No versioning of application in PVSS, no roll-backData point configsPanel (only .bak file), lib, script

Page 48: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 48

PVSS II+UNICOS performance

AB/CO HP Proliant2xPiV 2.8 Ghz hyperthreaded2.5 Gb RAMRAID 0 diskRedHat 7.3 or SLC3PVSS II v3.0

Data simulated by PVSS sim driver, extraction of data (simulation of the LHC Logging)

QPS: size of PVSS project for a sectorSmall project 52000 DPE, 16000 archived and updated (30%).

Cryo: 1/3 of PVSS project in one cryo pointBig project 104000 DPE/40000 archived and updated (37%).

1) Contact UNICOS Support for more information

1)

1)

Page 49: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 49

Module – 1Overview of PVSS

presentation of the most important conceptPVSS manager

UNICOS-PVSSConcept, principleInternal organizationDelivery, release plan of work, future workDescription of the UNICOS components

Page 50: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 50

UNICOS vocabularyObject type = Device type = PVSS DPT

UNICOS object are device typeAnalogInput, Analog, AnaDig, etc.

Object, Device, device name = PVSS DPDevice DPE, DPE = PVSS DPEControl script = script executed by a PVSS Ctrl managerSynoptic = PVSS panelsAlarm = alert = PVSS alertUsers, group of users:

Admin = sdeveloperExpert = super operatorOperatorMonitor

Page 51: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 51

UNICOS conventionPVSS alias: reference of the deviceDPE:

Device nameWidget: systemName:AliasNameFor the TrendTree: systemName:AliasName.leafProcessInputDPEsystemName:AliasName.leafProcessOutputDPE

Ex: tr1:ATVAC_PT100.PosStAlarm on the device:

Alarm are mapped to bits of the stsreg

Reserved for select/deselect

Process input data

Process out data

Page 52: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 52

Concept – 1UNICOS based on the JCOP framework

PVSS development framework used in the LHC experimentsEncapsulate PVSS internals:

Configs: libs providedHierarchy implementation

Tree: start of the hierarchyNode: a virtual folderDevice: a PVSS DPT

Trend utilityBased on components

Components used by UNICOS:fwCorefwTrending: trending utility

Faceplate trendPlot: one trend, maximum 8 curvesPage: multi-plotHierarchical classification

fwAccessControl

Page 53: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 53

Concept – 2

UNICOS is an application frameworkThe application developer should not need to access the PVSS PARA moduleSame look and feel for all the devicesComposed of components:

unCore: core of the PVSS-UNICOSunMessageText: utility to archive and display messagesunActiveX: activeX and libs for the window and trend treeunSelectDeselect: select utilityunDistributedComponent: handle the distributed system, connection, disconnection, reconnectionunicosObjects: graphicalFrame, objects, etc.

Page 54: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 54

Internal organization – 1

Development in layerRe-use of existing component as much as possibleCollaboration with IT/CO: JCOP framework

As a consequence sometimes it is slow, may put some overloadBut share work, share framework

Re-use of utilities from JCOP.Not to redo everything

Support, maintenance not by UNICOS team

PVSS-SCADA/PLC

Add onExcel

IE,Etc.

UNICOS Components

Application

JCOP Components

Page 55: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 55

UNICOS components – 1unCore: Core of UNICOS

unDistributedComponentCheck the state of the remote PVSS systemsGuarantee the state of the remote PVSS system in all possible casesCan trigger graphical animation when the remote system is disconnected

unMessageTextMessaging utilitySend message to operators:

UIM manager numberSignature of the sender of the messageVisualization:

4 levels: INFO, WARNING, EXPERT and EXPERTINFOHistory

unTreeunActiveX

JCOP ActiveX for hierarchical treeUsed in WindowTree and TrendTree

Page 56: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 56

UNICOS components – 2

unicosObjectUNICOS devices type

Alarm, AnalogInput, AnalogOutput, DigitalInput, DigitalOutput, Analog, AnaDig, OnOff, Local, Controller, ProcessControlObject (PCO)Graphical representation

Catalog of widgetsDevice widgetsopen synotic/trend, layer, TextLabelBargraph, step, transition, ProfileGraph

FaceplateContextual button per device

Page 57: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 57

UNICOS components – 3

unicosObject (cont.) Static objects:

Cryostat, cavities, coalescer, drier, etc.Lines, arrows: air, helium, etc.

Page 58: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 58

UNICOS components – 4

unicosObject (cont.) UnPanel: synoptic device = PVSS panel device

Open panel widget: pop-up and base panelContextual button

Horizontal navigationUp to 10 panel, plot or page

Navigation:Back, forward, last 20 opened panels, plots or pages, home, WindowTree

Hierarchical navigation

Page 59: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 59

UNICOS components – 5unicosObject (cont.)

unSelectDeselect: select utility, select the deviceScript and lib:

Select/deselect the deviceAutomatic deselection after a configurable timeoutAutomatic deselection on exit

Libs: UIMGuarantee the uniqueness of selected device per module and per UIM manager graphicalFrameSame look and feelFrame for operationConfiguration, diagnostic menus and panels

Generation:Generation of the devices and their configuration

systemIntegrity:Check the state of the configured PVSS archive, driver manager and remote systemsCheck the state of the MODBUS/UNICOS driverCheck the state of the configured PLCsCheck the state of the communication of the configured PLCsGenerate alarmsSend the DS ip to the configured PLCsSend UTC time to the PLCs

Page 60: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 60

UNICOS: release v3.6All UNICOS objects

Widgets, faceplatesState of the PLC communication included in widgets and faceplatesAI/AO/DI/DO: alarm creation/deletion from faceplateAI/AO: alarm letter in widget

New devices can be easily added.Filtering (smoothing on deadband) on all the float data

Event list, object list, alarm listWindowTree, TrendTree: support of $paramTrend:

Faceplate, plot, pageNavigationConfiguration

Horizontal navigation: support of $paramPanel plotPanel pagePlot page

graphicalFrame: unicosMHIOne alarm row per unicosHMI in multi screenUser defined panel to be opened as child panel

ImportFront-end and device import function configurable

Page 61: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 61

UNICOS: release v3.6 (cont.)Send email/CERN SMS via email for systemIntegrity alarm

250 emails max per days others are not sent until next day, except the reportsReport of the systemIntegrity alarm

Via email/CERN SMSValidated for distributed systemSend UTC time to the PLCPerformance test of the UNICOS package

Distributed system: Linux/WindowsXPConnect to the LHC-Logging: long term archiving database

Windows/Linux platformTwo UNICOS event format for the eventList:

Old value and current value sent at the same time (32 bit)Only current value sent (16 bit)

Integrity: check the state of the critical elements of the applicationConfigurableValue Archive errors, file switch frequencyAlarm archive size and file switch frequencyDriver, remote system, PVSS DB file size

New front-end and new device can be addedConnection to LHC-Alarm system: LASER

Windows/Linux platform

Page 62: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 62

UNICOS: release v3.6 (cont.)Optimization of the ObjectList/EventListFiltering on Alias for ObjectList/EventListObjectList/AlarmList/EventList/MessageText:

UTC/Local (LTI) time format displayExport of devicesCMW/OPC/DIP implementation (basic as a demo)Import:

event archive, Archive configurable from import fileSmoothing on archive: old/new, time and/or old/new, no archive

Linux SLC3Use of alias for LASER and LHCLogging interfaceIntegration of S7WindowTree, TrendTree export/import utility (XML based)SMS CERN messages on UNICOS devices alarmsTree device overview: widget + snapshot modeCMW Client/CMW ServerDevice in more than one domain and nature

Page 63: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 63

UNICOS: release v3.6 (cont.)

Link between devicesRC on device widgetImport/export

AnaDig/Analog: R (regulation)Linked to at least 1 Controller of the same PVSS systemNew tab in faceplate: Controller data

Backup utility triggered by the PVSS online backupMasking of event

Page 64: PVSS-UNICOS Module 1unicos.web.cern.ch/sites/unicos.web.cern.ch/files/page/unicos... · PARA: data point configuration, creation, delete ... Wrong function call, wrong variable name,

PVSS-UNICOS Module 1 64

UNICOS: plan of work

unicos-pvss 3.7GCS devicesS7 Controller

Default value

unicos-pvss 4.0 … 4.1QTJCOP access control