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

NAME

        Lab::XPRESS::Sweep::Time - simple time controlled repeater

.

SYNOPSIS

        use Lab::Measurement;
        
        my $time_sweep = Sweep('Time',
                {
                duration => 5
                });

.

DESCRIPTION

Parent: Lab::XPRESS::Sweep::Sweep

The Lab::XPRESS::Sweep::Time class implements a simple time controlled repeater module in the Lab::XPRESS::Sweep framework.

.

CONSTRUCTOR

        my $time_sweep = Sweep('Time',
                {
                duration => 5,
                interval => 0.5
                });

Instantiates a new Time-Sweep with a duration of 5 seconds and a Measurement interval of 5 seconds. To operate in the stabilization mode make an instant like the following:

        my $time_sweep = Sweep('Time',
                {
                stabilize => 1,         
                sensor => $DIGITAL_MULTIMETER,
                std_dev_sensor => 1e-6,
                stabilize_observation_time => 3*60,

                duration => 20*60,
                interval => 0.5
                });

.

PARAMETERS

duration [float] (default = 1)

duration for the time controlled repeater. Default value is 1, negative values indicate a infinit number of repetitions. In stabilization mode, the duration gives the maximum duration which is waited before the sweep gets interrupted even though the stabilization criterion hasn't been reached yet.

.

interval [float] (default = 1)

interval in seconds for taking measurement points.

.

id [string] (default = 'Repeater')

Just an ID.

.

delay_before_loop [float] (default = 0)

defines the time in seconds to wait after the starting point has been reached.

.

delay_after_loop [float] (default = 0)

Defines the time in seconds to wait after the sweep has been finished. This delay will be executed before an optional backsweep or optional repetitions of the sweep.

stabilize [int] (default = 0)

1 = Activate stabilization mode. In this mode the sweep will be interrupted when a stabilization criterion is reached or when the duration expires, whatever is reached first. The variable to stabilize on is the value which is returned by the get_value function corresponding to the instrument handle given to the parameter 'sensor'. The stabilization criterion can be set in 'std_dev_sensor' as a number which has the same unit as the variable, that is supposed to stabilize. When the standard deviation of a time series of the stabilization variable falls below 'std_dev_sensor', the sweep ends. The length of the time window, which is used to calculate the standard deviation is given by 'stabilize_observation_time'. The standarad deviation is not being calculated by the sweep, before the time window isn't filled with data completely. Therefore, the sweep will never last less than 'stabilize_observation_time', unless 'duration' < 'stabilize_observation_time'.

0 = Deactivate stabilization mode.

sensor [Lab::Instrument] (default = undef)

See 'stabilize'.

std_dev_sensor [float] (default = 1e-6),

See 'stabilize'.

stabilize_observation_time [float] (default = 3*60)

See 'stabilize'. .

CAVEATS/BUGS

probably none

.

SEE ALSO

Lab::XPRESS::Sweep

.

AUTHOR/COPYRIGHT

Christian Butschkow and Stefan Geißler

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

.