NAME

Lab::Moose::Instrument::OI_IPS - Oxford Instruments IPS Intelligent Power Supply

VERSION

version 3.691

SYNOPSIS

 use Lab::Moose;

 # Constructor
 my $ips = instrument(
     type => 'OI_IPS',
     connection_type => 'LinuxGPIB',
     connection_options => {pad => 10},
     
     # safety limits, should be fixed in a subclass of this driver
     max_fields => [7, 10],          # absolute maximum field of 10T
     max_field_rates => [0.1, 0.05], # 0.1 T/min maximum rate in range 0T..7T
                                     # 0.05 T/min maximum rate in range 7T..10T
 );


 # Get field
 my $field = $ips->get_field();

 # Sweep to 1T with rate 0.1T/min

 $ips->sweep_to_field(target => 1, rate => 0.1);

METHODS

sweep_to_field

 my $new_field = $ips->sweep_to_field(
    target => $target_field, # Tesla
    rate => $rate, # Tesla/min
 );

config_sweep

 $ips->config_sweep(point => $target, rate => $rate);

Only define setpoints, do not start sweep.

set_control

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

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

set_communications_protocol

 $ips->set_communications_protocol(value => 0); # 0 or 2

examine_status

 my $status = $ips->examine_status();

Return status (XmnAnCnHnMmnPmn).

active

 my $status = $ips->active();

Return true value if IPS is sweeping. Return false when sweep finished.

wait

 $ips->wait();

Wait until current sweep is finished. Print status messages if verbose attribute was set in constructor (default).

read_parameter

 my $value = $ips->read_parameter(value => 1);

Allowed values for value are 0..13

get_field

 my $field = $ips->get_field();

Return current field (Tesla).

get_value

Alias for "get_field"

set_switch_heater

 $ips->set_switch_heater(value => 0); # Heater off
 $ips->set_switch_heater(value => 1); # Heater on (only done if magnet current equals power supply current)

Consumed Roles

This driver consumes the following roles:

COPYRIGHT AND LICENSE

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

  Copyright 2019       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.