NAME
Lab::Moose::Instrument::OI_IPS - Oxford Instruments IPS Intelligent Power Supply
VERSION
version 3.850
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);
Allowed values: 0, 2, 4, 6
.
This driver sets the protocol to 4
"Extended Resolution" on startup.
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.
in_persistent_mode
if ($ips->in_persistent_mode()) {
...
}
Return 1 if in persistent mode; otherwise return false.
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)
get_switch_heater
my $switch = $ips->get_switch_heater();
Return values:
- 0: Off Magnet at Zero (switch closed)
- 1: On (switch open)
- 2: Off Magnet at Field (switch closed)
- 5: Heater Fault (heater is on but current is low)
- 8: No Switch Fitted
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, Simon Reinhardt
2021 Andreas K. Huettel, Fabian Weinelt, 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.