Skip to content

Commit

Permalink
fix(api): use encoder position instead of homing gantry when placing …
Browse files Browse the repository at this point in the history
…plate reader lid. (#16781)

- The plate reader lid hits the Flex side window when the gantry homes while the gripper holds the lid, don't do that! :)
- Instead, let's update the gantry position from the encoders, so we don't have to home at all.
  • Loading branch information
vegano1 authored Nov 13, 2024
1 parent 6ed5aaf commit 9e951da
Showing 1 changed file with 8 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -129,9 +129,14 @@ async def execute(
module.id
)

# NOTE: When the estop is pressed, the gantry loses position,
# so the robot needs to home x, y to sync.
await ot3api.home(axes=[Axis.Z_L, Axis.Z_R, Axis.Z_G, Axis.X, Axis.Y])
# NOTE: When the estop is pressed, the gantry loses position, lets use
# the encoders to sync position.
# Ideally, we'd do a full home, but this command is used when
# the gripper is holding the plate reader, and a full home would
# bang it into the right window.
await ot3api.home(axes=[Axis.Z_L, Axis.Z_R, Axis.Z_G])
await ot3api.engage_axes([Axis.X, Axis.Y])
await ot3api.update_axis_position_estimations([Axis.X, Axis.Y])

# Place the labware down
await self._start_movement(ot3api, definition, location, drop_offset)
Expand Down

0 comments on commit 9e951da

Please sign in to comment.