Blog

8 raisons pour lesquelles vous devriez utiliser ROS pour vos projets de robotique

Apprendre la robotique
Partager
8 raisons d'utiliser ROS pour des projets robotiques

Vous connaissez déjà quelques notions de programmation et d'utilisation d'un terminal et vous souhaitez vous lancer dans la robotique. Ou vous établissez les spécifications d'un tout nouveau projet de robotique. Et… Vous ne savez pas si vous devez utiliser ROS ou non.

ROS, qui signifie Robot Operating System, est un ensemble de bibliothèques logicielles et d'outils pour vous aider à créer des applications robotiques. Le but de ROS est de créer un norme robotique, De sorte tu n'as plus besoin de réinventer la roue lors de la création d'un nouveau logiciel robotique.

Alors, pourquoi devriez-vous utiliser ROS pour la robotique ?


1. ROS est général

Le même code de base et les mêmes connaissances peuvent être appliqués à de nombreux types de robots différents : bras robotiques, drones, bases mobiles, … Une fois que vous avez appris comment s'effectue la communication entre tous les nœuds du programme, vous pouvez configurer de nouvelles parties d'un application très facilement. À l’avenir, si vous devez passer à un projet de robotique totalement différent, vous ne serez pas perdu.

Vous pourrez réutiliser ce que vous savez et certaines pièces que vous avez construites, de sorte que vous ne repartirez plus jamais vraiment de zéro.

2. Des forfaits ROS pour tout

Vous avez besoin de calculer une trajectoire pour votre robot ? Il existe un package pour cela. Utiliser votre joystick pour contrôler le robot ? Il existe également un package pour cela. Ou vous souhaitez cartographier une pièce avec un drone ? Il existe de nombreux packages pour ce faire.

Eh bien, si vous cherchez un peu, vous trouverez de très nombreux packages ROS pour presque toutes les applications robotiques.


3. ROS est indépendant de la langue

Vous pouvez facilement communiquer entre un nœud Python et un nœud C++. Cela signifie beaucoup de réutilisabilité et de possibilités de coworking. De nombreuses bibliothèques permettent également d’utiliser d’autres langages (car ROS a principalement ciblé le C++ et Python).

Vous pouvez également faire fonctionner un serveur Websocket sur votre robot (rosbridge_suite) ou un serveur HTTP, et ainsi utiliser n'importe quel langage pour communiquer avec lui.

4. ROS dispose d’excellents outils de simulation

Vous ne pouvez pas toujours faire fonctionner votre robot en vrai, vous avez donc besoin d'outils de simulation. ROS dispose de nombreux outils formidables, tels que Viz ainsi que  Gazebo. Avec Gazebo, vous pouvez même ajouter des contraintes physiques à l'environnement. Ainsi, lorsque vous exécutez la simulation et le robot réel, le résultat est à peu près le même. Imaginez cartographier une pièce en 3D avec un drone directement sur votre ordinateur, cela pourrait vous faire gagner énormément de temps.

Les outils de simulation vous permettent également de voir et d'utiliser d'autres robots que vous ne possédez pas, à des fins pédagogiques ou pour tester dans un environnement spécifique.


5. Vous pouvez contrôler plusieurs robots avec ROS

ROS peut fonctionner avec plusieurs maîtres ROS. Cela signifie que vous pouvez avoir de nombreux robots indépendants, chacun avec son propre système ROS, et que tous les robots peuvent communiquer entre eux.

6. ROS est léger

La base de base de ROS ne prend pas beaucoup d'espace et de ressources. Vous pouvez installer rapidement les packages de base et démarrer en quelques minutes. De plus, vous pouvez également utiliser ROS sur des ordinateurs embarqués, tels que les cartes Raspberry Pi 3. Ainsi, vous pouvez facilement démarrer un nouveau projet sans trop de problèmes.


7. De plus en plus de produits ROS compatibles

Lorsque vous construisez un robot, vous ne souhaitez pas nécessairement en réinventer ou en recréer toutes les parties. Vous voudrez peut-être vous concentrer sur certains points de développement et intégrer le reste d'autres fabricants. La bonne nouvelle ici est que vous pouvez trouver de nombreux produits robotiques – tels que des pinces, des cartes contrôleur, … – qui ont déjà un package ROS. Ainsi, en plus de l'outil physique, le logiciel qui va avec est directement compatible avec votre système ROS.

8. ROS est un projet open source avec une licence permissive

L'une des plus grandes forces de ROS est qu'il est open source. La plupart des packages de base sont publiés sous licence BSD. UN Licence BSD vous permet de modifier et d'utiliser le code à des fins commerciales, sans avoir à publier votre code avec une licence open source. Cela peut être un bon point lorsqu’une entreprise décide d’intégrer un logiciel open source. Mais bon, n'oubliez pas l'esprit open source 🙂


Un avenir radieux pour ROS

ROS a été créé en 2007 et compte désormais une base d’utilisateurs énorme et toujours croissante. De plus en plus de packages sont développés.

Aussi, une nouvelle version de ROS est sur le point de sortir : ROS 2 ! ROS 2 est un logiciel entièrement réécrit, et présente de nombreux avantages par rapport à ROS 1 : support multi plateforme, support des systèmes embarqués, exécution en temps réel, meilleure gestion des ressources, …

ROS en vaut vraiment la peine. Si vous souhaitez vous lancer dans la robotique, vous devez apprendre et utiliser ROS. Cela vous apprendra beaucoup de choses sur la robotique et vous gagnerez énormément de temps sans essayer de réinventer la roue pour chaque nouveau projet.

Si vous souhaitez voir gratuitement un exemple de robot alimenté par ROS, consultez Dépôt github de la pile Niryo One ROS sur github. Vous pouvez facilement installer les packages Niryo One et lancer une simulation en 5 minutes !