Difference between revisions of "Online Project List"

From GlueXWiki
Jump to: navigation, search
m
m
Line 14: Line 14:
  
  
* '''IRMIS'''
+
* '''IRMIS detector/electronics/cable/controls database'''
 
** Implement one complete detector system as a test case.
 
** Implement one complete detector system as a test case.
  
Line 22: Line 22:
  
  
* '''Control System Studio'''
+
* '''Control System Studio development environment for EPICS applications'''
 
** Download and test (CSS is based on Java/Eclipse).
 
** Download and test (CSS is based on Java/Eclipse).
  
Line 30: Line 30:
  
  
* '''Visual DCT'''
+
* '''Visual DCT - EPICS configuration tool'''
 
** Figure out if this might be useful for Hall D.
 
** Figure out if this might be useful for Hall D.
  
Line 39: Line 39:
  
 
* '''cMsg/Labview connection'''
 
* '''cMsg/Labview connection'''
** Write Linux Labview module that communicates using the cMsg API.
+
** Write Linux Labview module that communicates using the cMsg API from the JLab DAQ group.
  
  
Line 46: Line 46:
  
  
* '''EPICS State Notation Language'''
+
* '''EPICS State Notation Language for state machines'''
 
** Figure out what SNL is good for and how to use it.
 
** Figure out what SNL is good for and how to use it.
  
  
* '''EPICS C++ portable CA server'''
+
* '''EPICS C++ portable channel access server'''
 
** Figure out how to use the new C++ PCAS library.   
 
** Figure out how to use the new C++ PCAS library.   
  
Line 102: Line 102:
  
  
* '''OPC'''
+
* '''OPC control protocol'''
 
** Is OPC useful for Hall D?  If so, get it and test.
 
** Is OPC useful for Hall D?  If so, get it and test.
  
  
* '''CAN control'''
+
* '''CAN control protocol'''
 
** Learn about CAN and how we might control 3000 devices (FCAL PMT bases).
 
** Learn about CAN and how we might control 3000 devices (FCAL PMT bases).
  
  
* '''SMBus control'''
+
* '''SMBus control protocol'''
 
** Learn about SMBus and the design of the preamp card distribution box, and how we might control 1000 channels.
 
** Learn about SMBus and the design of the preamp card distribution box, and how we might control 1000 channels.
  
Line 118: Line 118:
  
  
* '''AFECS'''
+
* '''AFECS state machine language'''
 
** Learn how to use AFECS from DAQ group.
 
** Learn how to use AFECS from DAQ group.
  
  
* '''cMsg'''
+
* '''cMsg publish/subscribe interprocess communication package'''
** Learn how to use the cMsg publish/subscribe interprocess communication package from the DAQ group.
+
** Learn how to use the cMsg package from the DAQ group.
  
  
* '''Info Server'''
+
* '''Info Server for generic information storage and retreival'''
 
** Investigate and define role for generic info server (as in Hall B), either based on cMsg or something else.
 
** Investigate and define role for generic info server (as in Hall B), either based on cMsg or something else.
  
  
* '''EVIO'''
+
* '''EVIO event I/O package'''
** Learn how to use the EVIO event I/O package from the DAQ group.  Recommend improvements or extensions.
+
** 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.
 
** Possible improvements:  no fixed block size, dictionary, random access, implement Java DOM.
  
Line 139: Line 139:
  
  
* '''SCONS'''
+
* '''SCONS ("make" replacement)'''
 
** Learn about and teach us how to use the SCONS build system.
 
** Learn about and teach us how to use the SCONS build system.
  

Revision as of 14:20, 26 March 2009

Below I list a number of online projects that need attention, in no particular order. Some are small and self-contained, and thus suitable for individuals at universities. Some need work sooner than others. Feel free to make additions or add comments.


  • ROOT/cMsg histogram transport
    • Use the JLab cMsg interprocess communication package to transport ROOT histograms over a network.


  • Event display
    • Investigate online event display options, especially the system from Dave Heddle (Hall B).


  • Remote access and display of EPICS data
    • Investigate mechanisms for remote display of controls sysChannelWatcher/tem variables under different scenarios (read-only to full control).


  • IRMIS detector/electronics/cable/controls database
    • Implement one complete detector system as a test case.


  • EPICS JAVAIOC
    • Download and test.


  • Control System Studio development environment for EPICS applications
    • Download and test (CSS is based on Java/Eclipse).


  • Allen-Bradley PLC
    • Learn how to use PLC and how to connect to EPICS using SNS driver and to Labview.


  • Visual DCT - EPICS configuration tool
    • Figure out if this might be useful for Hall D.


  • EPICS Asyn driver
    • Figure out if it might be useful for Hall D, and if so learn how to use it.


  • cMsg/Labview connection
    • Write Linux Labview module that communicates using the cMsg API from the JLab DAQ group.


  • EPICS/Labview connection
    • Figure out how to connect EPICS and Labview on Linux, with Labview as both client and server.


  • EPICS State Notation Language for state machines
    • Figure out what SNL is good for and how to use it.


  • EPICS C++ portable channel access server
    • Figure out how to use the new C++ PCAS library.


  • EPICS Java channel access library
    • Learn how to use JCA/CAJ for clients and servers.


  • EPICS CAEN HV control
    • Test CLS driver for CAEN HV crates, or find another one.


  • Labview CAEN HV control
    • Find a Labview control system for CAEN HV crates and test.


  • Labview Wiener crate control
    • Download module from Wiener and test.


  • 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.


  • SNS EPICS alarm system
    • Download and test.


  • SNS EPICS archiver
    • Download and test.


  • ORNL EPICS SCORE backup/restore/compare system
    • Download and test.


  • EPICS base
    • Figure out how to create new record types and new device support.


  • EPICS tools
    • Survey the many EPICS tools available and figure out which ones might be useful for Hall D. Then download and test.


  • J5 database application development system
    • Download, test, and work out how we might use it for database apps and elogs.


  • Test Accelerator elog
    • Test Accelerator elog without using custom operator scripts.


  • OPC control protocol
    • Is OPC useful for Hall D? If so, get it and test.


  • CAN control protocol
    • Learn about CAN and how we might control 3000 devices (FCAL PMT bases).


  • SMBus control protocol
    • Learn about SMBus and the design of the preamp card distribution box, and how we might control 1000 channels.


  • EPICS on the web
    • Learn how to use CAML and Web2cToolkit.


  • AFECS state machine language
    • Learn how to use AFECS from DAQ group.


  • cMsg publish/subscribe interprocess communication package
    • Learn how to use the cMsg package from the DAQ group.


  • Info Server for generic information storage and retreival
    • Investigate and define role for generic info server (as in Hall B), either based on cMsg or something else.


  • 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.


  • Python scripting language
    • Learn about and teach us how to use Python.


  • SCONS ("make" replacement)
    • Learn about and teach us how to use the SCONS build system.


  • Configuration database
    • Work out strategy for storing, retrieving and archiving detector configuration information (EPICS and non-EPICS information).


  • Monitoring and level 3 farm system
    • Recommend features needed in monitoring and level 3 farm systems.