def touch_right(cur_position: Location): if touch_tip == "right": p10_multi.move_to(cur_position.move(Point(x=2.7, z=-0.75))) p10_multi.move_to(cur_position.move(Point(x=-1, z=0.75))) else: p10_multi.move_to(cur_position.move(Point(x=-2.7, z=-0.75))) p10_multi.move_to(cur_position.move(Point(x=1, z=0.75)))
def _get_move_to_point_loc_by_state(self) -> Location: assert self._z_height_reference is not None, \ "saveOffset has not been called yet" pt_id = MOVE_POINT_STATE_MAP[self._current_state] coords = self._deck.get_calibration_position(pt_id).position loc = Location(Point(*coords), None) return loc.move(point=Point(0, 0, self._z_height_reference))
def moving_fractional_dispense(pip, vol: float, liq_height: float, y_offsets: Sequence[float], dest_location: Location, do_blowouts: bool = True): """ This function moves to the offsets from the center of the well in the y-direction and dispenses a fractional amount based on the length of the offset sequence. :param pip: Pipette to dispense with :param vol: The volume to dispense :param offsets: A tuple of offsets from the center of the dest_well to do fractional dispenses at :param dest_location: The location to dispense at """ nonlocal is_verbose, ctx fractional_vol = vol / len(y_offsets) for offset in y_offsets: offset_point = Point(0, offset, 0) disp_loc = dest_location.move(offset_point) if is_verbose: ctx.comment("Dispensing at {}".format(str(disp_loc))) pip.dispense(fractional_vol, disp_loc)
async def move_to_point_one(self): assert self._z_height_reference is not None, \ "saveOffset has not been called yet" target_loc = Location(self._cal_ref_point, None) target = target_loc.move(point=Point(0, 0, self._z_height_reference)) await self._move(target)