URDF joint type "continuous" causes rviz2 issues?
Hi all,
I'm new to ROS2 and working through the tutorials. Please excuse me if this is a dumb question.
Background: I'm running ROS2 Foxy, my robot is running on a Pi4 running Ubuntu 20.04 and Rviz2 is running on a desktop running Ubuntu 20.04. On both device I installed Foxy from the ros repo and both are up to date.
I'm following this tutorial: https://navigation.ros.org/setup_guides/urdf/setup_urdf.html#urdf-handson
I'm using the example URDF at: https://github.com/ros-planning/navigation2_tutorials/blob/master/sam_bot_description/src/description/sam_bot_description.urdf And the rviz2 file provided in the tutorial.
Issue: The issue I'm having is that the wheels are in the center of the body, at 0,0,0 and on the rviz2 console I get these messages:
at line 133 in /tmp/binarydeb/ros-foxy-tf2-0.13.10/src/buffer_core.cpp
Warning: Invalid frame ID "drivewhlrlink" passed to canTransform argument source_frame - frame does not exist
at line 133 in /tmp/binarydeb/ros-foxy-tf2-0.13.10/src/buffer_core.cpp
Warning: Invalid frame ID "drivewhlllink" passed to canTransform argument source_frame - frame does not exist
This seems to be related to this line:
<joint name="${prefix}_joint" type="continuous">
If I change the link type to "fixed" then the wheels locate correctly and there are no errors on the console.
Is this a known issue with rviz2? Or did I do something wrong?
Thank you, Errol
Asked by errolt on 2021-07-10 13:43:30 UTC
Answers
make sure to also add
joint_state_publisher_gui_node = launch_ros.actions.Node(
package="joint_state_publisher_gui",
executable="joint_state_publisher_gui",
name="joint_state_publisher_gui",
condition=launch.conditions.IfCondition(LaunchConfiguration("gui")),
)
into your launch file.
I am guessing this is because the continuous
joint require some other node to publish its current positions
Asked by MichaelWu666 on 2022-06-19 19:42:42 UTC
Comments
I'm running into this exact same issue; did you find a resolution?
Asked by billymccafferty on 2021-12-30 19:48:24 UTC
Unfortunately not. Spending a week on this issue, which isn't supposed to be an issue because it is straight out of a tutorial, broke my will to learn ros. What else isn't going to work as the documentation purports it to work? Have not touched it since...
Asked by errolt on 2022-01-09 09:29:38 UTC
@errolt are you using
<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" output="screen" />
in your launch file ?Asked by bhomaidan on 2022-04-01 15:13:11 UTC