Blog

Créez une ligne de production multi-robots avec des robots collaboratifs

Apprendre la robotique
Partager
Filetage de lignes de production multi-robots

Comment simuler une ligne de production en multi-robot (threading) ?

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

Quels appareils sont nécessaires pour utiliser cette fonctionnalité ?


Vous aurez besoin de deux Ned2, du set de vision et de son espace de travail, de la grande pince, de la pompe à vide, de quelques pions et du tapis roulant et d'une pente.

 

https://www.youtube.com/watch?v=I2Qokl7YHxU

 

Résumé :

1. Comment configurer/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 fil de discussion ?

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

Comment configurer/préparer mon matériel ?

Tout d’abord, vous devez attacher l’avant du tapis roulant au premier Ned2 et brancher la grande pince.

Ensuite, branchez la pompe à vide sur l'autre Ned2, qui se trouve à l'arrière du tapis roulant. Réglez la pente à 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 Ned/Ned2.

Enfin, calibrez l’espace de travail.

Comment paramétrer/préparer mon logiciel ?

Pour le premier lancement, vous devez donner six positions au programme avec le Mode Apprentissage activé (appuyez sur Entrée pour confirmer une position). Voici les postes (veuillez utiliser le même ordre) :

  • Avant 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 pente (en haut de la pente).
    • La position à partir de laquelle le robot peut déposer le pion sur la pente.
  • Retour Ned2 :
    • La position à partir de laquelle le robot peut saisir le pion en bas de la pente.
    • 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é données.txt.

Comment fonctionne le processus?

Une fois la configuration terminée, le tapis roulant commencera à bouger, le Ned2 avant attendra qu'un pion apparaisse dans son espace de travail. Une fois qu'un pion est vu, le tapis roulant s'arrêtera, le Ned2 avant le ramassera et le placera dans la pente, tandis que le tapis roulant redémarrera. Ensuite, le Ned2 arrière récupérera ce pion en bas de la pente, et le remettra sur le tapis roulant.

Le multithreading nous permet d'exécuter plusieurs parties du même programme en parallèle. Vous pouvez alors exécuter plusieurs instructions simultanément au sein du même processus. L'échange d'informations entre threads est simple et rapide, ce qui rend le multithreading très pratique pour contrôler plusieurs Ned/Ned2 en même temps.

Chaque robot a-t-il son propre fil de discussion ?

Oui, le thread principal du programme lance un thread que chaque robot doit 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 pour le contrôle du tapis roulant et le partage de la pente. 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 RobotsSecteurs.

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

Bien sûr, vous pouvez modifier la vitesse du tapis roulant avec le vitesse_convoyeur variable dans le robot.py fichier.

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

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