# The mobile robot doesn't reach to the max speed

The youBot mobile robot is being used to test some kinematic controllers. There is a problem with the base not reaching the maximum speed. A maximum linear velocity of 1.5 is defined in the configuration file.

  type: steered_wheel_base_controller/SteeredWheelBaseController
base_frame: base_footprint
linear_speed_limit: 1.5
linear_acceleration_limit: 2.5
linear_deceleration_limit: 2.5
yaw_speed_limit: 3.0
yaw_acceleration_limit: 3.2
yaw_deceleration_limit: 3.2


The maximum speed reported by Gazebo for the platform when I test it is 0.47 whereas the commanded linear velocity in x-axis is 2 and the rest is zero.

name: [ground_plane, youbot]
pose:
...
twist:
-
linear:
x: 0.0
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 0.0
-
linear:
x: 0.475034689787  <----- current speed in x-axis direciton
y: -0.00392167360465
z: -0.0205054274451
angular:
x: 5.50872400881e-06
y: 0.000846332345603
z: 7.43291489694e-05


There is no impact from increasing the PID's gains. The controller is a customised one called steerable_wheel_base_controller.cpp in the same package. Any suggestions?

Melodic ROS, Gazebo 9, Ubuntu 18.04.

• Do you mean steered wheel base controller? I don't see a steerable one anywhere in the project, but I also don't see any others. It looks like there is the option for a variety of joints, and you're also mentioning PID gains, but I don't know how any of your items are configured. How are you publishing the clock? Is sim time set? Is your joint a position-, velocity-, or PID-controlled joint? Dec 26, 2022 at 0:53
• @Chuck check it in youbot_simulation/youbot_gazebo_control/src. Dec 26, 2022 at 0:58
• @Chuck I think the controller converts the linear and angular velocities to each omnidiretional wheel's velocity. The command is cmd_vel. In the config file, there are the PID's gains. Dec 26, 2022 at 1:11