Skip to content

Conversation

@harrison-bcr
Copy link
Collaborator

Summary

Add comprehensive behavior tree examples demonstrating key MoveIt Pro behaviors for manipulation tasks. This PR introduces new example objectives in the lab simulation that showcase fundamental manipulation capabilities including grasp pose generation, IK solving, object handling, and MTC (MoveIt Task Constructor) integration.

image

Key Behaviors Demonstrated

This PR showcases the following MoveIt Pro behaviors in practical manipulation scenarios:

Grasp Generation & Planning

  • GenerateCuboidGraspPoses: Generates grasp poses for cuboid objects based on object geometry
  • SolveIKQueries: Validates multiple target poses via IK queries and filters collision-free solutions
  • GetClosestObjectToPose: Identifies the nearest graspable object to a specified pose for selection

Object & Collision Management

  • SetupMTCUpdateObjectCollisionRule: Configures collision rules between objects and robot links
  • IsObjectAttachedTo: Verifies object attachment to specific robot links
  • SetupMTCAttachObject: Attaches objects to the robot end-effector in planning scene
  • SetupMTCDetachObject: Detaches objects from the robot end-effector
  • RemoveCollisionObjectFromPlanningScene: Removes collision objects from the planning environment

Transform Utilities

  • GetLatestTransform: Retrieves current transform between coordinate frames
  • ConvertTransformStampedToPoseStamped: Converts transform messages to pose messages

MTC Motion Primitives

  • SetupMTCCartesianSequence: Creates Cartesian motion sequences for precise end-effector control

New Behavior Trees added

Pick and Place Object - Complete pick and place workflow with:

  • User-selected object via point cloud interaction
  • Automated grasp pose generation
  • IK validation and collision checking
  • Object attachment/detachment with MTC
  • Pose visualization and verification

Move Along Axis and Pick Object - Demonstrates:

  • Axis-constrained motion (moving down to grasp)
  • Collision rule management during manipulation
  • Object attachment validation

Evaluate Pose Vector and Execute - Shows:

  • Filtering valid grasp candidates
  • Visualizing feasible grasp poses with offset

Update Object Pose - Object pose manipulation utilities

How to Run

  • Run "Pick and Place Object" in lab_sim
  • Click on any one of the cuboids placed on the table
  • Verify complete pick/place cycle

- New behavior trees added are : Get Closest Object to Pose, Move Along Axis and Pick Cube, Pick and Place Object, Plan and Execute Generated Grasp Poses, and Update Object Pose
…te pick and place logic and remove obsolete grasp pose execution
@harrison-bcr harrison-bcr requested a review from MikeWrock January 8, 2026 13:40
@MikeWrock MikeWrock self-assigned this Jan 8, 2026
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.

3 participants