Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(gripper): specify whether or not a gripper move should stay engaged after an error #13214

Merged
merged 3 commits into from
Aug 2, 2023

Conversation

ahiuchingau
Copy link
Contributor

Overview

If the gripper is actively gripping a labware when a protocol gets terminated prematurely, we want to make sure the gripper doesn't just release the labware wherever as part of the protocol cleanup process, instead, we should allow user to recover the labware safely. The first step to achieving this is to tell firmware whether the current move is a labware-grip or an idling grip by using the stay engaged param in the GripperGripRequest.

Gripper firmware will use this information to keep the motor engaged if it receives an error while holding a labware.

Next step is to retrieve the real-time gripper jaw state from the firmware. We can then use it to determine the proper cleanup process for the gripper after a protocol ends.

Changes in this PR need to be used together with Opentrons/ot3-firmware#711

Test Plan

Changelog

Review requests

Risk assessment

@ahiuchingau ahiuchingau requested a review from a team as a code owner August 1, 2023 22:14
@codecov
Copy link

codecov bot commented Aug 1, 2023

Codecov Report

Merging #13214 (d8d5194) into internal-release_0.14.0 (a8bf9c0) will increase coverage by 0.64%.
Report is 3 commits behind head on internal-release_0.14.0.
The diff coverage is 100.00%.

Impacted file tree graph

@@                     Coverage Diff                     @@
##           internal-release_0.14.0   #13214      +/-   ##
===========================================================
+ Coverage                    72.52%   73.17%   +0.64%     
===========================================================
  Files                         2369     2314      -55     
  Lines                        65484    63911    -1573     
  Branches                      7204     6996     -208     
===========================================================
- Hits                         47495    46768     -727     
+ Misses                       16251    15426     -825     
+ Partials                      1738     1717      -21     
Flag Coverage Δ
g-code-testing 96.44% <ø> (ø)
hardware 56.50% <100.00%> (+0.01%) ⬆️
notify-server 89.13% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Changed Coverage Δ
...entrons/hardware_control/backends/ot3controller.py 68.57% <ø> (ø)
...pentrons/hardware_control/backends/ot3simulator.py 86.44% <ø> (ø)
...rc/opentrons/hardware_control/backends/ot3utils.py 94.44% <ø> (ø)
api/src/opentrons/hardware_control/ot3api.py 79.49% <ø> (-0.12%) ⬇️
...rons_hardware/hardware_control/gripper_settings.py 0.00% <ø> (ø)
...ons_hardware/hardware_control/move_group_runner.py 93.18% <ø> (ø)
...are/opentrons_hardware/scripts/gripper_lifetime.py 0.00% <ø> (ø)
...ns_hardware/firmware_bindings/messages/payloads.py 95.48% <100.00%> (+0.01%) ⬆️
...ware/opentrons_hardware/hardware_control/motion.py 84.41% <100.00%> (+0.20%) ⬆️

... and 77 files with indirect coverage changes

Copy link
Member

@sfoster1 sfoster1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@ahiuchingau ahiuchingau merged commit 35edf78 into internal-release_0.14.0 Aug 2, 2023
26 checks passed
@ahiuchingau ahiuchingau deleted the gripper_grip-exra-param branch August 2, 2023 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants