Attocube ECC100 Motion Controller¶
Driver module for Attocube stages.
- Interfaces with the ECC100 controller, which has support for various stages:
- ECS3030
- ECS3040
- ECS3050
- ECS3060
- ECS3070
- ECS3080
- ECS5050
- ECGp5050
- ECGt5050
- ECR3030
Note that ecc.dll must be on the system path, and that this is a windows only driver.
-
class
instrumental.drivers.motion.ecc100.
Actor
(controller, axis)¶ -
__init__
(controller, axis)¶
-
at_target
(delta_pos=None)¶ Indicates whether the stage is at the target position.
delta_pos is the tolerance within which the stage is considered ‘at position’
-
disable
()¶ Disables communication from the controller to the stage.
-
enable
()¶ Enables communication from the controller to the stage.
-
enable_feedback
(enable=True)¶ Control the positioning feedback-control loop
enable: bool, where False corresponds to OFF and True corresponds to ON
-
get_amplitude
()¶ Gets the amplitude of the actuator signal.
-
get_frequency
()¶ Gets the frequency of the actuator signal.
-
get_position
()¶ Returns the current postion
-
get_ref_position
()¶ Returns the current reference positoin
-
get_target
()¶ Returns the target position of the feedback control loop.
-
is_enabled
()¶ Returns whether communication to the stage is enabled.
-
is_feedback_on
()¶ Indicates if the feedback-control loop is ON (True) or OFF (False)
-
is_ref_position_valid
()¶ Returns whether the reference position is valid.
-
is_stepping_backward
()¶
-
is_stepping_forward
()¶
-
move_to
(pos, wait=False)¶ Moves to a location using closed loop control.
-
set_amplitude
(amplitude)¶ Sets the amplitude of the actuator signal.
This modifies the step size of the positioner.
Parameters: amplitude (pint.Quantity) – amplitude of the actuator signal in volt-compatible units. The allowed range of inputs is from 0 V to 45 V.
-
set_frequency
(frequency)¶ Sets the frequency of the actuation voltage applied to the stage.
The frequency is proportional to the travel speed of the positioner.
Parameters: frequency (pint.Quantity) – frequency of the actuator signal in Hz-compatible units. The allowed range of inputs is from 1 Hz to 2 kHz.
-
set_target
(target)¶ Sets the target position of the feedback control loop.
target: target position, in nm for linear stages, in micro radians for goniometers
-
start_stepping
(backward=False)¶ Step continously until stopped.
This will stop any ongoing motion in the opposite direction.
-
step_once
(backward=False)¶ Step once.
-
stop_stepping
()¶ Stop any continuous stepping.
-
timed_move
(direction, duration)¶ Moves in the specified direction for the specified duration.
direction: bool controlling the direciton of movement. True corresponds to the positive direction for linear stages and the negative direction for goniometers
duration: duration of motion, a pint quantity with units of time
-
wait_until_at_position
(update_interval='10 ms', delta_pos=None)¶ Waits to return until the actor is at the target position
delta_pos is the margin within which the device is considered to be at the target position
-
-
class
instrumental.drivers.motion.ecc100.
ActorType
¶ -
Goniometer
= 1¶
-
LinearStage
= 0¶
-
RotationStage
= 2¶
-
-
class
instrumental.drivers.motion.ecc100.
ECC100
(device_id=None)¶ Interfaces with the Attocube ECC100 controller. Windows-only.
-
__init__
(device_id=None)¶ Connects to the attocube controller.
id is the id of the device to be connected to
-
close
()¶ Closes the connection to the controller.
-
get_position
(actors=None)¶ Gets the positions of the actors in the list actors.
actors is a list of type Actor, or one can use the default actors, set by set_default_actors
-
get_target
(actors=None)¶ Gets the target positions of the actors in the list actors.
Returns a list of target positions.
actors is a list of type Actor, or one can use the default actors, set by set_default_actors
-
move_to
(positions, actors=None, wait=False)¶ Moves to the positions in the list positions.
actors is a list of type Actor, or one can use the default actors, set by set_default_actors
-
set_default_actors
(actors)¶ Sets the default list of actors used in various functions.
Actors should be a list of instances of Actor
-
set_target
(target, actors=None)¶ Sets the target positions of the actors in the list actors.
target is a list of position that are unitful pint quantities
actors is a list of type Actor, or one can use the default actors, set by set_default_actors
-
wait_until_at_position
(actors=None, delta_pos=None)¶ Waits to return until all actors are at the target position
If actors is None, then the default actors are used. The default actors are set using set_default_actors
-
-
class
instrumental.drivers.motion.ecc100.
RotationStage
(controller, axis)¶
-
instrumental.drivers.motion.ecc100.
check_for_devices
()¶ Checks for devices, returns their info and how many there are.
Returns: - num (int) – number of devices connected
- info (list of EccInfo) – info list. Each EccInfo object has the attributes ‘id’, and ‘locked’
-
instrumental.drivers.motion.ecc100.
list_instruments
()¶