0
$\begingroup$

I'm currently trying to use the Mecanum drive controller recently added for the Humble release in gz_ros2_control. I’d like to understand how the reference_timeout parameter works.

I'm using a teleop keyboard to control the robot. It works fine for the duration specified by reference_timeout, but after that, the robot simply stops moving—even if I continue sending commands. I've attached videos demonstrating the behavior for different timeout values.

Reproduction Steps Launch Gazebo.

The robot requires cmd_vel input immediately—otherwise, it stops responding.

Teleop keyboard provides valid cmd_vel commands.

The robot responds correctly for a duration based on the reference_timeout value.

After the timeout period, the robot stops responding, even though new commands are still being sent.

Please see the video examples here: 👉 https://imgur.com/a/cPd0mFy

Example 1: reference_timeout = 5 seconds

Example 2: reference_timeout = 10 seconds

Documentation for mecanum_drive_controller.

$\endgroup$
1
  • $\begingroup$ Are you using the stamped messages (what is the parameter value of use_stamped_vel)? I guess so, otherwise the timeout should have no effect. Are you sure that the command is sent even if not button is pressed? What is the content of the message (post the output of ros2 topic echo --once /cmd_vel. $\endgroup$ Commented May 28 at 12:15

0

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.