-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
URDF Sim Tutorial #3952
base: humble
Are you sure you want to change the base?
URDF Sim Tutorial #3952
Conversation
@@ -0,0 +1,293 @@ | |||
.. redirect-from:: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a specific place for related simulation tutorials https://github.com/ros2/ros2_documentation/tree/rolling/source/Tutorials/Advanced/Simulators should we move this there?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this falls in the overlap of URDF and Simulation. Is there a good way to cross-post?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this falls in the overlap of URDF and Simulation. Is there a good way to cross-post?
No, not really.
My reading of the content below suggests it is to teach Gazebo concepts, specifically how to load a URDF into Gazebo.
But I might be wrong about that. So I pose the question: what is the main purpose of this tutorial? Is it to teach URDF concepts? Or to teach Gazebo concepts?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have added this to the table of contents for the Simulators/Gazebo tutorials. Since it is primarily aimed at updating the URDF for simulation, I think it should stay in Gazebo. Additional redirect-from
directives could be used to clear up the table of contents if desired.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is for Humble, because I don't believe its compatible with Gazebo New Coke.
As of right now, I don't believe there is a difference between Rolling and Humble in this regards. That is, they share the same underlying Ubuntu 22.04, so the same Gazebo stuff should work on both (this also goes for Iron). But I could be wrong, maybe @ahcorde can comment more on this.
@@ -0,0 +1,293 @@ | |||
.. redirect-from:: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So this falls in the overlap of URDF and Simulation. Is there a good way to cross-post?
No, not really.
My reading of the content below suggests it is to teach Gazebo concepts, specifically how to load a URDF into Gazebo.
But I might be wrong about that. So I pose the question: what is the main purpose of this tutorial? Is it to teach URDF concepts? Or to teach Gazebo concepts?
Signed-off-by: David V. Lu!! <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Next review pass.
Co-authored-by: Chris Lalancette <[email protected]> Signed-off-by: David V. Lu!! <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A few more minor changes, then I'm happy with this! Thanks for the continued iteration.
Exporting-an-URDF-File | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit:
.. _GazeboURDF: | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is unnecessary, since nothing is referring to this:
.. _GazeboURDF: |
|
||
|
||
However, it doesn't do anything, and is missing lots of key information that ROS would need to use this robot. | ||
Previously we had been using `joint_state_publisher <https://index.ros.org/p/joint_state_publisher/github-ros-joint_state_publisher/>`_ to specify the pose of each joint. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While this tutorial is sort of a continuation of the rest of the URDF series, it isn't directly linked to from any of those. Thus, the wording here of "Previously" might be hard to understand. I might suggest:
Previously we had been using `joint_state_publisher <https://index.ros.org/p/joint_state_publisher/github-ros-joint_state_publisher/>`_ to specify the pose of each joint. | |
In :doc:`other <Building-a-Visual-Robot-Model-with-URDF-from-Scratch>` :doc:`tutorials <Building-a-Movable-Robot-Model-with-URDF>` we used `joint_state_publisher <https://index.ros.org/p/joint_state_publisher/github-ros-joint_state_publisher/>`_ to specify the pose of each joint. |
However, the robot itself should provide that information in the real world or in Gazebo. | ||
Yet without specifying that, Gazebo doesn't know to publish that information. | ||
|
||
To get the robot to be interactive (with you and ROS), we need to specify two things: Plugins and Transmissions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This mentions Transmissions
, but none of the top-level headings mention that. Should this be Controllers
, or something like that?
See the code conversion here: ros/urdf_sim_tutorial#13
Currently in the process of getting the packages on the buildfarm: ros/rosdistro#38713
This PR is for Humble, because I don't believe its compatible with Gazebo New Coke.