The mostab() function communicates with the SIS2900 monochromator stabilizer. The most commonly used commands set the device to idle, specify a setpoint and initiate a peak search:
$ret = Spectra::mostab( "I"); # switches to idle $ret = Spectra::mostab( "S1=-0.7"); # setpoint to 70%, left edge $ret = Spectra::mostab( "P" [, ns]); # peak search # This call returns after the peak-search is done. It returns the # number of seconds that were needed to find the peak, a typical # value: 7. The user may specify the maximum search time, def.: 15 s.
When the MOSTAB is in the peak search mode, it sweeps the output voltage over the allowed range. The sweeping time independent of the range. That means, if the range is reduced, the sensitivity of the peak search procedure is increased. This is how the range is specified:
$ret = Spectra::mostab( "S6=-800"); # set minValue $ret = Spectra::mostab( "S7=-200"); # set maxValue
For debugging purposes it may be interesting to read the status and possibly the parameters:
$ret = Spectra::mostab( "RS"); # read status # Status messages: # #2;IDLE# idle # #4;NEWPEAK# peak search, 1. phase # #10;GUESS# peak search, 2. phase # #11;TRACKSP# track setpoint $ret = Spectra::mostab( "RA"); # display all parameters $ret = Spectra::mostab( "RF"); # read all parameters $ret = Spectra::mostab( "RG"); # read all parameters
During the alignment of the monochromator it can be helpful to set the MOSTAB to a constant output voltage while the crystal positions are optimized. This is the procedure:
$ret = Spectra::mostab( "M"); # to manual mode $ret = Spectra::mostab( "SC=32000"); # sets the output voltage, # valid range: 0 .. 65535, -1000 .. 0V # at this stage the MC crystals can be aligned, then $ret = Spectra::mostab( "A"); # to automatic mode
The MOSTAB can be tested with a telnet session:
> telnet hast11 3521 Trying 131.169.38.146... Connected to hast11. Escape character is '^]'. RS #10;GUESS#
Finally there are some utility commands:
$ret = Spectra::mostab( "C"); # switches local display mode off $ret = Spectra::mostab( "N"); # switches echo mode off