From here you can jump to:
SICS can support any type of sample environment control device if there is a driver for it. This includes temperature controllers, magnetic field controllers etc. The SICS server is meant to be left running continously. Therefore there exists a facility for dynamically configuring and deconfiguring environment devices into the system. This is done via the EVFactory command. It is expected that instrument scientists will provide command procedures or specialised Rünbuffers for configuring environment devices and setting reasonable default parameters.
In the SICS model a sample environment device has in principle two modes of operation. The first is the drive mode. The device is monitored in this mode when a new value for it has been requested. The second mode is the monitor mode. This mode is entered when the device has reached its target value. After that, the device must be continously monitored throughout any measurement. This is done through the environment monitor or emon. The emon understands a few commands of its own.
Within SICS all sample environement devices share some common behaviour concerning parameters and abilities. Thus any given environment device accepts all of a set of general commands plus some additional commands special to the device.
In the next section the EVFactory, emon and the general commands understood by any sample environment device will be discussed. This reading is mandatory for understanding SICS environment device handling. Then there will be another section discussing the special devices known to the system.
EVFactory is responsible for configuring and deconfiguring sample environment devices into SICS. The syntax is simple:
The environment monitor emon takes for the monitoring of an environment device during measurements. It also initiates error handling when appropriate. The emon understands a couple of commands.
Once the evfactory has been run successfully the controller is installed as an object in SICS. It is accessible as an object then under the name specified in the evfactory command. All environemnt object understand the common commands given below. Please note that each command discussed below MUST be prepended with the name of the environment device as configured in EVFactory!
The general commands understood by any environment controller can be subdivided further into parameter commands and real commands. The parameter commands just print the name of the parameter if given without an extra parameter or set if a parameter is specified. For example:
Temperature Toleranceprints the value of the variable Tolerance for the environment controller Temperature. This is in the same units as the controller operates, i. e. for a temperature controller Kelvin.
Temperature Tolerance 2.0sets the parameter Tolerance for Temperature to 2.0. Parameters known to ANY envrironment controller are:
Additionally the following commands are understood:
This section lists the parameters needed for configuring a special environment device into the system and special parameters and commands only understood by that special device. All of the general commands listed above work as well!
This is the temperature controller for cryogenic applications and should replace at least the Oxford & Neocera controllers at SINQ.
The control is handled by a seperate server process TECS (TEmperature Control Server) and is initialized by default. If there is already an other device selected, it must be deleted and TECS must be reinstalled:
EVFactory del temperatureThe sample environment device is selected automatically by a coding in the plug of the sensor/heater cable(s). If this does not work (plugs without coding or temporarely use of a wrong cable) you may select the device with
EVFactory new temperature tecs
temperature device deviceYou may want to verify the selected device with
temperature deviceThe actually known devices (April 2000) are:
These temperature controller were fairly popular at SINQ. They are manufactured by Oxford Instruments. At the back of this controller is a RS-232 socket which must be connected to a Macintosh computer running the SINQ terminal server program via a serial cable. Please make sure with a different Macintosh or a PC that the serial line is OK and the ITC-4 responding before plugging it in.
An ITC-4 can be configured into the system by:
EVFactory new Temp ITC4 computer port channelThis creates an ITC-4 controller object named Temp within the system. The ITC-4 is expected to be connected to the serial port channel at the Macintosh computer computer running the SINQ terminal server program listening at port port. For example:
EVFactory new Temp ITC4 lnsp22.psi.ch 4000 7connects Temp to the Macintosh named lnsp22, serial port 6 (7 above is no typo!), listening at port 4000.
The ITC-4 has a few more parameter commands:
If the ITC-4 does not respond at all, make sure the serial connection to the Macintosh is working. Use standard RS-232 debugging procedures for doing this. The not responding message may also come up as a failure to connect to the ITC-4 during startup.
If error messages containing the string ?TMO keep appearing up followed by signs that the command has not been understood, then increase the timeout. The standard timeout of 10 microseconds can be to short sometimes.
You keep on reading wrong values from the ITC4. Mostly off by a factor 10. Then set the divisor correctly. Or you may need to choose a decent sensor for that readout.
Error messages when trying to drive the ITC4. These are usually the result of a badly set multiplicator parameter for the control sensor.
The ITC4 never stops driving. There are at least four possible causes for this problem:
This is sort of a bucket full of water equipped with a temperature control system. The RS-232 interface of this device can only be operated at 4800 baud max. This is why it has to be connected to the serial printer port of the Macintosh serial port server computer. This makes the channel number to use for initialisation a 1 always. The driver for this device has been realised in the Tcl extension language of the SICS server. A prerequisite for the usage of this device is that the file hakle.tcl is sourced in the SICS initialisation file and the command inihaakearray has been published. Installing the Haake into SICS requires two steps: first create an array with initialisation parameters, second install the device with evfactory. A command procedure is supplied for the first step. Thus the initialisation sequence becomes:
inihaakearray name-of-array macintosh-computer name port channelAn example for the SANS:
evfactory new temperature tcl name-of-array
inihaakearray eimer lnsp25.psi.ch 4000 1Following this, the thermostat can be controlled with the other environment control commands.
evfactory new temperature tcl eimer
The Haake Thermostat understands a single special subcommand: sensor. The thermostat may be equipped with an external sensor for controlling and reading. The subcommand sensor allows to switch between the two. The exact syntax is:
temperature sensor valval can be either intern or extern.
This is a large ancient device for reaching very low temperatures. This cryostat can be configured into SICS with the command:
EVFactory new Temp dillu computer port channel table.fileTemp is the name of the dilution controller command in SICS, dillu is the keyword which selects the dilution driver, computer, port and channel are the parameters of the Macintosh-PC running the serial port server program. table.file is the fully qualified name of a file containing a translation table for this cryostat. The readout from the dilution controller is a resistance. This table allows to interpolate the temperature from the resistance measurements and back. Example:
evfactory new temperature dillu lnsp19.psi.ch 4000 1 dilu.teminstalls a new dilution controller into SICS. This controller is connected to port 1 at the Macintos-PC with the newtwork adress lnsp19.psi.ch. On this macintosh-PC runs a serial port server program listening at TCP/IP port 4000. The name of the translation table file is dilu.tem.
The dilution controller has no special commands, but two caveats: As of current (October 1998) setting temperatures does not work due to problems with the electronics. Second the dilution controller MUST be connected to port 1 as only this port supports the 4800 maximum baud rate this device digests.
This is the Controller for the large magnet at SANS. The controller is a box the size of a chest of drawers. This controller can be operated in one out of two modes: in field mode the current for the magnet is controlled via an external hall sensor at the magnet. In current mode, the output current of the device is controlled. This magnet can be configured into SICS with a command syntax like this:
evfactory new name bruker Mac-PC Mac-port Mac-channel
name is a placeholder for the name of the device within SICS. A good suggestion (which will be used throughout the rest of the text) is magnet. bruker is the keyword for selecting the bruker driver. Mac-PC is the name of the Macintosh PC to which the controller has been connected, Mac-Port is the port number at which the Macintosh-PC's serial port server listens. Mac-channel is the RS-232 channel to which the controller has been connected. For example (at SANS):
evfactory new magnet bruker lnsp25.psi.ch 4000 9
creates a new command magnet for a Bruker magnet Controller connected to serial port 9 at lnsp25.
In addition to the standard environment controller commands this magnet controller understands the following special commands:Warning: There is a gotcha with this. If you type only magnet a value will be returned. The meaning of this value is dependent on the selected control mode. In current mode it is a current, in field mode it is a magnetic field. This is so in order to support SICS control logic. You can read values at all times explicitly using magnet current or magnet field.
The CryoFurnace at PSI is equipped with a Neocera LTC-11 temperature controller. This controller can control either an heater or an analag output channel. Futhermore a choice of sensors can be selected for controlling the device. The LTC-11 behaves like a normal SICS environment control device plus a few additional commands. An LTC-11 can be configured into SICS with the following command:
evfactory new name ltc11 Mac-PC Mac-port Mac-channel
name is a placeholder for the name of the device within SICS. A good suggestion is temperature. ltc11 is the keyword for selecting the LTC-11 driver. Mac-PC is the name of the Macintosh PC to which the controller has been connected, Mac-Port is the port number at which the Macintosh-PC's serial port server listens. Mac-channel is the RS-232 channel to which the controller has been connected. For example (at DMC):
evfactory new temperature ltc11 lnsp18.psi.ch 4000 6
creates a new command magnet for a LTC-11 temperature Controller connected to serial port 6 at lnsp18.
The additional commands understood by the LTC-11 controller are:
Further notes: As the CryoFurnace is very slow and the display at the controller becomes unusable when the temperature is read out to often, the LTC-11 driver buffers the last temperature read for 5 seconds. Setting the mode of the LTC-11 is possible by computer, but not yet fully understood and therefore unusable.
At SANS there is a Eurotherm temperature controller for the sample heater. This and probably other Eurotherm controllers can be configured into SICS with the following command. The eurotherm needs to be connected with a nullmodem adapter.
evfactory new name euro Mac-PC Mac-port Mac-channel
name is a placeholder for the name of the device within SICS. A good suggestion is temperature. euro is the keyword for selecting the Eurotherm driver. Mac-PC is the name of the Macintosh PC to which the controller has been connected, Mac-Port is the port number at which the Macintosh-PC's serial port server listens. Mac-channel is the RS-232 channel to which the controller has been connected. WARNING: The eurotherm needs a RS-232 port with an unusual configuration: 7bits, even parity, 1 stop bit. Currently only the SANS Macintosh port 13 (the last in the upper serial port connection box) is configured like this! Thus, an example for SANS and the name temperature looks like:
evfactory new temperature euro lnsp25.psi.ch 4000 13
There are two further gotchas with this thing:
This is magnet controller developed by the electronics group at PSI. It consists of a controller which interfaces to a couple of power supplies. The magnets are then connected to the power supplies. The magnetic field is not controlled directly but just the power output of the power supply. Also the actual output of the power supply is NOT read back but just the set value after ramping. This is a serious limitation because the computer cannot recognize a faulty power supply or magnet. The EL755 is connected to SICS with the command:
evfactory new name el755 Mac-PC Mac-port Mac-channel indexwith Mac-PC, Mac-port and Mac-channel being the usual data items for describing the location of the EL755-controller at the Macintosh serial port server. index is special and is the number of the power supply to which the magnet is connected. An example:
evfactory new maggi el755 lnsa09.psi.ch 4000 5 3connects to power supply 3 at the EL755-controller connected to lnsa09 at channel 5. The magnet is then available in the system as maggi. No special commands are supported for the EL755.