The Pilatus100k detector is operated via a Tango server. The Tango server has to be started before the following functions can be invoked.
pilatus_state( $devName);
Returns the state of the Pilatus detector, 0 - IDLE, 10 - RUNNING.
pilatus_start( $devName, $fname, $exposureTime, [$num [,$postFix]])
The function starts the following sequence:
pilatus_stop();
Stops the Pilatus detector.
pilatus_wait_for_idle( $devName, [$tmo]);
Waits for the Pilatus to become IDLE. If $tmo is not
supplied, $tmo is set to 3 seconds.
pilatus_singleShot( $devName, $fname, $exposureTime, [$num [,$postFix]])
The function calls pilatus_start and pilatus_wait_for_idle.
These functions use the internal name Pilatus to access the server. The connection between the internal name and the server is given by these definitions from /online_dir/online.xml. The file is loaded from /online_dir/TkIrc.pl: Spectra::load_configuration().
<?xml version="1.0"?>
<hw>
#
#
#
<device>
<name>pilatus</name>
<type>detector</type>
<module>pilatus100k</module>
<device>b1/exp/pilatus1</device>
<control>tango</control>
<hostname>hasb1:10000</hostname>
</device>
</hw>