viam.components.gantry

Submodules

Package Contents

Classes

Gantry

Gantry represents a physical Gantry and can be used for controlling gantries of N axes.

class viam.components.gantry.Gantry(name: str)[source]

Gantry represents a physical Gantry and can be used for controlling gantries of N axes.

This acts as an abstract base class for any drivers representing specific gantry implementations. This cannot be used on its own. If the __init__() function is overridden, it must call the super().__init__() function.

SUBTYPE :Final
abstract async get_position(*, extra: Optional[Dict[str, Any]] = None, timeout: Optional[float] = None, **kwargs) List[float][source]

Get the position in millimeters.

Returns

The position of the axes.

Return type

List[float]

abstract async move_to_position(positions: List[float], world_state: Optional[viam.proto.common.WorldState] = None, *, extra: Optional[Dict[str, Any]] = None, timeout: Optional[float] = None, **kwargs)[source]

Move the gantry to a new position.

Parameters
  • positions (List[float]) – List of positions for the axes to move to, in millimeters.

  • world_state (Optional[WorldState]) – Object describing obstacles for the gantry to avoid on its way to positions.

abstract async get_lengths(*, extra: Optional[Dict[str, Any]] = None, timeout: Optional[float] = None, **kwargs) List[float][source]

Get the lengths of the axes of the gantry in millimeters.

Returns

The lengths of the axes.

Return type

List[float]

abstract async stop(*, extra: Optional[Dict[str, Any]] = None, timeout: Optional[float] = None, **kwargs)[source]

Stop all motion of the gantry. It is assumed that the gantry stops immediately.

abstract async is_moving() bool[source]

Get if the gantry is currently moving.

Returns

Whether the gantry is moving.

Return type

bool