Que vous ayez déjà de l’expérience en programmation, comme comment utiliser un terminal, et que vous souhaitiez maintenant l’appliquer à la robotique, ou que vous souhaitiez vous plonger dans les spécificités d’un nouveau projet robotique, ROS est le langage qu’il vous faut utiliser.
Dans cet article, nous allons vous expliquer si vous devriez l’utiliser… ou pas.
C’est parti !
Commençons par le définir
ROS, ou Robot Operating System, est un ensemble de logithèques et d’outils qui vous aident à créer plusieurs applications robotiques. L’objectif de ROS est de pouvoir créer une norme robotique. Il n’est donc pas nécessaire de réinventer la roue, ROS, tel qu’il est, vous accompagnera avec facilité.
Pourquoi est-ce une bonne idée d’utiliser ROS dans la robotique ?
Voici 8 raisons pour lesquelles ROS convient parfaitement à votre projet de robotique.
-
ROS est général
Le code de base et les connaissances sont les mêmes. Ils peuvent être appliqués à de nombreux types de robots : bras robotiques, drones, bases mobiles…
Tout ce que vous avez à faire est d’apprendre le concept de communication entre tous les points du programme, ensuite, vous serez en mesure de mettre en place de nouvelles parties d’une application en toute simplicité.
Si vous décidez un jour de passer à un projet robotique totalement différent, vous le ferez sans aucun problème. En fait, vous pourrez appliquer ce que vous ayez appris et réutiliser certaines parties que vous avez déjà créées pour le nouveau projet, sans avoir à repartir depuis le début!
-
Les packs ROS peuvent être utilisés… pour (presque) TOUT
Vous avez besoin de calculer une trajectoire pour votre robot ? ROS a un paquet pour cela. Vous souhaitez utiliser votre joystick pour contrôler le robot ? ROS a également un paquet pour cela.
Vous voulez cartographier une pièce avec un drone ? Devinez quoi ? ROS est encore la réponse.
Avec un peu de recherche, croyez-nous, vous trouverez de nombreux packs ROS pour presque toutes les applications robotiques auxquelles vous pouvez penser.
-
ROS est polyvalent en termes de langage
Vous pouvez facilement communiquer entre un nœud Python et un nœud C++. Cela se traduit par de nombreuses réutilisations et des possibilités de travail collaboratif. De nombreuses logithèques vous permettent par ailleurs d’utiliser d’autres langages (car ROS a principalement été conçu pour les langages C++ et Python).
Vous pouvez aussi faire tourner un serveur websocket sur votre robot (rosbridge_suite) ou un serveur HTTP, et ainsi utiliser n’importe quel langage pour communiquer avec lui.
-
ROS dispose d’excellents outils de simulation
Faire fonctionner votre robot pour de vrai peut parfois être compliqué, c’est pourquoi vous avez certainement besoin d’outils de simulation. ROS dispose de nombreux outils de qualité, tels que Rviz et Gazebo. Par exemple, Gazebo vous aide à ajouter des limites physiques à l’environnement, de sorte qu’une fois que vous exécutez la simulation et le robot physique, le résultat est pratiquement identique.
Vous pourrez cartographier une pièce en 3D à l’aide d’un drone relié directement à votre ordinateur, imaginez le temps que vous pourriez gagner!
D’autre part, les outils de simulation vous permettent de visualiser et d’utiliser d’autres robots que vous ne possédez pas, à des fins éducatives ou même pour tester un robot dans un environnement spécifique.
-
ROS permet de contrôler plusieurs robots
ROS peut être utilisé avec plusieurs ROS maîtres. Cela signifie que si vous avez plusieurs robots indépendants et que chacun d’entre eux possède son propre système ROS, ils pourront tous communiquer entre eux.
-
ROS est léger
Le coeur de ROS ne prend pas beaucoup d’espace et de ressources. Ainsi, vous pouvez rapidement installer les éléments de base et démarrer en quelques minutes. De plus, vous pouvez utiliser ROS sur des ordinateurs intégrés, tels que les cartes Raspberry Pi 4. Par conséquent, vous pouvez facilement commencer un nouveau projet sans trop de problèmes.
-
De plus en plus de produits ROS compatibles
Lorsque vous fabriquez un robot, vous ne souhaitez pas nécessairement en réinventer ou en recréer toutes les parties. Il se peut que vous souhaitiez vous concentrer sur certains points de développement et intégrer le reste provenant d’autres fabricants. La bonne nouvelle, c’est que vous pouvez trouver de nombreux produits robotiques, tels que des pinces ou des cartes de contrôle, qui disposent déjà d’un pack ROS. Ainsi, en plus de l’outil physique, le logiciel qui l’accompagne est directement compatible avec votre système ROS.
-
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 paquets de base sont publiés sous une licence BSD. Une 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 s’avérer utile lorsqu’une entreprise décide d’intégrer un logiciel libre.
Un avenir prometteur pour ROS
ROS a été créé en 2007 et depuis lors, il bénéficie d’une base d’utilisateurs considérable qui ne cesse de croître à ce jour. De plus en plus de modules sont développés chaque année.
ROS en vaut vraiment la peine. Et Niryo lui fait confiance ! Si vous souhaitez vous lancer dans la robotique, ROS est peut-être la solution.