pylabrobot.brooks.precise_flex.PreciseFlexConfiguration#

class pylabrobot.brooks.precise_flex.PreciseFlexConfiguration(manufacturer: str, controller_model: str, hardware_version: str, gpl_version: str, controller_serial: str, robot_name: str, robot_type: int, tcs_version: str, modules: tuple, num_axes: int, extra_axes: int, axis_mask: int, arm: PreciseFlexArmConfiguration, gripper: PreciseFlexGripperConfiguration, rail: PreciseFlexRailConfiguration | None = None, camera_count: int = 0, _power_state: int | None = None)#

Bases: object

Device configuration resolved once at setup; immutable afterwards.

The identity fields are read from the controller (pd <DataID> and the version command); limits, maxima and kinematics are on arm, gripper and rail. Derived: has_rail from the joint set, is_dual_gripper from the axis mask’s &H80 bit, has_vision_gripper from the camera count, and reach_class from the link lengths the controller reports.

Attributes

camera_count

gripper_width_range

use gripper.soft_limit_range.

hard_limits

merged from the arm, gripper and rail configurations.

has_rail

has_vision_gripper

is_dual_gripper

use gripper.is_dual_gripper.

is_vision_gripper

use has_vision_gripper.

kinematics

use arm.kinematics.

kinematics_source

use arm.kinematics_source.

max_cartesian_acceleration

use arm.max_cartesian_acceleration.

max_cartesian_speed

use arm.max_cartesian_speed.

max_joint_acceleration

merged from the arm, gripper and rail configurations.

max_joint_deceleration

merged from the arm, gripper and rail configurations.

max_joint_speed

merged from the arm, gripper and rail configurations.

power_state

use PreciseFlexDriver.request_system_state.

rail

reach_class

use arm.reach_class.

soft_limits

merged from the arm, gripper and rail configurations.

work_envelope

use arm.work_envelope.

z_range

use arm.z_range.

manufacturer

controller_model

hardware_version

gpl_version

controller_serial

robot_name

robot_type

tcs_version

modules

num_axes

extra_axes

axis_mask

arm

gripper

Methods

__init__(manufacturer, controller_model, ...)

Parameters:
  • manufacturer (str)

  • controller_model (str)

  • hardware_version (str)

  • gpl_version (str)

  • controller_serial (str)

  • robot_name (str)

  • robot_type (int)

  • tcs_version (str)

  • modules (tuple)

  • num_axes (int)

  • extra_axes (int)

  • axis_mask (int)

  • arm (PreciseFlexArmConfiguration)

  • gripper (PreciseFlexGripperConfiguration)

  • rail (PreciseFlexRailConfiguration | None)

  • camera_count (int)

  • _power_state (int | None)