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

NAME

Lab::Instrument::Yokogawa7651 - Yokogawa 7651 DC source (deprecated)

VERSION

version 3.899

SYNOPSIS

    use Lab::Instrument::Yokogawa7651;
    
    my $gate14=new Lab::Instrument::Yokogawa7651(
      connection_type => 'LinuxGPIB',
      gpib_address => 22,
      gate_protecet => 1,
      level => 0.5,
    );
    $gate14->set_voltage(0.745);
    print $gate14->get_voltage();

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::Yokogawa7651 class implements an interface to the discontinued voltage and current source 7651 by Yokogawa. This class derives from Lab::Instrument::Source and provides all functionality described there.

CONSTRUCTORS

new( %configuration_HASH )

HASH is a list of tuples given in the format

key => value,

please supply at least the configuration for the connection: connection_type => "LinxGPIB" gpib_address =>

you might also want to have gate protect from the start (the default values are given):

                gate_protect => 1,

                gp_equal_level          => 1e-5,
                gp_max_units_per_second  => 0.05,
                gp_max_units_per_step    => 0.005,
                gp_max_step_per_second  => 10,
                gp_max_units_per_second  => 0.05,
                gp_max_units_per_step    => 0.005,

                max_sweep_time=>3600,
                min_sweep_time=>0.1,

If you want to use the sweep function without using gate protect, you should specify

                stepsize=>0.01

Additinally there is support to set parameters for the device "on init":

                function                        => Voltage, # specify "Voltage" or "Current" mode, string is case insensitive
                range                   => undef,
                level                   => undef,
                output                                  => undef,

If those values are not specified, the current device configuration is left unaltered.

METHODS

set_voltage

        $src->set_voltage($voltage)

Sets the output voltage to $voltage. Returns the newly set voltage.

get_voltage

Returns the currently set $voltage. The value is read from the driver cache by default. Provide the option

        device_cache => 1

to read directly from the device.

set_current

        $src->set_current($current)

Sets the output current to $current. Returns the newly set current.

get_current

Returns the currently set $current. The value is read from the driver cache by default. Provide the option

        device_cache => 1

to read directly from the device.

set_level

        $src->set_level($lvl)

Sets the level $lvl in the current operation mode.

get_level

        $lvl = $src->get_level()

Returns the currently set level. Use

        device_cache => 1

to enforce a reading directly from the device.

sweep_to_level

        $src->sweep_to_level($lvl,$time)

Sweep to the level $lvl in $time seconds.

set_range

        $src->set_range($range)

Set the output range for the device. $range should be either in decimal or scientific notation. Returns the newly set range.

get_info

Returns the information provided by the instrument's 'OS' command, in the form of an array with one entry per line. For display, use join(',',$yoko->get_info()); or similar.

set_output

        $src->set_output( $onoff )

Sets the output switch to "1" (on) or "0" (off). Returns the new output state;

get_output

Returns the status of the output switch (0 or 1).

set_voltage_limit($limit)

set_current_limit($limit)

get_status()

Returns a hash with the following keys:

    CAL_switch
    memory_card
    calibration_mode
    output
    unstable
    error
    execution
    setting

The value for each key is either 0 or 1, indicating the status of the instrument.

INSTRUMENT SPECIFICATIONS

DC voltage

The stability (24h) is the value at 23 +- 1°C. The stability (90days), accuracy (90days) and accuracy (1year) are values at 23 +- 5°C. The temperature coefficient is the value at 5 to 18°C and 28 to 40°C.

 Range  Maximum     Resolution  Stability 24h   Stability 90d   
        Output                  +-(% of setting +-(% of setting  
                                + µV)           + µV)            
 ------------------------------------------------------------- 
 10mV   +-12.0000mV 100nV       0.002 + 3       0.014 + 4       
 100mV  +-120.000mV 1µV         0.003 + 3       0.014 + 5       
 1V     +-1.20000V  10µV        0.001 + 10      0.008 + 50      
 10V    +-12.0000V  100µV       0.001 + 20      0.008 + 100     
 30V    +-32.000V   1mV         0.001 + 50      0.008 + 200     



 Range  Accuracy 90d    Accuracy 1yr    Temperature
        +-(% of setting +-(% of setting Coefficient
        +µV)           +µV)           +-(% of setting
                                        +µV)/°C
 -----------------------------------------------------
 10mV   0.018 + 4       0.025 + 5       0.0018 + 0.7
 100mV  0.018 + 10      0.025 + 10      0.0018 + 0.7
 1V     0.01 + 100      0.016 + 120     0.0009 + 7
 10V    0.01 + 200      0.016 + 240     0.0008 + 10
 30V    0.01 + 500      0.016 + 600     0.0008 + 30



 Range   Maximum Output              Output Noise
         Output  Resistance          DC to 10Hz  DC to 10kHz
                                     (typical data)
 ----------------------------------------------------------
 10mV    -       approx. 2Ohm        3µVp-p      30µVp-p
 100mV   -       approx. 2Ohm        5µVp-p      30µVp-p
 1V      +-120mA less than 2mOhm     15µVp-p     60µVp-p
 10V     +-120mA less than 2mOhm     50µVp-p     100µVp-p
 30V     +-120mA less than 2mOhm     150µVp-p    200µVp-p

Common mode rejection: 120dB or more (DC, 50/60Hz). (However, it is 100dB or more in the 30V range.)

DC current

 Range   Maximum     Resolution  Stability (24 h)    Stability (90 days) 
         Output                  +-(% of setting     +-(% of setting      
                                 + µA)              + µA)               
 -----------------------------------------------------------------------
 1mA     +-1.20000mA 10nA        0.0015 + 0.03       0.016 + 0.1         
 10mA    +-12.0000mA 100nA       0.0015 + 0.3        0.016 + 0.5         
 100mA   +-120.000mA 1µA         0.004  + 3          0.016 + 5           


 Range   Accuracy (90 days)  Accuracy (1 year)   Temperature  
         +-(% of setting     +-(% of setting     Coefficient     
         + µA)               + µA)               +-(% of setting  
                                                 + µA)/°C
 -----   ------------------------------------------------------  
 1mA     0.02 + 0.1          0.03 + 0.1          0.0015 + 0.01   
 10mA    0.02 + 0.5          0.03 + 0.5          0.0015 + 0.1    
 100mA   0.02 + 5            0.03 + 5            0.002  + 1


 Range  Maximum     Output                   Output Noise
        Output      Resistance          DC to 10Hz  DC to 10kHz
                                                    (typical data)
 -----------------------------------------------------------------
 1mA    +-30 V      more than 100MOhm   0.02µAp-p   0.1µAp-p
 10mA   +-30 V      more than 100MOhm   0.2µAp-p    0.3µAp-p
 100mA  +-30 V      more than 10MOhm    2µAp-p      3µAp-p

Common mode rejection: 100nA/V or more (DC, 50/60Hz).

CAVEATS

probably many

SEE ALSO

COPYRIGHT AND LICENSE

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

  Copyright 2005-2006  Daniel Schroeer
            2009       Andreas K. Huettel, Daniela Taubert
            2010       Andreas K. Huettel, Daniel Schroeer
            2011       Andreas K. Huettel, Florian Olbrich
            2012       Alois Dirnaichner, Andreas K. Huettel, Florian Olbrich, Stefan Geissler
            2013       Alois Dirnaichner, Andreas K. Huettel, Christian Butschkow, Stefan Geissler
            2014       Alexei Iankilevitch, Alois Dirnaichner, Christian Butschkow
            2015       Andreas K. Huettel, Christian Butschkow
            2016       Simon Reinhardt
            2017       Andreas K. Huettel
            2020       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.