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

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

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

AUTHOR/COPYRIGHT

 (c) 2004-2006 Daniel Schröer
 (c) 2007-2010 Daniel Schröer, Daniela Taubert, Andreas K. Hüttel, and others
 (c) 2011 Florian Olbrich, Andreas K. Hüttel

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