Gazebo | Ignition | Community
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

XACRO: Acutator use in gazebo turn robot to a strange performance

I am not sure whether I can state clearly. I will try my best.

I used ROS & Gazebo to do my Robot Simulation

I follow the Tutorial of URDF to the gazebo part.

However, I found if I add the following part

  <transmission name="head_swivel_trans">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="$body_to_head_motor">
      <mechanicalReduction>100</mechanicalReduction>
    </actuator>
    <joint name="body_to_head">
      <hardwareInterface>PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>

Then I found the robot in the gazebo seems won't be affected by gravity (seems like turn g from 9.8 to 0.5) .. very strange..

However, if I remove part:

<actuator name="$body_to_head_motor">
  <mechanicalReduction>100</mechanicalReduction>
</actuator>

Then the robot in the gazebo will be like in the real environment (which means g is 9.8)

I try to search via google but failed.

Does any one know why?

Thanks very much!

XACRO: Acutator use in gazebo turn robot to a strange performance

I know where I am wrong.

I put the wrong hardware interface.

Do not use PositionJointInterface and the problem was solved.

The question will be closed.

Thanks. --------Original Question-----------------------------

I am not sure whether I can state clearly. I will try my best.

I used ROS & Gazebo to do my Robot Simulation

I follow the Tutorial of URDF to the gazebo part.

However, I found if I add the following part

  <transmission name="head_swivel_trans">
    <type>transmission_interface/SimpleTransmission</type>
    <actuator name="$body_to_head_motor">
      <mechanicalReduction>100</mechanicalReduction>
    </actuator>
    <joint name="body_to_head">
      <hardwareInterface>PositionJointInterface</hardwareInterface>
    </joint>
  </transmission>

Then I found the robot in the gazebo seems won't be affected by gravity (seems like turn g from 9.8 to 0.5) .. very strange..

However, if I remove part:

<actuator name="$body_to_head_motor">
  <mechanicalReduction>100</mechanicalReduction>
</actuator>

Then the robot in the gazebo will be like in the real environment (which means g is 9.8)

I try to search via google but failed.

Does any one know why?

Thanks very much!