Sur la route : nous serons à Automate Show 2023 (Detroit, MI, USA) du 22 au 25 mai.

30 mars 2023

Créer une ligne de production avec plusieurs robots collaboratifs

Comment simuler une ligne de production avec plusieurs cobots (threading) ?

Dans cet article, vous apprendrez à utiliser deux ou plusieurs Ned2 afin de créer une ligne de production.


Quels sont les pré-requis pour tester cette fonctionnalité ?


Vous aurez besoin de deux Ned2, du Set Vision et de son espace de travail, du Gripper Large, de la pompe à vide, de quelques pions, du Convoyeur V2 et de sa rampe.

Résumé:

1. Comment installer/préparer mon matériel ?
2. Comment configurer/préparer mon logiciel ?
3. Comment fonctionne le processus ?

4. Chaque robot a-t-il son propre « thread » ?

5. Puis-je modifier les paramètres de la gamme de produits ?

Comment installer/préparer mon matériel ?

Tout d’abord, vous devez relier le Convoyeur au premier Ned2 et brancher le Gripper.

Ensuite, branchez la pompe à vide à l’autre Ned2. Réglez la rampe à mi-chemin entre les deux Ned2 et fixez les quatre repères de l’espace de travail à l’avant du tapis roulant, devant le premier Ned2.

Enfin, calibrez l’espace de travail.

Comment configurer/préparer mon logiciel ?

Pour le premier lancement, vous devez donner six positions au programme avec le mode d’apprentissage (Learning Mode) activé (appuyez sur Enter pour confirmer une position). Voici les positions (en suivant le même ordre):

  • Premier Ned2 :
    • La pose d’observation dans laquelle Ned2 peut voir les 4 repères de l’espace de travail.
    • Une position à quelques centimètres au-dessus de la rampe (en haut de la pente).
    • La position à partir de laquelle le robot peut déposer le pion sur la rampe.
  • Second Ned2 :
    • La position à partir de laquelle le robot peut saisir le pion au bas de la rampe.
    • Une position à quelques centimètres au-dessus de la position précédente.
    • Une position à l’arrière du tapis roulant où le robot peut déposer le pion (devant le deuxième Ned2).

Ces 6 positions seront stockées dans un fichier nommé data.txt.

Comment fonctionne le processus?

Une fois que vous avez terminé la configuration, le Convoyeur commencera à bouger, le premier Ned2 attendra qu’un pion apparaisse dans son espace de travail. Une fois qu’un pion est vu, le tapis roulant s’arrêtera, le premier Ned2 le prendra et le placera dans la rampe, tandis que le Convoyeur recommencera. Ensuite, le second Ned2 prendra ce pion au bas de la rampe et le remettra sur le Convoyeur.

Le multithreading nous permet d’exécuter plusieurs parties d’un même programme en parallèle. Vous pouvez alors exécuter plusieurs instructions simultanément dans le même processus. L’échange d’informations entre threads est simple et rapide, ce qui rend le multithreading très pratique pour piloter plusieurs Ned2 en même temps.

Chaque robot a-t-il son propre fil ?

Oui, le thread principal du programme lance un thread pour chaque robot à contrôler. Les threads communiquent entre eux via des variables partagées et avec la classe threading.Event().

De cette façon, les interactions entre les deux robots sont possibles ainsi que le contrôle du Convoyeur et le partage de la rampe. Chaque thread est connecté à un robot et le contrôle. Les threads communiquent entre eux via des variables situées dans la classe mère RobotsMains.

Puis-je modifier les paramètres de la gamme de produits ?

Bien sûr, vous pouvez changer tla vitesse du Convoyeur avec la variable convoyeur_speed dans le fichier robot.py.

Vous pouvez également modifier la distance entre les pions avec la variable convoyeur_place_interval.

Enfin, vous pouvez modifier la largeur de la distribution des pions sur le tapis roulant avec la variable rand_drop.

Nous n'avons pas pu confirmer votre inscription.
Votre inscription est confirmée.
Inscrivez-vous à la newsletter