PyNiryo est un package Python servant à envoyer des commandes à Ned depuis n’importe quel système par le biais d’une API TCP/IP. Il est la continuité de l’API TCP/IP, proposée sur le Niryo One, avec une installation facilitée et un plus gros éventail de fonctions.

Qu’est-ce qu’une API ?

Une API, pour Application Programming Interface, est un ensemble de fonctions/définitions qui permet de faciliter l’intégration d’un logiciel dans un programme.

Qu’est-ce que le protocole TCP ?

TCP, pour Transmission Control Protocol est le protocole de communication réseau qui permet l’envoi de messages entre votre ordinateur et votre robot.

Que permet PyNiryo ?

PyNiryo permet un contrôle facile et très complet d’un ou de plusieurs robots connectés au même réseau que votre ordinateur via des commandes haut niveau. Ces commandes sont envoyées via un script Python depuis votre ordinateur. Ces dernières sont récupérées et interprétées par le TCP Server du robot. Elles sont ensuite exécutées et les résultats sont envoyés par le Server TCP vers votre ordinateur.

Quels sont les avantages de PyNiryo ?

PyNiryo permet de contrôler un ou plusieurs robots depuis un programme Python qui s’exécute sur votre ordinateur. Cela a pour avantage de rendre le code beaucoup plus facile à développer et à débugger car vous pouvez ainsi simplement modifier votre code dans votre interface de développement favorite et le relancer sans avoir à passer par SSH.

En plus de cela, vous pouvez lancer le programme du robot directement depuis votre ordinateur. Cela peut donc vous permettre de bénéficier de ressources supérieures à celles de la Raspberry Pi du robot, selon la configuration de votre ordinateur et vous donne ainsi la possibilité d’intégrer des fonctionnalités demandant davantage de ressources, comme par exemple des fonctions de traitement d’images ou encore du machine learning, vous permettant d’appréhender l’utilisation de la vision dans le cadre de l’industrie 4.0.

Les fonctionnalités de PyNiryo

PyNiryo contient plus de quarante fonctions qui permettent de contrôler le robot ainsi que son écosystème (mouvement, utilisation des outils, Conveyor Belt, Kit Vision…), vous permettant de prototyper des usages industriels orientés industrie 4.0

PyNiryo peut être utilisée pour récupérer des informations sur la position et l’état actuel du robot ainsi que les valeurs des GPIO, la vision de la caméra et bien d’autres fonctions.

Retrouvez la documentation package Python

Communiquer avec le robot via TCP/IP permet également de contrôler plusieurs robots depuis le même programme. Ainsi, il est possible de combiner PyNiryo et la librairie Python Threading pour permettre de contrôler plusieurs Ned simultanément, de manière à simuler, par exemple, une ligne de production utilisant la robotique collaborative.

Vous pouvez obtenir davantage d’informations à ce sujet en vous référant à notre tutoriel.

PyNiryo

L’API PyNiryo reprend l’ensemble des fonctionnalités du robot disponibles via ROS. Voici une liste non exhaustive de ces fonctionnalités :

  • Bouger le robot
  • Utiliser la vision
  • Contrôler des convoyeurs
  • Récupérer les informations des pins GPIO 

Des fonctions de vision ont également été ajoutées à PyNiryo afin de permettre à l’utilisateur de découvrir comment créer sa propre pipeline de traitement d’images, afin d’aller encore plus loin dans la découverte et l’apprentissage de la robotique collaborative au sein de l’industrie 4.0

Ces fonctions sont basées sur OpenCV, une librairie de traitement d’images open source. Cela permet également d’utiliser ces images avec des outils de Deep Learning comme Tensorflow et PyTorch !

L’installation de PyNiryo est également simplifiée. En effet, elle est disponible sur l’installation de package Python PyPI. Pour l’installer, il vous suffit d’exécuter la commande “pip install pyniryo”.

Pour plus d’informations sur l’installation de PyNiryo, cliquez ici

Conclusion

Notre package Python PyNiryo est donc une interface pleine de ressources vous permettant de mettre en application une multitude de projets orientés industrie 4.0 de manière simple, rapide et performante.