CGXi Commandes d’interface standard

Vous consultez actuellement la documentation pour la dernière version (2.1.2). Pour accéder à une autre version, cliquez sur le bouton "Changer de version" situé dans le coin supérieur droit de la page.

■ Si vous n’êtes pas sûr de la version du produit que vous utilisez, veuillez contacter le support technique Mech-Mind pour obtenir de l’aide.

Cette section décrit les commandes d’interface standard utilisées dans les communications TCP entre un robot CGXi et le système de vision Mech-Mind. Le robot (le client) envoie des commandes au système de vision Mech-Mind (le serveur), et le système de vision Mech-Mind renvoie les données traitées au robot.

send receive

Aperçu des commandes

Commandes liées à Mech-Vision

Commandes liées à Mech-Viz

Établir la communication TCP

Fermer la communication TCP

Exécuter le projet Mech-Vision

Basculer la recette de paramètres de Mech-Vision

Obtenir le résultat de vision

Obtenir la trajectoire planifiée dans Mech-Vision

Stocker le résultat de vision ou la trajectoire planifiée (TCP)

Stocker la trajectoire planifiée (positions articulaires)

Obtenir les données personnalisées de Mech-Vision

Stocker les données personnalisées de Mech-Vision

Obtenir les données de Vision Move ou les données personnalisées

Stocker les données de Vision Move ou les données personnalisées

Obtenir la liste DO du préhenseur

Définir la liste DO du préhenseur

Obtenir un message depuis l’Étape Notify

Calibration

Renseigner les dimensions de l’objet dans le projet Mech-Vision

Obtenir l’état du projet

Établir la communication TCP

Fermer la communication TCP

Exécuter le projet Mech-Viz

Définir le port de sortie pour l’Étape « Branch by Msg » dans Mech-Viz

Définir l’index actuel dans Mech-Viz

Obtenir la trajectoire planifiée dans Mech-Viz

Stocker le résultat de vision ou la trajectoire planifiée (TCP)

Stocker la trajectoire planifiée (positions articulaires)

Lire le paramètre d’Étape de Mech-Viz

Définir le paramètre d’Étape de Mech-Viz

Obtenir les données de Vision Move ou les données personnalisées

Stocker les données de Vision Move ou les données personnalisées

Obtenir la liste DO du préhenseur

Définir la liste DO du préhenseur

Obtenir un message depuis l’Étape Notify

Arrêter le projet Mech-Viz

Précautions

  • Lors de la programmation d’un robot CGXi, veuillez noter les points suivants :

    • Chaque commande décrite ici est intégrée au programme du robot sous forme de fichier de script individuel (.crscript).

    • Pour les paramètres input d’une commande, vous n’avez pas besoin de redéfinir des variables. Il suffit d’affecter des valeurs aux variables correspondantes dans le script.

    • Pour les paramètres output d’une commande, vous devez spécifier les variables de réception lors de l’appel de la commande afin que le programme du robot puisse utiliser les valeurs renvoyées.

  • Unité de données :

    • L’unité des positions articulaires est le degré (°).

    • La pose de la bride du robot ou le TCP se compose de la position et de la pose. La position est représentée en coordonnées XYZ et mesurée en millimètres (mm) ; la pose est représentée en angles d’Euler et mesurée en degrés (°).

  • Point de vision et point de passage :

    • Point de vision : Un objet reconnu par Mech-Vision. Un point de vision contient des informations telles que la pose de l’objet, l’étiquette, les dimensions et des données personnalisées.

    • Point de passage : Chaque point que le robot atteint lors du déplacement le long du chemin planifié. Un point de passage contient des informations telles que la pose du robot, l’étiquette et le type de mouvement. Les points de passage peuvent être divisés en deux catégories :

      • Point de passage Vision Move : point de passage correspondant à l’étape Vision Move.

      • Points de passage hors Vision Move, c’est‑à‑dire les points de passage correspondant aux étapes de type Move autres que l’étape Vision Move.

Établir la communication TCP

Cette commande établit la communication TCP entre le robot et le système de vision.

Format de commande

mm_open_skt(_ip,_port,_socket_id)

Paramètres d’entrée

_ip

Ce paramètre spécifie l’adresse IP de l’IPC.

_port

Ce paramètre spécifie le numéro de port utilisé par l’IPC pour établir la communication entre l’IPC et le robot. Ce numéro de port doit être cohérent avec le numéro de port hôte spécifié pour la communication avec le robot dans la barre d’outils de Mech-Vision.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_ip="192.168.1.20"
mm_port=50000
mm_socket_id=8

......

mm_open_skt(mm_ip,mm_port,mm_socket_id)

Dans cet exemple, le robot utilisera l’ID de socket 8 pour se connecter à l’IPC avec l’adresse IP 192.168.1.20 et le numéro de port 50000.

Fermer la communication TCP

Cette commande ferme la communication TCP entre le robot et le système de vision.

Séquence d’appel

Après avoir reçu le résultat du projet Mech-Vision ou Mech-Viz, vous pouvez appeler cette commande pour fermer la communication et stocker le résultat dans des variables.

Format de commande

mm_close_skt(_socket_id)

Paramètres d’entrée

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_socket_id=8
......

mm_close_skt(mm_socket_id)

Dans cet exemple, le robot fermera la connexion TCP sur l’ID de socket 8.

Exécuter le projet Mech-Vision

Commande

Cette commande déclenche l’exécution du projet Mech-Vision. Lorsque le projet Mech-Vision s’exécute, le système de vision déclenche la caméra pour capturer des images, puis traite les images renvoyées avec des algorithmes afin de produire une série de points de vision ou de points de passage.

  • Point de vision : Objet reconnu par Mech-Vision. Un point de vision comporte des informations telles que la pose de l’objet, l’étiquette, les dimensions et des données personnalisées.

  • Point de passage : Chaque point que le robot atteint lors du déplacement le long de la trajectoire planifiée. Un point de passage comporte des informations telles que la pose du robot, l’étiquette et le type de mouvement.

Séquence d’appel

Format de commande

mm_start_vis(_proj_no,_pos_num_need,_sendpos_type,_init_jps,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_pos_num_need

Ce paramètre indique le nombre de points de vision ou de points de passage que l’on s’attend à recevoir du projet Mech-Vision. Valeurs valides : 0 jusqu’au plus grand entier positif.

Si le projet Mech-Vision possède une Étape de planification de trajectoire, ce paramètre indique le nombre attendu de points de passage. Sinon, il indique le nombre attendu de points de vision.
  • 0 : Obtenir tous les points de vision ou points de passage du projet Mech-Vision.

  • Un entier positif : Obtenir le nombre spécifique de points de vision ou de points de passage du projet Mech-Vision.

    • Si le nombre total de points de vision ou de points de passage produits par le projet Mech-Vision est inférieur à la valeur de ce paramètre, cette commande obtiendra le nombre de tous les points de vision ou points de passage.

    • Si le nombre total de points de vision ou de points de passage produits par le projet Mech-Vision est supérieur ou égal à la valeur de ce paramètre, cette commande obtiendra le nombre de points de vision ou de points de passage spécifié par ce paramètre.

set number

_sendpos_type

Ce paramètre indique la manière dont la pose réelle du robot est envoyée au projet Mech-Vision. Valeurs valides : 0, 1, 2 et 3. Le tableau ci-dessous en décrit les détails.

_sendpos_type Description Scénario applicable

0

La commande n’envoie pas les données de pose du robot au projet Mech-Vision.

Si l’Étape de planification de trajectoire est utilisée dans le projet Mech-Vision, le point de départ de la trajectoire planifiée sera le point Home défini dans l’outil de planification de trajectoire.

Ce réglage doit être utilisé si la caméra est montée en mode caméra fixe (eye-to-hand) et que le projet ne nécessite pas de capture d’images au préalable.

1

Les positions articulaires actuelles et la pose de la bride du robot doivent être fournies au projet Mech-Vision.

Ce réglage doit être utilisé lorsque la caméra est montée en mode caméra sur l’outil (eye-in-hand).

Ce réglage est recommandé pour la plupart des scénarios, à l’exception de ceux impliquant des robots portiques.

2

La pose de la bride du robot doit être fournie au projet Mech-Vision.

Ce réglage est recommandé pour les scénarios impliquant des robots portiques.

3

Cette commande envoie des positions articulaires personnalisées au projet Mech-Vision.

Ces positions articulaires seront envoyées à l’Étape de planification de trajectoire dans le projet Mech-Vision comme point de départ, où le robot se déplacera de ce point de départ vers le premier point de passage de la trajectoire planifiée.

Ce réglage doit être utilisé si la caméra est montée en mode caméra fixe (eye-to-hand) et que le projet nécessite une capture d’images préalablement.

_init_jps

Ce paramètre spécifie les données de positions articulaires personnalisées.

  • Si le paramètre _sendpos_type est réglé sur 3, les positions articulaires seront envoyées à l’Étape de planification de trajectoire dans le projet Mech-Vision comme point de départ, où le robot se déplace de ce point de départ vers le premier point de passage de la trajectoire planifiée.

  • Si la valeur de _sendpos_type est différente de 3, les positions articulaires définies ici n’auront pas d’effet, mais elles doivent être renseignées.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_proj_no=1
mm_pos_num_need=1
mm_sendpos_type=1
mm_init_jps={0,0,90,0,-90,0}

......

mm_start_vis(mm_proj_no,mm_pos_num_need,mm_sendpos_type,mm_init_jps,mm_socket_id)

Dans l’exemple ci-dessus, le projet Mech-Vision dont l’ID est 1 est exécuté, et un point de vision est attendu en retour par le projet Mech-Vision. En même temps, le robot envoie les données de positions articulaires actuelles et de pose de la bride au projet Mech-Vision. Dans cet exemple, mm_init_jps n’a pas d’utilité pratique, mais les positions articulaires doivent être définies.

Obtenir le résultat de vision

Commande

Cette commande obtient le résultat de vision, à savoir une série de points de vision, depuis Mech-Vision. La pose de l’objet du point de vision (c’est-à-dire la sortie du port poses de l’Étape Output) sera automatiquement convertie en TCP du robot par le système de vision. Le processus est le suivant.

Si le premier port d’entrée de l’Étape Output est Points centraux de l’objet, l’Étape Output convertira les points centraux de l’objet en points de prise correspondants. Par conséquent, les poses d’objet obtenues en exécutant cette commande sont en réalité des poses des points de prise, plutôt que des poses de points centraux de l’objet.
get tcp
  1. Convertissez la représentation en quaternion de la pose de l’objet en angles d’Euler.

  2. Faites pivoter la pose de l’objet autour de l’axe X de 180° pour orienter son axe Z vers le bas.

    convert tcp

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Vision. Après avoir appelé cette commande, appelez Stocker le résultat de vision ou la trajectoire planifiée (TCP) pour accéder aux données de pose.

Format de commande

mm_get_vis_data(_proj_no,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 1100 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

_pos_num

Ce paramètre stocke le nombre de points de vision renvoyés par Mech-Vision.

Par défaut, après que le robot a envoyé cette commande, le système de vision renvoie le résultat dans un délai de 10 secondes. Si le système de vision ne renvoie aucun résultat dans un délai de 10 secondes, un code d’erreur de dépassement de délai est renvoyé. Pour modifier la durée d’expiration par défaut selon vos besoins, accédez à Robot et Communication > Configuration de la communication du robot  Suivant  Paramètres avancés dans la barre d’outils de Mech-Vision.

set vis time

Exemple

--input
mm_proj_no=1
--output
mm_status=0
mm_pos_num=0

......

mm_status,mm_pos_num=mm_get_vis_data(mm_proj_no,mm_socket_id)

Dans l’exemple ci-dessus, le résultat de vision du projet Mech-Vision avec un ID de 1 est renvoyé, la quantité de points de vision est stockée dans mm_pos_num, et le code d’état d’exécution de la commande est stocké dans mm_status.

Stocker le résultat de vision ou la trajectoire planifiée (TCP)

Commande

Cette commande stocke le TCP, l’étiquette et l’ID d’outil du point de vision ou du point de passage dans des variables.

Format de commande

mm_get_pos(_idx)

Paramètres d’entrée

_idx

Ce paramètre spécifie l’index du point de vision ou du point de passage. Le TCP, l’étiquette et l’ID d’outil du point de vision ou du point de passage correspondant à l’index sont stockés dans les variables. Les index commencent à 1.

Paramètres de sortie

_pos

Ce paramètre stocke le TCP du point de vision ou du point de passage correspondant à l’index.

_label

Ce paramètre stocke l’étiquette du point de vision ou du point de passage correspondant à l’index.

_tool_id

Ce paramètre stocke l’ID d’outil du point de vision ou du point de passage correspondant à l’index.

Exemple

--input
mm_idx=1
--output
mm_pos={0,0,0,0,0,0}
mm_label=0
mm_tool_id=0

......

mm_pos,mm_label,mm_tool_id=mm_get_pos(mm_idx)

L’exemple ci-dessus indique que le TCP du premier point de vision ou point de passage sera stocké dans mm_pos, l’étiquette dans mm_label, et l’ID d’outil dans mm_tool_id.

Stocker la trajectoire planifiée (positions articulaires)

Commande

Cette commande stocke les positions articulaires, l’étiquette et l’ID d’outil du point de passage dans des variables.

Format de commande

mm_get_jps(_idx)

Paramètres d’entrée

_idx

Ce paramètre spécifie l’index du point de passage. Les positions articulaires, l’étiquette et l’ID d’outil du point de passage correspondant à l’index sont stockés dans les variables. Les index commencent à 1.

Paramètres de sortie

_jps

Ce paramètre stocke les positions articulaires du point de passage correspondant à l’index.

_label

Ce paramètre stocke l’étiquette du point de passage correspondant à l’index.

_tool_id

Ce paramètre stocke l’ID d’outil du point de passage correspondant à l’index.

Exemple

--input
mm_idx=1
--output
mm_jps={0,0,0,0,0,0}
mm_label=0
mm_tool_id=0

......

mm_jps,mm_label,mm_tool_id=mm_get_jps(mm_idx)

L’exemple ci-dessus indique que les positions articulaires du premier point de passage seront stockées dans mm_jps, l’étiquette dans mm_label, et l’ID d’outil dans mm_tool_id.

Basculer la recette de paramètres de Mech-Vision

Commande

Cette commande déclenche Mech-Vision pour basculer la recette de paramètres utilisée par le projet. L’image ci-dessous montre comment basculer manuellement la recette de paramètres pour un projet Mech-Vision. Pour plus de détails sur les recettes de paramètres, consultez le guide recette de paramètres.

set recipe

Séquence d’appel

Cette commande doit être appelée avant Exécuter le projet Mech-Vision.

Format de commande

mm_set_model(_proj_no,_model_id,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_model_id

Ce paramètre indique l’ID de la recette de paramètres dans le projet Mech-Vision. Pour savoir comment consulter l’ID de la recette de paramètres, voir Afficher l’ID de la recette de paramètres.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_proj_no=1
mm_model_id=1

......

mm_set_model(mm_proj_no,mm_model_id,mm_socket_id)

Dans l’exemple ci-dessus, la recette de paramètres du projet Mech-Vision dont l’ID est 1 est basculée vers la recette 1.

Obtenir la trajectoire planifiée dans Mech-Vision

Commande

Cette commande obtient la trajectoire planifiée par le projet Mech-Vision sous la forme d’une série de points de passage. La trajectoire est planifiée par l’outil de planification de trajectoire, auquel vous pouvez accéder en cliquant sur Assistant de configuration comme illustré dans l’image ci-dessous. Pour plus de détails sur la planification de trajectoire, voir Planification de trajectoire.

Définissez le paramètre Type de port de l’Étape Output dans Mech-Vision sur Prédéfinis (trajectoire du robot).
get plan path step

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Vision. Après avoir appelé cette commande, appelez Stocker le résultat de vision ou la trajectoire planifiée (TCP) ou Stocker la trajectoire planifiée (positions articulaires) pour accéder aux données de pose.

Format de commande

mm_get_vis_path(_proj_no,_pos_type,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_pos_type

Ce paramètre spécifie le type de poses des points de passage à obtenir. peut être défini sur 1 ou 2.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 1103 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

_pos_num

Ce paramètre stocke le nombre de points de passage renvoyés par le système de vision. Par défaut, le système de vision envoie au plus 20 points de passage à la fois. Par conséquent, la valeur maximale par défaut de ce paramètre est 20. Pour modifier, selon les besoins, le nombre maximal par défaut de poses à obtenir à chaque fois, accédez à Robot et Communication > Configuration de la communication du robot  Suivant  Paramètres avancés dans la barre d’outils de Mech-Vision. La limite supérieure est de 30.

set number
Avant d’appeler Obtenir la trajectoire planifiée dans Mech-Vision, réglez _pos_num_need de Exécuter le projet Mech-Vision sur 0 pour réduire le nombre d’appels à Obtenir la trajectoire planifiée dans Mech-Vision. Si _pos_num_need de Exécuter le projet Mech-Vision est réglé sur 1, un seul point de passage est obtenu à chaque appel de Obtenir la trajectoire planifiée dans Mech-Vision. Vous devez appeler la Commande 105 plusieurs fois pour obtenir tous les points de passage.

_vispos_idx

Le numéro de séquence du point de passage Déplacement par vision (le point de passage correspondant à l’étape Déplacement par vision de l’outil de planification de trajectoire) dans le chemin. Si le point de passage n’existe pas dans le chemin, la valeur du paramètre est 0.

Si le trajet planifié se compose des points de passage suivants dans l’ordre: Déplacement vers point fixe_1, Déplacement vers point fixe_2, Déplacement par vision, et Déplacement vers point fixe_3, le numéro de séquence du point de passage Déplacement par vision est 3.

Exemple

--input
mm_proj_no=2
mm_pos_type=2
--output
mm_status=0
mm_pos_num=0
mm_vispos_idx=0

......

mm_status,mm_pos_num,mm_vispos_idx=mm_get_vis_path(mm_proj_no,mm_pos_type,mm_socket_id)

Dans l’exemple ci-dessus, la trajectoire planifiée renvoyée par le projet Mech-Vision 2 est obtenue, les points de passage de la trajectoire sont stockés au format TCP, le nombre de points de passage est stocké dans mm_pos_num, le numéro de séquence du point de passage Vision Move dans la trajectoire planifiée est stocké dans mm_vispos_idx, et le code d’état d’exécution de la commande est stocké dans mm_status.

Obtenir les données personnalisées de Mech-Vision

Commande

Cette commande obtient des données à partir du(des) port(s) personnalisé(s) de l’Étape Output dans Mech-Vision. Un appel de commande enregistre toutes les données des ports de l’Étape Output dans la mémoire du robot.

Select the Output Step, set Port Type to Custom, and then click Open the editor to go to the custom port configuration window. The Customized Keys section of the window displays custom port names, such as customeData1 and customeData2 as shown in the following figure.

  1. Les données produites par les Clés prédéfinies, telles que poses, labels, sizes, offsets, ne sont pas des données personnalisées.

  2. Vous devez définir Type de port de l’Étape de sortie sur Personnalisé et sélectionner le port poses dans la section Clés prédéfinies de Mech-Vision.

custom data

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Vision. Après avoir appelé cette commande, appelez Stocker les données personnalisées de Mech-Vision pour accéder aux données personnalisées.

Format de commande

mm_get_dy_data(_proj_no,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 1100 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

_pos_num

Ce paramètre stocke le nombre de points de vision renvoyés par Mech-Vision.

Exemple

--input
mm_proj_no=2
--output
mm_status=0
mm_pos_num=0

......

mm_status,mm_pos_num=mm_get_dy_data(mm_proj_no,mm_socket_id)

Dans l’exemple ci-dessus, les données personnalisées du projet Mech-Vision n°2 sont obtenues, le nombre de points de vision est stocké dans mm_pos_num, et le code d’état est stocké dans mm_status.

Stocker les données personnalisées de Mech-Vision

Commande

Cette commande stocke les données personnalisées obtenues de Mech-Vision dans la variable.

Séquence d’appel

Cette commande doit être appelée après Obtenir les données personnalisées de Mech-Vision.

Format de commande

mm_get_dypos(_idx)

Paramètres d’entrée

_idx

Ce paramètre spécifie l’index du point de vision. Les données personnalisées du point de vision correspondant à l’index sont stockées dans la variable. Les index commencent à 1.

Paramètres de sortie

_pos

Ce paramètre stocke le TCP du point de vision correspondant à l’index.

_label

Ce paramètre stocke l’étiquette du point de vision correspondant à l’index. Si aucun port d’étiquette n’est spécifié dans Mech-Vision, 0 est utilisé.

_userdata

Ce paramètre stocke les données personnalisées du point de vision correspondant à l’index spécifié.

Exemple

--input
mm_idx=2
--output
mm_pos={0,0,0,0,0,0}
mm_label=0
mm_userdata={}

......

mm_pos,mm_label,mm_userdata=mm_get_dypos(mm_idx)

Dans l’exemple ci-dessus, le TCP du deuxième point de vision est stocké dans mm_pos, l’étiquette du deuxième point de vision est stockée dans mm_label, et les données personnalisées du deuxième point de vision sont stockées dans mm_userdata.

Renseigner les dimensions de l’objet dans le projet Mech-Vision

Commande

Cette commande renseigne dynamiquement les dimensions de l’objet dans le projet Mech-Vision. Les dimensions de l’objet sont les valeurs des paramètres Paramètres de taille de boîte dans l’Étape Lire les dimensions de l’objet.

Lorsque vous utilisez cette commande, une seule Étape Lire les dimensions de l’objet est autorisée dans le projet Mech-Vision. Sinon, le système de vision renverra une erreur.
read object dimensions

Séquence d’appel

Cette commande doit être appelée avant Exécuter le projet Mech-Vision.

Format de commande

mm_set_boxsize(_proj_no,_length,_width,_height,_socket_id)

Paramètres d’entrée

_proj_no

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet Mech-Vision dans la section Liste des projets de Mech-Vision. L’identifiant du projet est le numéro avant le nom du projet.

_length, _width, _height

Les trois paramètres précédents saisissent successivement la longueur, la largeur et la hauteur de l’objet dans le projet Mech-Vision. La longueur, la largeur et la hauteur sont mesurées en millimètres (mm). Ces valeurs sont lues par l’Étape Lire les dimensions de l’objet et définies pour les paramètres Longueur sur l’axe X, Longueur sur l’axe Y et Longueur sur l’axe Z.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_proj_no=1
mm_length=500
mm_width=300
mm_height=200

......

mm_set_boxsize(mm_proj_no,mm_length,mm_width,mm_height,mm_socket_id)

Dans l’exemple ci-dessus, la longueur, la largeur et la hauteur de l’objet de l’Étape Lire les dimensions de l’objet dans le projet Mech-Vision sont respectivement de 500 mm, 300 mm et 200 mm.

Exécuter le projet Mech-Viz

Commande

Cette commande déclenche l’exécution du projet Mech-Viz. Mech-Viz planifie la trajectoire de mouvement du robot sur la base du résultat de vision produit par Mech-Vision.

Cliquez avec le bouton droit sur le nom du projet dans le panneau des ressources du projet dans Mech-Viz et sélectionnez Autoload Project.

Séquence d’appel

Vous devez définir les paramètres des Étapes avant de démarrer un projet Mech-Viz. Par conséquent, appelez Lire le paramètre d’Étape de Mech-Viz ou Définir le paramètre d’Étape de Mech-Viz avant d’appeler Exécuter le projet Mech-Viz.

Format de commande

mm_start_viz(_sendpos_type,_init_jps,_socket_id)

Paramètres d’entrée

_sendpos_type

Ce paramètre spécifie la manière dont la pose réelle du robot est envoyée au projet Mech-Viz. Valeurs valides : 0, 1 et 2. Le tableau ci-dessous en décrit les détails.

Type de pose du robot Description Scénario applicable

0

Cette commande n’a pas besoin d’envoyer la pose du robot au projet Mech-Viz. Le robot simulé dans le projet Mech-Viz se déplace depuis la position home définie vers le premier point de passage.

Ce réglage est recommandé lorsque la caméra est montée en mode caméra fixe (eye-to-hand).

1

Dans cette commande, le robot envoie ses positions articulaires actuelles et la pose de la bride au projet Mech-Viz. Le robot simulé dans Mech-Viz se déplace des positions articulaires saisies vers le premier point de passage.

Ce réglage est recommandé lorsque la caméra est montée en mode caméra sur l’outil (eye-in-hand).

2

Dans cette commande, le robot envoie les positions articulaires d’un point enseigné (les positions articulaires personnalisées), au lieu des positions articulaires actuelles, au projet Mech-Viz. Le projet Mech-Viz utilise les positions articulaires pour planifier la prochaine trajectoire à l’avance pendant que le robot n’est pas dans la région de capture de la caméra, comme montré ci-dessous. Le robot simulé dans Mech-Viz se déplace des positions articulaires saisies vers le premier point de passage.

Ce réglage est recommandé lorsque la caméra est montée en mode caméra fixe (eye-to-hand).

Pourquoi le type de pose du robot 2 est recommandé lorsque la caméra est montée en mode caméra fixe (eye-to-hand) ?

En mode caméra fixe (eye-to-hand), la caméra peut effectuer la capture d’images pour le prochain cycle de planification de trajectoire avant que le robot ne revienne dans la région de capture d’image et la région de prise, réduisant ainsi le temps de cycle. L’image ci-dessous illustre le fonctionnement d’un robot dans la région de dépose.

Si _sendpos_type est réglé sur 1, le robot enverra la pose actuelle à Mech-Viz. Il est possible que le robot réel se déplace vers d’autres positions avant d’atteindre le premier point de passage. Cependant, le robot simulé se déplace directement vers le premier point de passage du projet Mech-Viz à partir de la pose envoyée par le robot. Par conséquent, il peut y avoir un décalage entre les trajectoires du robot réel et du robot simulé. Ce décalage peut potentiellement entraîner des risques de sécurité imprévus, en particulier si une collision est détectée sur la trajectoire du robot simulé.

En revanche, si _sendpos_type est réglé sur 2, le robot enverra la pose de capture d’image définie par enseignement à Mech-Viz. Ainsi, le robot réel peut déclencher le prochain cycle de planification de trajectoire dans Mech-Viz lorsque le robot réel se trouve dans la région de capture d’image, et le temps de cycle peut être réduit.

En conclusion, le type de pose du robot doit être réglé sur 2 pour les projets en mode caméra fixe (eye-to-hand).

robot example

_init_jps

Ce paramètre spécifie les données de positions articulaires personnalisées.

  • Si le paramètre _sendpos_type est réglé sur 2, les positions articulaires seront envoyées au projet Mech-Viz comme point de départ, où le robot se déplace de ce point de départ vers le premier point de passage de la trajectoire planifiée.

  • Si la valeur de _sendpos_type est différente de 2, les positions articulaires définies ici n’auront pas d’effet, mais elles doivent être renseignées.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_sendpos_type=1
mm_init_jps={0,0,0,0,0,0}

......

mm_start_viz(mm_sendpos_type,mm_init_jps,mm_socket_id)

Dans l’exemple ci-dessus, les positions articulaires et la pose de la bride du robot sont saisies dans le projet Mech-Viz pour lancer l’exécution du projet Mech-Viz. Dans cet exemple, mm_init_jps n’a pas d’utilité pratique, mais les positions articulaires doivent être définies.

Arrêter le projet Mech-Viz

Commande

Cette commande sert à arrêter le projet Mech-Viz.

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Viz.

Format de commande

mm_stop_viz(_socket_id)

Paramètres d’entrée

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

mm_stop_viz(mm_socket_id)

Dans l’exemple ci-dessus, le projet Mech-Viz en cours d’exécution est arrêté.

Définir le port de sortie pour l’Étape « Branch by Msg » dans Mech-Viz

Commande

Cette commande définit le port de sortie pour l’Étape « Branch by Msg ». Lorsque l’Étape suivante est une Étape « Branch by Msg », le projet Mech-Viz attendra que cette commande précise le port de sortie.

set branch

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Viz.

Format de commande

mm_set_branch(_branch_id,_port,_socket_id)

Paramètres d’entrée

_branch_id

Ce paramètre spécifie l’Étape « Branch by Msg » par son ID. Valeurs valides : entiers positifs. L’ID de l’Étape est affiché dans le panneau de paramètres de l’Étape. Par exemple, l’ID de l’Étape dans l’image ci-dessus est 1.

_port

Ce paramètre indique le port de sortie de l’Étape Branch by Msg. Valeurs valides : entiers positifs. Lorsque la valeur du paramètre est réglée à N, le projet Mech-Viz sort par le port dont l’ID est N-1 de l’Étape Branch by Msg.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_branch_id=1
mm_port=3

......

mm_set_branch(mm_branch_id,mm_port,mm_socket_id)

Dans l’exemple ci-dessus, le projet Mech-Viz avec un ID de 1 sort par le port dont l’ID est 2 de l’Étape Branch by Msg.

Définir l’index actuel dans Mech-Viz

Commande

Cette commande définit la valeur du paramètre Index actuel des Étapes de type index. Les Étapes de type index sont des Étapes qui incluent la section Index, notamment Move by Grid, Move by List, Custom Pallet Pattern et Predefined Pallet Pattern.

set index

Séquence d’appel

Les Étapes de type index sont souvent précédées d’une Étape Branch by Msg. Le robot doit appeler les commandes dans l’ordre suivant : Exécuter le projet Mech-Viz, Définir l’index actuel dans Mech-Viz, et Définir le port de sortie pour l’Étape « Branch by Msg » dans Mech-Viz. Cela permet d’assurer que Mech-Viz dispose de suffisamment de temps pour définir la valeur de l’Index actuel.

Format de commande

mm_set_index(_skill_num,_index_num,_socket_id)

Paramètres d’entrée

_skill_num

Ce paramètre spécifie l’ID d’Étape de l’Étape de type index. Valeurs valides : entiers positifs. L’ID de l’Étape est affiché dans le panneau de paramètres de l’Étape. Par exemple, l’ID de l’Étape dans l’image ci-dessus est 3.

_index_num

Ce paramètre définit la valeur du paramètre Index actuel des Étapes de type index. Valeurs valides : entiers positifs. Lorsque la valeur de ce paramètre est réglée à N, l’index actuel de l’Étape correspondante est N-1.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_skill_num=2
mm_index_num=10

......

mm_set_index(mm_skill_num,mm_index_num,mm_socket_id)

Dans l’exemple ci-dessus, l’index actuel de l’Étape dont l’ID est 2 du projet Mech-Viz est 9.

Obtenir la trajectoire planifiée dans Mech-Viz

Commande

Cette commande obtient la trajectoire planifiée par le projet Mech-Viz sous la forme d’une série de points de passage.

Point de passage : Chaque point que le robot atteint lors du déplacement le long de la trajectoire planifiée. Un point de passage comporte des informations telles que la pose du robot, l’étiquette et le type de mouvement. Les points de passage peuvent être divisés en deux catégories :

  • Point de passage Vision Move : Point de passage correspondant à l’Étape Vision Move.

  • Points de passage non-Vision Move, qui se réfèrent aux points de passage correspondant aux Étapes de type mouvement autres que l’Étape Vision Move.

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Viz. Après avoir appelé cette commande, appelez Stocker le résultat de vision ou la trajectoire planifiée (TCP) ou Stocker la trajectoire planifiée (positions articulaires) pour accéder aux données de pose.

Format de commande

mm_get_viz_data(_pos_type,_socket_id)

Paramètres d’entrée

_pos_type

Ce paramètre spécifie le type de poses des points de passage à obtenir. peut être défini sur 1 ou 2.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 2100 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

Par défaut, après que le robot a envoyé cette commande, le système de vision renvoie le résultat dans un délai de 10 secondes. Si le système de vision ne renvoie aucun résultat dans un délai de 10 secondes, un code d’erreur de dépassement de délai est renvoyé. Pour modifier la durée d’expiration par défaut selon vos besoins, accédez à Robot et Communication > Configuration de la communication du robot  Suivant  Paramètres avancés dans la barre d’outils de Mech-Vision.

set viz time

_pos_num

Ce paramètre stocke le nombre de points de passage renvoyés par le système de vision. Par défaut, le système de vision envoie au plus 20 points de passage à la fois. Par conséquent, la valeur maximale par défaut de ce paramètre est 20. Pour modifier, selon les besoins, le nombre maximal par défaut de poses à obtenir à chaque fois, accédez à Robot et Communication > Configuration de la communication du robot  Suivant  Paramètres avancés dans la barre d’outils de Mech-Vision. La limite supérieure est de 30.

set number

_vispos_idx

Le numéro de séquence du point de passage Déplacement par vision (c’est-à-dire le point de passage correspondant à l’étape Déplacement par vision dans le projet Mech-Viz) dans le trajet. Si le point de passage n’existe pas dans le trajet, la valeur du paramètre est 0.

Si le trajet planifié se compose des points de passage suivants dans cet ordre: Déplacement à point fixe_1, Déplacement à point fixe_2, Déplacement par vision, et Déplacement à point fixe_3, le numéro de séquence du point de passage Déplacement par vision est 3.

Exemple

--input
mm_pos_type=2
-- output
mm_status=0
mm_pos_num=0
mm_vispos_idx=0

......

mm_status,mm_pos_num,mm_vispos_idx=mm_get_viz_data(mm_pos_type,mm_socket_id)

Dans l’exemple ci-dessus, la trajectoire planifiée du projet Mech-Viz est obtenue, les points de passage de la trajectoire sont stockés au format TCP, le nombre de points de passage est stocké dans mm_pos_num, le numéro de séquence du point de passage Vision Move dans la trajectoire planifiée est stocké dans mm_vispos_idx, et le code d’état d’exécution de la commande est stocké dans mm_status.

Lire le paramètre d’Étape de Mech-Viz

Commande

Cette commande lit la valeur d’un paramètre d’une Étape spécifique dans le projet Mech-Viz.

Séquence d’appel

Cette commande doit être appelée avant Exécuter le projet Mech-Viz.

Format de commande

mm_get_property(_config_id,_socket_id)

Paramètres d’entrée

_config_id

Ce paramètre correspond au champ Config ID défini dans le fichier property_config.

Depuis la barre d’outils de Mech-Vision, accédez à Configuration de la communication du robot  Suivant  Paramètres avancés. Cliquez sur Configuration des propriétés pour ouvrir le fichier property_config.

get property config

Avant d’appeler cette fonction, vous devez définir un Config ID et son Step ID correspondant ainsi que le nom de clé du paramètre, selon le format suivant, dans le fichier property_config.

read, Config ID, Step ID, nom de clé du paramètre

read

Indique que cette ligne est utilisée pour lire la valeur du paramètre d’un Step.

Config ID

Spécifie un ID unique, qui est un entier positif. Un Config ID correspond à une seule valeur de paramètre d’un Step. Pour lire plusieurs valeurs de paramètre, vous devez définir différents Config ID.

Step ID

Le Step ID du Step dont le paramètre doit être lu.

nom de clé du paramètre

Spécifie le nom de clé du paramètre dont la valeur doit être lue par le robot.

  • Vous pouvez vérifier le nom de clé du paramètre dans l'Outil d’interrogation des clés. Dans Mech-Viz, cliquez sur Fichier dans la barre de menus. Dans le coin inférieur gauche, cliquez sur Options. Cliquez sur Mode développeur, cliquez sur OK, puis redémarrez le logiciel. Dans la barre de menus du logiciel, sélectionnez Outils  Outil d’interrogation des clés pour ouvrir l’outil. Cliquez sur une icône de Step, et tous les noms de clés du Step seront affichés dans la colonne centrale. Chaque nom de clé correspond à un nom de paramètre de Step affiché dans le panneau des paramètres. Vous pouvez également cliquer sur un nom de clé et vérifier son nom de paramètre correspondant dans le panneau « Détails ».

    parameter key name
  • Dans le fichier property_config, les lignes commençant par « # » sont des commentaires, qui ne seront pas exécutés par le programme.

  • N’oubliez pas d’enregistrer le fichier après modification, puis de redémarrer le service d’interface dans la barre d’outils de Mech-Vision.

Le fichier property_config peut contenir plusieurs commandes read. Les Config ID dans ces commandes doivent être différents.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 2109 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

viz_prop_val

Ce paramètre stocke la valeur du paramètre de l’Étape.

Exemple

Dans la ligne ci-dessous, 5 est l’ID de config ; 3 est l’ID d’Étape ; et xCount est le nom de clé du paramètre. Ajoutez cette ligne au fichier property_config.

read,5,3,xCount

Lorsque le robot envoie la commande ci-dessous, le robot reçoit la valeur du paramètre dont le nom de clé est xCount.

--input
mm_config_id=5
--output
mm_status=0
mm_viz_prop_val=0

......

mm_status,mm_viz_prop_val=mm_get_property(mm_config_id,mm_socket_id)

Dans l’exemple ci-dessus, le code d’état de la commande est stocké dans mm_status, et la valeur du paramètre xCount de l’Étape dont l’ID est 3 du projet Mech-Viz est stockée dans mm_viz_prop_val.

Définir le paramètre d’Étape de Mech-Viz

Commande

Cette commande définit la valeur d’un paramètre d’une Étape dans le projet Mech-Viz.

Séquence d’appel

Cette commande doit être appelée avant Exécuter le projet Mech-Viz.

Format de commande

mm_set_property(_config_id,_socket_id)

Paramètres d’entrée

_config_id

Ce paramètre correspond au champ Config ID défini dans le fichier property_config.

Depuis la barre d’outils de Mech-Vision, accédez à Configuration de la communication du robot  Suivant  Paramètres avancés. Cliquez sur Configuration des propriétés pour ouvrir le fichier property_config.

get property config

Avant d’envoyer cette commande, vous devez définir un ID de configuration et son ID d’étape correspondant, le nom de clé du paramètre et la valeur du paramètre selon le format suivant dans le fichier property_config.

write, ID de configuration, ID d’étape, nom de clé du paramètre, valeur du paramètre

write

Indique que cette ligne est utilisée pour définir la valeur de paramètre d’une Étape.

ID de configuration

Spécifie un ID, qui est un entier positif et peut être utilisé à plusieurs reprises.

ID d’étape

Spécifie l’Étape dont la valeur du paramètre doit être lue par le robot.

nom de clé du paramètre

Spécifie le nom de clé du paramètre dont la valeur doit être définie par le robot.

valeur du paramètre

Spécifie la valeur que le robot définit pour le paramètre.

  • Le fichier property_config peut contenir plusieurs commandes « write », et ces commandes peuvent utiliser un ID de configuration à plusieurs reprises. Autrement dit, un même ID de configuration peut servir à définir des valeurs pour plusieurs paramètres.

  • Vous pouvez vérifier le nom de clé du paramètre dans l'Outil de requête de clés. Dans Mech-Viz, cliquez sur Fichier dans la barre de menus. Dans le coin inférieur gauche, cliquez sur Options. Cliquez sur Mode développeur, cliquez sur OK, puis redémarrez le logiciel. Dans la barre de menus du logiciel, sélectionnez Outils  Outil de requête de clés pour ouvrir l’outil. Cliquez sur une icône d’Étape, et tous les noms de clés de l’Étape s’affichent dans la colonne centrale. Chaque nom de clé correspond à un nom de paramètre d’Étape affiché dans le panneau des paramètres. Vous pouvez également cliquer sur un nom de clé et vérifier son nom de paramètre correspondant dans le panneau « Détails ».

    parameter key name
  • Dans le fichier property_config, les lignes commençant par « # » sont des commentaires, qui ne seront pas exécutés par le programme.

  • N’oubliez pas d’enregistrer le fichier après modification, puis redémarrez le service d’interface dans la barre d’outils de Mech-Vision.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 2108 est renvoyé pour une exécution réussie de la commande. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

Exemple

Dans la ligne ci-dessous, 1 est l’ID de config et 3 est l’ID d’Étape. xOffset, yOffset et zOffset sont des noms de clés de paramètres ; et 10, 20 et 30 sont leurs valeurs respectives. Ajoutez cette ligne au fichier property_config.

write,1,3,xOffset,10
write,1,3,yOffset,20
write,1,3,zOffset,30

Lorsque le robot envoie la commande ci-dessous, Mech-Viz définit les valeurs des paramètres dont les noms de clé sont xOffset, yOffset et zOffset respectivement sur 10, 20 et 30.

--input
mm_config_id=1
--output
mm_status=0

......

mm_status=mm_set_property(mm_config_id,mm_socket_id)

L’exemple ci-dessus définit les valeurs des paramètres dont les noms de clé sont xOffset, yOffset et zOffset respectivement sur 10, 20 et 30, et stocke le code d’état de la commande dans mm_status.

Obtenir la liste DO du préhenseur

Commande

Cette fonction obtient la liste des signaux de commande pour le préhenseur à aspiration multi-sections depuis le projet Mech-Vision ou Mech-Viz. Cette commande renvoie 64 signaux DO. Un signal DO valide est un entier non négatif, allant de 0 à 999. -1 est un signal DO invalide qui sert de remplissage. Le robot applique les signaux DO obtenus par Définir la liste DO du préhenseur comme outil.

Par exemple, les signaux DO valides dans le tableau ci-dessous sont 1, 3, 5 et 6, ce qui signifie que le robot mettra ces signaux DO sur ON.

1er

2e

3e

4e

5e

6e

7e

8e

63e

64e

1

3

5

6

−1

−1

−1

−1

−1

−1

Avant d’utiliser cette commande, vous devez effectuer les configurations suivantes dans Mech-Vision ou Mech-Viz.

  • Configurer le projet Mech-Vision

    • Dans l’Étape de planification de trajectoire, cliquez sur Assistant de configuration. Dans Configuration globale, activez Box depalletizing.

      vision move vis
    • Dans l’Étape de planification de trajectoire, cliquez sur Assistant de configuration, puis double-cliquez sur le nom de l’outil du robot. Dans la fenêtre pop-up, sélectionnez Depalletizing vacuum gripper pour Tool type, cliquez sur Configure depalletizing vacuum gripper, puis configurez les signaux DO selon les besoins.

      sucker vis
  • Configurer le projet Mech-Viz

    • Dans l’Étape Vision Move de Mech-Viz, définissez Select Picking Method sur Box depalletizing.

      vision move viz
    • Dans Mech-Viz, double-cliquez sur le nom de l’outil, sélectionnez Depalletizing vacuum gripper pour Tool type, cliquez sur Configure depalletizing vacuum gripper, puis configurez les signaux DO selon les besoins.

      sucker viz

Séquence d’appel

Format de commande

mm_get_dolist(_resource,_socket_id)

Paramètres d’entrée

_resource

Ce paramètre spécifie la source de la liste de signaux DO. Valeurs valides : 0 jusqu’au plus grand entier positif.

  • 0 : Obtenir la liste des signaux DO depuis Mech-Viz.

  • Un entier positif : Obtenir la liste des signaux DO depuis Mech-Vision. L’entier positif est l’ID du projet Mech-Vision.

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
g_resource=0

......

mm_get_dolist(g_resource,mm_socket_id)

L’exemple ci-dessus montre comment obtenir la liste des signaux DO planifiée dans le projet Mech-Viz.

Définir la liste DO du préhenseur

Commande

Cette commande applique les signaux DO du préhenseur obtenus comme outil.

Séquence d’appel

Cette commande doit être appelée après Obtenir la liste DO du préhenseur.

Format de commande

mm_set_dolist()

Exemple

--input
g_resource=0

......

mm_get_dolist(g_resource,mm_socket_id)
mm_set_dolist()

Dans l’exemple ci-dessus, les signaux DO obtenus depuis Mech-Viz sont définis sur les signaux DO correspondants du robot.

Obtenir les données de Vision Move ou les données personnalisées

Commande

Cette commande obtient les données Vision Move depuis le projet Mech-Vision, ou les données Vision Move ou les données personnalisées depuis le projet Mech-Viz. Un appel de fonction stocke toutes les données dans la mémoire du robot.

  • Projets Mech-Vision : Les données Vision Move se réfèrent aux données produites par l’Étape Vision Move dans l’outil de planification de trajectoire, auquel vous pouvez accéder depuis l’Étape de planification de trajectoire. Les données Vision Move incluent les étiquettes des objets cibles prélevés, le nombre d’objets cibles prélevés, le nombre d’objets cibles à prélever cette fois, l’ID de l’arête ou du coin du préhenseur à aspiration, le décalage du TCP, l’orientation du groupe d’objets cibles, l’orientation de l’objet cible, et les dimensions du groupe d’objets cibles.

  • Projets Mech-Viz :

    • Les données Vision Move se réfèrent aux données produites par l’Étape Vision Move dans Mech-Viz, incluant les étiquettes des objets cibles prélevés, le nombre d’objets cibles prélevés, le nombre d’objets cibles à prélever cette fois, l’ID de l’arête ou du coin du préhenseur à aspiration, le décalage du TCP, l’orientation du groupe d’objets cibles, l’orientation de l’objet cible, et les dimensions du groupe d’objets cibles.

    • Les données personnalisées se réfèrent aux données produites par le(s) port(s) personnalisé(s) de l’Étape Output dans Mech-Vision, puis transmises par Mech-Viz.

      Select the Output Step, set Port Type to Custom, and then click Open the editor to go to the custom port configuration window. The Customized Keys section of the window displays custom port names, such as customeData1 and customeData2 as shown in the following figure.

      1. Les données produites par les Clés prédéfinies, telles que poses, labels, sizes, offsets, ne sont pas des données personnalisées.

      2. Vous devez définir Type de port de l’Étape de sortie sur Personnalisé et sélectionner le port poses dans la section Clés prédéfinies de Mech-Vision.

      custom data

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Vision ou Exécuter le projet Mech-Viz. Après avoir appelé cette commande, appelez Stocker les données de Vision Move ou les données personnalisées pour accéder aux données Vision Move ou aux données personnalisées.

Format de commande

mm_get_plan_data(_resource,_pos_type,_socket_id)

Paramètres d’entrée

_resource

Ce paramètre spécifie la source des données Vision Move. Valeurs valides : 0 jusqu’au plus grand entier positif.

  • 0 : Obtenir les données Vision Move depuis Mech-Viz.

  • Un entier positif : Obtenir les données Vision Move depuis Mech-Vision. L’entier positif est l’ID du projet Mech-Vision.

_pos_type

Ce paramètre spécifie le format des données attendues.

  • Lorsque la valeur de _resource est 0, l’intervalle de valeurs valides de _pos_type est de 1 à 4. Les détails sont fournis ci-dessous.

    _pos_type Description des données attendues renvoyées (Chaque champ est expliqué ci-dessous. Si le projet Mech-Vision ne possède pas de port personnalisé, aucun élément de données personnalisées n’est renvoyé.)

    1

    Pose (positions articulaires), type de mouvement, ID d’outil, vitesse, élément 1 des données personnalisées, … élément N des données personnalisées

    2

    Pose (TCP), type de mouvement, ID d’outil, vitesse, élément 1 des données personnalisées, … élément N des données personnalisées

    3

    Pose (positions articulaires), type de mouvement, ID d’outil, vitesse, données Vision Move de Mech-Viz, élément 1 des données personnalisées, … élément N des données personnalisées

    4

    Pose (TCP), type de mouvement, ID d’outil, vitesse, données Vision Move de Mech-Viz, élément 1 des données personnalisées, … élément N des données personnalisées

  • Lorsque la valeur de _resource est un entier positif, l’intervalle de valeurs valides de _pos_type est de 1 à 2. Les détails sont fournis ci-dessous.

    _pos_type Description des données attendues renvoyées (Chaque champ est expliqué ci-dessous.)

    1

    Pose (positions articulaires), type de mouvement, ID d’outil, vitesse, données Vision Move de Mech-Vision

    2

    Pose (TCP), type de mouvement, ID d’outil, vitesse, données Vision Move de Mech-Vision

    Pose

    La pose d’un point de passage peut être des positions articulaires (mesurées en degrés) ou le TCP (mesuré en millimètres pour les coordonnées tridimensionnelles et en degrés pour les angles d’Euler) du robot.

    Type de mouvement

    Le type de mouvement du robot. Valeurs valides : 1 et 2.

    • 1 : Mouvement articulé (MOVEJ)

    • 2 : Mouvement linéaire (MOVEL)

    ID d’outil

    L’ID de l’outil à utiliser à ce point de passage. Une valeur de -1 signifie qu’aucun outil n’est utilisé à ce point de passage.

    Vitesse

    La signification de la vitesse varie selon le type de projet.

    • Pour les projets Mech-Vision, la vitesse indique la valeur Simulation Speed dans l’outil de planification de trajectoire, sous forme de pourcentage.

    • Pour les projets Mech-Viz, la vitesse, exprimée en pourcentage, indique la vitesse définie pour une Étape de type mouvement multipliée par la vitesse globale définie dans Mech-Viz.

    Données Vision Move

    Données produites par l’Étape Vision Move dans Mech-Vision ou Mech-Viz, incluant les étiquettes des objets cibles prélevés, le nombre d’objets cibles prélevés, le nombre d’objets cibles à prélever cette fois, l’ID de l’arête ou du coin du préhenseur à aspiration, le décalage du TCP, l’orientation du groupe d’objets cibles, l’orientation de l’objet cible, et les dimensions du groupe d’objets cibles.

    Nom Description Nombre d’éléments

    Étiquettes des objets cibles prélevés

    Une étiquette se compose de 10 entiers. La valeur par défaut est dix 0.

    10

    Nombre d’objets cibles prélevés

    Le nombre total d’objets cibles prélevés.

    1

    Le nombre d’objets cibles à prélever cette fois.

    Le nombre d’objets cibles à prélever cette fois.

    1

    ID de l’arête ou du coin du préhenseur à aspiration

    L’ID de l’arête ou du coin utilisé pour prélever les objets cibles cette fois.

    1

    Décalage du TCP

    Le décalage XYZ entre le centre du groupe d’objets cibles et le centre de la pose de l’outil.

    3

    Orientation du groupe d’objets cibles

    La position relative entre le groupe d’objets cibles et la longueur du préhenseur à aspiration. La valeur est 0 ou 1, où 0 signifie parallèle et 1 vertical.

    1

    Orientation de l’objet cible

    La position relative entre la longueur d’un objet cible et celle du préhenseur à aspiration. La valeur est 0 ou 1, où 0 signifie parallèle et 1 vertical.

    1

    Dimensions du groupe d’objets cibles

    La longueur, la largeur et la hauteur du groupe d’objets cibles à prélever cette fois.

    3

    Éléments des données personnalisées

    Les données de tous les ports personnalisés d’un seul point de vision. Par exemple, les données produites par les ports de l’Étape Output sont présentées dans le tableau suivant. Les éléments des données personnalisées du premier point de vision sont [0, 0, 1] et [0, 0] ; et les éléments des données personnalisées du second point de vision sont [1, 0, 0] et [1, 1].

    Nom du port

    poses

    labels

    customData1

    customData2

    Données de sortie

    [

    [0, 0, 0, 1, 0, 0, 0],
    [0, 0, 0, 1, 0, 0, 0]

    ]

    [

    "0",
    "1"

    ]

    [

    [0, 0, 1],
    [1, 0, 0]

    ]

    [

    [0, 0],
    [1, 1]

    ]

    Premier point de vision

    [0, 0, 0, 1, 0, 0, 0]

    0

    [0, 0, 1]

    [0, 0]

    Deuxième point de vision

    [0, 0, 0, 1, 0, 0, 0]

    1

    [1, 0, 0]

    [1, 1]

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Si la commande a réussi à obtenir les données Vision Move depuis le projet Mech-Vision, le code d’état est 1103. Si la commande a réussi à obtenir les données Vision Move ou les données personnalisées depuis le projet Mech-Viz, le code d’état est 2100.

_pos_num

Ce paramètre stocke le nombre de points de passage renvoyés par le système de vision.

_vispos_idx

Ce paramètre indique le numéro de séquence du point de passage Vision Move (c.-à-d. le point de passage correspondant à l’Étape « Vision Move ») dans la trajectoire planifiée. Le type de données est num. Si la trajectoire ne contient pas de point de passage « Vision Move », la valeur de ce paramètre est 0.

Par exemple, si la trajectoire planifiée se compose des points de passage suivants : « Déplacement à point fixe_1 », « Déplacement à point fixe_2 », « Vision Move », « Déplacement à point fixe_3 », le numéro de séquence du point de passage Vision Move est 3.

Exemple

--input
mm_resource=0
mm_pos_type=4
--output
mm_status=0
mm_pos_num=0
mm_vispos_idx=0

......

mm_status,mm_pos_num,mm_vispos_idx=mm_get_plan_data(mm_resource,mm_pos_type,mm_socket_id)

Dans l’exemple ci-dessus, les données Vision Move ou les données personnalisées sont obtenues depuis le projet Mech-Viz. Le nombre de points de passage est stocké dans mm_pos_num, le numéro de séquence du point de passage Vision Move dans la trajectoire est stocké dans mm_vispos_idx, et le code d’état de la commande est stocké dans mm_status.

Stocker les données de Vision Move ou les données personnalisées

Commande

Cette commande stocke les données produites par l’Étape Vision Move ou le(s) port(s) personnalisé(s) de l’Étape Output dans les variables.

Séquence d’appel

Cette commande doit être appelée après Obtenir les données de Vision Move ou les données personnalisées.

Format de commande

mm_get_plan_pos(_idx, _pos) (lorsque _pos_type de leObtenir les données de Vision Move ou les données personnalisées est 2 ou 4)
mm_get_plan_jps(_idx, _jps) (lorsque _pos_type de le Obtenir les données de Vision Move ou les données personnalisées est 1 ou 3)

Paramètres d’entrée

_idx

Ce paramètre spécifie l’index du point de passage. Les données Vision Move ou les données personnalisées du point de passage correspondant à l’index sont stockées dans les variables. Les index commencent à 1.

Paramètres de sortie

_pos

Ce paramètre stocke les données TCP du point de passage correspondant à l’index. Ce paramètre est utilisé dans mm_get_plan_pos.

_jps

Ce paramètre stocke les positions articulaires du point de passage correspondant à l’index. Ce paramètre est utilisé dans mm_get_plan_jps.

_movetype

Ce paramètre stocke le type de mouvement du point de passage correspondant à l’index. 1 représente un mouvement articulé, et 2 représente un mouvement linéaire.

_toolnum

Ce paramètre stocke l’ID d’outil du point de passage correspondant à l’index. Une valeur de −1 signifie qu’aucun outil n’est utilisé.

_speed

Ce paramètre stocke la vitesse du point de passage correspondant à l’index.

mm_userdata

Ce paramètre stocke les données personnalisées du point de passage correspondant à l’index.

mm_plandata

Ce paramètre stocke les données Vision Move du point de passage correspondant à l’index.

Le contenu de mm_plandata est expliqué dans le tableau ci-dessous.

Données Description Variable

Étiquettes des objets cibles prélevés

Une étiquette se compose de 10 entiers. La valeur par défaut est dix 0.

mm_plandata[1~10]

Nombre d’objets cibles prélevés

Le nombre total d’objets cibles prélevés.

mm_plandata[11]

Le nombre d’objets cibles à prélever cette fois.

Le nombre d’objets cibles à prélever cette fois.

mm_plandata[12]

ID de l’arête ou du coin du préhenseur à aspiration

L’ID de l’arête ou du coin utilisé pour prélever les objets cibles cette fois.

mm_plandata[13]

Décalage du TCP

Le décalage XYZ entre le centre du groupe d’objets cibles et le centre de la pose de l’outil.

mm_plandata[14~16]

Orientation du groupe d’objets cibles

La position relative entre le groupe d’objets cibles et la longueur du préhenseur à aspiration. La valeur est 0 ou 1, où 0 signifie parallèle et 1 vertical.

mm_plandata[17]

Orientation de l’objet cible

La position relative entre la longueur d’un objet cible et celle du préhenseur à aspiration. La valeur est 0 ou 1, où 0 signifie parallèle et 1 vertical.

mm_plandata[18]

Dimensions du groupe d’objets cibles

La longueur, la largeur et la hauteur du groupe d’objets cibles à prélever cette fois.

mm_plandata[19~21]

Exemple

--input
mm_idx=1
--output
mm_jps={0,0,0,0,0,0}
mm_movetype=0
mm_toolnum=0
mm_speed=0
mm_userdata={}
mm_plandata={}

......

mm_jps,mm_movetype,mm_toolnum,mm_speed,mm_userdata,mm_plandata = mm_get_plan_jps(mm_idx)

Dans l’exemple ci-dessus, les positions articulaires, le type de mouvement, l’ID d’outil et la vitesse du premier point de passage sont stockés respectivement dans mm_jps, mm_movetype, mm_toolnum et mm_speed. Si le point de passage n’est pas un point de passage Vision Move, aucune donnée Vision Move n’est renvoyée ; si le point de passage est un point de passage Vision Move, les données Vision Move correspondantes sont stockées dans mm_plandata et les données personnalisées correspondantes sont stockées dans mm_userdata.

Obtenir un message depuis l’Étape Notify

Commande

Lorsque le projet Mech-Vision ou Mech-Viz exécute l’Étape Notify, le système de vision renvoie le message prédéfini dans l’Étape Notify.

Avant d’envoyer cette commande, effectuez les réglages suivants pour l’Étape Notify.

  • Pour une Étape Notify dans le projet Mech-Vision :

    1. Connectez l’Étape Notify au côté droit d’une autre Étape. L’Étape Output est utilisée dans l’exemple de l’image ci-dessous.

      notify 1
    2. Sélectionnez Trigger Control Flow Given Output dans le panneau de paramètres de l’Étape Output.

      notify 5
    3. Dans le panneau de paramètres de l’Étape Notify, saisissez Standard Interface Notify (la valeur ne peut pas être modifiée) pour Service Name. Saisissez un entier positif pour Message, par exemple, 1001.

      notify 2
  • Pour une Étape Notify dans le projet Mech-Viz :

    1. Connectez l’Étape Notify à une Étape appropriée dans le flux de travail.

      notify 3
    2. Dans le panneau de paramètres de l’Étape Notify, sélectionnez Standard Interface. Saisissez un entier positif pour Message, par exemple, 1000.

      notify 4

Séquence d’appel

Cette commande doit être appelée après Exécuter le projet Mech-Vision ou Exécuter le projet Mech-Viz.

Format de commande

mm_get_notify(_socket_id)

Paramètres d’entrée

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

_msg

Ce paramètre stocke le message provenant de l’Étape Notify. Seuls les messages entiers positifs sont actuellement pris en charge.

Lorsque l’Étape Notify est exécutée dans le projet Mech-Vision ou Mech-Viz, le message reste dans le tampon du système de vision pendant seulement trois secondes. Par conséquent, vous devez tenir compte du moment de l’appel de cette commande pour garantir la récupération réussie du message.

Exemple

--output
mm_msg=0

......

mm_msg=mm_get_notify(mm_socket_id)

Dans l’exemple ci-dessus, le message obtenu depuis l’Étape Notify est stocké dans mm_msg.

Calibration

Commande

Cette commande est utilisée pour la calibration main-œil du robot (calibration des paramètres extrinsèques). Cette commande doit être utilisée conjointement avec le réglage Camera Calibration pour compléter la calibration automatique. Vous pouvez trouver Camera Calibration dans la barre d’outils de Mech-Vision. Pour plus d’informations, voir CGXi Étalonnage automatique.

Format de commande

mm_calib(_movetype,_waittime,_socket_id)

Paramètres d’entrée

_movetype

Ce paramètre spécifie le type de mouvement du robot. Valeurs valides : 1 et 2.

  • 1 : Mouvement linéaire (MOVEL)

  • 2 : Mouvement articulé (MOVEJ)

_waittime

Ce paramètre spécifie le temps d’attente du robot afin d’éviter les tremblements après s’être déplacé vers le point de calibration. La valeur par défaut est 2 (s).

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Exemple

--input
mm_movetype=2
mm_waittime=2

......

mm_calib(mm_movetype,mm_waittime,mm_socket_id)

Dans l’exemple ci-dessus, le robot se déplace vers le point de calibration en fonction des positions articulaires du robot, puis attend 2 secondes.

Obtenir l’état du projet

Commande

Cette commande vérifie si le projet Mech-Vision est prêt.

Format de commande

mm_get_status(_socket_id)

Paramètres d’entrée

_socket_id

Ce paramètre spécifie l’ID de socket côté robot. La valeur par défaut est 8, et l’intervalle valide est de 2 à 23.

Paramètres de sortie

g_mm_status

Ce paramètre indique le nom de la variable servant à stocker le code d’état d’exécution de la commande. Le code d’état 1101 est renvoyé pour une exécution réussie de la commande, indiquant que le projet Mech-Vision est prêt. Si l’exécution d’une commande échoue, un code d’erreur spécifique est renvoyé. Pour plus de détails, voir Codes d’état et dépannage.

Exemple

--output
mm_status=0

......

mm_status=mm_get_status(mm_socket_id)

Dans l’exemple ci-dessus, le projet Mech-Vision est vérifié pour savoir s’il est prêt, et le code d’état de la commande est stocké dans mm_status.

Cette page est-elle utile ?

Veuillez nous indiquer comment améliorer :

Nous accordons de l’importance à votre vie privée

Nous utilisons des cookies pour vous offrir la meilleure expérience possible sur notre site web. En continuant à utiliser le site, vous reconnaissez accepter l’utilisation des cookies. Si vous refusez, un cookie unique sera utilisé pour garantir que vous ne soyez pas suivi ou reconnu lors de votre visite sur ce site.