RPPA12_poster - MKS 2 - Desy

streakconvertingΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 8 μήνες)

65 εμφανίσεις

Deutsches Elektronen
-
Synchrotron DESY

Helmholtz Association of German Research Centres

22603 Hamburg, Germany

www.xfel.net

The European

X
-
Ray Laser Project

XFEL

X
-
Ray Free
-
Electron Laser

Ch. Gerke, T. Boeckmann, M. Clausen, J. Hatje, H. Rickens

Process Control:

Object Oriented Model for Offline Data

EPICSORA
uses Oracle Forms and Stored Procedures to
generate a GUI for the developer of EPICS database files (*.db)

Different tools using different
techniques generate different
configuration files.

The DESY Oracle relational
database is used as a common
repository,

Each application (corresponding
to different configuration files)
has a different set of tables
defined in the database.


Tables for different points of
interest are linked by columns
IO_name which contain symbolic
names for the relevant input or
output channel, respectively.
This same name is usually taken
from the R&D drawings.

IO configurator

uses Java classes to
represent the tree structure of field bus
systems. Hibernate is used to make the
objects persistent in the Oracle database

In a first step there are “prototypes” defined for
each project.

They



group several records together



define some field values



declare some parameters



can be nested



“feel” a bit like OO
-
classes.


Secondly “instances” are defined for the
appropriate prototypes. This usually just involves
assigning a value to a prototype’s parameter.

Instances “feel” a bit like OO
-
objects


The database definition provides
default values for the EPICS
database files

EPICSORA defines
deviating values on
several levels

The values different from the
default values are written to the
database file for the IOC

Classes and abstract classes
used to define the tree
properties of field bus systems.

The abstract classes contain
properties and methods useful
for all field bus systems.

The concrete classes are
specific for the field bus system
in use. At present we are
implementing the Profibus field
bus.

It takes information entered by the engineer and from the GSD
-
files
(General Station Description files) to produce the configuration and
parameterization files to be loaded to the Profibus Master.

A CSS plugin for the Profibus
field bus system is using the tree
viewer of JFace.

Module
-moduleNumber
+getChannels()
+setChannels()
+getSlave()
+setSlave()
Slave
-slaveNumber
+getModules()
+setModules()
Channel
-channelNumber
-input: boolean
-digital: boolean
-ch_size: int
-ioName: String
+getModule()
+setModule()
+isDigital()
+setDigital()
+...()
NodeParent
-children: Node
+addChild()
+removeChild()
+getChildren()
+hasChildren()
Node
-id
-name
-parent: NodeParent
+getParent()
+setParent()