NAME
Lab::Instrument::SafeSource - a generalised voltage source with sweep rate limitations
SYNOPSIS
DESCRIPTION
This class extends the Lab::Instrument::Source class. It is meant to be inherited by instrument classes (virtual instruments), that implement voltage sources (e.g. the Lab::Instrument::Yokogawa7651 class).
The Lab::Instrument::SafeSource class extends the Lab::Instrument::Source class to provide a sweep rate limitation mechanism, to protect sensible samples. Blabla.
From the view of an author of new instruments classes, there is no difference between inheriting from Lab::Instrument::Source and Lab::Instrument::SafeSource. The same methods have to be implemented. See Lab::Instrument::Source for details. The only difference is the additional protection mechanism, which can also be turned off.
CONSTRUCTORS
$self=new Lab::Instrument::SafeSource($default_config,\%options);
METHODS
configure
$self->configure(\%config);
The available options and default settings look like this:
$default_config={
gate_protect => 1,
gp_max_volt_per_step => 0.001,
gp_max_volt_per_second => 0.002
};
set_voltage
$self->set_voltage($voltage);
This is the protected version of the set_voltage() method. It takes into account the gp_max_volt_per_step and gp_max_volt_per_second settings, by employing the sweep_to_voltage() method.
sweep_to_voltage
$self->sweep_to_voltage($voltage);
This method sweeps the output voltage to the desired value. The voltage is changed with the maximum speed and granularity, that the gp_max_volt_per_step and gp_max_volt_per_second settings allow.
CAVEATS/BUGS
Probably many.
SEE ALSO
- Lab::Instrument::Source
-
The Lab::Instrument::SafeSource class inherits from the Lab::Instrument::Source module.
- Time::HiRes
-
The Lab::Instrument::SafeSource class uses the Time::HiRes module.
AUTHOR/COPYRIGHT
This is $Id: SafeSource.pm 85 2005-11-10 23:35:43Z schroeer $
Copyright 2004 Daniel Schröer (http://www.danielschroeer.de)
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 156:
Non-ASCII character seen before =encoding in 'Schröer'. Assuming CP1252