This repository includes several packages designed for learning and practicing ROS (Robotics Operational System). It all started with a course presented in the Electrical Engineering department at the UFES, by PhD Ricardo Carminati de Mello.
The Robot Operating System (ROS) is a set of software libraries and tools for building robot applications. From drivers and state-of-the-art algorithms to powerful developer tools, ROS has the open source tools you need for your next robotics project.
Throughout the laboratory classes, we developed some packages. Check out brief descriptions of each below, and for in-depth information, dive into the respective README.md of each package.
-
turtlesim_controller: position controller to move a turtle simulation;
-
turtlesim_interfaces: interfaces to the turtlesim_controller package;
-
turtlebot3_controller: position controller to move Turtlebot3 simulation in Gazebo.
If you have a ROS2 environment configured,
cd ~/ros_ws/src
git clone https://github.com/luizcarloscf/autonomous-robots.git
cd ~/ros_ws
rosdep install -i --from-path src --rosdistro humble -y
colcon build
source install/setup.bash
However, if you have Docker installed on your machine and you can use it to build all packages. To do so, just build the docker image with:
git clone https://github.com/luizcarloscf/autonomous-robots.git
cd autonomous-robots/
docker build -t autonomous-robots .
It is also available all packages already built in a docker image (with all dependencies as well) for you to just spin. Check the repository at dockerhub and choose the image tag you see fit, luizcarloscf/autonomous-robots.
- Programming Multiple Robots with ROS2: book about multi-robot systems;
- ROS2 Humble docs: ROS2 humble distribution documentation page;
- ros2/example_interfaces: github repository with a sample package about creating interfaces;
- ros2/examples: github repository with several ROS2 sample packages in C++ and Python;
- ros2/rclpy: github repository with ROS Client Library for the Python language;
- ros2/demos: github repository with several ROS2 demos.