cs -status

17
February 18, 2010 Dietrich Beck CS CS -Status -Status • Results from workshop 2009 – what was planned for 2009 – what was done in 2009 • Statistics • Miscellaneous

Upload: deon

Post on 21-Mar-2016

44 views

Category:

Documents


2 download

DESCRIPTION

CS -Status. Results from workshop 2009 what was planned for 2009 what was done in 2009 Statistics Miscellaneous. FPGA as pattern generator new package CNI_FPGA_PPG, contains class NI_FPGA_PPG FPGA code, instrument driver, class author: Falk Ziegler, slight modifications - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CS -Status

February 18, 2010 Dietrich Beck

CSCS-Status-Status

• Results from workshop 2009– what was planned for 2009– what was done in 2009

• Statistics• Miscellaneous

Page 2: CS -Status

February 18, 2010 Dietrich Beck

Results from Results from CS CS Workshop 2009, IWorkshop 2009, I• FPGA as pattern generator

– new package CNI_FPGA_PPG, contains– class NI_FPGA_PPG

• FPGA code, instrument driver, class• author: Falk Ziegler, slight modifications• maintainer: Dietrich Beck• suffices needs @ Greifswald

– class PPG_ABC• author, maintainer: Dietrich Beck• derived from NI_FPGA_PPG• extension for others using "abcDE" pattern definitions

• Requires modifications for MM6.vi– in use at SHIPTRAP– seems to work ...

• Changes for MM6.cpp would be nice (trigger definition etc...)

Page 3: CS -Status

February 18, 2010 Dietrich Beck

by the way (1): TTL Line-Driver Moduleby the way (1): TTL Line-Driver Module• Harald Hahn, GSI• select I/O for each line• 40 lines per module• 4 modules per 19" crate• max 100mA (50Ω) per line• max 6A per crate• delay time 80ns• rise time 15ns @ 50Ω • optional remote control

– invert line– direction– buffer function– ...

• in use at SHIPTRAP...

Page 4: CS -Status

February 18, 2010 Dietrich Beck

by the way (2): by the way (2): FPGA as Multi-Channel-ScalerFPGA as Multi-Channel-Scaler

• three TTL I/O– start trigger (input, positive edge, logic high)– signal (input, positive edge, logic high)– isActive (output, logic high while counting)

• FPGA over-clocked to 80 MHz (could be even more)– minimum time for active high is 12.5 ns– maximum count rate 40 MHz

• requires "NIM-electronics-type" discriminator and gate• simple FPGA program and instrument driver

– small amount (kBytes) of data, handled by DMA transfer– fits easily into the 7811R

Page 5: CS -Status

February 18, 2010 Dietrich Beck

Results from Results from CS CS Workshop 2009, IIWorkshop 2009, II• (not yet) final maintenance release for LV 8.2.1: CS 3.13• change of LabVIEW version from 8.2.1 to 8.6.1 (no)• anyway: some users started using CS 3.1X on 8.6.1 already• questionnaire: LV 8.6.1 or directly LV 2009? Holger

Page 6: CS -Status

February 18, 2010 Dietrich Beck

Progress in the Past Year (1)Progress in the Past Year (1)• mainly maintenance and support work

– bug fixes – updated packages– one release of package CSMain– present version CS 3.13 (no active patch, but changes in SCC)– remote shutdown of CS systems via the DMS Server– changed "Unpackager" a couple of times discussion!– new SourceForge web-site

• using VI-Analyzer to check code quality of released packages• using CS2Java (slightly hacked) for class documentation of

packages recently released• in preparation: CS version 3.14 as the final maintenance

release for LV 8.2.1

Page 7: CS -Status

February 18, 2010 Dietrich Beck

Progress in the Past Year (2)Progress in the Past Year (2)• new class DeviceBaseGUI

– reduces "copy and paste" for GUI classes (especially for GOGs)– eases development of GUIs for GOG– required slight changes for the GOG

• GOG slightly changed to ease to create user specific GUIs

Page 8: CS -Status

February 18, 2010 Dietrich Beck

Statistics from SourceForgeStatistics from SourceForge

• among top 1% (almost) of SourceForge projects• > 2600 (until 2009: 1400) downloads of CSMain• 34 (2009: 31 packages) of 2 maintainers• 70 total, 4 open (2009: 51/1) bugs • 47 total, 12 open (2009: 41/7) feature requests• 26 total, 2 open (2009: 25/2) patches• 3 total, 0 open (2009: 3/0) support requests• 9 (2009: 9) developers

Page 9: CS -Status

February 18, 2010 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 LPTLPTClusterTRAPClusterTRAP

WITCHWITCH TrigaTRAPTrigaTRAP

Page 10: CS -Status

February 18, 2010 Dietrich Beck

Other Issues, OutlookOther Issues, Outlook

• change pattern generator of trap control systems for other too• HITRAP• maintenance (just cumulative patches) release CS 3.14 in

summer 2010, based on LV 8.2.1 (final release for 8.2.1?)• upgrade to LV X• new classes for application layer: ControllerBase,

GOGController, GOGControllerGUI

Page 11: CS -Status

February 18, 2010 Dietrich Beck

ControllerBase et al.ControllerBase et al.

• a control system is composed of a main system and sub-systems• each system has an application layer object derived from

ControllerBase• ControllerBase and derived classes have a state machine• with sub-systems: state machine hierarchy

– states propagate up (DIM services)– commands are executed and sent down (DIM commands)

• application layer objects control device objects and their settings

Page 12: CS -Status

February 18, 2010 Dietrich Beck

ControllerBase et al. continuedControllerBase et al. continued

• GOGController class– application layer class derived from ControllerBase– uses the GOG class to manage devices

• LoadSettings• SaveSettings• Execute(All)

• GOGControllerGUI– associated to the GOGController class– just provides methods useful for GUI classes– base class for building experiment specific GUIs– idea experiment specific GUIs mainly programmed with plain

LabVIEW

Page 13: CS -Status

February 18, 2010 Dietrich Beck

State MachineState Machine

Page 14: CS -Status

February 18, 2010 Dietrich Beck

Why GOGController and ...GUIWhy GOGController and ...GUI

• immediate visual feedback from the control system via the state of the "main system"

• simple interaction– Configure (configID)– SaveConfig ((another)configID– PrepareForOperation– (Recover, Reset)– can be automated

• device control– via prepared GUI elements– behind the scenes: use infrastructure provided by GOG class

• easy to maintain/change using standard LabVIEW• virtual facility

Page 15: CS -Status

February 18, 2010 Dietrich Beck

Page 16: CS -Status

February 18, 2010 Dietrich Beck

Page 17: CS -Status

February 18, 2010 Dietrich Beck