Small Robot, with LIDAR and DepthCamera. Using ROS for Maping and Navigation
Made by Clemente Donoso, 📍 Chile 🇨🇱
RoboCop | Lateral |
---|---|
![]() |
![]() |
Front | Back |
---|---|
![]() |
![]() |
This work seeks the construction and creation of a small autonomous mobile robot, capable of navigating, mapping and locating in controlled environments. It will use sensors such as lidars and depth cameras to locate itself in the environment.
As progress is made, new features will be added. First, nodes will be made that allow teleoperation, then nodes will be added to control the camera and track lines, then the lidar will be integrated and the limits of the environment will be identified to finish with autonomous navigation by the robot.
I will upload the code and the documentation in the next update and in the next iteration. Fell free to contact me if you have any questions.
- 2022 - September - 6: Add mapping node, teleoperation node and respective launch files.
- 2022 - August - 14: First commit, with the basic structure of the project.
- ...
-
First you need to install ROS. For this project we will use ROS Noetic, if you are using windows, you can use WSL.
-
Once you have installed ROS and your packages, create your catkin workspace (with the name that you want):
mkdir -p ~/catkin_ws/src cd ~/catkin_ws catkin build
-
Then copy the repository to your catkin workspace:
cd ~/catkin_ws/src git clone https://github.com/CDonosoK/robocop_description
-
Finally, you need to source your catkin workspace:
source ~/catkin_ws/devel/setup.bash
If everything went well, your workspace should be structure like this:
~/catkin_ws
|- build
|- devel
|- logs
|- src
|- robocop_description
|- codes
|- gazebo
|- images
|- ...
|- ...
|- ...
I'm using the gazebo simulator to test the robot and rviz to visualize the results. If you want to try the simulation, you can run the following command:
- For visualize on gazebo:
roslaunch robocop_description gazebo.launch
- For visualize on rviz:
roslaunch robocop_description display.launch
- To control the robot:
roslaunch robocop_description controller.launch
- The codes are in the folder
codes
, in this folder you can find the codes that are represented as nodes for controlling the robot, controlling the camera and tracking lines and other things.
- The gazebo main files such the materials, the physics and the plugins are in the folder
gazebo
, in this folder you can find evrything that is related to the gazebo.
- The launch files are in the folder
launch
, in this folder you can find the launch files that are used to start the robot and the camera and everything that is related to the gazebo and rviz.
- The worlds are in the folder
worlds
, in this folder you can find the worlds that will create the environment for the robot, if you create your own world, save it in this folder.
- The URDF files are in the folder
urdf
, in this folder you can find the URDF files that are used to create the robot.
When using ROS, Gazebo and Rviz for the simulations it will not be necessary to have the robot physically, however, the shopping list of the components that are used will be left here.
- Raspberry Pi 4-8GB
- 11.1V 5200 mAh Battery
- XL4016
- Lidar
- Depth camera
- Metal Chasis
- Screen
- Raspberry Pico
- PS4 Controller
If you want to contribute monetarily to the creation of the project, you can do so via PayPal: https://paypal.me/cdonosok