Ask Your Question
0

What robot should I use for SLAM?

asked 2019-03-10 17:12:56 -0500

kitkatme gravatar image

I am in algorithm development and I just need a robot to test on in Gazebo simulation. I have tried several robots I found online and none seem to work quite right, so I am looking for advice about a robot simulation for ROS Melodic, Gazebo 9, that is compatible with gmapping or hector, and ideally with frontier exploration (explore_lite package). My only specific sensor requirement is that it have lidar.

BTW, I have tried the Husky (bad maps, can't figure out why), the Turtlebot3 (not compatible with explore_lite because it doesn't use move_base for commands), and the Summit XL and XLS (bad localization, both).

Any advice would be greatly appreciated!

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
3

answered 2019-03-11 03:06:36 -0500

gvdhoorn gravatar image

updated 2019-03-11 07:48:55 -0500

the Turtlebot3 (not compatible with explore_lite because it doesn't use move_base for commands)

This confuses me: according to turtlebot3_navigation move_base is definitely used.


Edit:

but when it's running the SLAM demo per virtual SLAM instructions here, and I then print the list of topics, move_base is not one of them.

move_base is not a topic. It's a node (edit: and an action server namespace).

It's using move_base_simple.

This also confuses me. Are we talking about the same package? See turtlebot3_navigation/launch/move_base.launch.

Is this the move_base_simple you refer to, or the topic based interface to move_base?


Edit 2:

I don't have time to look into the TB3 setup right now, but just to give you some pointers:

when I run other robots like the husky, there are topics like move_base/cmd_vel, and those don't show up with turtlebot3

the topic name cmd_vel is a choice, it could be called anything. The fact that many robot configurations have it as move_base/cmd_vel is just their preferred setup.

Looking at the launch file I linked earlier, it would appear that move_base will output Twists on /cmd_vel by default (here).

After your comment, I checked the node list and while running the simulation as described above, there is no move_base node either.

that would be something to check, if you're still interested in using the TB3. According to the launch file, move_base is definitely used, so the name should show up.

So I think that move_base is not actually used, unless you count move_base_simple, which shows up in the topic list but not the nodes.

Well, again: move_base_simple is not a node, it's a topic. You should probably use rostopic info /move_base_simple/goal to see who is subscribing or publishing to that.

edit flag offensive delete link more

Comments

confuses me too, but when it's running the SLAM demo per virtual SLAM instructions here, and I then print the list of topics, move_base is not one of them. It's using move_base_simple. Maybe that still counts as move_base and that's why they list it, but explore_lite isn't set up for that. (It's worth trying to rewrite turtlebot3 to be compatible with explore_lite, but I figured I'd ask if there is anything already set up since I'm working on a deadline and very new to ROS.)

kitkatme gravatar imagekitkatme ( 2019-03-11 06:55:54 -0500 )edit

ah, thanks for the clarification! to be more specific with the turtlebot3, when I run other robots like the husky, there are topics like move_base/cmd_vel, and those don't show up with turtlebot3. After your comment, I checked the node list and while running the simulation as described above, there is no move_base node either. Also explore_lite hangs in its initialization at the point where it's waiting to connect to move_base server. So I think that move_base is not actually used, unless you count move_base_simple, which shows up in the topic list but not the nodes.

kitkatme gravatar imagekitkatme ( 2019-03-11 07:16:00 -0500 )edit

thanks for pointing me to that launch file!! problem solved! when I run move_base.launch in addition to the turtlebot3 SLAM and explore_lite packages, frontier exploration works.

kitkatme gravatar imagekitkatme ( 2019-03-11 07:26:01 -0500 )edit

Now I'm really confused. Did you not follow the instructions in the Virtual Navigation with TurtleBot3 section of the manual that you linked to earlier?

gvdhoorn gravatar imagegvdhoorn ( 2019-03-11 07:39:44 -0500 )edit

No; as mentioned, I followed the virtual SLAM instructions

kitkatme gravatar imagekitkatme ( 2019-03-11 07:42:32 -0500 )edit

explore_lite is essentially just sending navigation goals to a running move_base instance/stack (replacing a human sending it goals in a sense). So you'd have to have the nav stack running, or it won't work.

gvdhoorn gravatar imagegvdhoorn ( 2019-03-11 07:45:18 -0500 )edit
1

answered 2019-03-11 02:29:17 -0500

Yug Ajmera gravatar image

I had written this package for a similar purpose : https://github.com/YugAjmera/navros_pkg It might be useful !

edit flag offensive delete link more

Comments

thanks, I'll check it out!!

kitkatme gravatar imagekitkatme ( 2019-03-11 06:56:14 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2019-03-10 17:12:56 -0500

Seen: 196 times

Last updated: Mar 11