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

NAME

Lab::Moose::Instrument::SCPI::Sense::Function::Concurrent - Role for the SCPI SENSe:FUNCtion subsystem with support for concurrent sense

VERSION

version 3.670

DESCRIPTION

This role is intended for instruments which support multiple concurrent sense functions. For example, the Keithley2400 or KeysightB2901A source/measure units which can measure voltage and current simultaneously.

The set sense function is used by other SENSE: roles, like SENSE:NPLC. For example, let us enable concurrent measurement of voltage and current and set the integration time for both measured parameters:

 $source->sense_function_concurrent(value => 1);
 $source->sense_function_on(value => ['VOLT, 'CURR']); 

 # Set NPLC for current measurement
 $source->sense_function(value => 'CURR');
 $source->sense_nplc(value => 10);

 # Set NPLC for voltage measurement
 $source->sense_function(value => 'VOLT');
 $source->sense_nplc(value => 10); 

METHODS

sense_function_concurrent_query/sense_function_concurrent

Set/Get concurrent property of sensor block. Allowed values: 0 or 1.

sense_function

 $source->sense_function(value => $function);

Unlike the sense_function method from the Lab::Moose::Instrument::SCPI::Sense::Function method, does not send a command, only used by other SENSE: roles, like SENSE:NPLC

cached_sense_function/sense_function_query

sense_function_query is only used to initialize the cache.

sense_function_on

 $source->sense_function_on(value => ['CURR', 'VOLT']);

Enable parameters which should be measured.

sense_function_on_query

 my @params = @{$source->sense_function_on_query()};

Query list of parameters which are measured.

sense_function_off_query/sense_function_off

 $source->sense_function_off(value => ['CURR']);

Query/set list of parameters which should not be measured.

COPYRIGHT AND LICENSE

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

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