pylabrobot.brooks.precise_flex.PreciseFlexVision#

class pylabrobot.brooks.precise_flex.PreciseFlexVision(driver: PreciseFlexDriver)#

Bases: object

IntelliGuide vision capability for a PreciseFlex with a camera gripper.

Reached as driver.vision, built at setup only when the controller has the IntelliGuide module, so its existence is the capability gate (no per-method guards). The wire primitives translate GPL vision commands over the driver’s transport; the orchestrations compose them. Nothing here moves the arm.

What the vision server holds:

Vision server
├─ cameras                  its hardware
├─ tool types               what it can instantiate
└─ Project (the active one)
   ├─ Processes             pipelines
   └─ Tools                 instances of the tool types

Methods

__init__(driver)

capture_image([camera])

Fetch one frame for camera directly off the vision server as an array, no motion.

discover_configuration()

Discover the vision server's capabilities into self.configuration; no motion.

enumerate_project()

List the loaded project's processes and tools (system.listprocesses / listtools).

request_camera_count()

Number of cameras PreciseVision sees (System.CameraCount); read-only, no motion.

request_camera_height([camera])

A camera's native frame height in px (system.cameraframeheight <camera>).

request_camera_name([camera])

A camera's friendly name, e.g. Cam1 (system.cameraname <camera>).

request_camera_resolutions([camera])

A camera's supported resolution modes (system.cameraresolutions <camera>).

request_camera_type([camera])

A camera's capture backend, e.g. DirectShow (system.cameratype <camera>).

request_camera_width([camera])

A camera's native frame width in px (system.cameraframewidth <camera>).

request_is_licensed()

Whether the vision server reports a valid license (system.islicensed).

request_processes()

List all process names in the active project (system.listprocesses).

request_project_name()

The active project's name (system.projectname).

request_projects()

List all projects on the vision server (system.listprojects).

request_stereo_parameters([robot_number, ...])

Read the IntelliGuide stereo-locator configuration (StereoParam get); no motion.

request_vision_tool_properties(tool)

List the property names of one tool (system.toolproperties <tool>).

request_vision_tool_property(tool, property_name)

Read a PreciseVision tool property over the controller (VToolProperty <tool> <prop>).

request_vision_tool_property_info(tool, ...)

The type / enum / range metadata for one tool property (system.toolpropertyinfo).

request_vision_tool_property_value(tool, ...)

Read one tool property value (property get <tool>.<property>).

request_vision_tool_type(tool)

The tool's type/class, e.g. Acquire or FiducialLocator (system.tooltype).

request_vision_tool_types()

List the tool types the vision server can instantiate (system.tooltypes).

request_vision_tools()

List all tool names in the active project (system.listtools).

request_vision_version()

The vision server's version (system.engineversion).

save_image([camera, acquire_prefix, ...])

Acquire and save a frame via the acquire tool's ACQUIRE_AND_SAVE mode; no arm motion.

setup()

Discover the vision server's capabilities, cache and log them; best-effort, no motion.

start_led([camera, brightness, delay, ...])

Turn on the IntelliGuide camera lighting (LightControl vision tool); no arm motion.

stop_led([camera, use_server])

Turn off the IntelliGuide camera lighting (the start_led counterpart); no arm motion.

Parameters:

driver (PreciseFlexDriver)