CGXi Commandes d’interface standard
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.
Aperçu des commandes
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.
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.
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.
|
Séquence d’appel
-
Vous devez définir les paramètres des Étapes avant de démarrer un projet Mech-Vision. Par conséquent, appelez Basculer la recette de paramètres de Mech-Vision ou Renseigner les dimensions de l’objet dans le projet Mech-Vision avant d’appeler Exécuter le projet Mech-Vision.
-
Le système de vision n’obtient les points de vision et les points de passage que lorsque un projet Mech-Vision est en cours d’exécution. Par conséquent, appelez Exécuter le projet Mech-Vision avant d’appeler Obtenir le résultat de vision, Obtenir la trajectoire planifiée dans Mech-Vision ou Obtenir les données personnalisées de Mech-Vision.
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.
-
|
_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. |
-
Convertissez la représentation en quaternion de la pose de l’objet en angles d’Euler.
-
Faites pivoter la pose de l’objet autour de l’axe X de 180° pour orienter son axe Z vers le bas.
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 > dans la barre d’outils de Mech-Vision.
|
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)
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.
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.
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). |
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.
-
1: positions articulaires. Après avoir exécuté cette commande, exécutez Stocker la trajectoire planifiée (positions articulaires) pour accéder aux données de positions articulaires.
-
2: poses de l’outil. Après avoir exécuté cette commande, exécutez Stocker le résultat de vision ou la trajectoire planifiée (TCP) pour accéder aux données de pose de l’outil.
_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 > dans la barre d’outils de Mech-Vision. La limite supérieure est de 30.
| 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.
|
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
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. |
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).
_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
Séquence d’appel
Cette commande doit être appelée après Exécuter le projet Mech-Viz.
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.
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.
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.
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.
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 :
|
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.
-
1: positions articulaires. Après avoir exécuté cette commande, exécutez Stocker la trajectoire planifiée (positions articulaires) pour accéder aux données de positions articulaires.
-
2: poses de l’outil. Après avoir exécuté cette commande, exécutez Stocker le résultat de vision ou la trajectoire planifiée (TCP) pour accéder aux données de pose de l’outil.
_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 > dans la barre d’outils de Mech-Vision.
|
_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 > dans la barre d’outils de Mech-Vision. La limite supérieure est de 30.
_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 à . Cliquez sur Configuration des propriétés pour ouvrir le fichier 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. |
|
|
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
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 à . Cliquez sur Configuration des propriétés pour ouvrir le fichier 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. |
|
_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.
-
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.
-
-
Configurer le projet Mech-Viz
-
Dans l’Étape Vision Move de Mech-Viz, définissez Select Picking Method sur Box depalletizing.
-
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.
-
Séquence d’appel
-
Cette commande doit être appelée avant la commande Obtenir la trajectoire planifiée dans Mech-Vision, Obtenir la trajectoire planifiée dans Mech-Viz ou Obtenir les données de Vision Move ou les données personnalisées. Cela signifie que le robot doit obtenir la trajectoire de mouvement puis obtenir les signaux DO du préhenseur du point de passage Vision Move.
-
Cette commande doit être appelée avant Définir la liste DO du préhenseur.
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.
Définir la liste DO du préhenseur
Séquence d’appel
Cette commande doit être appelée après Obtenir la liste DO du préhenseur.
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.
-
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.
-
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.
-
-
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 :
-
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.
-
Sélectionnez Trigger Control Flow Given Output dans le panneau de paramètres de l’Étape Output.
-
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.
-
-
Pour une Étape Notify dans le projet Mech-Viz :
-
Connectez l’Étape Notify à une Étape appropriée dans le flux de travail.
-
Dans le panneau de paramètres de l’Étape Notify, sélectionnez Standard Interface. Saisissez un entier positif pour Message, par exemple, 1000.
-
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. |
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.
Obtenir l’état du projet
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.