Package for TACO device classes in NICOS.
NICOS axis classes.
Bases: nicos.taco.core.TacoDevice, nicos.abstract.Axis
Bases: TacoDevice, Axis
Interface for TACO Axis server devices.
User methods
Do a reference drive of the axis (do not use with encoded axes).
Sets the current position of the axis to the target.
Parameters
Motor acceleration. Default value: 0.0. Unit: main/s^2.
Position of the reference switch. Default value: 0.0. Unit: same as device value.
Speed driving to reference switch. Default value: 0.0. Unit: main/s.
Switch to use as reference. Default value: ''.
Motor speed. Default value: 0.0. Unit: main/s.
Parameters inherited from the base classes: abslimits, backlash, description, dragerror, fixed, fmtstr, loglevel, loopdelay, lowlevel, maxage, maxtries, offset, pollinterval, precision, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
Bases: nicos.taco.axis.Axis
Bases: Axis
A TACO axis that also controls air for airpads.
Attached devices
Parameters
Delay after switching on air. Unit: s.
Delay before switching off air. Unit: s.
(off, on) values to write to switch device. Default value: (0, 1).
Parameters inherited from the base classes: abslimits, accel, backlash, description, dragerror, fixed, fmtstr, loglevel, loopdelay, lowlevel, maxage, maxtries, offset, pollinterval, precision, refpos, refspeed, refswitch, speed, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
Taco coder class for NICOS.
Bases: nicos.taco.core.TacoDevice, nicos.abstract.Coder
Bases: TacoDevice, Coder
TACO coder implementation class.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, precision, tacodelay, tacodevice, tacotimeout, tacotries, unit
NICOS-TACO base classes.
Bases: nicos.taco.core.TacoDevice
Bases: TacoDevice
Parameters inherited from the base classes: tacodelay, tacodevice, tacotimeout, tacotries
Bases: object
Mixin class for TACO devices.
Use it in concrete device classes like this:
class Counter(TacoDevice, Measurable):
taco_class = IO.Counter
# more overwritten methods
i.e., put TacoDevice first in the base class list.
TacoDevice provides the following methods already:
You can however override them and provide your own specialized implementation.
TacoDevice subclasses will automatically log all calls to TACO if their loglevel is DEBUG.
TacoDevice also has the following class attributes, which can be overridden in derived classes:
The following utility methods are provided:
Try running the TACO function, and raise a NicosError on exception.
A more specific NicosError subclass is chosen if appropriate. For example, database-related errors are converted to CommunicationError. A TacoDevice subclass can add custom error code to exception class mappings by using the taco_errorcodes class attribute.
If the tacotries parameter is > 1, the call is retried accordingly.
Try the TACO method func with given args for the number of times given by tries. On each failure, a warning log message is emitted. If the device is in error state after a try, it is reset. If the number of tries is exceeded, the error from the call is re-raised.
what is a string that explains the call; it is used in the warning messages.
Update the TACO resource resname to value (both must be strings), switching the device off and on.
Create a new TACO client to the device given by devname, using the Python class class_. Initialize the device in a consistent state, handling eventual errors.
If no arguments are given, the values of devname, class_, resetok and timeout are taken from the class attributes taco_class and taco_resetok as well as the device parameters tacodevice and tacotimeout. This is done during doPreinit, so that you usually don’t have to call this method in TacoDevice subclasses.
You can use this method to create additional TACO clients in a device implementation that uses more than one TACO device.
Parameters
Delay between retries. Default value: 0.10000000000000001. Unit: s.
TACO device name.
TACO client network timeout. Default value: 3. Unit: s.
Number of tries per TACO call. Default value: 1.
Bases: object
Detector classes for NICOS.
Bases: nicos.taco.core.TacoDevice, nicos.core.device.Measurable
Bases: TacoDevice, Measurable
Base class for one channel of the FRM-II counter card.
Use one of the concrete classes FRMTimerChannel or FRMCounterChannel.
Parameters
If this channel is a master. Default value: False.
Channel mode: normal, ratemeter, or preselection. Default value: 'preselection'.
Preselection for this channel. Default value: 0.0.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.taco.detector.FRMChannel
Bases: FRMChannel
Parameters
Type of channel: monitor or counter.
Parameters inherited from the base classes: description, fmtstr, ismaster, loglevel, lowlevel, maxage, mode, pollinterval, preselection, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.core.device.Measurable
Bases: Measurable
The standard detector at FRM-II, using the FRM-II counter card.
Attached devices
Counter channels. Type: a list of FRMChannel.
Monitor channels. Type: a list of FRMChannel.
Timer channel. Type: FRMChannel.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, unit
Bases: nicos.taco.detector.FRMChannel
Bases: FRMChannel
Parameters inherited from the base classes: description, fmtstr, ismaster, loglevel, lowlevel, maxage, mode, pollinterval, preselection, tacodelay, tacodevice, tacotimeout, tacotries, unit
Implementation of TACO I/O devices.
Bases: nicos.taco.core.TacoDevice, nicos.core.device.Readable
Bases: TacoDevice, Readable
Base class for TACO AnalogInput devices.
This class can be used for concrete devices, or other more specific device classes can be derived from it.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.taco.core.TacoDevice, nicos.core.device.HasLimits, nicos.core.device.Moveable
Bases: TacoDevice, HasLimits, Moveable
Base class for TACO AnalogOutput devices.
This class can be used for concrete devices, or other more specific device classes can be derived from it.
Parameters
Wait loop delay. Default value: 0.29999999999999999. Unit: s.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
Bases: nicos.taco.io.DigitalOutput
Bases: DigitalOutput
Base class for a TACO DigitalOutput that works with a tuple of individual bits instead of a single integer.
Parameters
Number of bits. Default value: 1.
Number of the first bit. Default value: 0.
Parameters inherited from the base classes: description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit
Bases: nicos.taco.core.TacoDevice, nicos.core.device.Readable
Bases: TacoDevice, Readable
Base class for TACO DigitalInput devices. The values are plain integers.
This class can be used for concrete devices, or other more specific device classes can be derived from it.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.taco.core.TacoDevice, nicos.core.device.Moveable
Bases: TacoDevice, Moveable
Base class for TACO DigitalOutputs.
This class can be used for concrete devices, or other more specific device classes can be derived from it.
Parameters inherited from the base classes: description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit
Bases: nicos.core.device.Moveable
Bases: Moveable
Writes the same value to multiple digital outputs at once.
Attached devices
A list of digital outputs to switch simultaneously. Type: a list of DigitalOutput.
Parameters inherited from the base classes: description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, target, unit
Bases: nicos.taco.io.DigitalInput
Bases: DigitalInput
A DigitalInput with numeric values mapped to names.
Parameters
A dictionary mapping integer values to names. Default value: {}.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.taco.io.DigitalOutput
Bases: DigitalOutput
A DigitalOutput with numeric values mapped to names.
Parameters
A dictionary mapping integer values to names. Default value: {}.
Parameters inherited from the base classes: description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit
Bases: nicos.taco.io.NamedDigitalInput
Bases: NamedDigitalInput
Base class for a TACO DigitalOutput with only a part of the full bit width accessed.
Parameters
Number of bits. Default value: 1.
Number of the first bit. Default value: 0.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, mapping, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit
Bases: nicos.taco.io.NamedDigitalOutput
Bases: NamedDigitalOutput
Base class for a TACO DigitalOutput with only a part of the full bit width accessed.
Parameters
Number of bits. Default value: 1.
Number of the first bit. Default value: 0.
Parameters inherited from the base classes: description, fixed, fmtstr, loglevel, lowlevel, mapping, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit
Taco motor class for NICOS.
Bases: nicos.taco.core.TacoDevice, nicos.abstract.Motor
Bases: TacoDevice, Motor
TACO motor implementation class.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, pollinterval, precision, speed, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
TACO power supply classes.
Bases: nicos.taco.power.Supply
Bases: Supply
Concrete device for TACO current supplies.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, offset, pollinterval, ramp, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits, variance
Bases: nicos.core.device.HasOffset, nicos.core.device.HasLimits, nicos.taco.core.TacoDevice, nicos.core.device.Moveable
Bases: HasOffset, HasLimits, TacoDevice, Moveable
Base class for TACO power supplies.
This is a common base class, please use either CurrentSupply or VoltageSupply for concrete devices.
Parameters
Ramp for the supply; can be zero to deactivate ramping. Default value: 0. Unit: main/min.
Variance of the read value to the write value; can be zero to deactivate variance check. Default value: 0. Unit: %.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, offset, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
Bases: nicos.taco.power.Supply
Bases: Supply
Concrete device for TACO voltage supplies.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, offset, pollinterval, ramp, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits, variance
NICOS temperature controller classes.
Bases: nicos.taco.core.TacoDevice, nicos.core.device.HasLimits, nicos.core.device.HasOffset, nicos.core.device.Moveable
Bases: TacoDevice, HasLimits, HasOffset, Moveable
TACO temperature controller device.
Parameters
Control channel, possible values depend on the type of device. Default value: ''.
The D control parameter. Default value: 0.0.
The I control parameter. Default value: 0.0.
Sleep time when waiting. Default value: 1. Unit: s.
Control mode (manual, zone or openloop). Default value: 'manual'.
The P control parameter. Default value: 0.0.
Temperature ramp in K/min. Default value: 0.0. Unit: K/min.
Current temperature setpoint. Default value: 0.0. Unit: same as device value.
Maximum time to wait for stable temperature. Default value: 0.0. Unit: s.
What to do when a timeout occurs. Default value: 'continue'.
The window’s temperature tolerance. Default value: 0.0. Unit: K.
Time window for checking stable temperature. Default value: 0.0. Unit: s.
Parameters inherited from the base classes: abslimits, description, fixed, fmtstr, loglevel, lowlevel, maxage, offset, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, target, unit, userlimits
Bases: nicos.taco.core.TacoDevice, nicos.core.device.Readable
Bases: TacoDevice, Readable
TACO temperature sensor device.
Parameters inherited from the base classes: description, fmtstr, loglevel, lowlevel, maxage, pollinterval, tacodelay, tacodevice, tacotimeout, tacotries, unit