pylabrobot.liquid_handling.backends.hamilton.STAR_backend.STAR.dispense#

async STAR.dispense(ops: List[SingleChannelDispense], use_channels: List[int], lld_search_height: List[float] | None = None, liquid_surface_no_lld: List[float] | None = None, pull_out_distance_transport_air: List[float] | None = None, second_section_height: List[float] | None = None, second_section_ratio: List[float] | None = None, minimum_height: List[float] | None = None, immersion_depth: List[float] | None = None, surface_following_distance: List[float] | None = None, cut_off_speed: List[float] | None = None, stop_back_volume: List[float] | None = None, transport_air_volume: List[float] | None = None, lld_mode: List[LLDMode] | None = None, dispense_position_above_z_touch_off: List[float] | None = None, gamma_lld_sensitivity: List[int] | None = None, dp_lld_sensitivity: List[int] | None = None, swap_speed: List[float] | None = None, settling_time: List[float] | None = None, mix_position_from_liquid_surface: List[float] | None = None, mix_surface_following_distance: List[float] | None = None, limit_curve_index: List[int] | None = None, minimum_traverse_height_at_beginning_of_a_command: int | None = None, min_z_endpos: float | None = None, side_touch_off_distance: float = 0, hamilton_liquid_classes: List[HamiltonLiquidClass | None] | None = None, jet: List[bool] | None = None, blow_out: List[bool] | None = None, empty: List[bool] | None = None, probe_liquid_height: bool = False, auto_surface_following_distance: bool = False, immersion_depth_direction: List[int] | None = None, mix_volume: List[float] | None = None, mix_cycles: List[int] | None = None, mix_speed: List[float] | None = None, dispensing_mode: List[int] | None = None)#

Dispense liquid from the specified channels.

For all parameters where None is the default value, STAR will use the default value, based on the dispenses. For all list parameters, the length of the list must be equal to the number of operations.

Parameters:
  • ops (List[SingleChannelDispense]) – The dispense operations to perform.

  • use_channels (List[int]) – The channels to use for the dispense operations.

  • lld_search_height (List[float] | None) – The height to start searching for the liquid level when using LLD.

  • liquid_surface_no_lld (List[float] | None) – Liquid surface at function without LLD.

  • pull_out_distance_transport_air (List[float] | None) – The distance to pull out the tip for aspirating transport air if LLD is disabled.

  • second_section_height (List[float] | None) – The height of the second section.

  • second_section_ratio (List[float] | None) – The ratio of [the bottom of the container * 10000] / [the height top of the container].

  • minimum_height (List[float] | None) – The minimum height at the end of the dispense.

  • immersion_depth (List[float] | None) – The distance above or below to liquid level to start dispensing.

  • surface_following_distance (List[float] | None) – The distance to follow the liquid surface.

  • cut_off_speed (List[float] | None) – Unknown.

  • stop_back_volume (List[float] | None) – Unknown.

  • transport_air_volume (List[float] | None) – The volume of air to dispense before dispensing the liquid.

  • lld_mode (List[LLDMode] | None) – The liquid level detection mode to use.

  • dispense_position_above_z_touch_off (List[float] | None) – The height to move after LLD mode found the Z touch off position.

  • gamma_lld_sensitivity (List[int] | None) – The gamma LLD sensitivity. (1 = high, 4 = low)

  • dp_lld_sensitivity (List[int] | None) – The dp LLD sensitivity. (1 = high, 4 = low)

  • swap_speed (List[float] | None) – Swap speed (on leaving liquid) [0.1mm/s]. Must be between 3 and 1600. Default 100.

  • settling_time (List[float] | None) – The settling time.

  • mix_position_from_liquid_surface (List[float] | None) – The height to move above the liquid surface for mix.

  • mix_surface_following_distance (List[float] | None) – The distance to follow the liquid surface for mix.

  • limit_curve_index (List[int] | None) – The limit curve to use for the dispense.

  • minimum_traverse_height_at_beginning_of_a_command (int | None) – The minimum height to move to before starting a dispense.

  • min_z_endpos (float | None) – The minimum height to move to after a dispense.

  • side_touch_off_distance (float) – The distance to move to the side from the well for a dispense.

  • hamilton_liquid_classes (List[HamiltonLiquidClass | None] | None) – Override the default liquid classes. See pylabrobot/liquid_handling/liquid_classes/hamilton/STARBackend.py

  • jet (List[bool] | None) – Whether to use jetting for each dispense. Defaults to False for all. Used for determining the dispense mode. True for dispense mode 0 or 1.

  • blow_out (List[bool] | None) – Whether to use “blow out” dispense mode for each dispense. Defaults to False for all. This is labelled as “empty” in the VENUS liquid editor, but “blow out” in the firmware documentation. True for dispense mode 1 or 3.

  • empty (List[bool] | None) – Whether to use “empty” dispense mode for each dispense. Defaults to False for all. Truly empty the tip, not available in the VENUS liquid editor, but is in the firmware documentation. Dispense mode 4.

  • probe_liquid_height (bool) – PLR-specific parameter. If True, probe the liquid height using cLLD before aspirating to set the liquid_height of every operation instead of using the default 0. Liquid heights must not be set when using this function.

  • auto_surface_following_distance (bool) – automatically compute the surface following distance based on the container height<->volume functions. Requires liquid height to be specified or probe_liquid_height=True.

  • immersion_depth_direction (List[int] | None)

  • mix_volume (List[float] | None)

  • mix_cycles (List[int] | None)

  • mix_speed (List[float] | None)

  • dispensing_mode (List[int] | None)