Autonomous robot

Hello everyone,
I really need your help. I have build a 3 wheel robot with 2 gear motors at the back, a RPLidar on top and a IMU MPU6050 sensor. I really need a guide to make it move autonomously. Is there something i can follow to get it up and running.

Hi @alejandro52 ,

Welcome to this Community!

There is a course that teaches you how you build your (first) robot with ROS(1).
See this link: Create Your First Robot with ROS (Deprecated)

But, as you can see from the course title, it is currently deprecated. Probably awaiting updates.
There is a chance of getting this course with ROS2, although I am not sure. You have to wait or you can ask the people from TheConstruct.

With these facts said, if you are subscribed to the courses, you can take a glimpse of the procedure on how to create a robot from scratch with ROS from the above mentioned course.

To give you a quick overview (this may not include all points!):

  1. You first create your robot (physical construction and assembly)
  2. You install a microcomputer with the ability to host (run) ROS(1) or ROS2.
  3. You need to create minimal gazebo model of your robot for simulation as well as for movement plugins in simulation and real case. This phase includes “bringup” and “description” of your robot. This is where you specify plugins for your sensor models, actuators and type of robot drive.
  4. You will then create nodes that acquire data from sensors and sends it to ROS framework. Similarly, you create nodes that convert movement commands into actuator commands for robot movements.
  5. Finally, you create programs that makes use of these nodes to move the robot. In your case, it is a mobile robot, so you might need navigation packages from ROS which helps you with autonomous navigation.

Now, I would like to point out that if you are very new to ROS [1 and 2], choose ROS1. If you are experienced with ROS [1 and 2] then you could choose ROS2. My point is, ROS2 is bit tedious for beginners of ROS (1 or 2). ROS2 requires more time to work with, compared to ROS1.

Now the choice and decision is yours. That said, knowing ROS 1 and 2 would be a very good investment in knowledge if you are interested in working with robots.


PS: This is not something that you can finish in one night. Setting up a robot with ROS would require weeks, depending on your speed of work. I am saying this because the way you have asked your question reflects to me that you are in some sort of urgency to complete a project.

Thanks a lot for your quick reply. You certainly given me some insight on what to do. I have my robot physically ready. But i have run in a lot of issues with Ros 2 and nav 2. Then i will follow the lesson on how to create the robot. So i should install 20.04 Ubuntu (i have pi so 20.04 server) and then ros noetic, right?

Hi @alejandro52 ,

I have not worked with Ubuntu Server on a Raspberry Pi before, although I have installed some versions of Ubuntu including the Groovy Gorilla. I have not tried installing Ubuntu 20.04 on Raspberry Pi yet.

Here is a good guide on installing ROS Noetic on RasPi 4 8GB: How to Install ROS Noetic on Raspberry Pi 4 - VarHowto

ROS1 would be a good choice if you are installing ROS on a robot for the very first time. You also have support until year 2025.

If you choose to install ROS2, you can use this official guide here: ROS 2 on Raspberry Pi — ROS 2 Documentation: Humble documentation

I would not say that you “should” use Ubuntu 20.04. You could try some other lightweight options like Rasbian Buster perhaps. I have not done any recent research yet.


Thanks a lot for your help. ill try the guide to install ROS 1, and if i run into trouble ill post again

1 Like

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.