Neues vom CSFramework - PowerPoint PPT Presentation

1 / 27
About This Presentation
Title:

Neues vom CSFramework

Description:

control system = framework add-ons. EE/KS. and contributors ... add-ons may become part of framework. bug fixes, new features, maintenance. Cycle. Control ... – PowerPoint PPT presentation

Number of Views:81
Avg rating:3.0/5.0
Slides: 28
Provided by: Beck104
Category:

less

Transcript and Presenter's Notes

Title: Neues vom CSFramework


1
Neues vom CS-Framework
  • Motivation
  • Grundlagen
  • Entwicklungen der letzten Jahre
  • Status und Ausblick

2
Definition of "Framework"
  • Wikipedia "A software framework is a reusable
    design for a software system. ... (It) may
    include support programs, code libraries, a
    scripting language, or other software to help
    develop and glue together the different
    components of a software project..."
  • freie Übersetzung "Ein Software Framework ist
    ein wieder verwertbares Design für ein Software
    system. ... (Es) kann Hilfsprogramme,
    Code-Bibliotheken, ein Scripting-Werkzeug und
    andere Software enthalten, die es erlauben,
    verschiedene Komponenten für ein konkretes
    Softwareprojekt zu entwickeln und
    zusammenzufügen."

3
Why Frameworks for Control Systems
  • standardization of code
  • re-usability of software components
  • maintainability of software components
  • ...
  • flexibility
  • exchange of hardware during run-time
  • add/remove hardware during run-time
  • change operational states on-the-fly
  • ...
  • common solutions
  • same look and feel at different experiments
  • ease transfer of know-how
  • ...

4
Definition of the CS framework
Ansatz
"Three-layer architecture"
  • optional usage of sequencers ( sequences of
    commands)
  • optional usage of state machines ( states and
    actions)
  • optional GUIs on the device level
  • optional interfaces to control systems of
    accelerator and DAQ
  • standardization via a framework, here
    ControlSystem framework
  • ? Main emphasis device control, not process
    control

5
Definition of the CS framework
  • control system framework add-ons

add-ons may become part of framework
bug reports, new features requested
experiment
EE/KS and contributors
bug fixes, new features, maintenance
6
Different Points of View A Framework is...
  • Developer
    User
  • ... a tool box
    ... something ready to use
  • (sth. to solve a problem)
    without additional work

  • ( the solution!)

7
Cooking Recipe for the CS Framework
  • One development tool ? LabVIEW
  • Standardization ? object oriented approach
  • Distribution to many nodes ? DIM
    (www.cern.ch/dim)
  • Event driven communication for everything
  • Scaling to large systems by distribution
  • Remote access
  • SCADA functionality (alarming, trending, ) ?
    LabVIEW DSC module

8
LabVIEW is...
  • ...just another programming language.
  • graphical programming instead of text based
    programming
  • dataflow paradigm
  • ...an enormous collection of tools and libraries.

9
Object Orientation (OO) with CS
  • "BaseClass" provides basic functionality
    (communication layer, active threads, ...)
  • "DeviceClass" adds functionality according to
    specs of device type "DS345".
  • Instantiation one object per device

"BaseClass"

inheritance
"Device Class"
AFG3
AFG1
AFG2
  • of course classes for GUIs, Sequencer, State
    machines, ...
  • OO implemented by CS using pure LabVIEW (no LVOOP)

10
Example for a Simple Control System
11
Developments During the Past Years
  • project management
  • CS as Open Source Project on SourceForge
  • CS Wiki-Page _at_ GSI
  • source code control using Subversion
  • DIM as communication layer
  • Domain Management System for process management
  • CS for different operating systems (Windows,
    Linux, Pharlap)
  • reservation mechanisms for sub-systems
  • device base classes
  • configuration database
  • stability and performance

12
CS-Wiki _at_ GSI
13
Statistics from SourceForge
  • among top 1 of SourceForge projects
  • gt 800 downloads of CSMain
  • 29 packages (of 2 maintainers)
  • 42 (open 3) bugs
  • 30 (open 1) feature requests
  • 16 (open 2) patches
  • 3 feature requests
  • 8 developers

14
Distributing CS
  • developer source code control via Subversion at
    GSI
  • user packages on SourceForge (Unpackager)
  • dependency/conflict checking
  • package checking
  • installing packages
  • removing packages
  • downloading packages
  • ...
  • "three-click installation"

15
Communication Layer DIM
  • Distributed Information Management
    www.cern.ch/dim
  • originally developed at DELPHI_at_LEP/CERN around
    1991
  • available for a multitude of platforms and
    languages
  • light-weight, aiming at high performance, based
    on TCP/IP
  • today "backbone" of control systems for LHC
    experiments
  • concept named services, peer-to-peer connections

DIM name server (negotiates connections)
DIM client 1
command "iii"
DIM server A
service "i"
DIM server B
DIM client 2
service "ii"
16
DIM-LabVIEW Performance
17
Domain Management System Process Management in
a Distributed Environment
18
Example DMSViewer
19
Device Base Classes Motivation
  • Standardization of parameters for
  • events (command pattern, "call process")
  • services (publisher-subscriber pattern, status
    info)
  • "Standard" defined by device model
  • arbitrary function generator
  • power supply
  • motor
  • ...
  • Allows exchange of different hardware device
    types of the same device model
  • Requires only one GUI for all classes of the same
    class model
  • Defines interface/behavior for programming a
    device class

20
Class Hierarchy
BaseProcess
DeviceBase
BaseGUI
PSChannelBase
PSChannelBaseGUI
SimPowerSupply
21
PSChannelBaseGUI Class (user view)
  • available via double-click in "GOG"
  • one instance per power supply object
  • one GUI class for all classes inheriting from the
    PSChannelBaseClass

22
Configuration versus Programming
  • create objects during run-time
  • identical binaries for different experiments
    possible
  • application characterized by configuration
  • configuration data base
  • presently using MS-Access
  • device interfaces, bus-addresses,...
  • access via TCP/IP
  • settings "database"
  • typically as XML files
  • ...

23
Testing Stability and Performance
  • dedicated set-up including hardware for testing
  • long term stability (months...)
  • interoperability of different versions
  • stress situations
  • performance
  • ...

24
Experiments using the CS framework...
  • require high flexibility
  • have a large variety of hardware types
  • have up to 10,000 (1M possible) process variables
  • require fast (? 100 ns) timing control using
    dedicated hardware

RISING
ClusterTRAP
LPT
GSI, Germany Mainz, Germany Greifswald,
Germany CERN, Switzerland MSU, USA Lanzhou, China
TrigaTRAP
25
Conclusion and Outlook
  • CS 3.10 released for LV8.2.1.
  • about 10-15 active applications
  • 1,000,000 PVs demonstrated, an even larger number
    should be feasible
  • 5,000 objects (? hardware devices) demonstrated,
    an even larger number should be feasible
  • stability of a distributed CS system is better
    than a few hundred hours of continuous operation
  • about 15 (60) hardware devices supported on
    SourceForge (Subversion)
  • FAIR MATS and parts of HITRAP have selected CS
    as control system framework. NUSTAR? PANDA?

26
Acknowledgements...
  • Holger Brand, Dietrich Beck, Alexander Schwinn,
    Falk Ziegler, Romain Savreux, Chabouh Yazidjian,
    Klaus Blaum, Dennis Neidherr, Melanie Wolf,
    Stefan Schwarz, Josh Savory, Stefan Götte,
    Maximilian Kugler, Tobias Habermann, Michael
    Block, Frank Herfurth, Christian Rauth, Stephen
    Koszudowski, Manas Mukherjee, Thomas Rechel, ...,
    IT_at_GSI, ...

27
Event basics
  • an entity waits for the next event, no polling!
  • timeout handling is an important issue

observer pattern "one-to-many"
command pattern "many-to-one"
client
client
client
publisher
data
command
subscriber
subscriber
subscriber
receiver
example radio, television added in CS 3.0
example typical human communication sole
possibility for CS lt 3.0
Write a Comment
User Comments (0)
About PowerShow.com