Skip to content

feat(grasp): geometric candidates also try the hand turned 180 degrees, bounded by a measured usable width - #36

Closed
ZJLi2013 wants to merge 5 commits into
mainfrom
feat/grasp-orientation
Closed

ZJLi2013 wants to merge 5 commits into
mainfrom
feat/grasp-orientation

Conversation

@ZJLi2013

Copy link
Copy Markdown
Owner

Stacked on #35 (and #33, #34 below it); merge those first.

What

  • Geometric candidates list every grasp in the base wrist orientation, then the same list with the hand turned 180° about the approach axis. The hand is symmetric, but the two orientations give IK different joint branches. With first-success selection, the base list is tried first, so results where the base orientation already works are unchanged.
  • GripperSpec.usable_width replaces "full opening minus 1 cm" and defaults to the measured 7.5 cm.
  • Pick trial records carry the candidate's orientation.

Results (empty table, MI300X)

  • Usable width: boxes 3–7.5 cm wide, 5 cm tall, all lift top-down. In feat(grasp): geometric candidates from the object's oriented box, chosen by trying them in simulation #35, the wide candidates that failed were all on round or cylindrical objects, so the opening was not the cause.
  • The 180° orientation does not avoid the IK discontinuity: apple_02 at (0.42, +0.27) fails motion generation for all 16 candidates, in both orientations. die_01, mug_02 and block_01 lift at both positions, mostly on the first candidate.
  • apple_02 at (0.42, -0.27): a candidate lifted in trial but the recorded episode failed; not yet explained.

Test

  • New: the flipped list repeats the base list with the finger axis reversed; usable_width bounds which axes get candidates.
  • pytest: 182 passed.

AI disclosure

Written with Cursor (Claude) as the coding agent: the change, tests, the remote runs and this description. The human reviews before merging.

ZJLi2013 and others added 5 commits October 23, 2026 13:01
…0 stage removed, and asset-pick validation can pin the object

Co-authored-by: Cursor <cursoragent@cursor.com>
…sen by trying them in simulation

Co-authored-by: Cursor <cursoragent@cursor.com>
…as a failed trial

Co-authored-by: Cursor <cursoragent@cursor.com>
…s, bounded by a usable width

Co-authored-by: Cursor <cursoragent@cursor.com>
… minus a margin

Co-authored-by: Cursor <cursoragent@cursor.com>
@ZJLi2013 ZJLi2013 closed this Oct 23, 2026
@ZJLi2013
ZJLi2013 deleted the feat/grasp-orientation branch October 23, 2026 10:33
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.

1 participant