Harmonize Mobile Manipulator in ROS 2 Jazzy
Budget: ₹600 – ₹1,500 INR
Project Title: Integration and Simulation of Custom Mobile Manipulator in ROS 2 Jazzy
Project Overview: I am developing a simulation for a custom aquatic/land hybrid robot using ROS 2 Jazzy and Gazebo Harmonic. I have the individual components (a custom chassis and a 6-DOF manipulator arm), but they are not yet functioning correctly as a unified system. I need a ROS 2 expert to properly integrate the manipulator onto the mobile base, fix kinematic/physics issues, and implement a reliable pick-and-place simulation.
Technical Stack:
OS: Ubuntu 24.04 (Noble)
Middleware: ROS 2 Jazzy Jalisco
Simulator: Gazebo Harmonic (gz-sim)
Modeling: URDF/Xacro
Control: ros2_control (DiffDrive, JointTrajectoryController)
Planning: MoveIt 2 (optional but preferred)
Current Project Status:
Mobile Base:
Custom CAD mesh (.stl) for the chassis is available.
Configured with "Ghost Wheels" (collision spheres) and a Differential Drive plugin.
Base successfully drives in Gazebo using teleop.
Manipulator:
URDF/Xacro files for a 6-DOF arm are available.
Controllers (arm_controller, gripper_controller) are defined but need tuning.
Current Integration State:
A draft master Xacro file exists attempting to combine the Base and Arm.
Issues: The arm moves in unexpected/odd ways, the physics interactions are unstable (arm sometimes collapses or jitters), and the pick-and-place logic is not accurate.
Scope of Work (Freelancer Tasks):
Proper Integration:
Correctly mount the Manipulator onto the specific elevated deck of the Mobile Base in the URDF.
Ensure the transform tree (TF) between base_link and the arm is correct.
Physics & Kinematics Tuning:
Fix inertial properties and collision geometries to prevent "exploding" or jittering in Gazebo.
Tune joint limits and friction/damping so the arm moves smoothly and holds its position against gravity.
Simulation Mission:
Refine the Python mission script to spawn random objects.
Implement a robust logic for the robot to drive to an object, pick it up (stable grasping), and place it securely on the robot's deck.
Deliverables:
A working, stable .urdf.xacro file for the combined Mobile Manipulator.
A Python launch script that demonstrates the robot successfully picking up a spawned cube and placing it on the deck without physics errors.
Project Overview: I am developing a simulation for a custom aquatic/land hybrid robot using ROS 2 Jazzy and Gazebo Harmonic. I have the individual components (a custom chassis and a 6-DOF manipulator arm), but they are not yet functioning correctly as a unified system. I need a ROS 2 expert to properly integrate the manipulator onto the mobile base, fix kinematic/physics issues, and implement a reliable pick-and-place simulation.
Technical Stack:
OS: Ubuntu 24.04 (Noble)
Middleware: ROS 2 Jazzy Jalisco
Simulator: Gazebo Harmonic (gz-sim)
Modeling: URDF/Xacro
Control: ros2_control (DiffDrive, JointTrajectoryController)
Planning: MoveIt 2 (optional but preferred)
Current Project Status:
Mobile Base:
Custom CAD mesh (.stl) for the chassis is available.
Configured with "Ghost Wheels" (collision spheres) and a Differential Drive plugin.
Base successfully drives in Gazebo using teleop.
Manipulator:
URDF/Xacro files for a 6-DOF arm are available.
Controllers (arm_controller, gripper_controller) are defined but need tuning.
Current Integration State:
A draft master Xacro file exists attempting to combine the Base and Arm.
Issues: The arm moves in unexpected/odd ways, the physics interactions are unstable (arm sometimes collapses or jitters), and the pick-and-place logic is not accurate.
Scope of Work (Freelancer Tasks):
Proper Integration:
Correctly mount the Manipulator onto the specific elevated deck of the Mobile Base in the URDF.
Ensure the transform tree (TF) between base_link and the arm is correct.
Physics & Kinematics Tuning:
Fix inertial properties and collision geometries to prevent "exploding" or jittering in Gazebo.
Tune joint limits and friction/damping so the arm moves smoothly and holds its position against gravity.
Simulation Mission:
Refine the Python mission script to spawn random objects.
Implement a robust logic for the robot to drive to an object, pick it up (stable grasping), and place it securely on the robot's deck.
Deliverables:
A working, stable .urdf.xacro file for the combined Mobile Manipulator.
A Python launch script that demonstrates the robot successfully picking up a spawned cube and placing it on the deck without physics errors.
Related categories:
Python
Mechanical Engineering
Robotics
Embedded Systems
Simulation
Automation
Robot Operating System (ROS)
Gazebo