Online Project List
From GlueXWiki
Notes
The number of man-weeks needed for a task depends strongly on level of experience of the person doing the work. Estimates below assume some experience, but not a great deal. More experienced people should require less time.
To do: split into eval and implementation phases, prioritize, separate out completed tasks, add notes
In Progress
- 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
- Test Accelerator elog
- We need to test the Accelerator elog without using custom operator scripts.
- estimate 1 man-day effort.
- Status:
- Will use for the solenoid coil test in lieu of separate testing.
- 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 to work Summer 2010 on implementing H-D geometry and functionality.
- Reads DANAEVIO output so has access to reconstruction objects.
- Connect Allen-Bradley PLC to EPICS
- Connect PLC to EPICS channel access using SNS driver
- estimate 2 man-weeks effort
- Status:
- Wesley Moore (from FEL) will do this for us by Summer 2010.
- 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.
- Elliott will add remaining functionality.
- RootSpy
- Fully develop distributed Root histogram creation and viewing package
- estimate 16 man-weeks effort
- Status:
- Dave Lawrence wrote initial version.
- High school student worked on it for a semester.
- Hoping to get another student to complete the package.
- EPICS/Labview connection
- Get package from ORNL/Lansce, decide if feasible for main EPICS gui.
- estimate 4 man-weeks effort
Still To Do
- IRMIS detector/electronics/cable/controls database
- Implement one complete detector system as a test case.
- estimate 6 man-weeks effort
- Allen-Bradley PLC programming
- Learn how to program and use an A-B PLC.
- estimate 12 man-weeks effort
- Control System Studio development environment for EPICS applications
- Download and test (CSS is based on Java/Eclipse).
- estimate 4 man-weeks effort
- EPICS Java channel access library
- Learn how to use the new JCA/CAJ client and server library.
- estimate 4 man-weeks effort
- 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
- cMsg/Labview connection
- Write Linux Labview module that communicates using the cMsg package from the JLab DAQ group.
- estimate 8 man-weeks effort
- SNS EPICS alarm system (BEAST)
- Download and test.
- estimate 4 man-weeks effort
- SNS EPICS Archiver
- Download and test.
- estimate 4 man-weeks effort
- ORNL EPICS backup/restore/compare system (SCORE)
- Download and test.
- estimate 4 man-weeks effort
- 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
- AFECS state machine language
- Learn how to use AFECS from DAQ group.
- estimate 6 man-weeks effort
- cMsg publish/subscribe interprocess communication package
- Learn how to use the cMsg package from the DAQ group.
- estimate 2 man-weeks effort
- Ganglia, NAGIOS and/or MonAlisa 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
- Event display
- Fully develop online event display using bCNU framework.
- estimate 26 man-weeks effort
- Remote access and display of EPICS data
- Investigate mechanisms for remote display of controls data.
- Choose system and implement.
- estimate 8 man-weeks effort
- 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
- Visual DCT - EPICS configuration tool
- Figure out if this might be useful for Hall D.
- estimate 2 man-weeks effort
- EPICS State Notation Language for state machines
- Figure out what SNL is good for and how to use it.
- estimate 4 man-weeks effort
- EPICS CAEN HV control
- Test CLS driver for CAEN HV crates, or find another one.
- estimate 4 man-weeks effort
- Labview CAEN HV control
- Find a Labview control system for CAEN HV crates and test.
- estimate 2 man-weeks effort
- Labview Wiener crate control
- Download module from Wiener and test.
- estimate 2 man-weeks effort
- 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
- OPC control protocol
- Is OPC useful for Hall D? If so, get it and test.
- estimate 4 man-weeks effort
- CAN control protocol
- Learn about CAN and how we might control 3000 devices (FCAL PMT bases).
- estimate 4 man-weeks effort
- 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
- SCONS ("make" replacement)
- Learn about and teach us how to use the SCONS build system.
- estimate 2 man-weeks effort
- EPICS on the web
- Learn how to use CAML and Web2cToolkit.
- estimate 6 man-weeks effort
- 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
- 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
- Configuration database
- Work out strategy for storing, retrieving and archiving detector configuration information (EPICS and non-EPICS information).
- estimate 12 man-weeks effort
- Monitoring and level 3 farm system
- Recommend features needed in monitoring and level 3 farm systems.
- estimate 4 man-weeks effort
- Python scripting language
- Learn about and teach us how to use Python.
- estimate 4 man-weeks effort
- Smart pointers
- Survey available smart pointers and choose one for the online.
- estimate 1 man-week effort
On Hold
- Connect Allen-Bradley PLC to Labview
- Connect PLC to Labview
- estimate 2 man-weeks effort
- Not sure if we need this.
- EPICS JAVAIOC
- Download and test.
- estimate 6 man-weeks effort
- 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.
- EPICS Asyn driver (C++)
- Figure out if it might be useful for Hall D, and if so learn how to use it.
- estimate 4 man-weeks effort
- May not be needed since we may use Java instead. Depends on results of evaluation of JavaIOC and Port driver facility.
- 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.
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.
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