Les meilleures distros robotiques

Les meilleures distros robotiques
Pour le développement de la robotique, il existe de nombreuses collections disponibles. De l'habitude, les utilisateurs de Linux recherchent des distributions pour trouver la solution parfaite pour leur projet. Bien qu'il existe des distributions, vous pouvez manquer si vous ne cherchez pas des bibliothèques communes pour vous aider avec certaines tâches. Les outils que vous utilisez déjà est également une considération pour prendre au sérieux.

Étant donné que travailler avec des robots sera un effort de développement, la plupart des outils dont vous aurez besoin seront des kits d'outils de développement. L'Open Source Robotics Foundation (OSRF) a une excellente page Web avec des ressources. Ils soutiennent et maintiennent le système d'exploitation robotique (ROS). Il s'agit d'une vaste collection d'outils que vous pouvez installer à la fois sur votre système existant ou en tant que conteneur.

Le raisonnement derrière une distribution

Lorsque vous commencez à expérimenter avec des robots, vous découvrirez beaucoup de choses que vous ne vous attendez pas lorsque vous avez commencé. Réalisez-vous à quel point les images interprétantes comptent au développement de la robotique? Dans une distribution, vous avez tous les outils dont vous aurez besoin avant de savoir que vous en avez besoin.

Cela rend plus rapide pour commencer et évite les complications à mesure que les projets évoluent. Vous occuperez inutilement l'espace disque, mais la taille totale du système n'est pas grande pour un ordinateur moderne. Au fur et à mesure que vous progressez dans votre projet, assurez-vous de savoir quoi mettre dans le robot et non. Vos contraintes d'espace disque y sont beaucoup plus strictes.

ROS - Le choix le plus grand et évident

Comme mentionné précédemment, ROS possède une vaste bibliothèque de fonctions. Celles-ci vont du contrôle matériel, de la messagerie entre les sous-systèmes aux bibliothèques de vision et les simulateurs. Le projet est bien pris en charge par l'OSRF. Ils sont à leur tour soutenus par de nombreux leaders de l'industrie, et leur filiale commerciale soutient les mêmes entreprises dans leurs efforts.

Malgré la vaste gamme de choix et le haut niveau de sophistication, un nouvel utilisateur peut commencer à utiliser certains composants standard. Grâce aux méthodes coopératives de l'OSRF, il existe de nombreux robots qui ont été construits en utilisant le ROS. Beaucoup sont des produits de consommation que vous pouvez acheter pour un montant raisonnable et démarrer votre projet pour une tâche spécifique. Les produits actuellement disponibles sont un sur les roues, les jambes et les ailes sur les drones volants. Vous pouvez même trouver des habitants d'eau, y compris des sous-marins.

Ce projet vous durera à une utilisation industrielle si vous visez à y aller. Il y a un peu de démarrage de la courbe d'apprentissage, mais vous avez beaucoup à apprendre sur la robotique de toute façon. En fait, lorsque vous planifiez votre premier projet, vous manquerez très certainement de nombreuses fonctionnalités dont vous avez besoin pour une utilisation de base.

Boîte à outils de programmation de robotique mobile

Comme vous le verrez lorsque vous commencerez par des robots, une grande partie du travail sera la programmation. Cette boîte à outils vous aide avec le slam (localisation et cartographie simultanées) et d'autres outils de planification du chemin. Beaucoup d'outils ont à voir avec la vision. Un morceau intéressant de cette trousse d'outils est la prise en charge du matériel Kinect. Les bibliothèques libfreenect sont les sous-jacentes de ce projet. Pour l'ajouter à votre installation Ubuntu, vous pouvez prendre le PPA et l'installer avec APT. La compilation de votre propre nécessite GCC-7 ou plus récente, Clang-4 ou plus récent. Pour plus d'informations et ce que vous devez faire lorsque vous utilisez ROS, goto leur page github.

Yarp

Nommé `` Encore une autre plate-forme de robot '', il est basé sur l'idée que vous utilisez autant que possible des outils existants. Yarp est une collection de bibliothèques C ++ qui définissent les protocoles de communication pour tous les niveaux de projets robotiques. Vous avez trois composants de Yarp, Yarpos, Yarpsig et Yarpdev. Ils sont tous concernés par la façon d'envoyer des données entre les composants de votre projet. Le composant Yarpos crée des interfaces vers le système d'exploitation que vous utilisez. Cela facilite le changement du système d'exploitation ou du matériel d'un composant tout en conservant les mêmes flux de données YARP. Ceci est nécessaire pour exécuter les autres parties du système. Yarpsig gère les tâches de traitement du signal, il interface avec OpenCV et bibliothèques similaires. Il ne fait pas le traitement. Yarpdev fournit des interfaces à toutes sortes de dispositifs dont vous avez besoin. Pensez aux caméras, aux microphones, aux conducteurs de moteur et plus. Yarp fera l'interface avec le système global. Vous l'utiliserez également pour configurer vos appareils. Yarp vous aidera à planifier tous les autres logiciels afin que vous puissiez utiliser ce qui existe. En fait, vous avez également la possibilité d'exécuter certains composants sous ROS tandis que d'autres exécutent Yarp. Il existe de nombreuses options disponibles et vous pouvez passer entre les deux progressivement.

Conclusion

Lorsque vous commencez avec la robotique, vous aurez besoin de nombreuses pièces logicielles. Chaque contrôleur et ordinateur intégré ont des besoins et des systèmes différents. Chaque appareil photo a un pilote à nouveau. Toutes les données doivent se déplacer entre les sous-systèmes et les composants. Ça devient vraiment compliqué. Pour commencer plus rapidement, vous devez avoir un système qui coordonne tout. Vous le faites en ayant une fonction de coordination pour les messages et les données. Ceux-ci sont organisés comme des «sujets», des «nœuds» et des «services». La raison de ces différentes fonctions est que parfois, vous souhaitez exécuter des commandes, parfois vous souhaitez mettre des données à la disposition de nombreuses autres parties du système et vous pourrez également envoyer toutes les données au système en général.

C'est là que vous avez besoin d'une distribution ou d'une plate-forme qui conserve toutes ces coordonnées. ROS est le système qui fonctionne avec la plupart, sinon tous, le matériel et les types de projets. N'oubliez pas de comprendre ce que vous essayez de réaliser avec votre conception. Ceci est particulièrement important lorsque vous apprenez. Si vous avez un objectif, toutes les étapes ont une raison et une association. C'est les bases de l'apprentissage; Pour voir le lien entre la raison et l'action.