personalrobotics / ada_feeding

Robot-assisted feeding demos and projects for the ADA robot
4 stars 4 forks source link

Improvements from 1-16-24 demo. #156

Closed amalnanavati closed 8 months ago

amalnanavati commented 8 months ago

Description

This PR contains multiple small changes from the 1-16 user study. Each change has separate testing, so we document testing right below the change.

  1. Make acquisition use the most recent TF transform from the camera to the world, not the one at the mask timestamp (since sometimes that is too new).
    1. Before, compute food frame was often failing due to a TF lookup timeout. After this change, it stopped failing. (Note, this is a silent failure. We should consider logging in this case.)
  2. Speed up the arm. I moved all kinematic motions from 60% to 100%, and all transfer-related servo motions from 0.1 m/2 to 0.12 m/2.
    1. Tested it, verified that it was faster and didn't feel scary.
  3. Add relaxed tolerance constraints to bite transfer. If the user leans forward, the arm might get to their mouth, but think it fails due to a collision. Thus, although the robot arm will keep moving until it reaches the initial tolerance (0.5cm), it will still succeed if it is within a relaxed tolerance (2.5cm)
    1. Verified that it failed if we added a collision too far, but didn't if we added a collision close.
  4. Make MoveToMouth clear octomap by default to avoid phantom collisions. It should have enough time to repopulate the octomap.
    1. Verify that MoveToMouth still works.

Before opening a pull request

Before Merging