pylabrobot.brooks.precise_flex.PreciseFlexDevice#
- class pylabrobot.brooks.precise_flex.PreciseFlexDevice(base_plate: Resource, driver: PreciseFlexDriver, name: str, size_x: float, size_y: float, size_z: float, model: str | None = None)#
Bases:
ResourceThe complete modelling and control interface for a PreciseFlex arm.
The device is itself a resource and its base plate is its child: one tree, rooted here.
device.driverspeaks to the arm in its own terms and stays reachable.Attributes
The arm, as the driver has it.
The gripper, as the driver has it.
Where this resource sits, relative to its parent.
Get the name of this resource.
The rail, if the arm stands on one.
Methods
__init__(base_plate, driver, name, size_x, ...)assign_child_by_anchor(resource[, ...])Assign a child resource by aligning anchor points.
assign_child_resource(resource, location[, ...])Assign a child resource to this resource.
at(location)Return a copy of this resource at the given location.
center([x, y, z])Get the center of this resource.
centers([xn, yn, zn])Get equally spaced points in the x, y, and z directions.
check_can_drop_resource_here(resource, *[, ...])Validate whether
resourcemay be dropped onto this resource.copy()deregister_did_assign_resource_callback(callback)Remove a callback that will be called after a resource is assigned to this resource.
Remove a callback that will be called after a resource is unassigned from this resource.
deregister_state_update_callback(callback)Remove a callback that will be called when the state of the resource changes.
Remove a callback that will be called before a resource is assigned to this resource.
Remove a callback that will be called before a resource is unassigned from this resource.
deserialize(data[, allow_marshal])Deserialize a resource from a dictionary.
find_resource([fn, metadata, has_metadata, ...])Find the first matching resource, or None if not found.
find_resources([fn, metadata, has_metadata, ...])Find resources matching top-level attributes, metadata, and/or a predicate.
get_absolute_location([x, y, z])Get the absolute location of this resource, probably within the
pylabrobot.resources.Deck.Get the absolute rotation of this resource.
Get the absolute size in the x direction.
Get the absolute size in the y direction.
Get the absolute size in the z direction.
Recursively get all children of this resource.
get_anchor([x, y, z])Get a relative location within the resource.
Recursively finds the highest known point in absolute space.
get_location_wrt(other[, x, y, z])Get the location of this resource with respect to another, along the other's axes.
get_resource(name)Get a resource by name.
get_root()Get the root of the resource tree.
Local size in the x direction.
Local size in the y direction.
Local size in the z direction.
has_resource(name)Whether anything at or beneath this resource carries the given name.
is_in_subtree_of(other)Return
Trueifselfis in the subtree rooted atother.load_all_state(state)Load state for this resource and all children.
load_from_json_file(json_file)Loads resources from a JSON file.
load_state(state)Load state for this resource only.
Load the state of this resource and all children from a JSON file.
named(name)Return a copy of this resource with the given name.
register_did_assign_resource_callback(callback)Add a callback that will be called after a resource is assigned to this resource.
register_did_unassign_resource_callback(callback)Add a callback that will be called after a resource is unassigned from this resource.
register_state_update_callback(callback)Register a callback that will be called when the state of the resource changes.
register_will_assign_resource_callback(callback)Add a callback that will be called before a resource is assigned to this resource.
Add a callback that will be called before a resource is unassigned from this resource.
rotate([x, y, z, pivot_coordinate])Rotate counter-clockwise around the parent-coordinate axes by the given degrees.
rotate_to([x, y, z, pivot_coordinate])Set the rotation about each axis, where
rotateturns by an amount instead.rotated([x, y, z, pivot_coordinate])Return a copy of this resource rotated by the given number of degrees.
save(fn[, indent])Save a resource to a JSON file.
save_state_to_file(fn[, indent])Save the state of this resource and all children to a JSON file.
Serialize the state of this resource and all children.
Serialize the state of this resource only.
setup([skip_home])Bring the device up.
stop()Put the device down.
unassign()Unassign this resource from its parent.
unassign_child_resource(resource)Unassign a child resource from this resource.