1
$\begingroup$

I am just starting with SLAM and have to implement SLAM to get a dimensions (map) of an indoor space.

I have looked at the turtlebot3 slam and slam_toolboox packages with algorithms like gmapping and cartographer. As far as I have understood, these packages requires the user to drive the robot around the room for the 1st time and subsequently we get a map of the room, is my understanding correct ?

If yes, are there any different approaches where the robot drives autonomously while also creating a map in the process ?

Edit: I plan on using ROS2 for implementation initially in a simulation and eventually on a real robot.

Thanks in advance!

$\endgroup$
1
  • $\begingroup$ Are you doing this in simulation or with a real robot? Are you using ros1 or ros2? $\endgroup$
    – Mike973
    Commented Nov 3, 2023 at 14:01

2 Answers 2

0
$\begingroup$

This is a recent post on the ROS Discourse which could be of relevance:

Autonomous Mapping with SMACC & Isaac Sim.

$\endgroup$
0
$\begingroup$

As far as I have understood, these packages requires the user to drive the robot around the room for the 1st time and subsequently we get a map of the room, is my understanding correct?

Yes, SLAM systems often split operation into a 'creating a map' stage and a 'using a map' stage. Both of the stacks you've mentioned fall into that category.

are there any different approaches where the robot drives autonomously while also creating a map in the process

This is sometimes called "frontier exploration". There's a ROS 1 package (and this one) that's available on the ROS 1 repos, and it looks like there are some packages available on GitHub for ROS 2 that might be worth looking at (for example, this or this), but your best bet might be on the ROS 2 repos.

But you could also make your own, the general operation is pretty simple:

  1. Start mapping with whatever existing stack
  2. Start autonomously driving around by picking a goal within the known map that is near an unknown part of the map.
  3. This should extend the map, so return to 2 until you're happy with the size of the map or you can't find any more goals.
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.