-
Notifications
You must be signed in to change notification settings - Fork 1.3k
First steps with ROS - learning path #6322
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
Merged
Merged
Changes from 2 commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
fe36fe8
OPENR-65: Create learning path for First steps and add to TOC
keithkirkwood-3di b7a2c80
OPENR-65: Update cross-references and fix typos
keithkirkwood-3di ab9a7d6
OPENR-65: Update formatting of initial content
keithkirkwood-3di 348fa46
Merge branch 'rolling' into first-steps-with-ROS
keithkirkwood-3di 4991048
Merge branch 'rolling' into first-steps-with-ROS
kscottz File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,90 @@ | ||
| .. _First-steps-with-ROS-learning-path: | ||
|
|
||
| First steps with ROS - learning path | ||
| ==================================== | ||
|
|
||
| .. centered:: ROS (Robot Operating System) is an open-source ecosystem that provides framework, tools, and libraries for building, deploying, running, and maintaining robotic applications. | ||
| This page presents a set of articles and hands-on activities to introduce the main concepts behind the ROS framework. | ||
| Working through these will give you the essential knowledge needed to start developing applications with ROS. | ||
|
|
||
| .. parsed-literal:: | ||
|
keithkirkwood-3di marked this conversation as resolved.
Outdated
|
||
|
|
||
| Area: ROS-framework | Content-type: learning-path | Experience: beginner | ||
|
|
||
| .. contents:: Contents | ||
| :depth: 2 | ||
| :local: | ||
|
|
||
| Summary | ||
| ------- | ||
|
|
||
| The ROS framework is the “plumbing” which makes communication between different parts of a robot possible. | ||
| It includes messaging, standard interfaces, and support for multiple programming languages and platforms. | ||
|
|
||
| You need to understand the fundamental concepts of the framework before you can work with ROS to develop or maintain applications. | ||
| The turtlesim tool and the tutorials in this site will help you get up to speed. | ||
|
|
||
|
|
||
| Prerequisites | ||
| ------------- | ||
|
|
||
| None. | ||
| The steps outlined in this article will guide you through downloading and installing everything you need to learn the basics of ROS. | ||
|
|
||
| Steps | ||
| ----- | ||
|
|
||
| 1 Learn about fundamental concepts behind ROS | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| * About ROS | ||
| * :doc:`/Concepts/Basic/About-Nodes` | ||
| * Interfaces (topics, services, actions) | ||
| * :doc:`/Concepts/Basic/About-Parameters` | ||
|
|
||
| 2 Install ROS and turtlesim | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| ROS installation includes the essential packages for working with ROS. | ||
| If you're familiar with Linux, our recommended platform is Ubuntu (deb packages). | ||
| Otherwise, a good alternative installation platform is Windows (binaries): :doc:`Installation options </Installation>` | ||
|
|
||
| With turtlesim, a lightweight 2D simulation tool designed for beginners, you can learn core ROS concepts in a simple visual environment: :doc:`Install and set up turtlesim </Tutorials/Beginner-CLI-Tools/Introducing-Turtlesim/Introducing-Turtlesim>` | ||
|
|
||
| 3 Try out working with the main communication components of the ROS framework | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Use turtlesim to familiarize yourself with the main communication components and try out messaging in the ROS framework. | ||
|
|
||
| #. Complete the nodes tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Nodes/Understanding-ROS2-Nodes` | ||
| #. Complete the topics tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Topics/Understanding-ROS2-Topics` | ||
| #. Complete the services tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Services/Understanding-ROS2-Services` | ||
| #. Complete the parameters tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Parameters/Understanding-ROS2-Parameters` | ||
| #. Complete the actions tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Understanding-ROS2-Actions/Understanding-ROS2-Actions` | ||
|
|
||
| 4 Learn about introspection with logs | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Introspection enables you to see information about how a system is operating. | ||
| Nodes use logs to output messages concerning events and status in a variety of ways. | ||
|
|
||
| To see introspection through logs in action, complete the rqt_console tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Using-Rqt-Console/Using-Rqt-Console` | ||
|
|
||
| 5 Learn about using launch files | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Launch files allow you to start and configure a number of processes containing ROS nodes simultaneously, instead of opening multiple terminals and re-entering configuration details for each node. | ||
|
|
||
| Complete the launch files tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Launching-Multiple-Nodes/Launching-Multiple-Nodes` | ||
|
|
||
| 6 Learn about data recording and playback | ||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | ||
|
|
||
| Sometimes it's useful to replay data to reproduce the results of your tests and experiments, to debug your robot's behaviour, or to share your work with others. | ||
|
|
||
| Complete the recording and playback tutorial: :doc:`/Tutorials/Beginner-CLI-Tools/Recording-And-Playing-Back-Data/Recording-And-Playing-Back-Data` | ||
|
|
||
| Next steps | ||
| ---------- | ||
|
|
||
| To complete your knowledge of the ROS framework, we recommend familiarizing yourself with ROS client libraries: :doc:`/Tutorials/Beginner-Client-Libraries` | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.