Move
This module provides the base class for mover tools.
CLASS | DESCRIPTION |
---|---|
Mover |
base class for mover tools |
Documentation last updated: 2025-02-22
Mover
Mover(
*,
robot_position: Position = Position(),
home_position: Position = Position(),
tool_offset: Position = Position(),
calibrated_offset: Position = Position(),
scale: float = 1.0,
deck: Deck | None = None,
workspace: BoundingVolume | None = None,
safe_height: float | None = None,
saved_positions: dict | None = None,
speed_max: float = 600,
verbose: bool = False,
**kwargs,
)
Base class for mover tools.
ATTRIBUTE | DESCRIPTION |
---|---|
connection_details |
connection details for the device
TYPE:
|
device |
device object that communicates with physical tool
TYPE:
|
flags |
flags for the class
TYPE:
|
is_busy |
whether the device is busy
TYPE:
|
is_connected |
whether the device is connected
TYPE:
|
verbose |
verbosity of class
TYPE:
|
deck |
Deck object for workspace
TYPE:
|
workspace |
workspace bounding box
TYPE:
|
safe_height |
safe height in terms of robot coordinate system
TYPE:
|
saved_positions |
dictionary of saved positions
TYPE:
|
current_zone_waypoints |
current zone entry waypoints
TYPE:
|
speed |
travel speed of robot
TYPE:
|
speed_factor |
fraction of maximum travel speed of robot
TYPE:
|
speed_max |
maximum speed of robot in mm/min
TYPE:
|
robot_position |
current position of the robot
TYPE:
|
home_position |
home position of the robot in terms of robot coordinate system
TYPE:
|
tool_offset |
tool offset from robot to end effector
TYPE:
|
calibrated_offset |
calibrated offset from robot to work position
TYPE:
|
scale |
factor to scale the basis vectors by
TYPE:
|
tool_position |
robot position of the tool end effector
TYPE:
|
work_position |
work position of the robot
TYPE:
|
worktool_position |
work position of the tool end effector
TYPE:
|
position |
work position of the tool end effector; alias for worktool_position
TYPE:
|
METHOD | DESCRIPTION |
---|---|
connect |
connect to the device |
disconnect |
disconnect from the device |
resetFlags |
reset all flags to class attribute _default_flags |
shutdown |
shutdown procedure for tool |
enterZone |
enter a zone on the deck |
exitZone |
exit the current zone on the deck |
halt |
halt robot movement |
home |
make the robot go home |
isFeasible |
checks and returns whether the target coordinates is feasible |
loadDeck |
load Deck layout object to mover |
loadDeckFromDict |
load Deck layout object from dictionary |
loadDeckFromFile |
load Deck layout object from file |
move |
move the robot in a specific axis by a specific value |
moveBy |
move the robot by target direction |
moveTo |
move the robot to target position |
moveToSafeHeight |
move the robot to safe height |
moveRobotTo |
move the robot to target position |
moveToolTo |
move the tool end effector to target position |
reset |
reset the robot |
rotate |
rotate the robot in a specific axis by a specific value |
rotateBy |
rotate the robot by target direction |
rotateTo |
rotate the robot to target orientation |
rotateRobotTo |
rotate the robot to target orientation |
rotateToolTo |
rotate the tool end effector to target orientation |
safeMoveTo |
safe version of moveTo by moving to safe height first |
setSafeHeight |
set safe height for robot |
setSpeedFactor |
set the speed factor of the robot |
setToolOffset |
set the tool offset of the robot |
showWorkspace |
show the workspace of the robot |
transferLabware |
transfer labware from one slot to another |
updateRobotPosition |
update the robot position |
transformRobotToTool |
transform robot coordinates to tool coordinates |
transformRobotToWork |
transform robot coordinates to work coordinates |
transformToolToRobot |
transform tool coordinates to robot coordinates |
transformWorkToRobot |
transform work coordinates to robot coordinates |
calibrate |
calibrate the internal and external coordinate systems |
Initialize Mover class
PARAMETER | DESCRIPTION |
---|---|
robot_position
|
current position of the robot. Defaults to Position(). |
home_position
|
home position of the robot in terms of robot coordinate system. Defaults to Position(). |
tool_offset
|
tool offset from robot to end effector. Defaults to Position(). |
calibrated_offset
|
calibrated offset from robot to work position. Defaults to Position(). |
scale
|
factor to scale the basis vectors by. Defaults to 1.0.
TYPE:
|
deck
|
Deck object for workspace. Defaults to None.
TYPE:
|
workspace
|
workspace bounding box. Defaults to None.
TYPE:
|
safe_height
|
safe height in terms of robot coordinate system. Defaults to None.
TYPE:
|
speed_max
|
maximum speed of robot in mm/min. Defaults to 600.
TYPE:
|
verbose
|
verbosity of class. Defaults to False.
TYPE:
|
calibrated_offset
property
calibrated_offset: Position
Calibrated offset from robot to work position
position
property
position: Position
Work position of the tool end effector. Alias for worktool_position
calibrate
staticmethod
calibrate(
internal_points: ndarray, external_points: ndarray
) -> tuple[Position, float]
Calibrate the internal and external coordinate systems
PARAMETER | DESCRIPTION |
---|---|
internal_points
|
internal points
TYPE:
|
external_points
|
external points
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
tuple[Position, float]
|
tuple[Position,float]: calibrated offset and scale |
enterZone
Enter a zone on the deck
PARAMETER | DESCRIPTION |
---|---|
zone
|
zone to enter
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
exitZone
Exit the current zone on the deck
PARAMETER | DESCRIPTION |
---|---|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
home
Make the robot go home
PARAMETER | DESCRIPTION |
---|---|
axis
|
axis to home. Defaults to None.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
bool
|
whether the robot successfully homed
TYPE:
|
isFeasible
isFeasible(
coordinates: Sequence[float] | ndarray,
external: bool = True,
tool_offset: bool = True,
) -> bool
Checks and returns whether the target coordinates is feasible
PARAMETER | DESCRIPTION |
---|---|
coordinates
|
target coordinates
TYPE:
|
external
|
whether the target coordinates are in external coordinates. Defaults to True.
TYPE:
|
tool_offset
|
whether to consider the tool offset. Defaults to True.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
bool
|
whether the target coordinates are feasible
TYPE:
|
loadDeck
loadDeck(deck: Deck)
Load Deck
layout object to mover
PARAMETER | DESCRIPTION |
---|---|
deck
|
Deck layout object
TYPE:
|
loadDeckFromDict
Load Deck
layout object from dictionary
PARAMETER | DESCRIPTION |
---|---|
details
|
Deck layout dictionary
TYPE:
|
loadDeckFromFile
Load Deck
layout object from file
PARAMETER | DESCRIPTION |
---|---|
deck_file
|
Deck layout file
TYPE:
|
move
move(
axis: str,
by: float,
speed_factor: float | None = None,
*,
jog: bool = False,
rapid: bool = False,
) -> Position
Move the robot in a specific axis by a specific value
PARAMETER | DESCRIPTION |
---|---|
axis
|
axis to move
TYPE:
|
by
|
displacement to move
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rapid
|
whether to move rapidly. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool position
TYPE:
|
moveBy
moveBy(
by: Sequence[float] | Position | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
rapid: bool = False,
robot: bool = False,
) -> Position
Move the robot by target direction
PARAMETER | DESCRIPTION |
---|---|
by
|
target direction
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rapid
|
whether to move rapidly. Defaults to False.
TYPE:
|
robot
|
whether to move the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool/robot position
TYPE:
|
moveRobotTo
moveRobotTo(
to: Sequence[float] | Position | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
rapid: bool = False,
) -> Position
Move the robot to target position
PARAMETER | DESCRIPTION |
---|---|
to
|
target position
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rapid
|
whether to move rapidly. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new robot position
TYPE:
|
moveTo
moveTo(
to: Sequence[float] | Position | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
rapid: bool = False,
robot: bool = False,
) -> Position
Move the robot to target position
PARAMETER | DESCRIPTION |
---|---|
to
|
target position
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rapid
|
whether to move rapidly. Defaults to False.
TYPE:
|
robot
|
whether to move the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool/robot position
TYPE:
|
moveToSafeHeight
moveToSafeHeight(
speed_factor: float | None = None,
) -> Position
Move the robot to safe height
PARAMETER | DESCRIPTION |
---|---|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool position
TYPE:
|
moveToolTo
moveToolTo(
to: Sequence[float] | Position | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
rapid: bool = False,
) -> Position
Move the tool end effector to target position
PARAMETER | DESCRIPTION |
---|---|
to
|
target position
TYPE:
|
speed_factor
|
fraction of maximum speed to travel at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rapid
|
whether to move rapidly. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool position
TYPE:
|
rotate
rotate(
axis: str,
by: float,
speed_factor: float | None = None,
*,
jog: bool = False,
) -> Rotation
Rotate the robot in a specific axis by a specific value
PARAMETER | DESCRIPTION |
---|---|
axis
|
axis to rotate
TYPE:
|
by
|
angle to rotate
TYPE:
|
speed_factor
|
fraction of maximum speed to rotate at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Rotation
|
new tool orientation
TYPE:
|
rotateBy
rotateBy(
by: Sequence[float] | Rotation | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
robot: bool = False,
) -> Rotation
Rotate the robot by target rotation
PARAMETER | DESCRIPTION |
---|---|
by
|
target rotation
TYPE:
|
speed_factor
|
fraction of maximum speed to rotate at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
robot
|
whether to rotate the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Rotation
|
new tool/robot orientation
TYPE:
|
rotateRobotTo
rotateRobotTo(
to: Sequence[float] | Rotation,
speed_factor: float | None = None,
*,
jog: bool = False,
) -> Rotation
Rotate the robot to target orientation
PARAMETER | DESCRIPTION |
---|---|
to
|
target orientation
TYPE:
|
speed_factor
|
fraction of maximum speed to rotate at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Rotation
|
new robot orientation
TYPE:
|
rotateTo
rotateTo(
to: Sequence[float] | Rotation | ndarray,
speed_factor: float | None = None,
*,
jog: bool = False,
robot: bool = False,
) -> Rotation
Rotate the robot to target orientation
PARAMETER | DESCRIPTION |
---|---|
to
|
target orientation
TYPE:
|
speed_factor
|
fraction of maximum speed to rotate at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
robot
|
whether to rotate the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Rotation
|
new tool/robot orientation
TYPE:
|
rotateToolTo
rotateToolTo(
to: Sequence[float] | Rotation,
speed_factor: float | None = None,
*,
jog: bool = False,
) -> Rotation
Rotate the tool end effector to target orientation
PARAMETER | DESCRIPTION |
---|---|
to
|
target orientation
TYPE:
|
speed_factor
|
fraction of maximum speed to rotate at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Rotation
|
new tool orientation
TYPE:
|
safeMoveTo
safeMoveTo(
to: Sequence[float] | Position | ndarray,
speed_factor_lateral: float | None = None,
speed_factor_up: float | None = None,
speed_factor_down: float | None = None,
*,
jog: bool = False,
rotation_before_lateral: bool = False,
robot: bool = False,
) -> Position
Safe version of moveTo by moving in to safe height first
PARAMETER | DESCRIPTION |
---|---|
to
|
target position
TYPE:
|
speed_factor_lateral
|
fraction of maximum speed to travel laterally at. Defaults to None.
TYPE:
|
speed_factor_up
|
fraction of maximum speed to travel up at. Defaults to None.
TYPE:
|
speed_factor_down
|
fraction of maximum speed to travel down at. Defaults to None.
TYPE:
|
jog
|
whether to jog the robot. Defaults to False.
TYPE:
|
rotation_before_lateral
|
whether to rotate before moving laterally. Defaults to False.
TYPE:
|
robot
|
whether to move the robot. Defaults to False.
TYPE:
|
RETURNS | DESCRIPTION |
---|---|
Position
|
new tool/robot position
TYPE:
|
setSafeHeight
Set safe height for robot
PARAMETER | DESCRIPTION |
---|---|
height
|
safe height in terms of robot coordinate system
TYPE:
|
setSpeedFactor
Set the speed factor of the robot
PARAMETER | DESCRIPTION |
---|---|
speed_factor
|
fraction of maximum speed to travel at
TYPE:
|
persist
|
whether to persist the speed factor. Defaults to True.
TYPE:
|
setToolOffset
showWorkspace
Show the workspace of the robot
RETURNS | DESCRIPTION |
---|---|
tuple[Figure, Axes]
|
tuple[matplotlib.pyplot.Figure, matplotlib.pyplot.Axes]: matplotlib figure, axes |
transferLabware
transferLabware(
from_slot: str,
to_slot: str,
src_offset: Sequence[float] | ndarray = (0, 0, 0),
dst_offset: Sequence[float] | ndarray = (0, 0, 0),
speed_factor: float | None = None,
)
Transfer labware from one slot to another
PARAMETER | DESCRIPTION |
---|---|
from_slot
|
source slot name
TYPE:
|
to_slot
|
destination slot name
TYPE:
|
src_offset
|
offset from top of labware at source. Defaults to (0,0,0).
TYPE:
|
dst_offset
|
offset from center of destination slot. Defaults to (0,0,0).
TYPE:
|
speed_factor
|
speed factor. Defaults to None.
TYPE:
|