0% ont trouvé ce document utile (0 vote)
46 vues2 pages

Introduction au framework ROS

ROS (Robot Operating System) est un framework open-source pour le développement d'applications robotiques, facilitant la création de systèmes complexes grâce à une architecture modulaire. Il permet la communication entre nœuds via des topics et des services, tout en offrant des outils comme Gazebo pour la simulation et Rviz pour la visualisation. Bien qu'il présente des défis tels qu'une courbe d'apprentissage élevée et des exigences en matière de configuration, il bénéficie d'une grande communauté et d'une réutilisabilité du code.

Transféré par

Yasmine Yassine
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
46 vues2 pages

Introduction au framework ROS

ROS (Robot Operating System) est un framework open-source pour le développement d'applications robotiques, facilitant la création de systèmes complexes grâce à une architecture modulaire. Il permet la communication entre nœuds via des topics et des services, tout en offrant des outils comme Gazebo pour la simulation et Rviz pour la visualisation. Bien qu'il présente des défis tels qu'une courbe d'apprentissage élevée et des exigences en matière de configuration, il bénéficie d'une grande communauté et d'une réutilisabilité du code.

Transféré par

Yasmine Yassine
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

ROS Introduction

1. Introduction à ROS Nœuds (Nodes)

Qu’est-ce que ROS ? • Un nœud est un processus exécutant une


tâche spécifique (ex : capteur, commande
• ROS (Robot Operating System) est un moteur).
framework open-source pour le
développement d'applications robotiques. • Chaque nœud est indépendant,
communique avec d'autres via des topics
• Il fournit une architecture logicielle ou des services.
modulaire, facilitant le développement, le
déploiement et le test des systèmes Topics
robotiques complexes.
• Canaux de communication pour
Pourquoi utiliser ROS ? transmettre des messages entre nœuds.

• Réduction de la complexité dans les projets • Type publisher/subscriber (un nœud


robotiques. publie, un autre s’abonne).

• Grande communauté et réutilisabilité du Messages


code.
• Format structuré des données échangées
• Supporte plusieurs plateformes robotiques. via les topics.

• Intégration facile avec la simulation et la • Exemple : geometry_msgs/Twist pour les


visualisation. vitesses linéaires et angulaires.

Difficultés Services

• Courbe d’apprentissage relativement • Pour les communications requête/réponse


élevée. (différent des topics).

• Nécessite des connaissances en Linux • Exemple : demander une position actuelle


(principalement Ubuntu). du robot ou une action ponctuelle.

• Complexité des configurations et


dépendances.
3. Quelques outils ROS

Outils / Simulateurs
2. Les bases de ROS
• Gazebo : simulateur physique 3D très
Modularité utilisé avec ROS.

• ROS est basé sur une architecture • Permet de tester les comportements du
modulaire : chaque composant est robot sans matériel réel.
indépendant (appelé nœud).
Outils / Visualisateurs
• Cette structure permet une facilité de mise
à jour, réutilisation et test individuel des • Rviz : visualisation de capteurs,
mouvements, cartes, etc.
modules.
• Outil essentiel pour le débogage et
Comment ça marche ?
l’interprétation des données.
• ROS repose sur une communication entre
Structure d’un Workspace (WS)
nœuds via des topics et services.
• Dossier de travail ROS contenant tous les
• Un Master ROS coordonne la
packages.
communication entre les nœuds.
• Structure :

workspace_name/

├── src/

├── build/

└── devel/

• src/ contient les packages développés.

4. Programmation avec ROS

Langages supportés

• Principalement Python et C++.

Fichiers importants

• [Link] : pour la compilation.

• [Link] : informations sur le package


(nom, dépendances...).

Concepts clés

• Publisher / Subscriber : communication


via topics.

• Service / Client : appels ponctuels entre


nœuds.

• Launch files : fichiers .launch pour


exécuter plusieurs nœuds à la fois.

Vous aimerez peut-être aussi