7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

18
7 February 2008 Dietrich Beck CS CS -Framework Overview -Framework Overview • Ideas behind CS • Cooking recipe • Main Features • ...

description

7 February 2008Dietrich Beck Definition of the CS framework Standardization of components Flexibility: Plugging components together via events Main emphasis: device control, not process control Back-end (SCADA, GUI,...) Application layer (sequencer,...) Front-end (devices, drivers,...) Ansatz: "Three-layer architecture" Cycle Control AFG Timing+DAQ HV GUI

Transcript of 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

Page 1: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

CSCS-Framework Overview-Framework Overview

• Ideas behind CS• Cooking recipe• Main Features• ...

Page 2: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Definition of the Definition of the CSCS frameworkframework

• provides features that are commonly needed by many experiments.

• can be maintained be a dedicated and central group.• allows for exchanging software and know-how.• saves man power.• should scale with future experiments.

control system = framework + add-ons

EE/KS experiment

bug reports, new features requestedadd-ons may become part of framework

bug fixes, new features, maintenance

Page 3: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Definition of the Definition of the CSCS framework framework

• Standardization of components• Flexibility: Plugging components together via events• Main emphasis: device control, not process control

Back-end (SCADA, GUI, ...)

Application layer (sequencer, ...)

Front-end (devices, drivers, ...)

Ansatz: "Three-layer architecture"

CycleControl

AFGTiming+DAQ HV

GUI

Page 4: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Cooking Recipe for the Cooking Recipe for the CSCS Framework 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

Page 5: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Object Orientation (OO) with Object Orientation (OO) with CSCS

• "BaseClass" provides basic

functionality (communication layer, active threads, ...)

• "DeviceClass" adds functionality according to specs of device "DS345".

• Instantiation: one object per device

"BaseClass"

"Device Class"

inheritance

AFG1AFG2

AFG3

• of course: classes for GUIs, Sequencer, State machines, ...

• OO implemented by CS using pure LabVIEW (no LVOOP)

Page 6: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Event basicsEvent basics

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

publisher

subscriber subscriber subscriber

client client client

receiver

observer pattern: "one-to-many" command pattern: "many-to-one"

data command

example: radio, televisionadded in CS 3.0

example: typical human communicationsole possibility for CS < 3.0

Page 7: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Service

Example for a simple control systemExample for a simple control systemUser PC n

Control GUIOn-line Analysis GUI

Central PC

Sequencer

DataCollector DSC EngineDSC Interface

SR430 PPG100 DS345

Front-end PC 1

Data Acquisition

DataAcq. Instr. Driver

Timing

Timing Instr. Driver

AFG

AFG Instr. Driver

High Voltage

IHQF015p

Hardware Software (Proc) Software (Lib) Exp. Specific General Part Buy! Cmd OPC

Front-end PC n

DiscArchiver

(not shown)

Page 8: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Communication Layer: DIMCommunication Layer: DIM• Distributed Information Management: www.cern.ch/dim• originally developed at DELPHI@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 server A

DIM server B

DIM client 1

DIM client 2

service "i"

service "ii"

command "iii" DIM name server(negotiates connections)

Page 9: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

DIM-LabVIEW PerformanceDIM-LabVIEW PerformanceEvent rate of LabVIEW DIM interface: WinXP versus Linux, local versus remote, inter-process

versus process-intern

1

10

100

1000

10000

100000

1 300 1000 3000 10000 30000 100000 300000 1000000 3000000 1E+07

Service Size [bytes]

Even

t Rat

e [H

z]WinPC->WinPC (local)

WinPC->WinPC (int)

WinPC->LxPC

LxPC->WinPC

LxPC->LxPC(local)

LxPC->LxPC(int)

Throughput of LabVIEW DIM interface: WinXP versus Linux, local versus remote, inter-process versus process-intern

0.0001

0.001

0.01

0.1

1

10

100

1 300 1000 3000 10000 30000 100000 300000 1000000 3000000 1E+07

Service Size [bytes]

Thro

ughp

ut [M

byte

s] WinPC->WinPC (local)

WinPC->WinPC (int)

WinPC->LxPC

LxPC->WinPC

LxPC->LxPC(local)

LxPC->LxPC(int)

Page 10: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Domain Management System: Domain Management System: Process Management in a Distributed EnvironmentProcess Management in a Distributed Environment

Page 11: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

DMS ViewerDMS Viewer

Page 12: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

CAS (CAS (CSCS Access System), I Access System), I• tree type structure• "tree parent" of each object defined by CSAccessServer• each object "inherits" the accessID from its parent• each object accepts only commands with correct accessID

Page 13: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

CAS, IICAS, IIif "a" object acquires control of "another" object

– object "a" becomes the parent of "another" object– changes the "tree parent" of one object, restructures whole trees– requires username and password– users have roles

• a supervisor can take control of a sub-tree locked by an operator• another operator can't take control of a sub-tree locked by an operator

Page 14: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

"Demo CAS""Demo CAS"

Page 15: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

"Demo CAS""Demo CAS"

Page 16: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Usage of the CS framework todayUsage of the CS framework today

• experiments requiring high flexibility• experiments with a large variety of hardware types• experiments with up to 10,000 (1M possible) process variables

PHELIXPHELIX

Motion CaveAMotion CaveASHIPTRAPSHIPTRAP

ISOLTRAPISOLTRAP REXTRAPREXTRAP

LEBITLEBIT

GSI, GermanyGSI, GermanyMainz, GermanyMainz, GermanyGreifswald, GermanyGreifswald, GermanyCERN, SwitzerlandCERN, SwitzerlandMSU, USAMSU, USALanzhou, ChinaLanzhou, China

data takingdata taking

developmentdevelopment

commissioningcommissioningFOPIFOPI

RISINGRISING

others ...others ...HITRAPHITRAP LPTLPT

TrigaTRAPTrigaTRAP

ClusterTRAPClusterTRAP

Page 17: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

Sources of Information, Code, ...Sources of Information, Code, ...• http://wiki.gsi.de/cgi-bin/view/CSframework/WebHome

– documentation – HOW-TOs– FAQs– ...

• https://sourceforge.net/projects/cs-framework/– downloads– bug reports– feature requests– mailing list– ...

• https://subversion.gsi.de/labview/trunk/– source code control system– based on Subversion– might be available world wide soon

Page 18: 7 February 2008Dietrich Beck CS-Framework Overview Ideas behind CS Cooking recipe Main Features...

7 February 2008 Dietrich Beck

ConclusionConclusion

• CS 3.10 released for LV8.2.1.• About 10-15 active users• 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, requiring– binaries, dlls, etc. are NOT on a network drive (MS-Windows)– a node is rebooted and local processes are restarted after

installation of software updates (MS-Windows)– no power cuts...