SICS installation Ferdi Franceschini 2008-01-25 09:46 SICS installation Requirements For your operating system, you must have these software components installed. The links here are not maintained. They may or may not be up to date, and may or may not link with the version of SICS you are trying to compile. The standard install operating system for ANSTO is SuSE linux, version 9.2, 10, 10.2 HDF5 from http://www.hdfgroup.org/HDF5/ JSON-C from http://www.json.org/ mxml from http://mxml.sourceforge.net/ tcl8.4 - Get this from the RPMs for your operating system. Also requires tcl-devel, zlib, zlib-devel, libghttp and libghttp-devel RPMs and tDOM Getting SICS at ANSTO To get sics you must have an account on boson and you need to belong to the nbip group.  If you are using the command line cvs client you need to set the CVS_RSH environment variable to ssh.  You can then check sics out with the following command, cvs -d:ext:uname@boson.ansto.gov.au:/projects/nbip/cvsroot co sics where uname is your username on boson. Getting a Release Branch cvs -d:ext:uname@boson.ansto.gov.au:/projects/nbip/cvsroot co -rRELEASE-<N>_0-BRANCH sics where <N> is the branch number. Compiling sics After checking out sics cd to the site_ansto directory and run make. This will build a SICServer binary in the site_ansto directory. The build system is a work in progress.  I have manage to reduce it down to two files a Makefile, and  make_gen_variables which is essentially a copy of the variables in the sics core make_gen file.  The goal is to extract the variables from make_gen and get rid of make_gen _variables. http://gumtree:9080/nbicms/sics-control-system/ansto-sics/sics-configuration-and-deployment Ferdi Franceschini 2007-03-21 15:29 Instrument Configuration and Deployment TODO Create motion control checklists for Wombat, Koala, Kowari, and Platypus based on the Echidna Motion Control Functional Test Checklist SICS Configuration Source Files site_ansto/instrument is the toplevel directory for the instrument configuration source files along with the shared configuration information, deployment scripts, test code and scaffolding. The top level of the site_ansto/instrument directory contains the common instrument configuration files.  All of the instruments depend on the following files: server_config.tcl defines paths, server options and variables for all of the instruments.  util/utility.tcl file contains some tcl procs which are useful for defining instrument configurations. /config directory contains task specific configuration files which may be shared by two or more instruments. It has the following structure: config |-- counter |-- hipadaba |-- hmm |-- nexus `-- scan The instrument specific configuration files are stored in subdirectories of site_ansto/instrument name as follows: hipd (wombat) hrpd (echidna) pas (pelican) qld (koala) reflectometer (platypus) rsd (kowari) sans (quokka) tas (taipan) TODO We should really rename these directories, but doing that in CVS requires a cool clear head and a calm steady hand. Each of the instrument specific subdirectories should have the following layout: <inst> |-- DMC2280 |-- config | |-- counter | |-- hipadaba | |-- hmm | |-- nexus | `-- scan |-- script_validator | `-- config | |-- counter | |-- hmm | `-- motors `-- util `-- dmc2280 Each <inst> directory contains the following files sics_ports.tcl List of port names used by the SICS server for this instrument extraconfig.tcl In the future we will be able to override values recorded in the status.tcl file by setting them here. MANIFEST.TXT List of files and subdirectories to be deployed to the ics1-<inst> computer. Makefile Generates a simulated motor configuration file for the script validator during deployment. <instrument-name>_configuration.tcl This is the main configuration file, it sources all the other configuration files required to setup an instrument. The <inst> directories are broken down into the following subdirectories, DMC2280 Contains the programs which setup and run on the Galil motion controllers. They will typically define subroutines and interrupt handlers for limit switches, and motors. config Contains subdirectories which organise the instrument configuration files by task.  As well as the following files: INSTCFCOMMON.TXT Lists common configuration files that this instrument depends on. Makefile Composes nexus dictionary files into task specific dictionaries for an instrument script_validator The port numbers and simulation drivers required by the script validator are defined here. util Maintenence and diagnostic utilities which can be run independently of SICS can be found here. Deploying SICS Deploying to the TEST_SICS directory on bluegum from a working directory on bluegum The root directory for SICS for each instrument on bluegum is /usr/local/TEST_SICS/<inst> Under each of these root directories is the following directory structure: / |-- batch |-- data |-- log |-- script_validator | |-- batch | |-- data | |-- log | |-- server | |-- tmp |-- server `-- tmp For a fresh install you have to create these directories. Go to the source code directory site_ansto cd instrument ./deploySICS.sh test/kowari localhost /usr/local/TEST_SICS/kowari/ Edit /etc/services Add lines for the motor services e.g. pmc1-kowari 62335/tcp pmc2-kowari 62336/tcp pmc3-kowari 62337/tcp pmc4-kowari 62338/tcp After deploying a test setup you will need to configure the fake motors for SICS cd /usr/local/TEST_SICS/kowari/fakeDMC ./mkSimAxes.tcl kowari Then you can run the fake motors in separate terminals ./cont.tcl -cont 1 -port pmc1-kowari ./cont.tcl -cont 2 -port pmc2-kowari ./cont.tcl -cont 3 -port pmc3-kowari ./cont.tcl -cont 4 -port pmc4-kowari Then create the DataNumber file and launch SICS cd /usr/local/TEST_SICS/kowari/sics/ touch data/DataNumber cd server ./SICServer kowari_configuration.tcl Deploying to ics1-dev.nbi.ansto.gov.au and ics1-test.nbi.ansto.gov.au The instrument dev and test computers must have the information in the sics_test_hosts and the sics_test_services files under the site_ansto/instrument/TEST_SICS/ directory appended to the services and hosts files.  This will allow us to run multiple instances of sics on the test computer without changing the instrument configuration files. cd instrument ./deploySICS.sh echidna/test ics1-dev.nbi.ansto.gov.au Deploying to an instrument control server cd instrument ./deploySICS.sh echidna