Manipulation Subsystem Progress

Week of April 20, 2026

Key Outcomes

  • System-Level Arm Integration and Validation: Integrated the robotic arm with the planting mechanism through ROS 2 communication, enabling coordination between the manipulation stack and mechanical assembly.
  • Mobile Manipulation Setup: Mounted the robotic arm on the mobile base, establishing the physical platform needed for end-to-end planting operation.
  • MoveIt2-Based Motion Planning: Updated the codebase to utilize MoveIt2 MoveGroup, enabling joint-space motion planning and constrained motion planning for the arm.

Next Steps

  • Perception-Manipulation Integration: Connect the manipulation stack with the perception pipeline to enable perception-guided grasping and planting actions.
  • Cartesian Grasp Execution: Implement Cartesian path planning for the transition from pre-grasp to grasp to improve motion precision near the target.
  • End-to-End System Validation: Test the full workflow with the mobile base, robotic arm, planting mechanism, perception pipeline, and motion planner operating together.

Week of March 23, 2026

The integration of the arm and the gripper was done. 

Key Outcomes

  • Pick-and-Place Integration: Integrated the xArm and gripper to successfully execute a pick-and-place maneuver.
  • Manipulation Software Architecture: Built the core ROS2 packages and nodes for the gripper, arm, planner, and perception subsystems.
  • Planner-Centric Coordination: Implemented a planner node that orchestrates arm and gripper actions through ROS2 service-based client-server communication, enabling waypoint-based execution across pregrasp, grasp, lift, and release stages.

Next Steps

  • MoveIt2 Migration: Convert the current planner from the xArm ROS2 API to MoveGroup / MoveIt2 for more flexible and scalable motion planning.
  • Constraint-Aware Motion Planning: Add orientation constraints and integrate the MoveIt Pilz motion planner to maintain upright seedling handling and enable more reliable point-to-point linear motions.
  • Perception-Driven Grasping: Incorporate visual servoing to improve the robustness of perception-guided grasp execution.


Week of March 20, 2026

The next step was to develop the gripper for picking up the seedling from the tray. An open sourced OpenParrallel Gripper design was used for the gripper. 

Figure: CAD of OpenParrellel Gripper

Key outcomes:

  • Gripper Controller Development: Developed the gripper controller in the Arduino IDE, interfacing with the OpenRB-150 embedded controller and servo kit.
  • ROS2 Manipulation Node Development: Implemented core ROS2 nodes for the gripper, xArm7, and planner to support manipulation workflows.
  • Manipulation Stack Integration: Built and integrated the core software components of the manipulation stack, enabling coordination between the arm, gripper, and planning modules.

Next Steps: 

  • Manipulation Architecture Development: Create proper nodes and packages (e.g. gripper, arm, perception, planner, etc.) for the Manipulation subsystem 
  • Subsystem Integration: Integrate the arm and gripper via ROS2 


Week of February 27, 2026

The xArm7 from UFactory will be used for the manipulation subsystem which will perform pick-and-place of the seedling from the tray to the chute, which will be guided into the drilled hole from the planting mechanism. 

The development of the manipulation stack was started off by verifying the arm’s waypoint movements. 

Figure. xArm 7 

Key outcomes:

  • Arm Waypoint Movement Verification: Tested and validated the movement between waypoints with a given Python script using the ROS2 xArm API to command the robotic arm to move between recorded joint waypoints

Next Steps: 

  • Gripper Development: create controller for the gripper’s opening and closing movement