TF ERROR and problem when spawn the robot

Hi there,
I am working on the ros simulation for the rosbot.

I followed the exact step in the tutorial twice and got result like this:

I have make sure that I have reset the gazebo simulation by going back to the fist chapter but the result is the same.

I used the file mentioned in this Topic the result is still the same.

The TF frames is a bit strange as well.

The base_link and the base_foot print is not connected. And I don’t know why the left and right wheel was connected via gazebo instead of robot_state_publisher.

How to solve these problems??

Any help is appreciated.

Ok Seen the issue, let me se what I can do :wink:


Just fixed the issue. It should work now in that unit. Please tell us if otherwise. As for the tfs thats normal because the tfs of the wheels are published by gazebo, not by the robotstatepublisher, and that makes it separated. This might be a bug in the general simulation:

Hi @duckfrost ,
Thanks for replying!
I am wondering why does the URFD file doesn’t have the transmission tags as shown in the “ros control 101” course??
I find that there is two different way of setting up differential drive controller. First one is using the gazebo diff controller (just like what we did in the "your first robot with ROS " course) and another way is using ros control which detailed in this article on your website.

What is the difference between these two methods?


Good question. So to get smething moving in a Gazebo simulation you can use two paths:

  1. Is using the control plugins deffined in gazebo_ros, which essentially are thes etransmission tags.
  2. Create your own plugin that moves elements in the simulation. Which essentially at the end is the same thing.

So here we are using the diiferential drive plugin which inside moves the links given.
If you use the transmission tag, you after have to use the gazebo control plugin to move them. At the end is the same thing.