Welcome to the ROS2 Manipulator Arm Workflow repository! This repository showcases a comprehensive workflow for robotic manipulation using ROS2, with a focus on manipulator arm-related packages.
- Install the Docker in your system.
- (Optional- if not using Docker Container) Install ros2-humble Distro in your system.
- Install docker-run cli tool to build the docker container from the docker image.
-
For Docker
Run the following command in terminal
-
docker run hello-world
- expected output : if docker installation is proper
Hello from Docker! This message shows that your installation appears to be working correctly.
-
-
For ROS2-Humble (optional: only if using system installed ROS2)
-
Run the following command in terminal
The ros2 doctor command performs a series of checks to ensure your ROS 2 environment is properly configured. If all checks pass, it indicates that your ROS 2 Humble installation is in good shape.
-
ros2 doctor
-
expected output : All 5 checks passed
-
-
-
Clone the repo and build the docker image from Dockerfile present in repo
# clone the repo to desired directory git clone [email protected]:kumar-sanjeeev/ros2-robotic-manipulation.git # build the docker image docker build -t <desired_docker_image_name> . # launch the docker container using docker-run docker-run --name <conatiner_name> --mwd -it -e DOCKER_UID=$(id -u) -e DOCKER_GID=$(id -g) -e DOCKER_USER=$(id -un) --no-gpu --no-rm <desired_docker_image_name>:latest
Info : to find what this docker-run command is doing visit docker-run and docker-ros-ml-images repositories.
-
Now you have docker container (name: <container_name> ) running in your system. You can start and exit this container using following commands
-
To start the container :
docker start <container_name/container_id>
-
To interact with the running container terminal :
docker exec -it <container_name/container_id> /bin/bash
-
-
Build the colcon workspace
- Container opens up at location where you will see following files
colcon_ws Dockerfile README.md
- Build the colcon workspace
# source the ROS (system lvel) source /opt/ros/humble/setup.bash # cd into colcon_ws cd colcon_ws/ # build the workspace colcon build # overlay the newly build packages source install/setup.bash
- Container opens up at location where you will see following files
- ROS2 PKG : mybot_description:: This package provides a comprehensive description of the custom mybot robotic manipulator arm.
- ROS2 PKG : mybot_control:: This package enables the ros2 control for the custom mybot robotic manipulator arm.
- ROS2 PKG : mybot_moveit:: This package integrates the moveit framework to move the custom mybot robotic manipulator arm to specified joint positions.
- ROS2 PKG : mybot_utils:: This package provides the various utilies for specific operation for e.g. euler angels to quaternion conversion etc.