* added PROJECT both in HM and driver code * added single detector support. - Removed several bugs in the AMOR data bit. - Updated documentation
191 lines
7.9 KiB
HTML
191 lines
7.9 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>SICS Setup</TITLE>
|
|
</HEAD>
|
|
<BODY>
|
|
<H1>SICS programs, Scripts and Prerequisites<h1>
|
|
<p>
|
|
<h2>Hardware</h2>
|
|
The following hardware is usually present for any SICs instrument:
|
|
<ul>
|
|
<li>An instrument computer
|
|
<li>A Lantronix terminal server with 8-16 serial ports for connecting:
|
|
<li>Motor controllers
|
|
<li>Counter boxes
|
|
<li>Temperature controllers.
|
|
<li>Optionally 1-n histogram memory computers are present.
|
|
</ul>
|
|
The terminal server software is provided by Lantronix, see the
|
|
appropriate manuals for the device for a description. The histogram
|
|
memories are 68000 VME onboard computers running the VXworks realtime
|
|
operating system and some home grown histogramming software documented
|
|
elsewhere.
|
|
</p>
|
|
<h2>Server programs</h2>
|
|
<p>
|
|
For proper operation of an instrument the following software components are
|
|
required:
|
|
<dl>
|
|
<dt>SerPortServer
|
|
<dd>This is a TCP/IP server which implements a special protocoll for
|
|
communicating with serial ports. The actual communication with the
|
|
serial ports is done through the Lantronix terminal server. Both the
|
|
serial port protocoll and the SerPortServer are only documented in the
|
|
source code.
|
|
<dt>TecsServer
|
|
<dd>This is a TCP/IP server which watches over temperature
|
|
controllers. The only knwon source of documentation about this
|
|
software is Markus Zolliker.
|
|
<dt>FileSync
|
|
<dd>This is a little UDP server which waits for UDP messages from the
|
|
instrument control program. Then the server starts a script which
|
|
synchronizes the local data directory with the central data storage on
|
|
the labarotory server. FileSync is configured through an
|
|
initialization file usually called fs.ini. See the comments in the
|
|
initialization file for more information.
|
|
<dt>SICServer
|
|
<dd>This is the actual instrument control server. The configuration of
|
|
this program is documented in this manual.
|
|
</dl>
|
|
Additionally a client program is needed which connects to the
|
|
instrument control server and provides a user interface to it.
|
|
</p>
|
|
|
|
<h2>Scripts</h2>
|
|
<p>
|
|
To get all this software up and running a couple of shell scripts have
|
|
been provided:
|
|
<dl>
|
|
<dt>startsics
|
|
<dd> This script starts all the necessary server programs for driving
|
|
the instrument.
|
|
<dt>killsics
|
|
<dd>This script shuts down all instrument control servers properly.
|
|
<dt>keepalice, keepaliveserp
|
|
<dd>The server programs are automatically restarted when they
|
|
die. This is done through these scripts. keepaliveserp is a special
|
|
script for the serial port server.
|
|
<dt>instsync
|
|
<dd>replace inst by the name of the instrument in lower case. This
|
|
script is invoked by the FileSync server and is responsible for
|
|
synchronizing the local data store with the one on the labaratory
|
|
server. This is usally done by calling the unix program rsync with
|
|
appropriate parameters.
|
|
</dl>
|
|
</p>
|
|
|
|
<H1>General SICS Setup</H1>
|
|
<P>
|
|
SICS is a client server system. This implies that there is a server program
|
|
which implements all the functionlity and client programs which implement
|
|
the user interface. The client program is the only thing the user is
|
|
intended to see. This also means that the location of the client programs is
|
|
quite independent from the computer where the server runs. In the following
|
|
the layout of a server installation is described as established at SINQ.
|
|
</P>
|
|
<p>
|
|
For each instrument there is a data aquisition computer. On this computer
|
|
there exists a user name and consequently a home directory for the
|
|
instrument. In the following text this instrument root directory will be called
|
|
sicsroot. This root directory has the following subdirectories:
|
|
<DL>
|
|
<DT>bin
|
|
<DD> The bin directory is the place where the actual executable for the SICS
|
|
server is kept along with local copies of all necessary clients, the server
|
|
initialisation files and special macro files defined for the instrument.
|
|
<DT>data
|
|
<DD>The data directory is the central place where all data files collected
|
|
at the instrument are stored. This directory contains subdirectories
|
|
for each year. These directories hold the data collected at the
|
|
instrument in this year plus a file named
|
|
DataNumber which keeps the current serial number of the data files. This
|
|
file should never be edited. At the start of each year the instruement manager
|
|
must create a new directory with an empty DataNumber
|
|
file. Additionally the
|
|
path variables both for the data file directory and the DataNumber
|
|
file have to be set to the new directory in the instrument
|
|
initialization file.
|
|
<DT>log
|
|
<DD> The log directory contains the server log files and the automatically
|
|
generated client log files. Any now and then, and especially when disk space
|
|
problems loom, the client*.log files should be deleted by the instrument
|
|
manager.
|
|
<DT> doc
|
|
<DD> This directory holds a copy of the SICS user documentation for the
|
|
instrument. These are html files which can be viewed with WWW-browsers such
|
|
as lynx or netscape.
|
|
<DT> sim
|
|
<DD> The sim directory is meant to hold all files necessary for a SICServer
|
|
initialised for the instrument but configured with simulated hardware. This
|
|
facility is meant for testing of command files.
|
|
<DT>motor
|
|
<DD>This directory holds a script for reading and restoring the motor
|
|
parameter from the EL734 motor controllers. And the motor parameters
|
|
stored in parameter files. It is the instrument scientists
|
|
responsability to save the motor parameters after changes to the
|
|
configuration of the instrument.
|
|
</DL>
|
|
Besides these directories there should be nothing on the instrument account.
|
|
All evaluated data, personal command files etc. should be held on the normal
|
|
user account of the instrument user.
|
|
</p>
|
|
<p>
|
|
For this purpose the /data/lnslib/bin directory holds copies of the
|
|
apropriate command line and status display clients for each instrument. A user can make
|
|
this directory (and much more) available by including the line <b>
|
|
source /data/lnslib/bin/lns.login</b> into her .login file.
|
|
</p>
|
|
<h2> SICS Installation</h2>
|
|
<p>
|
|
All executables and files necessary to run SICS for each instrument is
|
|
avaialable under the /data/lnslib/distribution/sics hierarchy.
|
|
The bin directory
|
|
holds general executable files and a directory for each instrument which
|
|
holds instrument specific files. SICS installation on a unix system is
|
|
greatly simplified by using the <b>sicsinstall</b> korn shell script. This
|
|
script is available to each user. sicsinstall can be invoked simply by
|
|
typing sicsinstall at the command prompt. sicsinstall needs a subcommand in
|
|
order to know what it is expected to do:
|
|
<dl>
|
|
<DT>dev
|
|
<DD>copies knew executables from the development area to the distribution
|
|
directory. This command is meant to be used by computing staff only.
|
|
<DT>devfull
|
|
<DD>as dev, but copies all files. This command is meant to be used by computing staff only.
|
|
<DT>dmc
|
|
<DD>copies all files necessary for the instrument DMC.
|
|
<DT>topsi
|
|
<DD>copies all files necessary for the instrument TOPSI.
|
|
<DT>sans
|
|
<DD>copies all files necessary for the instrument SANS.
|
|
<DT>hrpt
|
|
<DD>copies all files necessary for the instrument HRPT.
|
|
<DT>amor
|
|
<DD>copies all files necessary for the instrument AMOR
|
|
<DT>focus
|
|
<DD>copies all files necessary for the instrument FOCUS
|
|
<DT>tasp
|
|
<DD>copies all files necessary for the instrument TASP
|
|
<DT>druechal
|
|
<DD>copies all files necessary for the instrument DRUECHAL
|
|
<DT>trics
|
|
<DD>copies all files necessary for the instrument TRICS
|
|
<DT>save inst
|
|
<DD>copies all the instrument configuration files from the instrument
|
|
account back to to the distribution area. Replace inst with the name
|
|
of the instrument in lower case. This call is necessary to save
|
|
modified instrument configurations.
|
|
<DT>doc
|
|
<DD>updates only the documentation on your disk.
|
|
<DT>exe
|
|
<DD>copies only new executable files from the distribution area. This is the
|
|
recommended option when you want to be sure, that you have the latest
|
|
version of SICS before reporting a bug.
|
|
</dl>
|
|
Most of these options require you to be in the home directory of the
|
|
instrument account. sicsinstall checks for this and warns you if this is not
|
|
the case. Directory structures are checked for and created as needed.
|
|
</p>
|
|
</BODY>
|
|
</HTML>
|