Data Acquisition Operation Manual

LAPP-Annecy
Last update : 25 Jul, 2005



Contents

Introduction
0.  DAQ basic operations
1.  DAQ description
2.  DAQ User Interfaces
3.  The standard state
4.  The supervisor and the Error Logger
5.  Start/Stop procedure for each DAQ process
6 . Start/Stop sequence
7.  List of Experts
8.  References
Appendix A: Useful commands and aliases
Appendix B: Online and offline utilities
Appendix C: Getting data from DAQ
Appendix D: List of Acronyms
Appendix E: How to repair a file or reprocess a data stream




Introduction

This document describes the procedures for operating and monitoring the Virgo Data Acquisition system. A copy of this document should be available in Control Room, in the yellow folder called "Interferometer Procedures", and on the WEB from: http://wwwcascina.virgo.infn.it/commissioning/procedures
It is also available from the Virgo Electronic and Software web page: http://wwwcascina.virgo.infn.it/sDoc

The manual is structured as follow:
Section 0 is a brief description of the most usual operations to be done by the DAQ operator.
Section 1 contains a brief description of the functions ensured by the DAQ system, its architecture and a list of all the DAQ processes.
Section 2 lists and describes the set of Graphical User Interfaces used to start and monitor the DAQ processes.
Section 3 describes what should be the standard state of the DAQ system when everything is running correctly.
Section 4 describes the procedure to start/stop and check the Supervisor process. Currently, this process is not used by the DAQ.
Section 5 describes in detail each DAQ process , including start and stop procedures, known problems and specific commands.
Section 6 contains the sequence of operations to restart the DAQ from scratch or to fully stop it.
Section 7 provides the list of expert people to be contacted in case of problems (during working hours).
Section 8 contains a list of documents providing additional information about the DAQ system.

In addition, some appendices provide a list of useful commands and aliases (A) a list of utilities to monitor the DAQ processes (B), some conditions to get data online (C) and a list of acronyms used in the document (D).

A list of people on-call and reachable by phone outside working hours is given at the following web page: http://www.ego-gw.it/on_call/display.aspx

Current status of the DAQ processes can be found on the WEB page: http://wwwcascina.virgo.infn.it/sDoc
Currently used DAQ software versions can be found in the file /virgoData/DAQ/ClDaqCollect.cfg

IMPORTANT: to start/stop any DAQ process, DAQ user interface or DAQ utility, you must be under the account "virgorun" (or account "daq" if "virgorun" does not work).



0.  DAQ basic operations

Are described here some basic rules and operations to follow when operating the Virgo DAQ:




1.  DAQ description

1.1  The DAQ processes

The DAQ includes the following softwares:

Used to run  the following processes:
 
Name on
graphical interface
Cm Name
Function
CPU
Ethernet
interface
TiServer TiServer Master Timing Server rio11a 10 Mb





FbfMoniCb FbfMoniCb Fast Frame Builder for Central Building Env. Monitoring rio39a 100 Mb
FbfMoniMc FbfMoniMc Fast Frame Builder for Mode Cleaner Building Env. Monitoring rio61a 10 Mb
FbfMoniNe FbfMoniNe Fast Frame Builder for North End Building Env. Monitoring rio75a 10 Mb
FbfMoniWe FbfMoniWe Fast Frame Builder for West End Building Env. Monitoring rio85a 10 Mb
FbfDetP FbfDetP Fast Frame Builder for photodiodes data (Pr28) rio14a 100 Mb
FbfDet FbfDet Fast Frame Builder for photodiodes + GC + Calibration data rio16a 100 Mb
FbfNe FbfNe Fast Frame Builder for North End photodiodes rio79a 100 Mb
FbfWe FbfWe Fast Frame Builder for West End photodiodes rio89a 100 Mb
FbfSusp FbfSusp Fast Frame Builder for Suspensions data rio17a 100 Mb
FbfInj FbfInj Fast Frame Builder for Injection system data rio17b 100 Mb





FbsMoni FbsMoni Slow Frame Builder for injection system (LaDiode) daq1 1 Gb
FbsSusp FbsSusp Slow Frame Builder for temperatures and suspensions daq2 1 Gb
FbsDet FbsDet Slow Frame Builder for Lo, Vb, Sr of detection system daq3 1 Gb
FbsSt FbsSt Slow Frame Builder for vacuum and daq monitoring daq9 1 Gb





FbmMoni FbmMoni Main Frame Builder for Environment Monitoring daq line daq1 1 Gb
MoniCsm1 FbmMoniCsm1 main consumer daq1 1 Gb
MoniUsers FbmMoniUsers consumer dedicated to online connections daq1 1 Gb
MoniShift FbmMoniShift consumer dedicated to online connections from operators daq1 1 Gb
Fbt50Moni Fbt50Moni consumer resampling data at 50Hz daq1 1 Gb





FbmSusp FbmSusp Main Frame Builder for Suspensions daq line daq2 1 Gb
SuspCsm1 FbmSuspCsm1 main consumer daq2 1 Gb
SuspUsers FbmSuspUsers consumer dedicated to online connections daq2 1 Gb
SuspShift FbmSuspShift consumer dedicated to online connections from operators daq2 1 Gb
Fbt50Susp Fbt50Susp consumer resampling data at 50Hz daq2 1 Gb





FbmDet FbmDet Main Frame Builder for Detection daq line daq3 1 Gb
DetCsm1 FbmDetCsm1 main consumer daq3 1 Gb
DetUsers FbmDetUsers consumer dedicated to online connections daq3 1 Gb
DetShift FbmDetShift consumer dedicated to online connections from operators daq3 1 Gb
Fbt50Det Fbt50Det consumer resampling data at 50 Hz daq3 1 Gb





FbmMain FbmMain Central Main Frame Builder daq4 1 Gb
MainUsers FbmMainUsers consumer dedicated to online connections daq4 1 Gb
MainShift FbmMainShift consumer dedicated to online connections from operators daq4 1 Gb
MainSt FbmMainSt consumer sending data to FbmSt daq4 1 Gb
MainDM FbmMainDM consumer sending data to FbmDM daq4 1 Gb





FbmSt FbmSt Last Main Frame Builder before data storage olserver10 1 Gb
StRaw FbmStRaw consumer sending data to raw data storage olserver10 1 Gb
StRawBack FbmStRawBack consumer sending data to backup data storage olserver10 1 Gb
StDy FbmStDy consumer dedicated to online connections with dataDisplay olserver10 1 Gb





Fbm50 Fbm50 Main Frame Builder for 50Hz data olserver10 1 Gb
Fbm50Write Fbm50Write consumer of Fbm50 (writes on disk in /data/50Hz) olserver10 1 Gb
Fbm50Users Fbm50Users consumer dedicated to 50Hz data online connections with dataDisplay olserver10 1 Gb





Trend FbtMain Trend Frame Builder (writes on disk in /data/trenddata) olserver10 1 Gb
RawStol FdWRawStol data writer (writes on disk in /data/raw) stol1 1 Gb
RawBack FdWRawBack data writer backup (writes on disk in /data/rawback) stol2 1 Gb





FmRaw FmRaw frames monitor for raw data (updates /virgoData/ffl/raw.ffl) olserver7 1 Gb
Fm50Hz Fm50Hz frames monitor for 50Hz data (updates /virgoData/ffl/50Hz.ffl) olserver7 1 Gb
FmTrend FmTrend frames monitor for trend data (updates /virgoData/ffl/trend.ffl) olserver7 1 Gb





MainAlp
FbmMainAlp
Consumer of FbmMain sending data to FdAlp
olserver1
1 Gb
FdAlp
FdAlp
FdIO process that provides data to Alp and Detector Monitoring
olserver1
1 Gb
AlpDM
FdAlpDM
FdIO process that propagates data from FdAlp to FbmDM olserver1
1 Gb
FbmDM FbmDM Main Frame Builder for detector monitoring algorithms olserver1 1 Gb





Monis
Monis
TiMoni, SuspMoni, DetMoni, AliMoni, InjMoni, VacuumMoni
olserver1
1 Gb
FbmQc
FbmQc
Main Frame Builder that collects the Monis results
olserver1
1 Gb
QcMoni
QcMoni
get Monis results from FbmQc and creates quality flags web page
olserver1
1 Gb

table 1: DAQ  and Detector Monitoring processes

First column of table 1 contains the processes names used in the GUI described in the next section. They are sometimes different of the processes Cm names.


1.2  DAQ Configuration and DAQ architecture:

The DAQ configuration can be extracted from the configuration files used by the DAQ user interface:
ClDaqCollect.cfg,
ClDaqData.cfg
available in the /virgoData/DAQ directory.
These configuration files contain the version, the log file path and the configuration file path of each DAQ software process.

The Data Acquisition is structured in three lines: MONI, SUSP and DET.

The data coming from those 3 DAQ lines are merged by a central Main Frame Builder: FbmMain. At the output of FbmMain, the frames are sent in parallel to an other main frame builder (FbmSt) and to a main frame builder dedicated to online detector monitoring (FbmDM). Data created by the detector monitoring algorithms are sent also to FbmSt. This last main frame builder sends frames to data storage in /data/rawdata. Frames are also sent to the process FbtMain which produces a trend data stream, stored in /data/trenddata. In parallel, each of the 3 lines provides frames containing the data resampled at 50 Hz. Such 50 Hz frames are collected and merged by the Main Frame Builder Fbm50. The 50 Hz data stream produced by Fbm50 is written on disk by Fbm50Write and stored in /data/50Hz.
schemeDaqCollect

figure 1
 

schemeDaqData

figure 2


schemeDM

figure 3





2.  DAQ User Interfaces

A set of graphical user interface panels, allow to monitor and to control the DAQ processes. Each interface can be started by clicking in the background with the left button of the mouse and choosing in the menu "Daq Tools" the appropriate item "ClDaqCollect", "ClDaqData" or "ClDM".
You can also use one of the following commands:

      Cl   /virgoData/DAQ/ClDaqCollect.cfg      (for data collection and storage)
      Cl   /virgoData/DAQ/ClDaqData.cfg         (for online data processing and monitoring)
      Cl   /virgoData/DM/ClDM.cfg                 (for online detector monitoring)

where "Cl" is an alias for the graphical client used (type "alias Cl" if you need to know the full path).
Each of those panels shows the current status of the DAQ processes and some warning or errors messages. The informations provided by those interfaces, updated every 10 seconds, can be found also on the web: wwwcascina.virgo.infn.it/sDoc  or by clicking one of the following links:  All , Collect , Data , or DM.
 

2.1 ClDaqCollect

Description:
This interface allows to monitor and to control all the processes involved in the data collection and storage. It runs normally on the ctrl9 or ctrl11 workstation under the account "virgorun".
The following picture shows the ClDaqCollect interface as it looks when not all the processes are running.

Each line corresponds to a DAQ process. The name of the process appears on the left button of the line (caution: this name is sometimes a truncation of the real Cm Name of the process), while the status of the process is shown by the color of this button. A menu, containing all the actions that you can perform on a given process, appears when clicking on the button with the
right button of the mouse. To edit the logfile of a process, just click on the small arrow next to the right button of the process line. The color of the arrow indicates the highest error level encountered since the last time the logfile was edited. The white line at the right of the arrow contains some specific informations provided by the process. This information is typically updated every few seconds. Any warning or error message put in the logfile will appear also in the upper white window of the DAQ interface.

Process:
ClFull.exe  Version: (see introduction or type "alias Cl")   Machine: ctrl11

data base / Configuration file:
The configuration file is /virgoData/DAQ/ClDaqCollect.cfg

Check:
If you cannot find the user interface on ctrl11, you can check if it is running by typing:
   ps -ef | grep ClDaqCollect
If you do not get an answer (a line with name of the process), you should restart it.

Start:
Be sure to be logged as "virgorun" and type:
  Cl  /virgoData/DAQ/ClDaqCollect.cfg
If it does not start, call the expert.

Stop:
To stop the GUI, click on the cross at the right-top corner of the interface window.
If the interface does not stop, call the expert.

Specific actions:
Choosing "display server status" in the left button menu of one process (one line of the interface panel), shows informations like the cpu where is running the process, the date of start, the memory consumption of the process, etc...
Several other specific actions are available. Type [F1] key to get the online help.

Error logger / log file:
The error logger is not used by the DAQ interface. Logfiles are produced in /virgoLog/Cl.

Typical error message:
None

Documentation:
None. Type [F1] to get the online help.
 
 

2.2 ClDaqData

Description:
This interface allows to monitor and control all the processes involved in the online processing or monitoring within the DAQ chain.
It runs normally on the ctrl9 or ctrl11 workstation under the virgorun account.
The following picture shows the ClDaqData interface as it looks today.

Process:
Cl.exe  Version: (see introduction or type "alias Cl")  Machine: ctrl11

data base / Configuration file:
The configuration file is /virgoData/DAQ/ClDaqData.cfg

Check:
If you cannot find the user interface on ctrl11, you can check if it is running by typing:
    ps -ef | grep ClDaqData
If you get no answer, restart the client.

Start:
Be sure to be logged as "virgorun" and type:
   Cl  /virgoData/DAQ/ClDaqData.cfg
If the interface does not start, call the expert.

Stop:
To stop the GUI, click on the cross at the right-top corner of the interface window.
If it does not stop, call the expert.

Specific actions:
Choosing "display server status" in the left button menu of one process (one line of the interface panel), shows informations like the cpu where is running the process, the date of start, the memory consumption of the process, etc...
Several other specific actions are available. Type [F1] key to get the online help.

Error logger / log file:
The error logger is not used by the DAQ interface. Logfiles are produced in /virgoLog/Cl.

Typical error message:
None

Documentation:
None. Type [F1] to get the online help.


2.1 ClDM

Description:
This interface allows to monitor and to control all the processes involved in the online detector monitoring. It runs normally on the ctrl9 or ctrl11 workstation under the account "virgorun".
The following picture shows the ClDM interface as it looks today.

ClDM

Each line corresponds to a Detector Monitoring process. The name of the process appears on the left button of the line (caution: this name is sometimes a truncation of the real Cm Name of the process), while the status of the process is shown by the color of this button. A menu, containing all the actions that you can perform on a given process, appears when clicking on the button with the right button of the mouse. To edit the logfile of a process, just click on the small arrow of the process line. The color of the arrow indicates the higher error level encountered since the last time the logfile was edited. The white line at the right of the arrow contains some specific informations provided by the process. This information is typically updated every few seconds. Any warning or error message put in the logfile will appear also in the upper white window of the GUI.

Process:
Cl.exe  Version: (see introduction or type "alias Cl")   Machine: ctrl11

data base / Configuration file:
The configuration file is /virgoData/DM/ClDM.cfg

Check:
If you cannot find the user interface on ctrl11, you can check if it is running by typing:
   ps -ef | grep ClDM
If you get no answer, restart the client.

Start:
Be sure to be logged as "virgorun" and type:
  Cl  /virgoData/DM/ClDM.cfg
If the interface does not start, call the expert.

Stop:
To stop the GUI, click on the cross at the right-top corner of the interface window.
If it does not stop, call the expert.

Specific actions:
Choosing "display server status" in the button menu of one process, shows informations like the cpu where is running the process, the date of start, the memory consumption of the process, etc...
Several other specific actions are available. Type [F1] key to get the online help.

Error logger / log file:
The error logger is not used by the GUI. Logfiles are produced in /virgoLog/Cl.

Typical error message:
None

Documentation:
None. Type [F1] to get the online help.
 




3.  The standard state

The DAQ graphical user interface available on ctrl11 or ctrl9 workstation allows to check that all the DAQ processes are active.
This means that left button of each line is green and is followed by the word "active" or "golden".
In addition, to be sure that all foreseen data are taken, you must check for each Fbs, Fbf or Fbm status line that there is no "lost" source of data.

If left button is yellow, orange or dark red: this may be a problem of Cm connection between the process and the GUI.

If one arrow is not green: an ERROR or a WARNING message has been written in the logfile
  • If arrow is red: it means that an error message was sent to logfile. Click on the arrow and look at the last ERROR message showed in the logfile.
  • If you can not understand the logfile message, call the expert.
  • If you observe some "lost" or "absent" sources of frames:

    If some channels are missing: Use of the Electronic logbook

    Any problem observed in the DAQ processes should be mentioned in the Electronic logbook, in the task page "DAQ". You should at least describe the problem encountered, with its GPS time (just type "gps" to get it) and the action that solved the problem.




    4.  The Supervisor and the Error Logger

    Currently, the DAQ servers use the Su library and standards Su states and fonctionalities are implemented, but use only specific GUI (Cl).
    Concerning Error Logger, its usage is implemented in all the DAQ processes (through the Cfg library). Sending of messages to the Error Logger can be activated or desactivated from the DAQ graphical interface or from the configuration file of each process.




    5.  Start/Stop procedure for each DAQ process

    For any DAQ process:




    5.1 TiServer

    Description:
    This server controls the synchronization timing signals sent to various readouts used in interferometer control loops
    and data acquisition. It sends also the GPS time stamp to the Main Frame Builders and to the Slow Frame Builders.
    This server sends also slow monitoring data that includes quality flags, timing checks and informations about the GPS system used.

    Process:
    TiServer.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is /virgoData/TiM/TiServer.cfg

    Check:
    On the ClDaqCollect graphical interface, in the "TiServer" status line, the last displayed message should be something like:
            fr:20258 run00126 GPS:738059905 - 2700 - Qc 0x0000c022
    with FR# and GTimeS incremented regularly and a green color for the button.

    Specific actions:
    "Edit config" in the button menu: edit the configuration file.
    "NewRun" in the button menu: to start manually a new run. New runs are automatically managed by the TiServer process, so you should not have to use this action.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the /virgoLog/TiM/TiServer directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the GUI.

    Typical error message:
    None

    Data outputs:
    To visualize the slow monitoring data sent by TiServer, type "dataDisplay" and read the files in /data/trenddata.

    Documentation:
    /virgoApp/Ti/.../doc/TimingSystem.ps




    5.2 FbfX  (X=Susp , Inj, Det , DetP, Ne, We, MoniCb, MoniMc, MoniNe, MoniWe)

    Description:
    FbfX are the Fast Frame Builders that collects data from the front-end readouts. Depending of the origin of the data, different Fbf processes are concerned:

       FbfSusp collects the data sent through DOL by suspension system and send them under frame format to FbmSusp, through Ethernet network.
       FbfInj collects the data sent through DOL by injection system and send them under frame format to FbmSusp.

       FbfDet collects the data sent through DOL by detection system and send them under frame format to FbmDet.
       FbfDetP collects the data sent through DOL by detection system (crate C28) and send them under frame format to FbmDet.
       FbfNe collects the data sent through DOL by North End detection and suspension systems and send frames to FbmDet and FbmSusp.
       FbfWe collects the data sent through DOL by West End detection and suspension systems and send frames to FbmDet and FbmSusp.

       FbfMoniCb collects the data from ADCs (Central Building env. monitoring) and send them under frame format to FbmMoni.
       FbfMoniMc collects the data from ADCs (Mode Cleaner Building env. monitoring) and send them under frame format to FbmMoni.
       FbfMoniNe collects the data from ADCs (North End Building env. monitoring) and send them under frame format to FbmMoni.
       FbfMoniWe collects the data from ADCs (West End Building env. monitoring) and send them under frame format to FbmMoni.

    The following procedure applies to FbfSusp but is valuable for the other Fast Frame Builders.

    Process:
    FbfServer.exe  Version (see introduction)  Machines: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/Fbf and are defined in the file /virgoData/DAQ/ClDaqCollect.cfg

    Check:
    On the ClDaqCollect graphical interface, in the "FbfX" status line, the last displayed message should be something like:
            fr:03445 (1340.326 KB)  [0/4]
    with FR# incremented regularly and a green color on the two buttons of this line.
    If some slow monitoring station is lost, its name should appear in the status line.

    Specific actions:
    "Edit config" in the button menu: edit the configuration file.
    "display server status" in the left button menu: show informations about the process, include the rio CPU where it runs.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/Fbf directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize some of the data sent by FbfSusp, you can type for instance dataDisplay and connect to FbmSuspUsers.

    Documentation:
    None




    5.3 FbsX (X=Moni, Susp, Det)

    Description:
    At every TiServer interrupt, this server asks for data to the Slow Monitoring Stations. It then collects the data sent by them and send frames to FbmMoni, through Ethernet network. Current Slow Monitoring Stations are:

    Process:
    Fbs.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/Fbs and are defined in the file /virgoData/DAQ/ClDaqCollect.cfg

    Check:
    On the ClDaqCollect graphical interface, in the "FbsX" status line, the last displayed message should be something like:
            fr:20214 (9.265 KB) Latency:1
    with fr incremented regularly and a green color on the button of this line.
    If some slow monitoring station is lost, its name should appear in the status line.

    Specific actions:
    "Edit config" in the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/Fbs directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize the slow monitoring data sent by FbsX, type "dataDisplay" and read the files in /data/trenddata.

    Documentation:
    None




    5.4 FbmX (X=Moni, Susp, Det, Main, St, Alp, DM, Qc)

    Description:
    This server is the producer part of the Main Frame Builder. It collects the frames sent by the sources present in the DAQ line and merge them. The resulting frames are written in a shared memory, ready to be distributed on the Ethernet network.

    Process:
    Fbm.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/Fbm and are defined in the file /virgoData/DAQ/ClDaqCollect.cfg

    Check:
    On the ClDaqCollect graphical interface, in the "FbmX" status line, the last displayed message should be something like:
            fr:20255 (0.85 MB) latency:2 adc:626 sms:19
    with fr incremented regularly and a green color on the button of this line.
    If some source of frames is lost, its name should appear in the status line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/Fbm directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If starting FbmMoni, you get the message "Shm segment problem when recreating it: key=...",
    then, using the command "ipcs" on the daq1 workstation, you can check the shared memory
    segment segment ID and "ipcrm -m ID" to delete the shared memory segment.
    Then, restart FbmMoni. If it does not start, call the expert.

    Data outputs:
    To visualize the data sent by FbmX, type "dataDisplay", choose "Read From Cm server" in the Input Menu and click on "FbmXUsers".

    Documentation:
    /virgoApp/Fbm/.../doc/FbmDoc.ps




    5.5 FbmXY  (X= Moni, Susp, Det, Main, St, DM)  (Y= Csm1, Raw, RawBack, Dy, Shift, Users, Trend, St, DM)

    Description:
    This server is the consumer part of a Main Frame Builder. It reads frames in shared memory and sends them on the Ethernet network.
    We describe here the consumers for X=Main. Same procedure applies for X=Moni, Susp or Det if you replace "Main" by "Moni", "Susp" or "Det" in the text.
    Y=Csm1, St, DM: this is an important consumer. It has the same process priority on the machine as the producer.
    Y=Raw, RawBack : this consumer sends frames to a process (Raw or RawBack) that writes data on disk.
    Y=Shift  : this consumer allows only connections from some predefinite dataDisplay
    Y=Users, Dy : this consumer is for online connections (8 connections maximum)

    Process:
    FdCsm.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/Fbm
    and are defined in ClDaqCollect.cfg and ClDaqData.cfg.

    Check:
    On the ClDaqCollect GUI, in the "StRaw" status line, the last displayed message should be something like:
          fr:20253 (1.36 MB) latency:2 adc:397 sms:40 out:1 (FdWRaw  (1393.647 kB))
    with fr incremented regularly and a green color on the button of this line.
    The names between parenthesis (like FdWRaw) are the outputs to which the consumer sends frames (each followed by the size
    of the frames in kiloBytes).

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/Fbm/Csm directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If the corresponding producer FbmX is not present anymore, the message on status line becomes
         no shared memory
    until the producer restarts. Then, the consumer should reconnect automatically to the rebuilt shared memory segment.

    Data outputs:
    To visualize the data sent by FbmStRaw, type "dataDisplay" and read the file /virgoData/ffl/raw.ffl.

    Documentation:
    /virgoApp/Fd/.../doc/FdDoc.ps




    5.6 FbtMain

    Description:
    This server is the trend frame builder. It collects the frames produced by the producer FbmMain and sent by the consumer FbmMainTrend. From each channel of those frames, it computes trend data (min, max, mean and rms computed over each frame) and produces trend frames of 30 mn each, written on disk in the directory /data/trenddata.

    Process:
    Fbt.exe   Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is /virgoData/Fbt/FbtMain.cfg

    Check:
    On the ClDaqData graphical interface, in the "FbtMain" status line, the last displayed message should be something like:
            fr:20253 (1.36 MB) latency:4s 7394 trend channels; ADC size: 16.8 MB; 0 frames in the output buffer
    with fr incremented regularly and a green color on the button of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in /virgoLog/Fbt directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize the trend data sent by FbtMain, type "dataDisplay" and read the files in /data/trenddata.

    Documentation:
    /virgoApp/Fbt/.../doc/Fbt.pdf




    5.9 Fbt50X  (X= Moni, Susp, Det)

    Description:
    This server is the consumer part of the Main Frame Builder dedicated to the resampling of data at 50 Hz.

    Process:
    Fbt50.exe  Version: (see introduction)  Machine: (see table 1)  Account: daq

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/Fbt50
    and are defined in the file /virgoData/DAQ/ClDaqData.cfg

    Check:
    On the ClDaqData graphical interface, in the "Fbt50X" status line, the last displayed message should be something like:
            fr20213  (0.86 MB)  latency:2 (Input=0.011s Process=0.002s Output=0.012s)
    with fr incremented regularly and a green color on the button of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the /virgoLog/Fbt50 directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize the data sent by Fbt50X, type "dataDisplay" and read the file /virgoData/ffl/50Hz.ffl.

    Documentation:
    /virgoApp/Fbt50/.../doc/Fbt50.pdf



    5.7 Fbm50

    Description:
    This server is a Main Frame Builder producer dedicated to the collection of the data resampled at 50 Hz. It merges the frames received from Fbt50Moni, Fbt50Susp and Fbt50Det. The resulting frames are sent by a dedicated consumer that writes them on disk: Fbt50Write.

    Process:
    Fbm.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is /virgoData/Fbm/Fbm50.cfg

    Check:
    On the ClDaqData graphical interface, in the "Fbm50" status line, the last displayed message should be something like:
            fr20254  (0.27 MB) latency:3  adc:568  sms:56
    with fr incremented regularly and a green color on the button of this line.
    If some source of frames Fbt50Moni, Fbt50Susp or Fbt50Det is lost, its name should appear in the status line.

    Specific actions:
    "Edit config" on the right button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the /virgoLog/Fbm/Fbm50 directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If starting Fbm50, you get the message "Shm segment problem when recreating it: key=...",
    then, using the command "ipcs" on the daq1 workstation, you can check the shared memory
    segment segment ID and "ipcrm -m ID" to delete the shared memory segment.
    Then, restart it. If it does not start, call the expert.

    Data outputs:
    To visualize the data sent by Fbm50, type "dataDisplay" and read the file /virgoData/ffl/50Hz.ffl.

    Documentation:
    /virgoApp/Fbm/.../doc/FbmDoc.ps




    5.8 Fbt50Write

    Description:
    This server is the process that writes the 50Hz data on disk.

    Process:
    Fbt50.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is: /virgoData/Fbt50/Fbt50Write.cfg

    Check:
    On the ClDaqData graphical interface, in the "Fbt50Write" status line, the last displayed message should be something like:
            fr20252  (0.27 MB)  latency:3  (Input=0.011s Process=0.002s Output=0.012s)
    with fr incremented regularly and a green color on the button of this line.

    Specific actions:
    "config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the /virgoLog/Fbt50 directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize the data written by Fbt50Write, type "dataDisplay" and read the file virgoData/ffl/50Hz.ffl.

    Documentation:
    /virgoApp/Fbt50/.../doc/Fbt50.pdf



    5.9 FdWX  (X=Raw , RawBack)

    Description:
    This server is the process that writes the raw data (or the backup raw data) on disk.

    Process:
    FdW.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is: /virgoData/FdW/FdWX.cfg

    Check:
    On the ClDaqCollect graphical interface, in the "FdWX" status line, the last displayed message should be something like:
            fr:00679 (3.50 MB) latency:6s   File:/storage/st12/v1/data/DAQ/rawdata/V-757953300-12-Jan-2004-15h35-300F.gwf
    with fr incremented regularly and a green color on the two buttons of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the /virgoLog/FdW directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    None

    Data outputs:
    To visualize the data written by FdWRaw, type "dataDisplay" and read the file /virgoData/ffl/raw.ffl.

    Documentation:
    /virgoApp/FdW/.../doc/FdWDoc.html



    5.10 FmX  (X=Raw, RawBack, 50Hz, Trend)

    Description:
    This server is the process that monitors the frames written on disk and update the ffl (frame files list) files in /virgoData/ffl

    Process:
    Fm.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is: /virgoData/Fm/FmX.cfg

    Check:
    On the ClDaqData graphical interface, in the "FmX" status line, the last displayed message should have a file name terminated by
            NOT_YET_CLOSED
    and a green color on the two buttons of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are put in a log file in the directory /virgoLog/Fm. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    On the ClDM GUI, in the status line, the last displayed message should be something like:
          File V-8060453302-27-Jul-2005_NOT_YET_CLOSED increase. Last check....
    with a green color on the button of this line.

    Data outputs:
    Updated ffl file is in /virgoData/ffl: raw.ffl, 50Hz.ffl or trend.ffl

    Documentation:
    None
     

    5.5 FdX  (X= Alp, AlpDM)

    Description:
    Those servers propagates frames from the DAQ to Alp and FbmDM.

    Process:
    FdMoni.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files used are in /virgoData/DM

    Check:
    On the ClDM GUI, in the status line, the last displayed message should be something like:
          fr:20253 ...
    with fr incremented regularly and a green color on the button of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/Fbm/Csm directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If the corresponding producer FbmX is not present anymore, the message on status line becomes
         no shared memory
    until the producer restarts. Then, the consumer should reconnect automatically to the rebuilt shared memory segment.

    Data outputs:
    To visualize the data sent by FbmStRaw, type "dataDisplay" and read the file /virgoData/ffl/raw.ffl.

    Documentation:
    /virgoApp/Fd/.../doc/FdDoc.ps



    5.5 Monis  (AliMoni, SuspMoni, DetMoni, InjMoni, VacuumMoni, TiMoni)

    Description:
    Those servers read frames in the FbmDM shared memory and computes some quality flags according to tests defined in their configuration file.

    Process:
    MoniServer.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration files are in /virgoData/Moni

    Check:
    On the ClDM GUI, in the status line, the last displayed message should be something like:
          fr:20253  Qc_Suspensions=0x4ff itfState=Alp_Locking..LOCK_STEP_STATUS=9.00 ...
    with fr incremented regularly and a green color on the button of the line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/xxxMoni directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If the FbmDM producer is not present anymore, the message on status line becomes
         no shared memory
    until the producer restarts. Then, the Moni process should reconnect automatically to the rebuilt shared memory segment.

    Data outputs:
    To visualize the data sent by the Monis, type "dataDisplay" and read the file /virgoData/ffl/trend.ffl

    Documentation:
    No doc



    5.5 QcMoni 

    Description:
    This server reads frames in FbmQc shared memory and build the data quality flags web page. It creates also the ScienceMode flag.

    Process:
    QcMoni.exe  Version: (see introduction)  Machine: (see table 1)

    Data Base / Configuration file:
    The use of database is not activated. The configuration file is in /virgoData/QcMoni
    and is defined in ClDM.cfg.

    Check:
    On the ClDM GUI, in the "QcMoni" status line, the last displayed message should be something like:
          fr:20253 Adjusting Mode; ...
    with fr incremented regularly and a green color on the button of this line.

    Specific actions:
    "Edit config" on the button menu: edit the configuration file.

    Error Logger / Log file:
    Errors messages and warnings are  put in a log file in the /virgoLog/QcMoni/QcMoni directory. In parallel, messages are sent to the Error Logger if the functionality is activated from the graphical interface.

    Typical error message:
    If the corresponding producer FbmQc is not present anymore, the message on status line becomes
         no shared memory
    until the producer FbmQc is restarted. Then, QcMoni should reconnect automatically to the rebuilt shared memory segment.

    Data outputs:
    To visualize the data sent by QcMoni, type "dataDisplay" and read the file /virgoData/ffl/trend.ffl.

    Documentation:
    No doc.









    6.  Start/Stop procedure for the DAQ

    Premilinary remark: any start and stop of a DAQ should be done from the GUI.

    A priori, no order is required to start the DAQ servers, except the Master Timing that must be present first (like for instance the Cm Name Server). However, here is a recommanded procedure for Start and Stop of the DAQ that allows to have always frames containing all the data channels at the data storage level. Into brackets [ ] are the steps stopping or starting not really DAQ processes.

    6.1  DAQ Stop Procedure:

    1. Stop the data storage processes: FdWRaw, FdWRawBack, Fbt50Write, FbtMain
    2. Stop the consumers dedicated to data storage: FbmStRaw, FbmStRawBack, Fbt50CsmW
    3.    [Stop the Slow Monitoring Stations]
    4.    [Stop the front-end readouts (Pr, Qr, Gx, suspension servers...) (be sure that suspension's control loops have been opened before!)]
    5. Stop the Fast Frame Builders and Slow Frame Builders.
    6. Stop the Main Frame Builders producers FbmMain, FbmSt and FbmDM, Fbm50, FdAlp, the Monis, QcMoni
    7. Stop the local Main Frame Builders consumers (including Fbt50Moni, Fbt50Susp and Fbt50Det)
    8. Stop the local Main Frame Builders producers FbmMoni, FbmSusp and FbmDet
    9. Stop the Timing Server if needed.
    10. Switch off the crates if needed (C11, C12, C17, C16, C14, C39, C61, C75, C85)
    6.2  DAQ Start Procedure:
    1. Switch on the crates if needed (C11, C12, C17, C16, C14, C39, C61, C75, C85)
    2. Start the Timing Server if needed (caution: if TiServer crate was off, remove first all the files /virgoData/Ti/Tixx)
    3. Start the local Main Frame Builders producers FbmMoni, FbmSusp and FbmDet
    4. Start the Main Frame Builders producers FbmMain, FbmSt, FbmDM, Fbm50, FdAlp, the Monis, QcMoni
    5. Start the local Main Frame Builders consumers (including Fbt50Moni, Fbt50Susp and Fbt50Det)
    6.    [Start the Slow Monitoring Stations]
    7. Start the Fast Frame Builders and Slow Frame Builders
    8.    [Start the front-end readouts (Pr, Qr, Gx, suspension servers...)]
    9. Start consumers dedicated to data storage: FbmStRaw, FbmStRawBack, Fbt50CsmW
    10. Start the data storage processes: FdWRaw, FdWRawBack, Fbt50Write, FbtMain





    7.  List of experts


    8.  References


    Appendix A:  Useful commands and aliases
    man <command>: to get usage and informations about the Unix command <command>.

    cm names : to get the current list of Cm names.

    cm connects | grep Shift : to get the current list of Cm connections with only the lines containing the string "Shift".

    cm cleanup toto : to remove the name "toto" from the Cm names list (works only if the associated server is not running).

    ipcs : to get the list of shared memory segments created. First column gives the ID of the segment. [OSF1, Linux]

    ipcrm -m <ID> : to delete a shared memory segment identified by ID. Use with caution! [OSF1, Linux]

    ps -axF : to get, on RIO cpu, the list of running processes and associated file descriptors. [LynxOS]

    ps -ef : to get, on Alpha workstations, the list of running processes. [OSF1, Linux]

    kill -n <ID> : to kill a process identified by ID. n=2 is like Ctrl-C, n=3 is recommended. n=9 must be used only if nothing else works. The ID of the process is given in the first column of "ps -ef".

    top : to get the list of active processes with cpu and memory consomption. [OSF1, Linux]

    gps : to get the current GPS time from the Timing Server.
     




    Appendix B:  Online and offline utilities

    online utilities:  (only for experts or for regular operators in control room)

    FdStat:  (from /virgoApp/Fd)
    This tool can be used to survey the output of a Frame Builder (to be used for instance on consumer FbmMainUsers) It gives you some statistical informations about the channels you asked for when connecting to the Frame Builder.
    Just type "FdStat" to know the usage.
    Example:  FdStat   FbmMainUsers  "Pr_B1p_DC  Gx_MC*   Bs*  Em*"

    FbmStat:  (from /virgoApp/Fbm)
    This tool can be used to survey the coherency of the frames content at the output of a Fbm consumer. For each frame read, a status line is printed. For instance:
        "fbmstat 19 Jul 2001: from FbmMainUsers : 13 frames  0 errors : fr16254 run2398 (3.098MB)[Thu Jul 19 12:28:35 2001] 392 adc 19 sms"
    It says that Cm name of the FbmStat server was "fbmstat", that last data was taken on July 19, 2001, coming from FbmMainUsers. Since start, 13 frames have been received and 0 error detected. Last frame received is frame 16254 from run 2398. Its size is 3.098 MBytes, its GPS time is July 19, 2001 12h28mn35s, it contains data from 392 ADC channels and 19 Slow Monitoring Stations. Each frame read is compared both to a reference frame and to the previous frame read. If any change is detected in the size of the frame, the frame number, the run number, the GPS time, the number of adc
    channels, etc... a message is shown. For instance:

    Error in this frame:
                           (Error )   (nerr/ntot) : frNbr  frRun  frSize      frDt  frGPSTime  nAdc  nSms  nFB :_______date_______:____sender____: FbList
    Current:     ( nAdc )(0002/0002) : 16746  2398  3237272  1.00  679581388   0369    0019     000 : 19 Jul 2001 (14:39:44) : FbmMainUsers :
    Previous:    ( nAdc )(0002/0002) : 16745 2398  3239154  1.00  679581387   0392    0019     000 : 19 Jul 2001 (14:39:44) : FbmMainUsers :
    Reference: ( nAdc )(0002/0002) : 16621  2398  3246041  1.00  679581263   0392    0019     000 : 19 Jul 2001 (14:39:44) : FbmMainUsers :

    It shows the parameters for the current, the previous and the reference frame. You can see here that the type of error is "nAdc" (number of adc channels has changed from 392 to 369) and that this is the 2nd error of this type over 2 errors of all types.
    Just type FbmStat to know the usage.
    Example:  FbmStat  FbmMainUsers

    FdShmSpy:  (from /virgoApp/Fd)  (to be used only if needed!).
    To get the current content of a Main Frame Builder shared memory. It shows especially the reading position of each Consumer and the writing position of the Producer in the shared memory. To use it, you must be on the machine where the Producer is running.
    Just type FdShmSpy to know the usage.
    Example:  FdShmSpy  FbmMain

    dataDisplay:(from /virgoApp/Dy)
    It can be used to monitor data channels with various plots (1D, 2D, time, spectra, transfert function, etc...). It can be used to display online rawdata or to display offline raw data, 50Hz data and trend data. A configuration file can be used as first parameter. Such a configuration file (named dd.car) is produced each time you push the Start button.
    Documentation is in /virgoApp/Dy/v9r08p1/doc/DyDoc.ps.
    Example:  dataDisplay  /virgoData/Dy/NI_align.car
     

    offline utilities:

    FrDump:  (from /virgoApp/Fr)
    Dump the content of a set of frames files.
    Just type FrDump to know the usage.
    Example:  FrDump -i "file1 file2 file3" -t "Pr_B1p_DC Gx_MC*" -d 3

    FrCopy:  (from /virgoApp/Fr)
    Copy some channels of some frames from a set of frames files to an output file.
    Just type FrCopy to know the usage.
    Example:  FrCopy -i "file1 file2 file3" -o outputFile -t "Pr_B1p_DC Gx_MC*"

    FdSim:  (from /virgoApp/Fd)    (online usage is reserved to expert)
    It simulates a Frame Builder by sending frames on the Ethernet network or writing frames on disk. Generated adc channels , sms channels or proc channels can contains various type of data (zeros, gaussian noise, sinusoide, noise+sinusoide, Nan...), according to the parameters on the command line
    Just type FBSim to know the usage.
    Example 1:  FdSim  TestedServer  200000  1
    (FdSim sends to TestedServer, frames of 200 kB containing 3 adc channels, each containing gaussian noise).
    Example 2:  FdSim Fbmtest 0 1 -adc 1000 140 -sms 15 40 -cmname sender1
    (FdSim sends frames to Fbmtest. Each frame contains 140 adc channels with sampling frequency of 1000 Hz and 40 sms containing 5 variables each. Data values are just gaussian noise. Cm name of the FBSim process is "sender1").
     




    Appendix C:  Getting data from DAQ

    The following logic has been adopted for the DAQ system: it is composed of pieces connected through Ethernet network and exchanging frames through Cm connections, called "static connection" which defined a priori in the configuration of the server sending the frames. In this case, the server try to send frames to the predefined outputs even if they are not present (visible by the Cm Name Server). Any Frame Builder server (especially the Main Frame Builders consumers) has also the ability to receive a request from a process (dataDisplay, FdStat, FdWrite, etc...) through the network and to provide the frames to the requesters. This is called the "dynamical connection". Several requesters can be connected to a given frame builder.

    In practice, only authorized persons will have the possibility to connect directly to Fast Frame Builders or dedicated Main Frame Builder consumers. Only operators in shift (people who need to look at data online for alignment and control of the interferometer) are allowed to connect directly at the output of a Main Frame Builder consumer using the online utilities like the dataDisplay.
    The table below shows, for each Main Frame Builder consumer, what is the mandatory Cm name of the requester:
     

    consumer's name
     your mandatory Cm name - Maximal number of connections
    FbmMoniShift
    MoniShift, MoniComShift - 2
    FbmSuspShift
    SuspShift, SuspComShift - 2
    FbmDetShift
    DetShift, DetComShift - 2
    FbmMainShift
    MainShift, MainComShift, MainInjShift, MainGcShift - 4
       
    FbmMoniUsers
    "any" - 8
    FbmSuspUsers
    "any" - 8
    FbmDetUsers
    "any" - 8
    FbmMainUsers
    "any" - 8
    FbmStDy
    "any" - 8
    Fbm50Users
    "any" - 8

    For offline users, retrieving data must be done from the ffl files present in /virgoData/ffl:

  • /virgoData/ffl/raw.ffl
  • /virgoData/ffl/50Hz.ffl
  • /virgoData/ffl/trend.ffl
  • or from the following directories:





    Appendix D:  List of Acronyms


    Appendix E: How to repair a file or reprocess a data stream?

    Warning: This set of instructions must only be used by experts on the Virgo disks (under the virgorun account).  Regular
    users must use them only in their private directories.

    General rule when restoring a file: Do not restore the file directly in the directory where the file will be used
    because during the restoration process, the file is incomplete and may crash any process trying to access it. Therefore
    the best is to use a subdirectory (called repro for instance) where the file will be restore/repair and then when this
    process will be completed, move the file to the regular directory.

    1 Unreadable file: If the file is unreadable because it has not TOC (Table Of Contents) copy it using the FrCopy
    (sequential read). This is the typical case for files left after a program crash. For the trend and 50Hz data, if you
    close the long file, do not forget to remove the corresponding short files.

    2 To restore a raw data file: Since the files boundaries are aligned between the two streams ("raw" and "backup"), if one
    file is incomplete, the best is to replace it by the one from the other stream. If both streams have missing frames but
    at different time, the restored file should be build by assembling frames from the two stream using the FrCopy tool
    with the -f and -l options.

    3 To rebuilt a 50Hz or a trend data file: go in the repair directory (/data/trenddata/repro or /data/50Hz/repro) and edit
    the FbtRepro.cfg (or Fbt50Repro.cfg) file to update the time boundary in the line "INPUT_FILE". The second parameter is
    the GPS start time, the third one is the duration of the reprocessing. Notice: you should add one second to close the
    file. For instance, if you need to reprocess 1800 second, you should ask for 1801. For the 50Hz data, start the
    reprocessing before the needed time to let the filter to stabilized. Then run again the Fbt or Fbt50 process (see the
    last /virgoData/Log/Fbt/FbtXXX.log file the know the current version). Finally move the rebuild files to the regular
    directory.