This tutorial is created by Robotics Ambassador Muhammad
Robotics Ambassador: theconstruct.ai/robotics-ambassador/
What are we going to Learn?
- How to create ROS2 Package
- How to compile ROS2 workspace
- How to create node in Python to spawn new object in Gazebo Simulation
List of Resources in this Post
- ROSJect Link: https://app.theconstruct.ai/l/5fcb7f9e/
- Robotic Arm Used as Resource: https://github.com/hamzamerzic/ros-threeseg/
- The Construct App: https://app.theconstructsim.ai/
Overview:
ROS (Robot Operating System) is a de facto standard for Robotics. In order to program Robots, simulation of Real world systems is very important to test and debug the systems. MoveIt is most commonly used Motion Planning Library for Robotic Arms or Manipulators. In this tutorial we will create MoveIt Package for simple robotic arm.
Opening the ROSJect:
To follow along the post, we need to have ROS2 installed in our system. To make things easier, we have created ROSJect to follow along: https://app.theconstruct.ai/l/5fcb7f9e/.
Next, fort the ROSJect and click Run. You will be presented with the interface like following.
In terminal, go to your workspace. by running the following command
cd catkin_ws/src
and then clone the resource Robotic arm Package from Github. by typing
git clone https://github.com/hamzamerzic/ros-threeseg/
Next run,
cd ..
and then run the ROS Workspace
catkin_make
Next, you need to install some MoveIt packages for ROS version.
sudo apt update
Then run,
sudo apt install ros-noetic-moveit
This will install MoveIt Motion Planning Library with ROS.
Creating MoveIt Package:
Now we are going to create MoveIt Package for our Robotic Arm. In the terminal, source your ROS Workspace.
cd /home/user/catkin_ws
source devel/setup.bash
After that,
roslaunch moveit_setup_assistant setup_assistant.launch
Click on “Create New MoveIt Configuration Package”. and select URDF File for package we have cloned in our ROS Workspace.
Next, go to “Planning Groups” and create new Group “Add Group”, and write name of group, kinematic solver and Group Default planner as follows
Then Create new Kinematic Chain, as follows
Then select joints for this group
and after that select Links for this Planning Group
After going through this step, we can configure various poses for Robotic Arm.
Next fill out some author information,
and generate the MoveIt Package.
Final Thoughts
Now that we have generated the MoveIt package for our robotic arm, next we will add custom controllers and hardware interfaces for simulating this in Gazebo. MoveIt is very practically useful tool for robotic arms as it can be used for motion planning, trajectory generation and solving Inverse Kinematics for Robotic arms.
0 Comments