NAME

Lab::Moose::Instrument::OI_ITC503 - Oxford Instruments ITC503 Intelligent Temperature Control

VERSION

version 3.881

SYNOPSIS

use Lab::Moose;

# Constructor
my $itc = instrument(
    type => 'OI_ITC503',
    connection_type => 'LinuxGPIB',
    connection_options => {pad => 10},
);


# Get temperature
say "Temperature: ", $itc->get_value();

# Set heater to AUTO
$itc->itc_set_heater_auto( value => 0 );

# Set PID to AUTO
$itc->itc_set_PID_auto( value => 1 );

DESCRIPTION

By default, two temperature sensors are used: Sensor 2 for temperatures below 1.5K and sensor 3 for temperatures above 1.5K. The used sensors can be set in the constructor, e.g.

my $itc = instrument(
    ...
    high_temp_sensor => 2,
    low_temp_sensor => 3
);

The "get_value" and "set_T" functions will dynamically choose the proper sensor.

METHODS

set_control

$itc->set_control(value => 1);

Set device local/remote mode (0, 1, 2, 3)

itc_set_communications_protocol

$itc->itc_set_communications_protocol(value => 0); # 0 or 2

itc_set_T

$itc->itc_set_T(value => 0.5);

Set target temperature.

get_value

my $temp = $itc->get_value();

Get current temperature value.

get_T

Alias for "get_value".

itc_read_parameter

my $value = $itc->itc_read_parameter(param => 1);

Allowed values for param are 0..13

itc_set_wait

$itc->itc_set_wait(value => $milli_seconds);

itc_examine

my $status = $itc->itc_examine();

itc_set_heater_auto

$itc->itc_set_heater_auto(value => 0);

Allowed values: 0 Heater Manual, Gas Manual; 1 Heater Auto, Gas Manual 2 Heater Manual, Gas Auto 3 Heater Auto, Gas Auto

itc_set_PID

$itc->itc_set_PID(
    p => $p,
    i => $i,
    d => $d
);

itc_set_heater_sensor

$itc->itc_set_heater_sensor( value => 1 );

Value must be one of 1, 2, or 3.

itc_set_PID_auto

$itc->itc_set_PID_auto(value => 1); # enable
$itc->itc_set_PID_auto(value => 0); # disable

itc_set_max_heater_voltage

$itc->itc_set_max_heater_voltage(value => $voltage);

itc_set_heater_output

$itc->itc_set_heater_output(value => $output); # value from 0 to 0.999

itc_T_set_point

$itc->itc_T_set_point(value => $temp);

$itc->heat_sorb(
    max_temp => $max_temp, # default: 30 K
    max_temp_time => ..., # default: 20 * 60 seconds
    middle_temp => ..., # default: 20 K
    middle_temp_time => ..., # default: 200 seconds
    target_time => ..., # default: 0.3 K
    sorb_sensor => ..., # default: 1
    sample_sensor => ..., # default: 2
);

Heat the sorb of a 3-He cryostat (like OI HelioxVL). The sorb temperature is first set to middle_temp for middle_temp_time seconds, then to max_temp for max_temp_time seconds. Then the heater is switched off and the routine returns when the temperature at sample_sensor has dropped below target_time.

Consumed Roles

This driver consumes the following roles:

COPYRIGHT AND LICENSE

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

Copyright 2019       Simon Reinhardt
          2020       Andreas K. Huettel
          2022       Mia Schambeck

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