Up: TPOL main page Expert tasks

TPOL DAQ overview for experts

This page contains an overview over the TPOL DAQ system

Hardware

The TPOL online DAQ system consists of three sub-systems:

DAQ structure

The TPOL online software consists of several programs, distributed over the three sub-systems. The programs are connected by TCP/IP or UDP sockets. Through these sockets messages are exchanged in ASCII format. A message consists of a name and some arguments, seperated by whitespace from the message name. Individual messages are seperated by a newline character

Two processes are acting as a server, so that other processes can connect to. The relevant information about the port number and the machine is stored in a file tpol.hosts. The current settings are
Processmachineportpurpose
statusdbtpol02.desy.de4443 (TDC/IP)online-database, run control, online clients
statusdbtpol02.desy.de4445 (UDP)online monitoring
synchronizelytpol04.desy.de4444 (TCP/IP)core DAQ system

The structrure of the DAQ (not including the silicon readout) is summarized in the picture below

Programs which connect to one of the servers first send an Ident message. Based on this identification the connection is either established or refused. This identification in conjunction with the machine and the local port number is used to assign a uniqe Email-like address to each client-process. Using the To message it is possible to send a message from one client to another client. It will receive a From message containing the address of the origin of the message. Furthermore a selection is made on the remote commands which are accepted, depending on the origin of the message.

There are two interactive programs for connecting to the servers and typing in raw messages. To connect to statusdb use the program dbmon. To connnect to synchronize use the super program. NOte that it can be very dangerous to use those programs, since it is not possible to correct typos.

Example for using dbmon

pol2000@tpol02:~/daq > linux/dbmon
11.03.2002 21:06:06 local MsgIdent SUCCESS connected to Statusdb@tpol02.desy.de:4443
Help
 --- Help --- from Statusdb@tpol02.desy.de:4443
Exit : terminate program
From NAME MESSAGE : MESSAGE is from NAME
From NAME MESSAGE : MESSAGE is from NAME
Help : describe commands
History FIELD T S: request FIELD valid at T/S
Ident NAME PASSWD : identify as NAME
Kill NAME : close conection to NAME
List : list all connected clients
Ping : send Pong if alive
ShowDB : show statistics
Status [STATUS] : update/request run status
To NAME MESSAGE : forward MESSAGE to NAME
Update M : M=0 acknowledge M=1 status update
Note that all messages start with a capital letter. The Help message queries a list of all command that the client is allowed to send. The interactive programs dbmon and super have access to all commands.
List
 --- List --- from Statusdb@tpol02.desy.de:4443
Sync@lytpol04.desy.de:4444 HERMESclient@lxher1.desy.de:3711 \
NETMEXserver@tpol02.desy.de:2306 Super@tpol02.desy.de:2358 \
Super@pctpol01.desy.de:1434 ZEUSclient@zenith206.desy.de:1233
The List command gives a list of all clients currently connected to the server. The dbmon process itself is Super@pctpol01.desy.de:1434
exit
type exit with lower-case letters to leave the program. If You type Exit with a capital E, the server itself will terminate!

Essential DAQ programs

All DAQ programs and shell scripts can be found in the directories
tpol02.desy.de:/home/pol2000/daq/linux/
lytpol02.desy.de:/home/pol2000/daq/lynxos/
lytpol04.desy.de:/home/pol2000/daq/lynxos/
To start the core DAQ there is a script startdaq, which starts all relevant programs. However, prior to starting the core DAQ it is necessary to start the online data-base, using the script startdb. Please check the detailed documentation how to restart the DAQ before running these scripts.

The following programs are needed in order to measure polarisation (also see the TPOL DAQ process window of the TpolMonitor program (on tpol02).

programrunning onIdentconnected topurpose
statusdbtpol02Statusdbsynchronizeonline data-base, clients, monitoring, run control
synchronizelytpol04Syncconnect core DAQ processes
pilotlytpol04Pilotsynchronizeautomatic actions of the TPOL DAQ
slowdevlytpol04Slowdevsynchronizecontrol and monitor slow devices
scalerlytpol04Scalersynchronizemonitor/measure trigger rates
connectmfcclytpol04Mfccsynchronizestart/stop MFCC, copy calorimeter histograms
analysislytpol04Analysissynchronizeonline analysis
connectheratpol02Netmexclisynchronizeretreive HERA information from NETMEX
cleanuptpol02Cleanupsynchronizerun cleanup scripts (e.g. at end-of-run)


David South
Last modified: Mon Nov 7 14:56:51 CET 2005