170 likes | 312 Views
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
E N D
CS-Status Results from workshop 2009 what was planned for 2009 what was done in 2009 Statistics Miscellaneous Dietrich Beck
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...) Results from CS Workshop 2009, I Dietrich Beck
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... by the way (1): TTL Line-Driver Module Dietrich Beck
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 by the way (2): FPGA as Multi-Channel-Scaler Dietrich Beck
(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 Results from CS Workshop 2009, II Dietrich Beck
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 Progress in the Past Year (1) Dietrich Beck
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 Progress in the Past Year (2) Dietrich Beck
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 Statistics from SourceForge Dietrich Beck
experiments requiring high flexibility experiments with a large variety of hardware types experiments with up to 10,000 (1M possible) process variables PHELIX SHIPTRAP ISOLTRAP LEBIT data taking Motion CaveA others ... Motion CaveA RISING HITRAP FOPI commissioning REXTRAP TrigaTRAP WITCH development Usage of the CS framework today ClusterTRAP LPT GSI, Germany Mainz, Germany Greifswald, Germany CERN, Switzerland MSU, USA Lanzhou, China Dietrich Beck
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 Other Issues, Outlook Dietrich Beck
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 ControllerBase et al. Dietrich Beck
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 ControllerBase et al. continued Dietrich Beck
State Machine Dietrich Beck
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 Why GOGController and ...GUI Dietrich Beck