Upload
melusina-latsha
View
104
Download
0
Embed Size (px)
Citation preview
4. April 2005 Dietrich Beck, [email protected]
Stand und Entwicklung des Stand und Entwicklung des CSCS--Kontrollsystem-FrameworksKontrollsystem-Frameworks
• Motivation
• Prinzip
• Entwicklung
• Einsatz
• AusblickDem
o
04. April 2005 Dietrich Beck, [email protected]
Ein Framework ...Ein Framework ...
• stellt Funktionalität bereit, die für viele Experimente notwendig ist.
• wird von einer zentralen Gruppe gewartet und entwickelt.
• erlaubt den Austausch von Software und Know-how.
• Wiederverwendbarkeit spart Entwicklungszeit.
• sollte für zukünftige Experimente entsprechend skalieren.
control system = framework + add-ons
ECoS experiment
bug reports, new features requested add-ons may become part of framework
bug fixes, new features, maintenance
04. April 2005 Dietrich Beck, [email protected]
Mitwirkende...Mitwirkende...
Dietrich Beck, Holger Brand, Chabouh Yazidjian, Klaus Blaum, Frank Herfurth, Sumit Saxena, Stefan Götte, Wolfgang Geithner, Christian Rauth, Manas Mukherjee, Romain Savreux, Stefan Schwarz, ...
04. April 2005 Dietrich Beck, [email protected]
Idee des Idee des CSCS Frameworks Frameworks
• Einzelne verteilte Objekte zuständig für Unteraufgaben wie
– Benutzerschnittstelle
– Sequenzer
– Datenakquisition
– Geräteschnittstellen und –treiber.
• Ereignissteuerung als flexible Verbindung
•Jedes Objekt kann direkt mit jedem anderen kommunizieren (kein eingebauter Engpass).
Hohe Flexibilität durch standardisierte Kommunikation: Rekonfiguration zur Laufzeit eines Experiments möglich.
Sequencer
AFGTiming+DAQ HV
GUI
04. April 2005 Dietrich Beck, [email protected]
KochrezeptKochrezept• Ein Entwicklungswerkzeug LabVIEW
– leicht erlernbar– Multi-Threading– Ereignissteuerung
• Objektorientierter Ansatz– Kapselung von Details: “information hiding”– Abstraktion– Erzeugung von Objekten/Prozessen zur Laufzeit– relativ flache Klassenhierarchie
• SCADA Funktionalität (alarming, trending, …) LabVIEW DSC
• System auf viele Knoten verteilt Ereignisse, Daten via TCP/IP– Skalierbarkeit– Zugriff von außen
• Konfiguration– auf niedriger Ebene: über Datenbank (Busadressen, ...) SQL, vereinzelt ini-Files– auf höherer Ebene, experimentspezifisch: Sequenzer, GUIs, ....
04. April 2005 Dietrich Beck, [email protected]
Beispiel für ein KontrollsystemBeispiel für ein KontrollsystemUser 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
HV Instr. Driver
IHQF015p
Hardware Software (Proc) Software (Lib) Exp. Specific CS Buy! Event OPC
Front-end PC n
DiscArchiver( )
04. April 2005 Dietrich Beck, [email protected]
Entwicklung bis heuteEntwicklung bis heute
• Basisklassen:– "verteilte Ereignissteuerung", Attributdatenverwaltung, einfache
Zustandsmaschinen, SCADA...
• Geräteklassen:– TDS224, TDS640, LeCroy9314A, NI5112, NI6602, SR430,
NI(DAQmx), "IVI-Scope"– SR345, AG33250A, HP3325B, SML01, "IVI-FGen"– BNC555, PPG100, QC9310, SRDG535, MA202– Trinamics, IEF-Werner, NF87xx– "4Wins" – EHQF..., FUG-HCN, HP6629A, NI(DAQmx), Profibus(analog), ...– RVC300, TPC123– IMAQ1394, USBCam, ...
04. April 2005 Dietrich Beck, [email protected]
... Entwicklung ...... Entwicklung ...
• Oktober 2002, V1.00: Erste einsatzfähige Version, noch basierend auf ObjectVIEW
• SCADA – Interface als Quelle für Ereignisse (OPC, ...)
• DIM – Interface (DIM: CERN Standard für das Verteilen von Ereignissen und Daten)
• Oktober 2004, V2.00: Kompletter Umbau des Kerns, endlich unabhängig von ObjectVIEW
• Portierung zu Linux
• Teilweise Portierung zu PharLap (LabVIEW RT)
• DomainConsole: Überwachen und automatischer (Neu-)Start von Prozessen.
04. April 2005 Dietrich Beck, [email protected]
Anwender des Anwender des CSCS Frameworks Frameworks
• Einrichtungen mit bis zu 10.000 Prozessvariablen
• Experimente, die hohe Flexibilität benötigen
• System mit einer Vielzahl von Gerätetypen
PHELIXPHELIX
Motion CaveAMotion CaveA
SHIPTRAPSHIPTRAP
ISOLTRAPISOLTRAP
REXTRAPREXTRAP
LEBITLEBIT
GSI, GermanyGSI, Germany
CERN, SwitzerlandCERN, Switzerland
MSU, USAMSU, USA
data takingdata taking
developmentdevelopment
commissioningcommissioning
04. April 2005 Dietrich Beck, [email protected]
PerformancePerformance
• pro PC ca. 100-200 aktive Objekte oder Geräte
• Eventrate ca. 1-2 kHz (synchron, mit SCADA Overhead)
• braucht: 700MHz PIII, 1GByte RAM
• aber auch: NI-Fieldpoint, "embedded" 486er, 8MByte RAM
• Stabilität: typisch einige hundert Stunden Laufzeit
Limitierungen:
• Skalierbarkeit: Speicherverwaltung von LV, DSC-Engine
• aktuell: TCP-Verhalten von LV
04. April 2005 Dietrich Beck, [email protected]
Zusammenfassung und AusblickZusammenfassung und Ausblick
• CS wurde von Experimenten positiv aufgenommen
• CS Entwickler brauchen Einarbeitungszeit und Vorkenntnisse
• CS ist im Einsatz und "produziert" Veröffentlichungen
• bessere Skalierbarkeit ab LabVIEW 8?
Implementierung einer "Application Layer" Benutzerverwaltung Reservierung von Subsystemen mehr Abstraktion? (Objektnetze,...)