KUKA 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 KUKA 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

Précautions

  • Lors de la programmation d’un robot KUKA, veuillez noter les éléments suivants:

    • Les paramètres dans la liste des paramètres d’une commande doivent être séparés par des virgules (,).

    • Les paramètres de type variable d’une commande doivent utiliser des variables locales et ne prennent effet que dans la commande.

    • Les paramètres d’entrée et de sortie peuvent être personnalisés dans les commandes.

  • 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.

    Le robot peut obtenir jusqu’à 100 points de vision ou points de passage depuis le système de vision.

Initialisation de la communication

Commande

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

Format de la commande

MM_Init_Socket(XML_Name,Alive_Flag,Recv_Flag,Time_Out)

Paramètres d’entrée

XML_Name

Le nom, de type chaîne, du fichier de configuration réseau. Le nom est sensible à la casse. Dans cet exemple, le fichier de configuration réseau est XML_Kuka_MMIND.xml. Le fichier est chargé sur le robot lors de configuration de la communication. Le contenu du fichier est le suivant:

<ETHERNETKRL>
	<CONFIGURATION>
		<EXTERNAL>
			<IP>192.168.1.121</IP>
            <PORT>50000</PORT>
		</EXTERNAL>
		<INTERNAL>
			<ALIVE Set_Flag="873"/>
		</INTERNAL>
	</CONFIGURATION>
	<RECEIVE>
      <RAW>
         <ELEMENT Tag="MMRecv" Type="BYTE" Set_Flag="871" Size="660" />
      </RAW>
	</RECEIVE>
	<SEND>
      <RAW>
         <ELEMENT Tag="MMSend" Type="BYTE" Size="660"/>
      </RAW>
	</SEND>
</ETHERNETKRL>

Dans ce fichier, vous devez vérifier que l’adresse IP de l’IPC est indiquée après la balise <IP> et que le numéro de port hôte utilisé pour la communication du robot est indiqué après la balise <PORT>. Vous pouvez cliquer sur Configuration de la communication du robot dans la barre d’outils de Mech-Vision pour définir les configurations de communication du robot.

Alive_Flag

La valeur de Set_Flag dans la balise <ALIVE> du fichier XML_Kuka_MMIND.xml. Dans l’exemple ci-dessus, la valeur doit être 873. Le signal correspondant à 873 est ON. Ce signal indique que le système de vision et le robot sont connectés.

Recv_Flag

La valeur de Set_Flag dans la balise <RECEIVE> du fichier XML_Kuka_MMIND.xml. Dans l’exemple ci-dessus, la valeur doit être 871. Le signal correspondant à 871 est ON. Ce signal indique que le robot a reçu les données envoyées par le système de vision.

Time_Out

Ce paramètre spécifie la durée de temporisation de la communication. Unité : secondes.

Exemple

MM_Init_Socket(“XML_Kuka_MMIND”,873,871,60)

Cet exemple indique que la communication TCP est établie entre le système de vision et le robot en utilisant les informations de configuration du fichier XML_Kuka_MMIND.xml.

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 : 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.

Séquence d’appel

Format de la commande

MM_Start_Vis(Job,Pos_Num_Need,SendPos_Type,MM_J)

Paramètres d’entrée

Job

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet The data type is INT. 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 spécifie le nombre attendu de points de vision ou de points de passage à obtenir du projet Mech-Vision. The data type is INT. Plage de valeurs : 0 jusqu’au plus grand entier positif.

Si le projet Mech-Vision a une étape de planification de chemin (Path Planning Step), 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 sortis par le projet Mech-Vision est inférieur à la valeur du paramètre, cette commande obtiendra le nombre de tous les points de vision ou de points de passage.

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

set number

SendPos_Type

Ce paramètre spécifie la manière dont la pose réelle du robot est envoyée au projet Mech-Vision. The data type is INT. Valeurs valides : 0, 1, 2, et 3. Le tableau suivant 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 Path Planning est utilisée dans le projet Mech-Vision, le point de départ du chemin planifié sera le point Home défini dans l’outil de planification de chemin.

Ce réglage doit être utilisé si la caméra est montée en mode œil à main (eye to hand) et si le projet ne nécessite pas une capture préalable des images.

1

Les positions articulaires actuelles et la pose de bride du robot doivent être saisies dans le projet Mech-Vision.

Ce réglage doit être utilisé lorsque la caméra est montée en mode œil dans la main (eye in hand).

Ce réglage est recommandé pour la plupart des scénarios, sauf ceux impliquant des robots portiques.

2

La pose de bride du robot doit être saisie dans le 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 Path Planning du projet Mech-Vision comme point de départ, où le robot se déplacera de ce point de départ jusqu’au premier point de passage du chemin planifié.

Ce réglage doit être utilisé si la caméra est montée en mode œil à main (eye to hand) et si le projet nécessite une capture préalable des images.

  • Les positions articulaires envoyées par le robot au projet Mech-Vision sont utilisées comme point de départ de l’étape Path Planning.

  • La pose de bride envoyée par le robot au projet Mech-Vision est utilisée pour calculer la position de la caméra dans les scénarios œil dans la main. Dans ces scénarios, la caméra est installée sur la main du robot. Ainsi, Mech-Vision doit obtenir la pose de bride du robot actuel pour calculer la pose de la caméra.

MM_J

Ce paramètre spécifie les positions articulaires personnalisées. The data type is E6AXIS.

  • Si SendPos_Type est réglé sur 3, les positions articulaires seront envoyées à l’étape Path Planning du projet Mech-Vision comme point de départ, où le robot se déplace de ce point de départ jusqu’au premier point de passage du chemin planifié.

  • Si SendPos_Type est réglé sur une valeur différente de 3, les positions articulaires n’ont pas d’utilité pratique mais doivent être définies.

Exemple

MM_Start_Vis(1,1,1,MM_J)

Dans l’exemple précédent, le projet Mech-Vision dont l’ID est 1 est exécuté, et un point de vision est attendu en sortie du projet Mech-Vision. En même temps, le robot envoie les données de positions articulaires actuelles et de pose de bride au projet Mech-Vision. Dans cet exemple, MM_J 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 Object Center Points, l’étape Output convertira les points centraux de l’objet en points de prise correspondants. Par conséquent, les poses d’objets obtenues en exécutant cette commande sont en réalité des poses de points de prise, et non des poses de points centraux d’objets.
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 le chemin planifié (TCP) pour accéder aux données de pose.

Format de la commande

MM_Get_VisData(Job,Pos_Num,MM_Status)

Paramètres d’entrée

Job

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

Paramètres de sortie

Pos_Num

Ce paramètre stocke le nombre de points de vision renvoyés par Mech-Vision. The data type is INT.

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état est 1100. 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 vis time

Exemple

MM_Get_VisData(1,PoseNum,MMStatus)

Dans l’exemple précédent, 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 PoseNum, et le code d’état d’exécution de la commande est stocké dans MMStatus.

Stocker le résultat de vision ou le chemin planifié (TCP)

Commande

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

Format de la commande

MM_Get_Pose(Serial,MM_P,MM_Label,MM_ToolId)

Paramètres d’entrée

Serial

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

Paramètres de sortie

MM_P

Ce paramètre stocke le TCP du point de vision ou du point de passage correspondant à l’index. The data type is E6POS.

MM_Label

Ce paramètre stocke l’étiquette du point de vision ou du point de passage correspondant à l’index. The data type is INT.

MM_ToolId

Ce paramètre stocke l’ID de l’outil du point de vision ou du point de passage correspondant à l’index. The data type is INT.

Exemple

MM_Get_Pose(1,TcpPose1,Label1,ToolId1)

Dans l’exemple précédent, le TCP du premier point de vision ou point de passage est stocké dans TcpPose1, l’étiquette est stockée dans Label1, et l’ID de l’outil est stocké dans ToolId1.

Stocker le chemin planifié (positions articulaires)

Commande

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

Format de la commande

MM_Get_Jps(Serial,MM_J,MM_Label,MM_ToolId)

Paramètres d’entrée

Serial

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

Paramètres de sortie

MM_J

Ce paramètre stocke les positions articulaires du point de passage correspondant à l’index. The data type is E6AXIS.

MM_Label

Ce paramètre stocke l’étiquette du point de passage correspondant à l’index. The data type is INT.

MM_ToolId

Ce paramètre stocke l’ID de l’outil du point de passage correspondant à l’index. The data type is INT.

Exemple

MM_Get_Jps(1,JpsPose1,Label1,ToolId1)

Dans l’exemple précédent, les positions articulaires du premier point de passage sont stockées dans JpsPose1, l’étiquette est stockée dans Label1, et l’ID de l’outil est stocké dans ToolId1.

Basculer la recette de paramètres 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, voir 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 la commande

MM_Switch_Model(Job,Model_Number)

Paramètres d’entrée

Job

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet The data type is INT. 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_Number

Ce paramètre spécifie l’ID de la recette de paramètres dans le projet Mech-Vision. The data type is INT. Pour savoir comment afficher l’ID de la recette de paramètres, voir Afficher l’ID de la recette de paramètres.

Exemple

MM_Switch_Model(1,1)

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

Obtenir le chemin planifié dans Mech-Vision

Commande

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

Réglez le paramètre Port Type de l’étape Output dans Mech-Vision sur Prédefini (chemin 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 le chemin planifié (TCP) ou Stocker le chemin planifié (positions articulaires) pour accéder aux données de pose.

Format de la commande

MM_Get_Vispath(Job,Jps_Pos,Pos_Num,VisPos_Num,MM_Status)

Paramètres d’entrée

Job

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

Jps_Pos

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

Paramètres de sortie

Pos_Num

Ce paramètre stocke le nombre de points de passage renvoyés par le système de vision. The data type is INT. Par défaut, le système de vision peut envoyer au maximum 20 points de passage. Ainsi, 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 le chemin planifié dans Mech-Vision, définissez Pos_Num_Need de Exécuter le projet Mech-Vision sur 0 pour réduire le nombre d’appels à Obtenir le chemin planifié 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 le chemin planifié dans Mech-Vision. Vous devez appeler la commande 105 plusieurs fois pour obtenir tous les points de passage.

VisPos_Num

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. The data type is INT. 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.

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état 1103 est renvoyé. 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 vis time

Exemple

MM_Get_Vispath(2,2,PosNum,Vis_Index,StatusCode)

Dans l’exemple précédent, le chemin planifié du projet Mech-Vision n° 2 est renvoyé, les points de passage du chemin sont stockés au format TCP, le nombre de points de passage est stocké dans PosNum, le numéro de séquence du point de passage Vision Move dans le chemin planifié est stocké dans Vis_Index, et le code d’état d’exécution de la commande est stocké dans StatusCode.

Obtenir les données personnalisées Mech-Vision

Commande

Cette commande obtient des données depuis le(s) 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 Mech-Vision pour accéder aux données personnalisées.

Format de la commande

MM_Get_Dy_Data(Job,Pos_Num,MM_Status)

Paramètres d’entrée

Job

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

Paramètres de sortie

Pos_Num

Ce paramètre stocke le nombre de points de vision renvoyés par Mech-Vision. The data type is INT.

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état est 1100. 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

MM_Get_Dy_Data(2,PosNum,StatusCode)

Dans l’exemple précédent, les données personnalisées du projet Mech-Vision n° 2 sont obtenues, le nombre de points de vision est stocké dans PoseNum, et le code d’état de la commande est stocké dans StatusCode.

Stocker les données personnalisées Mech-Vision

Commande

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

Séquence d’appel

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

Format de la commande

MM_Get_DyPose(Serial,MM_P,MM_Label)

Paramètres d’entrée

Serial

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. The data type is INT. Les index commencent à 1.

Paramètres de sortie

MM_P

Ce paramètre stocke le TCP du point de vision correspondant à l’index. The data type is E6POS.

MM_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é. The data type is REAL.

MM_UserData

Ce paramètre stocke les données personnalisées du point de vision correspondant à l’index spécifié. Le paramètre est une variable de tableau global prédéfinie. The data type is REAL.

Exemple

MM_Get_DyPose(2,MM_P_VISION,MM_Label)

Dans l’exemple précédent, le TCP du deuxième point de vision est stocké dans MM_P_VISION, 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 le tableau global MM_UserData.

Obtenir la liste DO du gripper

Commande

Cette commande obtient la liste des signaux de commande pour le gripper à vide multi-sections depuis le projet Mech-Vision ou Mech-Viz. Le robot applique les signaux DO obtenus par Définir la liste DO du gripper comme outil.

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 Path Planning, cliquez sur Assistant de configuration. Dans Configuration globale, activez Dépalettisation de boîtes.

      vision move vis
    • Dans l’étape Path Planning, cliquez sur Assistant de configuration, puis double-cliquez sur le nom de l’outil du robot. Dans la fenêtre contextuelle, sélectionnez Gripper à vide pour dépalettisation pour Type d’outil, cliquez sur Configurer le gripper à vide pour dépalettisation, puis configurez les signaux DO selon les besoins.

      sucker vis
  • Configurer le projet Mech-Viz

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

      vision move viz
    • Dans Mech-Viz, double-cliquez sur le nom de l’outil, sélectionnez Gripper à vide pour dépalettisation pour Type d’outil, cliquez sur Configurer le gripper à vide pour dépalettisation, puis configurez les valeurs des signaux DO selon les besoins.

      sucker viz

Séquence d’appel

Format de la commande

MM_Get_DoList(Resource,BlockNum)

Paramètres d’entrée

Resource

Ce paramètre spécifie la source de la liste de signaux DO. The data type is INT. Plage de valeurs : 0 jusqu’au plus grand entier positif.

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

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

BlockNum

Ce paramètre spécifie le nombre de sections du gripper spécifiées dans l’outil de configuration du gripper. Par exemple, le nombre de sections du gripper dans l’image ci-dessus est 3.

Les signaux DO renvoyés par cette commande varient en fonction du projet déployé.

  • Signaux DO du gripper planifiés par le projet Mech-Vision

    • Dans Configuration globale de l’outil de planification de chemin, si Plan all vision results est désactivé, cette commande renvoie 64 signaux DO du gripper qui sont planifiés pour ce tour. Les signaux DO valides sont des entiers non négatifs allant de 0 à 999. Les signaux DO invalides sont -1, qui servent d’espace réservé.

      plan all vis off

      Par exemple, les signaux DO valides dans le tableau ci-dessous sont 1, 3, 5 et 6, ce qui signifie que le robot réglera les valeurs de 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

    • Dans Configuration globale de l’outil de planification de chemin, si Plan all vision results est activé, Mech-Vision peut effectuer plusieurs tours de planification à partir du même résultat de vision. Les 64 signaux DO du gripper renvoyés par cette commande sont obtenus pendant tous les tours de planification. Dans ce cas, vous pouvez utiliser le nombre de sections du gripper à vide pour différencier les signaux DO du gripper obtenus pendant chaque tour de planification.

      plan all vis on

      Par exemple, si le nombre de sections du gripper à vide est 4 et que la commande renvoie 64 signaux DO au total, chaque groupe de 4 signaux DO correspond aux signaux du gripper à vide obtenus pendant chaque tour de planification.

      Premier tour de planification

      Deuxième tour de planification

      16e tour de planification

      1er

      2e

      3e

      4e

      5e

      6e

      7e

      8e

      61e

      62e

      63e

      64e

      1

      3

      4

      -1

      1

      4

      -1

      -1

      -1

      -1

      -1

      -1

  • Signaux DO du gripper planifiés par le projet Mech-Viz

    • Si Reuse Vision Result n’est pas sélectionné pour l’étape Vision Move, cette commande renvoie 64 signaux DO du gripper qui sont planifiés pendant ce tour. Les signaux DO valides sont des entiers non négatifs allant de 0 à 999. Les signaux DO invalides sont -1, qui servent d’espace réservé.

      vision move off

      Par exemple, les signaux DO valides dans le tableau ci-dessous sont 1, 3, 5 et 6, ce qui signifie que le robot réglera les valeurs de 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

    • Si Reuse Vision Result est sélectionné pour l’étape Vision Move et que l’étape Vision Move est utilisée dans une boucle, Mech-Viz peut effectuer plusieurs tours de planification à partir du même résultat de vision. Les 64 signaux DO du gripper renvoyés par cette commande sont obtenus pendant tous les tours de planification. Dans ce cas, vous pouvez utiliser le nombre de sections du gripper à vide pour différencier les signaux DO du gripper obtenus pendant chaque tour de planification.

      vision move on

      Par exemple, si le nombre de sections du gripper à vide est 4 et que la commande renvoie 64 signaux DO au total, chaque groupe de 4 signaux DO correspond aux signaux du gripper à vide obtenus pendant chaque tour de planification.

      Premier tour de planification

      Deuxième tour de planification

      16e tour de planification

      1er

      2e

      3e

      4e

      5e

      6e

      7e

      8e

      61e

      62e

      63e

      64e

      1

      3

      4

      -1

      1

      4

      -1

      -1

      -1

      -1

      -1

      -1

Exemple

MM_Get_DoList(0,1)

Cet exemple obtient la liste des signaux DO depuis Mech-Viz et la stocke dans la mémoire du robot.

Définir la liste DO du gripper

Commande

Cette commande applique les signaux DO du gripper obtenus comme outil.

Séquence d’appel

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

Format de la commande

MM_Set_DoList(LoopIndex)

Paramètres d’entrée

LoopIndex

Ce paramètre spécifie le tour de planification pour lequel les signaux DO du gripper sont définis.

Exemple

MM_Get_DoList(0,1)
...
MM_Set_DoList(1)

L’exemple ci-dessus indique que le robot récupère d’abord les signaux DO depuis Mech-Viz, puis, après s’être déplacé vers le point de passage Vision Move, appelle la commande Set Gripper DO List pour régler sur ON les signaux DO correspondants du gripper.

Exécuter le projet Mech-Viz

Commande

Cette commande déclenche l’exécution du projet Mech-Viz. Mech-Viz planifie le chemin de mouvement du robot sur la base du résultat de vision sorti 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 Mech-Viz ou Définir le paramètre d’étape Mech-Viz avant d’appeler Exécuter le projet Mech-Viz.

Format de la commande

MM_Start_Viz(SendPos_Type,MM_J)

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. The data type is INT.

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éplacera de la position Home définie au premier point de passage.

Ce réglage est recommandé lorsque la caméra est montée en mode œil à main (eye to hand).

1

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

Ce réglage est recommandé lorsque la caméra est montée en mode œil dans la main (eye in hand).

2

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

Ce réglage est recommandé lorsque la caméra est montée en mode œil à main (eye to hand).

Pourquoi le type de pose robot 2 est recommandé lorsque la caméra est montée en mode œil à main ?

En mode œil à main, la caméra peut effectuer la capture d’images pour le prochain tour de planification de chemin avant que le robot ne retourne dans la région de capture d’images et de prise, réduisant ainsi le temps de cycle. L’image ci-dessous montre le fonctionnement du robot dans la zone de 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 une inadéquation entre les chemins du robot réel et du robot simulé. Cette inadéquation peut potentiellement entraîner des risques de sécurité imprévus, en particulier si une collision est détectée dans le chemin du robot simulé.

D’un autre côté, si SendPos_Type est réglé sur 2, le robot enverra à Mech-Viz la pose de capture d’image définie par enseignement. Ainsi, le robot réel peut déclencher le prochain tour de planification de chemin dans Mech-Viz lorsque le robot réel se trouve dans la région de capture d’images et le temps de cycle peut être raccourci.

En conclusion, le type de pose robot doit être réglé sur 2 pour les projets en mode œil à main.

robot example

MM_J

Ce paramètre spécifie les positions articulaires personnalisées. The data type is E6AXIS.

  • Si 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 jusqu’au premier point de passage du chemin planifié.

  • Si SendPos_Type est réglé sur une valeur différente de 2, les positions articulaires n’ont pas d’utilité pratique mais doivent être définies.

Exemple

MM_Start_Viz(1,MM_J)

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

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 spécifie 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 la commande

MM_Set_Branch(Branch_Num,Export_Num)

Paramètres d’entrée

Branch_Num

Ce paramètre spécifie l’ID de l’étape Branch by Msg. The data type is INT. La valeur est un entier positif. L’ID de l’étape est affiché dans le panneau des paramètres de l’étape. Par exemple, l’ID de l’étape dans l’image ci-dessus est 1.

Export_Num

Ce paramètre spécifie l’ID du port de sortie de l’étape Branch by Msg. The data type is INT. La valeur est un entier positif. Lorsque la valeur du paramètre est réglée sur N, le projet Mech-Viz sort par le port dont l’ID est N-1 de l’étape Branch by Msg.

Exemple

MM_Set_Branch(1,3)

Dans l’exemple précédent, 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 Current Index des étapes de type index. Les étapes qui incluent la section Index comprennent 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 cet ordre : 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 de s’assurer que Mech-Viz a suffisamment de temps pour définir la valeur Current Index.

Format de la commande

MM_Set_Index(Skill_Num,Index_Num)

Paramètres d’entrée

Skill_Num

Ce paramètre spécifie l’ID de l’étape de type index. The data type is INT. La valeur est un entier positif. L’ID de l’étape est affiché dans le panneau des paramètres de l’étape. Par exemple, l’ID de l’étape dans l’image ci-dessus est 3.

Index_Num

Ce paramètre spécifie l’index actuel pour une étape de type index. The data type is INT. La valeur est un entier positif. Lorsque la valeur de ce paramètre est réglée sur N, l’index actuel de l’étape correspondante est N-1.

Exemple

MM_Set_Index(2,10)

Dans l’exemple précédent, l’index actuel de l’étape avec un ID de 2 du projet Mech-Viz est 9.

Obtenir le chemin planifié dans Mech-Viz

Commande

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

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.

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 le chemin planifié (TCP) ou Stocker le chemin planifié (positions articulaires) pour accéder aux données de pose.

Format de la commande

MM_Get_VizData(Jps_Pos,Pos_Num,VisPos_Num,MM_Status)

Paramètres d’entrée

Jps_Pos

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

Paramètres de sortie

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 n’envoie pas plus de 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_Num

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. The data type is INT. 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.

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état est 2100. 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

Exemple

MM_Get_VizData(2,PosNum,VisIndex,StatusCode)

Dans l’exemple précédent, le chemin planifié du projet Mech-Viz est obtenu, le type de pose des points de passage est TCP, le nombre de points de passage est stocké dans PosNum, le numéro de séquence du point de passage Vision Move dans le chemin planifié est stocké dans VisIndex, et le code d’état de la commande est stocké dans StatusCode.

Obtenir les données Vision Move ou 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 commande 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 sorties par l’étape Vision Move dans l’outil de planification de chemin, auquel vous pouvez accéder depuis l’étape Path Planning. Les données Vision Move incluent les étiquettes des objets cibles pris, le nombre d’objets cibles pris, le nombre d’objets cibles à prendre cette fois, l’ID du bord ou du coin du gripper à vide, l’offset 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 sorties par l’étape Vision Move dans Mech-Viz, incluant les étiquettes des objets cibles pris, le nombre d’objets cibles pris, le nombre d’objets cibles à prendre cette fois, l’ID du bord ou du coin du gripper à vide, l’offset 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 sorties 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 Vision Move ou personnalisées pour accéder aux données Vision Move ou aux données personnalisées.

Format de la commande

MM_Get_PlanData(Resource,Jps_Pos,Pos_Num,VisPos_Num,MM_Status)

Paramètres d’entrée

Resource

Ce paramètre spécifie la source des données planifiées Vision Move. The data type is INT. Plage de valeurs : 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.

Jps_Pos

Ce paramètre spécifie le format des données de retour attendu. The data type is INT.

  • Si Resource est réglé sur 0, la plage de valeurs valides de Jps_Pos est de 1 à 4.

    Valeur du paramètre de Jps_Pos

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

    Type de point de passage

    Données retournées

    1

    Point de passage hors Vision Move

    Pose (JPs), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

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

    2

    Point de passage hors Vision Move

    Pose (TCP), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

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

    3

    Point de passage hors Vision Move

    Pose (JPs), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

    Pose (positions articulaires), type de mouvement, ID de l’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

    Point de passage hors Vision Move

    Pose (TCP), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

    Pose (TCP), type de mouvement, ID de l’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

  • Si Resource est réglé sur un entier positif, Jps_Pos peut être réglé sur 1 à 2.

    Valeur du paramètre de Jps_Pos

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

    Type de point de passage

    Données retournées

    1

    Point de passage hors Vision Move

    Pose (JPs), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

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

    2

    Point de passage hors Vision Move

    Pose (TCP), type de mouvement, ID de l’outil, vitesse

    Point de passage Vision Move

    Pose (TCP), type de mouvement, ID de l’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 un 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 articulaire (MOVEJ)

  • 2 : Mouvement linéaire (MOVEL)

ID de l’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 de Simulation Speed dans l’outil de planification de chemin, sous forme de pourcentage.

  • Pour les projets Mech-Viz, la vitesse, représenté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 sorties par l’étape Vision Move dans Mech-Vision ou Mech-Viz, incluant les étiquettes des objets cibles pris, le nombre d’objets cibles pris, le nombre d’objets cibles à prendre cette fois, l’ID du bord ou du coin du gripper à vide, l’offset 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 pris

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

10

Nombre d’objets cibles pris

Le nombre total d’objets cibles pris.

1

Nombre d’objets cibles à prendre cette fois

Le nombre d’objets cibles à prendre cette fois.

1

ID du bord ou du coin du gripper à vide

L’ID du bord ou du coin utilisé pour prendre les objets cibles cette fois.

1

Offset 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 gripper à vide. 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 gripper à vide. 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 à prendre 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 de sortie des ports de l’étape Output sont présentées dans le tableau ci-dessous. Les éléments de données personnalisées du premier point de vision sont [0, 0, 1] et [0, 0] ; et les éléments de données personnalisées du deuxième 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]

Paramètres de sortie

Pos_Num

Ce paramètre stocke le nombre de points de passage renvoyés par le système de vision. The data type is INT.

VisPos_Num

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

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

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande a réussi à obtenir les données planifiées Vision Move du 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. 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

MM_Get_PlanData(0,4,PosNum,VisIndex,StatusCode)

Dans l’exemple précédent, 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 PoseNum, le numéro de séquence du point de passage Vision Move dans le chemin est stocké dans VisIndex, et le code d’état de la commande est stocké dans StatusCode.

Stocker les données Vision Move ou personnalisées

Commande

Après avoir appelé la commande Obtenir les données Vision Move ou personnalisées, cette commande est utilisée pour enregistrer les données du point de passage dans des variables spécifiées.

Séquence d’appel

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

Format de la commande

Sélectionnez différentes commandes en fonction de la valeur Jps_Pos dans la commande Obtenir les données Vision Move ou personnalisées.

MM_Get_PlanPose(Serial:IN,Jps_Pos:IN,MM_P:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT) (Lorsque la valeur de Jps_Pos est 2 ou 4)
MM_Get_PlanJps(Serial:IN,Jps_Pos:IN,MM_J:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT)  (Lorsque la valeur de Jps_Pos est 1 ou 3)

Paramètres d’entrée

Serial

Ce paramètre spécifie l’index du point de passage. Les données du point de passage correspondant à l’index sont stockées dans les variables. The data type is INT. Les index commencent à 1.

Jps_Pos

Ce paramètre doit être réglé identique à la valeur Jps_Pos dans la commande Obtenir les données Vision Move ou personnalisées. The data type is INT.

Paramètres de sortie

MM_P

Ce paramètre stocke les données TCP du point de passage correspondant à l’index. Ce paramètre est utilisé dans MM_Get_PlanPose. The data type is E6POS.

MM_J

Ce paramètre stocke les positions articulaires du point de passage correspondant à l’index. Ce paramètre est utilisé dans MM_Get_PlanJps. The data type is E6AXIS.

MM_MoveType

Ce paramètre stocke le type de mouvement du point de passage correspondant à l’index. The data type is INT. Une valeur de 1 indique un mouvement articulaire, et une valeur de 2 indique un mouvement linéaire.

MM_ToolNum

Ce paramètre stocke l’ID de l’outil du point de passage correspondant à l’index. The data type is INT. Si l’ID de l’outil est -1, aucun outil n’est utilisé.

MM_ToolId

Ce paramètre stocke la vitesse du point de passage correspondant à l’index. The data type is INT.

MM_UserData

Ce paramètre stocke les données personnalisées du point de passage correspondant à l’index. Le paramètre est une variable de tableau global prédéfinie. The data type is REAL.

MM_Plan_Results

Ce paramètre stocke les données Vision Move du point de passage correspondant à l’index. Le paramètre est une variable de tableau global prédéfinie. The data type is REAL.

Le tableau suivant décrit la variable de tableau MM_Plan_Results.

Valeur Description Variable

Étiquettes des objets cibles pris

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

MM_Plan_Results[1] ~ MM_Plan_Results[10]

Nombre d’objets cibles pris

Le nombre total d’objets cibles pris.

MM_Plan_Results[11]

Nombre d’objets cibles à prendre cette fois

Le nombre d’objets cibles à prendre cette fois.

MM_Plan_Results[12]

ID du bord ou du coin du gripper à vide

L’ID du bord ou du coin utilisé pour prendre les objets cibles cette fois.

MM_Plan_Results[13]

Offset TCP

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

MM_Plan_Results[14] ~ MM_Plan_Results[16]

Orientation du groupe d’objets cibles

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

MM_Plan_Results[17]

Orientation de l’objet cible

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

MM_Plan_Results[18]

Dimensions du groupe d’objets cibles

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

MM_Plan_Results[19] ~ MM_Plan_Results[21]

Exemple

  • Exemple 1 :

    MM_Get_PlanPose(2,4,TcpPose,MoveType,ToolNum,Speed)

    Dans l’exemple précédent, le TCP, le type de mouvement, l’ID de l’outil et la vitesse du deuxième point de passage sont stockés respectivement dans TcpPose, MoveType, ToolNum, et 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 le tableau global MM_Plan_Results et les données personnalisées correspondantes sont stockées dans le tableau global MM_UserData.

  • Exemple 2 :

    MM_Get_PlanJps(1,3,JpsPose,MoveType,ToolNum,Speed)

    Dans l’exemple précédent, les positions articulaires, le type de mouvement, l’ID de l’outil et la vitesse du premier point de passage sont stockés respectivement dans JpsPose, MoveType, ToolNum, et 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 le tableau global MM_Plan_Results et les données personnalisées correspondantes sont stockées dans le tableau global MM_UserData.

Lire le paramètre d’étape 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 la commande

MM_Get_Property(Get_Id,MM_Status,Viz_Prop)

Paramètres d’entrée

Get_Id

Ce paramètre correspond au champ Config ID défini dans le fichier property_config. The data type is INT.

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.

Paramètres de sortie

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état est 2109. 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

Ce paramètre stocke la valeur du paramètre de l’étape. The data type is REAL.

Exemple

Dans la ligne ci-dessous, 5 est le Config ID ; 3 est l’ID de l’é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.

MM_Get_Property(5,StatusCode,Viz_Prop)

Dans l’exemple précédent, la valeur du paramètre xCount de l’étape dont l’ID est 3 du projet Mech-Viz est stockée dans Viz_Prop, et le code d’état de la commande est stocké dans StatusCode.

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

Commande

Cette commande définit la valeur du 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 la commande

MM_Set_Property(Set_id,MM_Status)

Paramètres d’entrée

Set_Id

Ce paramètre correspond au champ Config ID défini dans le fichier property_config. The data type is INT.

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.

Paramètres de sortie

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, le code d’état est 2108. 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 le Config ID et 3 est l’ID de l’étape. xOffset, yOffset et zOffset sont des noms de clé de paramètre ; 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.

MM_Set_Property(1,StatusCode)

L’exemple précédent 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 StatusCode.

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

Commande

Cette commande saisit dynamiquement les dimensions de l’objet dans le projet Mech-Vision. Les dimensions de l’objet sont les valeurs des paramètres Box Size Settings dans l’étape Read Object Dimensions.

Lorsque vous utilisez cette commande, une seule étape Read Object Dimensions 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 la commande

MM_Set_BoxSize(Job,Length,Width,Height)

Paramètres d’entrée

Job

Identifiant du projet Mech-Vision. Vous pouvez consulter l’identifiant du projet d’un projet The data type is INT. 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, et Height

Les trois paramètres ci-dessus saisissent séquentiellement 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 Read Object Dimensions et définies pour les paramètres Length on X-axis, Length on Y-axis et Length on Z-axis. The data type is REAL.

Exemple

MM_Set_BoxSize(1,500,300,200)

Dans l’exemple précédent, la longueur, la largeur et la hauteur de l’objet de l’étape Read Object Dimensions dans le projet Mech-Vision sont respectivement de 500 mm, 300 mm et 200 mm.

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, complétez 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 des paramètres de l’étape Output.

      notify 5
    3. Dans le panneau des paramètres de l’étape Notify, saisissez Standard Interface Notify (valeur requise) 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 des 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 juste après Exécuter le projet Mech-Vision ou Exécuter le projet Mech-Viz.

Format de la commande

MM_Get_Notify(MM_Notify)

Paramètres de sortie

MM_Notify

Ce paramètre stocke le message de l’étape Notify. Seuls les messages sous forme d’entiers positifs sont pris en charge pour le moment. The data type is INT.

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 prendre en compte le moment d’appel de cette commande pour assurer une récupération réussie du message.

Exemple

MM_Get_Notify(Msg_1)

Dans l’exemple précédent, le message obtenu depuis l’étape Notify est stocké dans Msg_1.

Calibration

Commande

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

Format de la commande

MM_Calib(Move_Type,PosJps,WaitTime,E1)

Paramètres d’entrée

Move_Type

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

  • 1 : Mouvement linéaire (MOVEL)

  • 2 : Mouvement articulaire (MOVEJ)

PosJps

Ce paramètre spécifie le type de poses des points de calibrage à obtenir. Valeurs valides : 1 et 2.

  • 1 : TCP

  • 2 : Positions articulaires

WaitTime

Ce paramètre spécifie le temps d’attente du robot pour éviter les vibrations après s’être déplacé vers le point de calibrage. La valeur par défaut est 2 (s). The data type is INT.

E1

Ce paramètre spécifie les données d’axe externe. Unité : millimètres. S’il existe un 7e axe et qu’il est contrôlé par le robot sur site, ce paramètre doit être défini sur les données spécifiques d’axe externe. Sinon, ce paramètre doit être réglé sur 0.

Exemple

MM_Calib(2,1,2,0)

Dans l’exemple précédent, les données de pose du point de calibrage sont représentées en TCP. Le robot se déplace vers le point de calibrage en fonction des positions articulaires du robot puis attend 2 secondes.

Arrêter le projet Mech-Viz

Commande

Cette commande arrête le projet Mech-Viz.

Séquence d’appel

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

Format de la commande

MM_Stop_Viz()

Exemple

MM_Stop_Viz()

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

Obtenir l’état du projet

Commande

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

Format de la commande

MM_Get_Status(MM_Status)

Paramètres de sortie

MM_Status

Ce paramètre stocke le code d’état de cette commande. The data type is INT. Si la commande s’exécute correctement, un code d’état 1101 est renvoyé pour indiquer 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

MM_Get_Status(StatusCode)

Dans l’exemple précédent, il est vérifié si le projet Mech-Vision est prêt, et le code d’état de la commande est stocké dans StatusCode.

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.