Perkin Elmer Detector

A Perkin Elmer detector is introduced to Online by the following entry in /online_dir/online.xml:

<hw>
...
<device>
    <name>pe</name> 
    <type>type_tango</type> 
    <module>module_tango</module>
    <device>p02/pedetector/xrd.01</device> 
    <control>tango</control> 
    <hostname>haspp02XXX:10000</hostname>
</device>
...
</hw>

Figure 38.1: Jive, PerkinElmerCtrl
Image jive_perkinElmerCtrl

Figure 38.2: Jive, PerkinElmerDetector
Image jive_perkinElmerDetector

Here is the virtual counter code for a Perkin Elmer:

if( $method =~ /reset/i)
{
    return Spectra::perkinElmer_startSubtracted( "pe_detector", 
                                                $Spectra::SYM{ scan_name} . "_",
                                                $Spectra::SYM{ sample_time},  
                                                $Spectra::SYM{ sindex}); 
}

if( $method =~ /read/i)
{
    while( Spectra::tng_state( "pe_detector"))
    {
       Util::log( "waiting for pe_detector"); 
       Spectra::wait( 0.1); 
    }
    return 1;
}

The following example shows how a single shot can be taken from a .gra file:

!
! ~/prog/perkinElmerSubtracted.gra
!
fname_pe = arg(1)
st_pe = arg(2)
no_pe = arg(3)

eval [Spectra::perkinElmer_singleShotSubtracted( "pe_detector", "fname_pe", "st_pe", "no_pe")]

st_pe = 
fname_pe = 
no_pe =

The file exp_ini.exp contains a symbol assignment:

!
! /online_dir/exp_ini.exp
!
pe_subtracted   = "run prog:perkinElmerSubtracted.gra"

The user can invoke the .gra file from the command line:

ONLINE> pe_subtracted someFileName 2 1

Note that the online -tki manual contains the description of a beamline-specific-code widget for the Perkin Elmer detector.