Online Project List

From GlueXWiki
Revision as of 15:11, 6 May 2011 by Wolin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

"Boots-on-the-ground" projects (in no particular order)

  • DANAEVIO
    • Serialize DANA objects to EVIO file.
    • estimate 3 man-weeks effort.
    • Status:
      • almost DONE 7-May-2010 ejw 4 man-weeks
      • handles associated objects, tagged factories, name/tag dictionary
      • currently serializes 20 DANA objects, easy to add more
      • needs updating due to changes to DANA framework 1-Apr-2011


  • EVIODANA
    • Deserialize DANA objects from EVIO file.
    • estimate 2 man-weeks effort.
    • Status:
      • Elliott and Dave L have just begun working on this.


  • Java Online Event Display
    • Implement Hall D geometry and other functionality in Dave Heddle's Java event display framework.
    • estimate 8 man-weeks effort
    • Status:
      • Dave Heddle implemented basic geometry in a few days.
      • CNU student worked Summer 2010 on implementing H-D geometry and functionality.
      • Students will work again Summer 2011 to connect to DANA process and improve user interface.
      • Reads DANAEVIO output so has access to reconstruction objects.


  • Java EVIO
    • Need Java EVIO package implementing same functionality as C++ version
    • estimate 4 man-weeks effort
    • Status:
      • Dave Heddle wrote initial version, Carl Timmer took it over.
      • Version 4 (in preparation) has improved functionality.


  • Remote monitoring of experiment
    • Develop plan for remote monitoring of histograms, EPICS data, etc.
    • estimate 4 man-weeks effort.
    • Status:


  • RootSpy
    • Fully develop distributed Root histogram creation and viewing package.
    • Need plugin, gui, gateway, aggregator, archiver.
    • estimate 12 man-weeks effort
    • Status:
      • Dave Lawrence wrote initial version.
      • High school student worked on it for a semester, CNU summer student too.
      • Will improve and expand as manpower becomes available.


  • Process monitoring
    • Find or develop process monitoring system.
    • estimate 4 man-weeks effort.
    • Status:


  • Hardware monitoring
    • Develop front-end and trigger hardware monitoring system.
    • estimate 6 man-weeks effort.
    • Status:


  • EPICS/Labview connection
    • Many ways to do this.
    • estimate 4 man-weeks effort
    • Status:
      • Used DESY package for coil test, worked fine, not clear how well it scales.
      • Waiting for ORNL pure Labview version


  • IRMIS detector/electronics/cable/controls database
    • Implement one complete detector system as a test case.
    • estimate 6 man-weeks effort
    • Status:
      • Did not work with JBoss.
      • 5-Mah-2011 installing Glassfish on Windows VM.


  • Control System Studio development environment for EPICS applications
    • Download and test (CSS is based on Java/Eclipse).
    • estimate 4 man-weeks effort
    • Status:


  • EPICS Java channel access library
    • Learn how to use the new JCA/CAJ client and server library.
    • estimate 4 man-weeks effort
    • Status:


  • EPICS Port driver (Java)
    • Figure out if it might be useful for Hall D, and if so learn how to use it.
    • estimate 4 man-weeks effort
    • Status:


  • cMsg/Labview connection
    • Write Linux Labview module that communicates using the cMsg package from the JLab DAQ group.
    • estimate 8 man-weeks effort
    • Status:


  • SNS EPICS alarm system (BEAST)
    • Download and test.
    • estimate 4 man-weeks effort
    • Status:


  • SNS EPICS Archiver
    • Download and test.
    • estimate 4 man-weeks effort
    • Status:


  • ORNL EPICS backup/restore/compare system (SCORE)
    • Download and test.
    • estimate 4 man-weeks effort
    • Status:


  • EPICS tools
    • Survey the many EPICS tools available and figure out which ones might be useful for Hall D. Then download and test.
    • estimate 6 man-weeks effort
    • Status:


  • AFECS state machine language
    • Learn how to use AFECS from DAQ group.
    • estimate 6 man-weeks effort
    • Status:


  • cMsg publish/subscribe interprocess communication package
    • Learn how to use the cMsg package from the DAQ group.
    • estimate 2 man-weeks effort
    • Status:


  • Ganglia, NAGIOS, and/or Mon remote monitoring/alarm systems
    • Learn about Ganglia, NAGIOS and MonAlisa and determine which (if any) might be useful.
    • Learn about the NAGIOS connection to EPICS PV's.
    • estimate 4 man-weeks effort
    • Status:


  • Event display
    • Fully develop online event display using bCNU framework.
    • estimate 26 man-weeks effort
    • Status:


  • Remote access and display of EPICS data
    • Investigate mechanisms for remote display of controls data.
    • Choose system and implement.
    • estimate 8 man-weeks effort
    • Status:


  • National Instruments cRIO FPGA system
    • Learn about the NI cRIO system, Labview FPGA programming support, and whether this might be useful in the Hall D trigger system.
    • estimate 2 man-weeks effort
    • Status:


  • Visual DCT - EPICS configuration tool
    • Figure out if this might be useful for Hall D.
    • estimate 2 man-weeks effort
    • Status:


  • EPICS State Notation Language for state machines
    • Figure out what SNL is good for and how to use it.
    • estimate 4 man-weeks effort
    • Status:


  • EPICS Wiener VXS/VME crate control
    • Find or develop driver for Wiener VXS/VME crates.
    • estimate 4 man-weeks effort.
    • Status:


  • EPICS Wiener LV crate control
    • Find or develop driver for Wiener LV crates.
    • estimate 4 man-weeks effort.
    • Status:


  • EPICS CAEN HV control
    • Find or develop driver for CAEN HV crates.
    • estimate 6 man-weeks effort
    • Status:


  • Labview CAEN HV control
    • Find a Labview control system for CAEN HV crates and test.
    • estimate 2 man-weeks effort
    • Status:


  • Labview Wiener crate control
    • Download module from Wiener and test.
    • estimate 2 man-weeks effort
    • Status:


  • J5 database application development system
    • Download, test, and work out how we might use it for database apps and elogs.
    • estimate 6 man-weeks effort
    • Status:


  • OPC control protocol
    • Is OPC useful for Hall D? If so, get it and test.
    • estimate 4 man-weeks effort
    • Status:
      • Likely not needed 5-May-2011


  • CAN control protocol
    • Learn about CAN and how we might control 3000 devices (FCAL PMT bases).
    • estimate 4 man-weeks effort
    • Status:


  • SMBus control protocol
    • Learn about SMBus and the design of the preamp card distribution box, and how we might control 1000 channels.
    • estimate 4 man-weeks effort
    • Status:
      • Likely not needed 5-May-2011


  • Code Management
    • Evaluate alternatives to SVN, e.g. Git or possibly Mercurial.
    • estimate 2 man-weeks effort.
    • Status:


  • SCONS ("make" replacement)
    • Learn about and teach us how to use the SCONS build system.
    • estimate 2 man-weeks effort
    • Status:


  • EPICS on the web
    • Learn how to use CAML and Web2cToolkit.
    • estimate 6 man-weeks effort
    • Status:


  • Info Server for generic information storage and retreival
    • Investigate and define role for generic info server (as in CLAS), either based on cMsg or something else.
    • estimate 4 man-weeks effort
    • Status:


  • EVIO event I/O package
    • Learn how to use the EVIO package from the DAQ group. Recommend improvements or extensions.
    • Possible improvements: no fixed block size, dictionary, random access, implement Java DOM.
    • estimate 2 man-weeks effort
    • Status:
      • Major improvements coming in vsn 4 5-May-2011.


  • Configuration database
    • Work out strategy for storing, retrieving and archiving detector configuration information (EPICS and non-EPICS information).
    • estimate 12 man-weeks effort
    • Status:
      • Offline group working on Calibrations and Conditions Database (CCDB) 5-May-2011


  • Event stream architecture
    • Determing optimal architecture for event stream.
    • I.e. number and topology of event builders, farm nodes, event recorders, etc.
    • estimate 6 man-week effort.
    • Status:


  • Monitoring and level 3 farm system
    • Recommend features needed and architecture for monitoring and level 3 farm systems.
    • estimate 4 man-weeks effort
    • Status:


  • Farm system CODA component
    • Develop CODA component capable of managing monitoring or level 3 farm system.
    • estimate 8 man-weeks effort
    • Status:


  • Self-configuring front end readout list
    • Develop readout list capable of detecting which boards are in a crate and reading them out efficiently.
    • Should also document configuration in Hall D database.
    • estimate 6 man-week effort.
    • Status:


  • Top-level experiment control control system and gui
    • Develop top-level experiment control configuration and associated gui.
    • Combines run control and slow controls into one interface.
    • estimate 6 man-week effort.
    • Status:


  • Event disentangler
    • Develop Hall D specific event disentangler capable of handling full luminosity.
    • estimate 6 man-week effort.
    • Status:


  • Event stream reorderer
    • Develop code to reorder events after monitoring or level 3 farm.
    • estimate 6 man-week effort.
    • Status:


  • Data storage
    • Develop data storage management system.
    • estimate 4 man-weeks effort.
    • Status:


  • Evaluate web service architectures
    • Many possibilities, compare CLARA, SOAP, etc.
    • estimate 1 man-week effort.
    • Status:


  • CLARA-enable DANA framework
    • Allow DANA program to act as web service.
    • estimate 2 man-week effort.
    • Status:


  • Python scripting language
    • Learn about and teach us how to use Python.
    • estimate 4 man-weeks effort
    • Status:


  • Smart pointers
    • Survey available smart pointers and choose one for the online.
    • estimate 1 man-week effort
    • Status:


  • Connect Allen-Bradley PLC to Labview
    • Connect PLC to Labview
    • estimate 2 man-weeks effort
    • Not sure if we need this.
    • Status:
      • I think Yi got this working 5-May-2011.


  • EPICS JAVAIOC and Port Driver framework
    • Evaluate and test for use by Hall D.
    • estimate 4 man-weeks effort
    • Status:
      • Waiting for JAVIOC development effort to complete.


  • EPICS C++ portable channel access server
    • Learn out how to use the new C++ PCAS library.
    • estimate 4 man-weeks effort
    • May not be needed since we probably will use Java instead. Depends on results of evaluation of Java CA package.
    • Status:


  • EPICS Asyn driver framework (C++)
    • Figure out if it might be useful for Hall D, and if so learn how to use it.
    • estimate 3 man-weeks effort
    • May not be needed since we may use Java instead. Depends on results of evaluation of JavaIOC and Port driver facility.
    • Status:


  • EPICS base
    • Figure out how to create new record types and new device support, including use of ASYN driver.
    • estimate 8 man-weeks effort
    • May not be needed since we probably will use Java instead. Depends on results of evaluation of JavaIOC facility.
    • Status:


Completed

  • ROOT/cMsg histogram transport
    • Use the JLab cMsg interprocess communication package to transport ROOT histograms over a network.
    • estimate 1 man-weeks effort
    • DONE 26-Jun-2009 ejw 1 m-day
    • Dave L created ROOTSPY framework based on cMsg transport of ROOT histograms. ROOTSPY will become foundation of remote hist viewing for online and offline.


  • Connect Allen-Bradley PLC to EPICS
    • Connect PLC to EPICS channel access using SNS driver
    • estimate 2 man-weeks effort
    • DONE 1-Nov-2010 1 man-week
      • Wesley Moore (from FEL) installed A-B driver.
      • Hovanes connected to many A-B tags in coil test setup.


  • Test Accelerator elog
    • Test the Accelerator elog without using custom operator scripts.
    • estimate 1 man-day effort.
    • DONE 5-May-1011 1 man-day installation plus many weeks testing
      • We are still using this for the solenoid coil test.
      • Preliminary results: quirky, some bugs, VERY basic, probably not acceptable for Hall D Online use.


  • Allen-Bradley PLC programming
    • Learn how to program and use an A-B PLC.
    • estimate 12 man-weeks effort
    • DONE 1-Mar-2011 many man-weeks
      • Josh Ballard learned how to program PLC from Mark Wissmann and now is our main PLC programmer.
      • Josh also learned how to do HMI programming.


Probably Not Needed

  • HDDM to EVIO converter
    • Convert HDDM to EVIO to feed simulated data to online event display. See online event display item below.
    • estimate 2 man-weeks effort.
    • Status:
      • Using EVIO instead - EJW, Feb 2010