# Revision history [back]

I guess the problem came from the type of joint Controllers that was used in the package I started from : https://github.com/mit-racecar/racecar_gazebo

In this package, they used the following :

<transmission name="${name}_transmission" type="SimpleTransmission"> <type>transmission_interface/SimpleTransmission</type> <joint name="${name}_joint">
<hardwareInterface>EffortJointInterface</hardwareInterface>
</joint>
<actuator name="${name}_motor"> <hardwareInterface>EffortJointInterface</hardwareInterface> <mechanicalReduction>1</mechanicalReduction> </actuator> </transmission>  These joints created some violent peaks inside the internal PIDs of rosControl I tried to tune them without success: Internal PID command in red. (or I assume the commands I sent are bounded by [pi/2 -pi/2].) When I switched from the EffortJointInterface to a PositionJointInterface these peaks disappeared and the car stopped breaking. I guess the problem came from the type of joint Controllers that was used in the package I started from : https://github.com/mit-racecar/racecar_gazebo In this package, they used the following : <transmission name="${name}_transmission" type="SimpleTransmission">
<type>transmission_interface/SimpleTransmission</type>
<joint name="${name}_joint"> <hardwareInterface>EffortJointInterface</hardwareInterface> </joint> <actuator name="${name}_motor">
<hardwareInterface>EffortJointInterface</hardwareInterface>
<mechanicalReduction>1</mechanicalReduction>
</actuator>
</transmission>


These joints created some violent peaks inside the internal PIDs of rosControl I tried to tune them without success: success:

Internal PID command in red. (or I assume the commands I sent are bounded by [pi/2 -pi/2].)

When I switched from the EffortJointInterface to a PositionJointInterface these peaks disappeared and the car stopped breaking. breaking:

<transmission name="${namespace}${hinge_prefix}_hinge_trans" type="SimpleTransmission">
<type>transmission_interface/SimpleTransmission</type>
<actuator name="${namespace}${hinge_prefix}_hinge_motor">
<hardwareInterface>PositionJointInterface</hardwareInterface>
<mechanicalReduction>1</mechanicalReduction>
</actuator>
<joint name="${namespace}${hinge_prefix}_hinge">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
</transmission>


I guess the problem came from the type of joint Controllers that was were used in the package I started from : https://github.com/mit-racecar/racecar_gazebo

In this package, they used the following :

<transmission name="${name}_transmission" type="SimpleTransmission"> <type>transmission_interface/SimpleTransmission</type> <joint name="${name}_joint">
<hardwareInterface>EffortJointInterface</hardwareInterface>
</joint>
<actuator name="${name}_motor"> <hardwareInterface>EffortJointInterface</hardwareInterface> <mechanicalReduction>1</mechanicalReduction> </actuator> </transmission>  These joints created some violent peaks inside the internal PIDs of rosControl I tried to tune them without success: Internal PID command in red. (or I assume the commands I sent are bounded by [pi/2 -pi/2].) When I switched from the EffortJointInterface to a PositionJointInterface these peaks disappeared and the car stopped breaking: <transmission name="${namespace}${hinge_prefix}_hinge_trans" type="SimpleTransmission"> <type>transmission_interface/SimpleTransmission</type> <actuator name="${namespace}${hinge_prefix}_hinge_motor"> <hardwareInterface>PositionJointInterface</hardwareInterface> <mechanicalReduction>1</mechanicalReduction> </actuator> <joint name="${namespace}${hinge_prefix}_hinge"> <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface> </joint> </transmission>  I guess the problem came from the type of joint Controllers that were used in the package I started from : https://github.com/mit-racecar/racecar_gazebo In this package, they used the following : <transmission name="${name}_transmission" type="SimpleTransmission">
<type>transmission_interface/SimpleTransmission</type>
<joint name="${name}_joint"> <hardwareInterface>EffortJointInterface</hardwareInterface> </joint> <actuator name="${name}_motor">
<hardwareInterface>EffortJointInterface</hardwareInterface>
<mechanicalReduction>1</mechanicalReduction>
</actuator>
</transmission>


These joints created some violent peaks inside the internal PIDs of rosControl I tried to tune them without success:

Internal PID command in red. (or (Or I assume it is that, the commands I sent that I send are bounded by [pi/2 -pi/2].)

When I switched from the EffortJointInterface to a PositionJointInterface these peaks disappeared and the car stopped breaking:

<transmission name="${namespace}${hinge_prefix}_hinge_trans" type="SimpleTransmission">
<type>transmission_interface/SimpleTransmission</type>
<actuator name="${namespace}${hinge_prefix}_hinge_motor">
<hardwareInterface>PositionJointInterface</hardwareInterface>
<mechanicalReduction>1</mechanicalReduction>
</actuator>
<joint name="${namespace}${hinge_prefix}_hinge">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
</transmission>