SeaServer
The SeaServer is a sics server running in parallel to the Server
for instrument control. The server program is just a copy of the
SICServer. However, when testing new features, different versions
might be used for instrument control (sics server process) and for
sample environment (sea server process).
Directory Structure
All stuff related to sea are placed in $HOME/sea. All script files
needed for the sea server process are identical on
all instruments and are placed in the directory ~/sea/tcl. There
is one exception, ~/sea/sea.tcl. This file contains
the location of the files and the instrument name, and calls the
instrument independent startup file ~/sea/tcl/seainit.tcl.
This file calls all scripts in the directory ~/sea/tcl/startup/'.
The server log files are located in sea/log, and the
database for the logger in sea/logger. The copy of the
SICServer for sea is sea/SICServer, and there is a link
to it (sea/SeaServer) which is started with the script
sea/startwithpid.
Connection between Sea and SICS
The following lines should to be included into the instruments
startup script:
source $home/sea/tcl/remob.tcl
connect_sea
The macro connect_sea tries to make a connection to sea.
If the connection is successful, remob objects are created on sics
for all objects listed in the variable env_object_list on sea.
Likewise the sea server tries to make a connection to sics on
startup and initiates the update of configured objects.
Sea Configuration
To select the sample environment device, the command samenv (defined
in sea/tcl/seacom.tcl) is used. It calles the configuration script
for the given device (sea/tcl/<name>.config). The configuration scripts
do not call makeobject directly, but use the makenv script, which
keeps a list of created objects and takes the host:port information from
a small database managed by cfgenv.
Syntax:
samenv <device name> configure sea for the given SE device
samenv show the actual configuration
samenv none remove all objects related with the actual
SE device
cfgenv <driver> <host:port> configure the serial connection of a controller
cfgenv list all configured controllers
makenv <object> <driver> make an object, using the configuration defined
with cfgenv (this command can be used in
configuration scripts only)
Printer Friendly
Page Info
This page last changed on 30-Jun-2008 09:27:57 UTC by MarkusZolliker.
|