DCS Tutorial

From ift
Revision as of 10:42, 20 February 2009 by Dfe002 (talk | contribs) (New page: Category:DCS back to: Detector Control System This page explains the different components and tools which exist in...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

back to: Detector Control System


This page explains the different components and tools which exist in the FeeCom chain and how to run them. Those are in particular:

DIM Name Server

A dedicated DIM name-server takes control over all the running clients, servers and their services available in the system. Each server registers at startup all its services and command channels. For a client the location of a server is transparent.

How to get the software

Take the latest package from the dim web page and follow the instructions to build the package for your platform. If you are running Linux and have problems to compile the package, the following might help you.

Compile the DIM package for Linux

Recently we encountered problems when compiling the DIM package. Although the environment variables had been set as proposed in the README*.txt, the setup script didn't work. The following recipe is working on Scientific Linux CERN, but for sure it should be the same for other distributions.

  • go to the directory of the dim package:
 cd <path to dim package>
  • set a couple of environment variables
 setenv DIMDIR `pwd`/linux
 setenv OS     Linux
 setenv ODIR   linux
  • compile the DIM library
 make -f makefile_dim

Starting the Name server

You might need to set the LD_LIBRARY_PATH variable to allow the system to find the dim shared library.

cd <your path to the dim package>
setenv LD_LIBRARY_PATH `pwd`/linux
./linux/dns

You will get a message like

PID 25703 - Wed Feb 15 13:51:15 2006 -  DNS (pid 25703) starting up on kjekspc3.ift.uib.no

DIM Information Display

The DIM Information Display is a tool available for Linux which allows to monitor a DIM system. It is contained in the package you downloaded from the dim web page.

  • if you want to compile DID follow the instructions in the previous section and do in addition
 make -f makefile_did

NOTE:The DID needs some libraries to link against which come usually with the X11 system, but on some distributions they are missing. Note that you can start the DID from another machine which might provide all the necessary libraries. Or think about a system update on your machine. Make sure that the Motif library is installed on your system.

Running the DIM Information Display

Again, you might need to set the LD_LIBRARY_PATH variable to allow the system to find the dim shared library. In addition, the DIM_DNS_NODE variable has to be set. This variable specifies the location where the DIM framework will look for the DIM Name Server.

cd <your path to the dim package>
setenv LD_LIBRARY_PATH `pwd`/linux
setenv DIM_DNS_NODE <your dns host>
./linux/did

Choose View -> All Servers, now you should at least see the Name Server and your DIM servers if there are any. The documentation is not very extended, but you can get at least a glimpse at the dim web page.

FeeServer

Compilation

Download the latest version from then download page. The package relies on the usual Linux installation procedure configure, make and make install. Unpack the package and have a look into the README file. ./configure --help and ./configure --help=short provides information on the available options. Read more about the compilation process here.

Compilation for the DCS board

You need a cross compiler and have to specify the following options to ./configure

  • --host=arm(mandatory)
  • --prefix=<dir>(optional) specify the location where the executable will be copied with make install.
    You should consider to make this directory available to the DCS board via NFS. The default prefix is set to /nfs_export/dcscard/${USER} if this directory exists, otherwise to the current directory. Note that the files will be "installed" in <prefix>/bin or <prefix>/bin respectively.
  • --enable-<detector> for detector specific implementations


Compilation for normal PC Linux

configure - options

  • --enable-rcudummy(optional) this switches off all hardware access which might make life easier since you will not be bothered with bunches of error messages. A correct state handling will be implemented soon.
  • --enable-<detector> for detector specific implementations
  • --prefix=<dir>(optional) specify the location where the executable will be copied with make install.
    The default prefix is set to the current directory. Note that the files will be "installed" in <prefix>/bin or <prefix>/bin respectively.


InterComLayer

PVSS

U2F Library/API

U2F API specification

feeserver-ctrl command line tool

RCU GUI