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>