different robot speed due to change in controller

asked 2014-03-13 08:44:52 -0500

Marcus gravatar image

Hi there,

so far I have been using the differential drive plug-in to control my 4 wheeled robot. However, a few weeks ago I found that Gazebo also offers a skid steering drive controller. I found this to be more fitting for my robot and used it so far without any problems. However, I just realized, that this plug-in always instructs the robot to go half the speed that I command (isn't that weird???). In direct comparison, a robot commanded to go with say 2 m/s with this controller (libhuskygazeboplugins.so):

<gazebo>
<plugin name="husky_diff_controller" filename="libhusky_gazebo_plugins.so">
    <alwaysOn>true</alwaysOn>
        <updateRate>100.0</updateRate>
        <backLeftJoint>joint_back_left_wheel</backLeftJoint>
        <backRightJoint>joint_back_right_wheel</backRightJoint>
        <frontLeftJoint>joint_front_left_wheel</frontLeftJoint>
        <frontRightJoint>joint_front_right_wheel</frontRightJoint>
        <wheelSeparation>${base_y_size}</wheelSeparation>
        <wheelDiameter>${wheel_x_size}</wheelDiameter>
        <torque>35</torque> 
    </plugin>
</gazebo>

Will move with the commanded 2m/s. However, the same robot will only move with 1m/s if commanded with this controller (libgazeborosskidsteerdrive.so):

 <gazebo>
  <plugin name="husky_diff_controller" filename="libgazebo_ros_skid_steer_drive.so">
    <updateRate>100.0</updateRate>
    <alwaysOn>true</alwaysOn>
    <robotNamespace>/</robotNamespace>
    <leftFrontJoint>joint_front_left_wheel</leftFrontJoint>
    <rightFrontJoint>joint_front_right_wheel</rightFrontJoint>
    <leftRearJoint>joint_back_left_wheel</leftRearJoint>
    <rightRearJoint>joint_back_right_wheel</rightRearJoint>
    <wheelSeparation>${base_y_size}</wheelSeparation>
    <wheelDiameter>${wheel_x_size}</wheelDiameter>
    <robotBaseFrame>base_link</robotBaseFrame>
    <torque>35</torque>
    <topicName>/husky/cmd_vel</topicName>
    <commandTopic>/husky/cmd_vel</commandTopic>
    <odometryTopic>/odom</odometryTopic>
    <odometryFrame>/odom</odometryFrame>
    <broadcastTF>true</broadcastTF>
  </plugin>
</gazebo>

Anyone know why that might be? Thanks in advance for any suggestions!

edit retag flag offensive close merge delete

Comments

Maybe the torque parameter ?

Brosseau.F gravatar imageBrosseau.F ( 2016-02-08 09:21:49 -0500 )edit