Tango Attribute Motor Controller.¶
This controller provides a way to interface a Tango Motor device server in Bliss.
Note
Better use this controller than TangoEMot
:
- Attribute to use can be customized
- Tango events are supported
A motor moves by modifying an attribute in a Tango server.
An (optional) state
attribute can be used to report the state.
An (optional) stop()
cmd can also be used to stop the motor if
necessary.
If not specified, default attributes are used:
default attributes are:
pos_attr
:Position
state_attr
:State
If velocity_attr
and acceleration_attr
are not declared, a default
hardcoded values will be reported. no access to those
attributes would be done.
To setup Velocity
and/or Acceleration
use declarations as follow:
velocity_attr
:Velocity
acceleration_attr
:Acceleration
Default stop command is:
stop_cmd
:Abort
Beware that, even if not configured, if the state
attribute and/or the stop
command exists for that device, they may be used by this controller. That
is the default behaviour. You can still inhibit their use by manually positioning
them to a non-existant attribute name/command name.
For example state_attr: dummy
or stop_cmd: not-used
.
configuration¶
Configuration example:
- class: tango_attr_as_motor
axes:
# first example 'chi' uses defaults for all attributes:
- name: chi
uri: id42/slitbox/1
# in this example 'phi' uses "diffpos" as attribute to change
# when moving
- name: phi
uri: id42/slitbox/1
pos_attr: diffpos
# in the last example 'omega' both attributes and stop command
# are different from defaults
- name: omega
uri: id42/slitbox/3
pos_attr: OmegaPosition
state_attr: OmegaState
stop_cmd: OmegaStop
# A tango icepap exposes an acceleration time instead of an acceleration.
# This can be setup the following way:
- name: icepap_roby
uri: id42/icepap/roby
pos_attr: Position
velocity_attr: Velocity
acceleration_time_attr: Acceleration