async LiquidHandler.pick_up_tips(tip_spots: List[pylabrobot.resources.tip_rack.TipSpot], use_channels: Optional[List[int]] = None, offsets: Union[pylabrobot.resources.coordinate.Coordinate, List[Union[pylabrobot.resources.coordinate.Coordinate, pylabrobot.default._DefaultType]], pylabrobot.default._DefaultType] = Default, **backend_kwargs)#

Pick up tips from a resource.


Pick up all tips in the first column.

>>> lh.pick_up_tips(tips_resource["A1":"H1"])

Pick up tips on odd numbered rows, skipping the other channels.

>>> lh.pick_up_tips(tips_resource["A1", "C1", "E1", "G1"],use_channels=[0, 2, 4, 6])

Pick up tips from different tip resources:

>>> lh.pick_up_tips(tips_resource1["A1"] + tips_resource2["B2"] + tips_resource3["C3"])

Picking up tips with different offsets:

>>> lh.pick_up_tips(
...   tip_spots=tips_resource["A1":"C1"],
...   offsets=[
...     Coordinate(0, 0, 0), # A1
...     Coordinate(1, 1, 1), # B1
... # C1
...   ]
... )
  • tip_spots (List[pylabrobot.resources.tip_rack.TipSpot]) – List of tip spots to pick up tips from.

  • use_channels (Optional[List[int]]) – List of channels to use. Index from front to back. If None, the first len(channels) channels will be used.

  • offsets (Union[pylabrobot.resources.coordinate.Coordinate, List[Union[pylabrobot.resources.coordinate.Coordinate, pylabrobot.default._DefaultType]], pylabrobot.default._DefaultType]) – List of offsets for each channel, a translation that will be applied to the tip drop location. If None, no offset will be applied.

  • backend_kwargs – Additional keyword arguments for the backend, optional.

  • RuntimeError – If the setup has not been run. See setup().

  • ValueError – If the positions are not unique.

  • ChannelHasTipError – If a channel already has a tip.

  • TipSpotHasNoTipError – If a spot does not have a tip.