mm_vision_pick_and_place
Ce programme guide le robot pour accomplir une tâche simple de préhension-dépose. Il s’applique à des scénarios où un seul résultat de vision guide la préhension une ou plusieurs fois.
Configurations
Configuration des points
Vous pouvez définir les points suivants dans Point Manager.
|
Les points d’enseignement désignent les points enseignés manuellement par l’utilisateur. Les points automatiques ne sont pas créés par enseignement; ils sont automatiquement calculés à partir des points de vision provenant de Mech-Vision. |
Points d’enseignement
AbovePickArea: Similaire à la position Home; le robot peut atteindre depuis ce point les points Detect et Dropoff aisément
Detect: Le point où la caméra capture des images
Dropoff: Le point où le robot dépose l’objet
Points automatiques
Pick: Le point où le robot saisit l’objet; il est calculé à partir des points de vision provenant de Mech-Vision
PrePick: Utilisé pour guider le mouvement linéaire d’approche de l’objet avant la préhension; il guide le TCP pour appliquer un décalage par rapport au point Pick le long de l’axe Z du repère du point Pick
PostPick: Utilisé pour guider le mouvement linéaire d’éloignement de l’objet après la préhension; il guide le TCP pour appliquer un décalage par rapport au point Pick le long de l’axe Z du repère de base du robot
Configuration des paramètres
Composant MM init
Le paramétrage réseau dans le programme est défini par MM init. Vous pouvez configurer l’adresse IP, c’est-à-dire l’adresse IP de l’IPC, dans ce composant.
Veuillez vous référer à Configurer l’adresse IP de l’IPC pour modifier l’adresse IP de MM init.
Composant Run Vision
Vous devrez configurer manuellement le paramètre qui déclenche le démarrage de Mech-Vision. Veuillez cliquer sur l’icône
dans le coin supérieur gauche du composant Run Vision pour effectuer la configuration.
Pour des instructions détaillées sur la configuration des paramètres, veuillez vous référer à Démarrer le projet Mech-Vision (Run Vision).
Description du programme
Programme de mouvement
Préhension (pick_sequence)
Le trajet emprunté par le robot pendant la préhension: Un point éloigné de l’objet → Un point au-dessus de l’objet → Point Pick → Un point au-dessus de l’objet → Un point éloigné de l’objet.
Le nœud grasp_object ne peut pas être exécuté directement. Vous devez en modifier les paramètres pour commander la fermeture de la pince.
Par ailleurs, vous pouvez définir dans le nœud config la distance entre le point au-dessus de l’objet et le point Pick.
Programme principal
Tout d’abord, le composant MM init est ajouté après le nœud Start pour établir la communication. Vous pouvez modifier l’adresse IP dans le composant MM init. Veuillez vous assurer que le robot et l’IPC sont sur le même sous-réseau.
Après le nœud socket_connect, detection_sequence guide le robot vers le point de capture d’images.
Ensuite, le composant Run Vision est ajouté pour démarrer Mech-Vision. Vous pouvez configurer les paramètres et définir des recettes de paramètres dans ce composant.
Ensuite, le composant Receive Vision est ajouté pour obtenir le résultat de vision de Mech-Vision. Ce composant comporte quatre sous-nœuds. Vous pouvez modifier la logique selon vos besoins. Si aucun nuage de points n’est reçu et que vous souhaitez relancer Mech-Vision, vous pouvez connecter le nœud EMPTY_ROI à mm_v01_runvis1.
Le résultat de vision reçu de Mech-Vision est stocké dans la variable globale g_mm_socket_recv_array sous forme de chaînes.
Le flux du projet ci-dessous traite les données de g_mm_socket_recv_array. Le programme détermine si tous les points sont reçus en une seule fois. Dans le cas contraire, le programme passe à mm_v01_recvvis1, puis stocke les points dans la variable globale g_mm_total_point.
Enfin, le résultat de vision reçu de Mech-Vision sera utilisé pour calculer les points automatiques et guider le mouvement du robot.