University of Wisconsin at Madison DCOPS DAQ DCOPS DAQ Status James N. Bellinger University of Wisconsin at Madison 11-September-2007
DAQ Process is Finished Runs continuously on Linux Writes laser position fit data to Oracle Scope of readout governed by config DB Controllable via DIM Complete readout cycle takes about 14 minutes
Architecture Master Process Workhorse Process Laser Line Process Starts at boot Forks workhorse Sleeps, checks status If workhorse dead: Clean up and re-fork Laser Line Process Forked process Manages DIM commands Forks subprocesses Fits profiles Stores fit info in Oracle Stores error info in Oracle Shared Memory Requests Laser On/Off Forks telnet to read ports Shared Memory Telnet Telnets to terminal server port Sends commands, reads
Communications DIM Laser On/Off requests Commands to control program state Service of status and error bits Telnet Talk to terminal server, then via RS422 to DCOPS ORACLE Input initial configuration Output laser position fits Output error bits Output revised configuration if it changed
DAQ Plans Agreed procedures for DCS management and updating Additional scripts/documentation as required for the above Continue shakedown runs Move code from private repository /afs/hep.wisc.edu/user/jnb/DCOPS/CVS
Planned Changes May revamp laser profile fitting function: investigating Further gold-plating is not a priority
UN-Planned Changes Mysterious hangs during MTCC2 have not recurred, and are not understood Network contention in final environment?
PVSS Stalled Revamp DIM simulation job at UW Restart development with solid block of time
Utility Work Made available at UW root files of laser profile histograms, taken from Oracle at CERN
Short Term Analysis Plans Add new calibration info to database Test calibration code Hand-verify that this improves the fit! Code CalibDB to COCOA input
Further Info
DIM Commands ABORT kill subprocesses, kill workhorse process STOP finish current readout and then kill workhorse process HALT synonym for STOP RUN start readout loop PAUSE finish current readout and pause STANDBY synonym for PAUSE AREYOUALIVE update status service RUNONCE run readout loop once, also RUN ONCE RESET reread Oracle configuration and re-find background levels SAVEPROFILES write profiles to DB also (costs much space!) DROPPROFILES stop writing profiles to DB (default) SETDCOPSON read a DCOPS regardless of Oracle configuration SETDCOPSOFF don't read a DCOPS regardless of Oracle config
DAQ States The action states of the system are RESETTING PAUSED RUNNING HALTING But these don't reflect the direction of the system, which has a certain inertia. Two states in particular wait until the system has finished a READ cycle before kicking in: PAUSING and HALTING. The system is actually still RUNNING, but what happens next is different. The full set of system states are: RESETTING Automatically transitions to PAUSED or RUNNING depending on future decisions about configuration. (At the moment it transitions to RUNNING) PAUSED --- Allowed transitions to: RUNNING, RUNONCE, HALTING, ABORTING, RESETTING RUNNING --- Allowed transitions to: PAUSED, HALTING, ABORTING PAUSING Automatic transition to PAUSED when read completes. Allowed transition to ABORTING HALTING Automatically dies when read completes ABORTING Automatically dies RUNONCE Automatic transition to PAUSED when read completes Allowed transitions to HALTING, ABORTING