Lab::Instrument::SignalRecovery726x - Signal Recovery 7260 / 7265 Lock-in Amplifier
version 3.653
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');
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.
my $SR = new(\%options);
$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 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
$SR->config_measurement($channel, $number_of_points, $interval, [$trigger]);
Preset the Signal Recovery 7260 / 7265 Lock-in Amplifier for a TRIGGERED measurement.
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
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.
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.
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.
$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.
@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 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.
$SR->abort();
Aborts current (triggered) measurement.
$SR->wait();
Waits until current (triggered) measurement has been finished.
$SR->active();
Returns '1' if current (triggered) measurement is still running and '0' if current (triggered) measurement has been finished.
$SR->set_imode($imode);
Preset Signal Recovery 7260 / 7265 Lock-in Amplifier
$imode == 0 --> Current Mode OFF $imode == 1 --> High Bandwidth Current Mode $imode == 2 --> Low Noise Current Mode
$SR->set_vmode($vmode);
$vmode == 0 --> Both inputs grounded (testmode) $vmode == 1 --> A input only $vmode == 2 --> -B input only $vmode == 3 --> A-B differential mode
$SR->set_fet($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
$SR->set_float($value);
$value == 0 --> input conector shield set to GROUND $value == 1 --> input conector shield set to FLOAT
$SR->set_cp($value);
$value == 0 --> input coupling mode AC\n $value == 1 --> input coupling mode DC\n
$SR->set_linefilter($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
$SR->set_acgain($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
$SR->set_sen($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
$SR->set_refchannel($value);
INT --> internal reference input mode\n EXT LOGIC --> external rear panel TTL input\n EXT --> external front panel analog input\n
$SR->set_refpha($value);
REFERENCE PHASE can be between 0 ... 306°
$SR->autophase();
Trigger an autophase procedure
$SR->set_outputfilter_slope($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
$SR->set_tc($value);
Preset the output(signal channel) low pass filters time constant tc of the Signal Recovery 7260 / 7265 Lock-in Amplifier
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
$SR->set_osc($value);
Preset the oscillator output voltage of the Signal Recovery 7260 / 7265 Lock-in Amplifier
OSCILLATOR OUTPUT VOLTAGE can be between 0 ... 5V in steps of 1mV (Signal Recovery 7260) and 1uV (Signal Recovery 7265)
$SR->set_frq($value);
Preset the oscillator frequency of the Signal Recovery 7260 / 7265 Lock-in Amplifier
OSCILLATOR FREQUENCY can be between 0 ... 259kHz
$SR->display_on();
$SR->reset();
probably many
This software is copyright (c) 2018 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
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Lab::Measurement, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Lab::Measurement
CPAN shell
perl -MCPAN -e shell install Lab::Measurement
For more information on module installation, please visit the detailed CPAN module installation guide.