The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Lab::Instrument::SignalRecovery726x - Signal Recovery 7260 / 7265 Lock-in Amplifier (deprecated)

VERSION

version 3.899

SYNOPSIS

          use as GPIB-device

        ---------------------

        use Lab::Instrument::SignalRecovery726x;
        my $SR = new Lab::Instrument::SignalRecovery726x(0,22);
        print $SR->get_value('XY');

.

          use as RS232-device

        ----------------------

        use Lab::Instrument::RS232;
        use Lab::Instrument::SignalRecovery726x;
        my $RS232 = new Lab::Instrument::RS232('ASRL1::INSTR');    # ASRL1::INSTR = COM 1, ASRL2::INSTR = COM 2, ...
        my $SR = new Lab::Instrument::SignalRecovery726x($RS232);
        print $SR->get_value('XY');

.

DESCRIPTION

This module belongs to a deprecated legacy module stack, frozen and not under development anymore. Please port your code to the new API; its documentation can be found on the Lab::Measurement homepage, https://www.labmeasurement.de/.

The Lab::Instrument::SignalRecovery726x class implements an interface to the Signal Recovery 7260 / 7265 Lock-in Amplifier. Note that the module Lab::Instrument::SignalRecovery726x can work via GPIB or RS232 interface.

CONSTRUCTOR

        my $SR = new(\%options);

METHODS

get_value

        $value=$SR->get_value($channel);

Makes a measurement using the actual settings. The CHANNELS defined by $channel are returned as floating point values. If more than one value is requested, they will be returned as an array.

$channel

CHANNEL can be:

          in floating point notation:

        -----------------------------

        'X'   --> X channel output\n 
        'Y'   --> Y channel output\n
        'MAG' --> Magnitude\n 
        'PHA' --> Signale phase\n 
        'XY'  --> X and Y channel output\n 
        'MP'  --> Magnitude and signal Phase\n 
        'ALL' --> X,Y, Magnitude and signal Phase\n

config_measurement

        $SR->config_measurement($channel, $number_of_points, $interval, [$trigger]);

Preset the Signal Recovery 7260 / 7265 Lock-in Amplifier for a TRIGGERED measurement.

$channel

CHANNEL can be:

          in floating point notation:

        -----------------------------

        'X'   --> X channel output\n 
        'Y'   --> Y channel output\n 
        'MAG' --> Magnitude\n 
        'PHA' --> Signale phase\n 
        'XY'  --> X and Y channel output\n 
        'MP'  --> Magnitude and signal Phase\n 
        'ALL' --> X,Y, Magnitude and signal Phase\n

.

          in percent of full range notation:

        ------------------------------------

        'X-'   --> X channel output\n 
        'Y-'   --> Y channel output\n 
        'MAG-' --> Magnitude\n 
        'PHA-' --> Signale phase\n 
        'XY-'  --> X and Y channel output\n 
        'MP-'  --> Magnitude and signal Phase\n 
        'ALL-' --> X,Y, Magnitude and signal Phase\n
$number_of_points

Preset the NUMBER OF POINTS to be taken for one measurement trace. The single measured points will be stored in the internal memory of the Lock-in Amplifier. For the Signal Recovery 7260 / 7265 Lock-in Amplifier the internal memory is limited to 32.000 values.

        --> If you request data for the channels X and Y in floating point notation, for each datapoint three values have to be stored in memory (X,Y and Sensitivity).
        --> So you can store effectivly 32.000/3 = 10666 datapoints.
        --> You can force the instrument not to store additionally the current value of the Sensitivity setting by appending a '-' when you select the channels, eg. 'XY-' instead of simply 'XY'.
        --> Now you will recieve only values between -30000 ... + 30000 from the Lock-in, which is called the full range notation.
        --> You can calculate the measurement value by ($value/100)*Sensitivity. This is easy if you used only a single setting for Sensitivity during the measurement, and it's very hard if you changed the Sensitivity several times during the measurment or even used the auto-range function.
$interval

Preset the STORAGE INTERVAL in which datavalues will be stored during the measurement. Note: the storage interval is independent from the low pass filters time constant tc.

$trigger

Ooptional value. Presets the source where the trigger signal is expected. 'EXT' --> external trigger source 'INT' --> internal trigger source

DEF is 'INT'. If no value is given, DEF will be selected.

.

trg

        $SR->trg();

Sends a trigger signal via the GPIB-BUS to start the predefined measurement. The LabVisa-script can immediatally be continued, e.g. to start another triggered measurement using a second Signal Recovery 7260 / 7265 Lock-in Amplifier.

.

get_data

        @data = $SR->get_data(<$sensitivity>);

Reads all recorded values from the internal buffer and returns them as an (2-dim) array of floatingpoint values.

Example:

        requested channels: X --> $SR->get_data(); returns an 1-dim array containing the X-trace as floatingpoint-values
        requested channels: XY --> $SR->get_data(); returns an 2-dim array: 
                --> @data[0] contains an 1-dim array containing the X-trace as floatingpoint-values 
                --> @data[1] contains an 1-dim array containing the Y-trace as floatingpoint-values 

Note: Reading the buffer will not start before all predevined measurement values have been recorded. The LabVisa-script cannot be continued until all requested readings have been recieved.

$sensitivity

SENSITIVITY is an optional parameter. When it is defined, it will be assumed that the data recieved from the Lock-in are in full range notation. The return values will be calculated by $value = ($value/100)*$sensitifity.

abort

        $SR->abort();

Aborts current (triggered) measurement.

wait

        $SR->wait();

Waits until current (triggered) measurement has been finished.

active

        $SR->active();

Returns '1' if current (triggered) measurement is still running and '0' if current (triggered) measurement has been finished.

set_imode

        $SR->set_imode($imode);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$imode
         $imode == 0  --> Current Mode OFF
         $imode == 1  --> High Bandwidth Current Mode
         $imode == 2  --> Low Noise Current Mode

set_vmode

        $SR->set_vmode($vmode);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$vmode
          $vmode == 0  --> Both inputs grounded (testmode)
          $vmode == 1  --> A input only
          $vmode == 2  --> -B input only
          $vmode == 3  --> A-B differential mode

set_fet

        $SR->set_fet($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          $value == 0 --> Bipolar device, 10 kOhm input impedance, 2nV/sqrt(Hz) voltage noise at 1 kHz
          $value == 1 --> FET, 10 MOhm input impedance, 5nV/sqrt(Hz) voltage noise at 1 kHz

set_float

        $SR->set_float($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          $value == 0 --> input conector shield set to GROUND
          $value == 1 --> input conector shield set to FLOAT

.

set_cp

        $SR->set_cp($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          $value == 0 --> input coupling mode AC\n
          $value == 1 --> input coupling mode DC\n

set_linefilter

        $SR->set_linefilter($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          LINE-FILTER == 0 --> OFF\n
          LINE-FILTER == 1 --> enable 50Hz/60Hz notch filter\n
          LINE-FILTER == 2 --> enable 100Hz/120Hz notch filter\n
          LINE-FILTER == 3 --> enable 50Hz/60Hz and 100Hz/120Hz notch filter\n

set_acgain

        $SR->set_acgain($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          AC-GAIN == 0 -->  0 dB gain of the signal channel amplifier\n
          AC-GAIN == 1 --> 10 dB gain of the signal channel amplifier\n
          ...
          AC-GAIN == 9 --> 90 dB gain of the signal channel amplifier\n

set_sen

        $SR->set_sen($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          SENSITIVITY (IMODE == 0) --> 2nV, 5nV, 10nV, 20nV, 50nV, 100nV, 200nV, 500nV, 1uV, 2uV, 5uV, 10uV, 20uV, 50uV, 100uV, 200uV, 500uV, 1mV, 2mV, 5mV, 10mV, 20mV, 50mV, 100mV, 200mV, 500mV, 1V\n
          SENSITIVITY (IMODE == 1) --> 2fA, 5fA, 10fA, 20fA, 50fA, 100fA, 200fA, 500fA, 1pA, 2pA, 5pA, 10pA, 20pA, 50pA, 100pA, 200pA, 500pA, 1nA, 2nA, 5nA, 10nA, 20nA, 50nA, 100nA, 200nA, 500nA, 1uA\n
          SENSITIVITY (IMODE == 2) --> 2fA, 5fA, 10fA, 20fA, 50fA, 100fA, 200fA, 500fA, 1pA, 2pA, 5pA, 10pA, 20pA, 50pA, 100pA, 200pA, 500pA, 1nA, 2nA, 5nA, 10nA\n

set_refchannel

        $SR->set_refchannel($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          INT --> internal reference input mode\n
          EXT LOGIC --> external rear panel TTL input\n
          EXT --> external front panel analog input\n

set_refpha

        $SR->set_refpha($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          REFERENCE PHASE can be between 0 ... 306°

autophase

        $SR->autophase();

Trigger an autophase procedure

.

set_outputfilter_slope

        $SR->set_outputfilter_slope($value);

Preset Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
           6dB -->  6dB/octave slope of output filter\n
          12dB --> 12dB/octave slope of output filter\n
          18dB --> 18dB/octave slope of output filter\n
          24dB --> 24dB/octave slope of output filter\n

.

set_tc

        $SR->set_tc($value);

Preset the output(signal channel) low pass filters time constant tc of the Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          Filter Time Constant: 
        10us, 20us, 40us, 80us, 160us, 320us, 640us, 5ms, 10ms, 20ms, 50ms, 100ms, 200ms, 500ms, 1s, 2s, 5s, 10s, 20s, 50s, 100s, 200s, 500s, 1ks, 2ks, 5ks, 10ks, 20ks, 50ks, 100ks\n

.

set_osc

        $SR->set_osc($value);

Preset the oscillator output voltage of the Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          OSCILLATOR OUTPUT VOLTAGE can be between 0 ... 5V in steps of 1mV (Signal Recovery 7260) and 1uV (Signal Recovery 7265)

.

set_frq

        $SR->set_frq($value);

Preset the oscillator frequency of the Signal Recovery 7260 / 7265 Lock-in Amplifier

$value
          OSCILLATOR FREQUENCY can be between 0 ... 259kHz

.

display_on

        $SR->display_on();

.

display_off

        $SR->display_on();

.

reset

        $SR->reset();

.

CAVEATS/BUGS

probably many

SEE ALSO

Lab::Instrument

COPYRIGHT AND LICENSE

This software is copyright (c) 2023 by the Lab::Measurement team; in detail:

  Copyright 2012       Andreas K. Huettel, David Kalok, Stefan Geissler
            2013       Andreas K. Huettel, Stefan Geissler
            2014       Christian Butschkow
            2016       Simon Reinhardt
            2017       Andreas K. Huettel
            2020       Andreas K. Huettel
            2021       Simon Reinhardt

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.