Programme d’exemple 2: MM_S2_Viz_Basic
Présentation du programme
Description |
Le robot déclenche l’exécution du projet Mech-Viz, puis obtient la trajectoire planifiée pour la prise et la dépose. |
Chemin du fichier |
Vous pouvez accéder au répertoire d’installation de Mech-Vision et Mech-Viz et trouver le fichier en utilisant le chemin |
Projet |
Projets Mech-Vision et Mech-Viz |
Prérequis |
|
| Ce programme d’exemple est fourni à titre de référence uniquement. Avant d’utiliser le programme, veuillez le modifier en fonction du scénario réel. |
Description du programme
Cette partie décrit le programme d’exemple MM_S2_Viz_Basic.
1: !-------------------------------- ;
2: !FUNCTION: trigger Mech-Viz ;
3: !project and get planned path ;
4: !Mech-Mind, 2023-12-25 ;
5: !-------------------------------- ;
6: ;
7: !set current uframe NO. to 0 ;
8: UFRAME_NUM=0 ;
9: !set current tool NO. to 1 ;
10: UTOOL_NUM=1 ;
11: !move to robot home position ;
12:J P[1] 100% FINE ;
13: !initialize communication ;
14: !parameters(initialization is ;
15: !required only once) ;
16: CALL MM_INIT_SKT('8','127.0.0.1',50000,5) ;
17: !move to image-capturing position ;
18:L P[2] 1000mm/sec FINE ;
19: !trigger Mech-Viz project ;
20: CALL MM_START_VIZ(2,10) ;
21: !get planned path, 1st argument ;
22: !(1) means getting pose in JPs ;
23: CALL MM_GET_VIZ(1,51,52,53) ;
24: !check whether planned path has ;
25: !been got from Mech-Viz ;
26: !successfully ;
27: IF R[53]<>2100,JMP LBL[99] ;
28: !save waypoints of the planned ;
29: !path to local variables one ;
30: !by one ;
31: CALL MM_GET_JPS(1,60,70,80) ;
32: CALL MM_GET_JPS(2,61,71,81) ;
33: CALL MM_GET_JPS(3,62,72,82) ;
34: !follow the planned path to pick ;
35: !move to approach waypoint ;
36: !of picking ;
37:J PR[60] 50% FINE ;
38: !move to picking waypoint ;
39:J PR[61] 10% FINE ;
40: !add object grasping logic here, ;
41: !such as "DO[1]=ON" ;
42: PAUSE ;
43: !move to departure waypoint ;
44: !of picking ;
45:J PR[62] 50% FINE ;
46: !move to intermediate waypoint ;
47: !of placing ;
48:J P[3] 50% CNT100 ;
49: !move to approach waypoint ;
50: !of placing ;
51:L P[4] 1000mm/sec FINE Tool_Offset,PR[2] ;
52: !move to placing waypoint ;
53:L P[4] 300mm/sec FINE ;
54: !add object releasing logic here, ;
55: !such as "DO[1]=OFF" ;
56: PAUSE ;
57: !move to departure waypoint ;
58: !of placing ;
59:L P[4] 1000mm/sec FINE Tool_Offset,PR[2] ;
60: !move back to robot home position ;
61:J P[1] 100% FINE ;
62: END ;
63: ;
64: LBL[99:vision error] ;
65: !add error handling logic here ;
66: !according to different ;
67: !error codes ;
68: !e.g.: status=2038 means no ;
69: !point cloud in ROI ;
70: PAUSE ;
Le flux de travail correspondant au code du programme d’exemple ci-dessus est illustré dans la figure ci-dessous.
Le tableau ci-dessous explique le programme ci-dessus. Vous pouvez cliquer sur l’hyperlien du nom de commande pour en afficher la description détaillée.
| Fonctionnalité | Code et description | ||
|---|---|---|---|
Définir le repère de référence |
Les deux instructions ci-dessus définissent les repères utilisateur et outil sélectionnés. |
||
Aller à la position Home |
L’instruction entière indique que le robot se déplace vers la position Home enseignée en utilisant un mouvement articulé (Joint).
|
||
Initialiser les paramètres de communication |
L’instruction entière indique que le robot établit la connexion avec le système de vision en spécifiant l’adresse IP, le numéro de port et le délai d’expiration de la cible de communication (l’IPC) via la commande MM_INIT_SKT.
|
||
Aller à la position de capture d’image |
La commande entière indique que le robot se déplace vers la position de capture d’image en mouvement linéaire, avec une vitesse de 1000 mm/s.
|
||
Déclencher l’exécution du projet Mech-Viz |
L’instruction entière indique que le robot déclenche le système de vision pour exécuter le projet Mech-Viz, puis Mech-Viz planifie la trajectoire de prise du robot sur la base du résultat de vision fourni par Mech-Vision. |
||
Obtenir la trajectoire planifiée |
L’instruction entière indique que le robot obtient la trajectoire planifiée à partir du projet Mech-Viz.
L’instruction signifie que lorsque le code d’état dans R[53] est 2100, le robot a obtenu avec succès la trajectoire planifiée ; sinon, une exception est survenue dans le système de vision et le programme sautera à LBL[99] pour exécuter les instructions qui s’y trouvent. Le code suivant correspond à LBL[99].
Vous pouvez effectuer l’opération correspondante en fonction du code d’erreur spécifique. Dans ce programme d’exemple, tous les codes d’erreur sont traités de la même manière, en arrêtant l’exécution du programme à l’aide de la commande PAUSE. |
||
Stocker la trajectoire planifiée |
L’instruction entière “CALL MM_GET_JPS(1,60,70,80)” stocke les positions articulaires, l’étiquette et l’ID d’outil du premier point de passage dans les registres spécifiés.
|
||
Aller au point d’approche de la prise |
Le robot se déplace vers le point d’approche de la prise (la position représentée par PR[60]). |
||
Aller au point de prise |
Le robot se déplace vers le point de prise (la position représentée par PR[61]). |
||
Définir un DO pour effectuer la prise |
Après que le robot se soit déplacé vers le point de prise, vous pouvez définir une commande DO (telle que “DO[1]=ON”) pour contrôler le robot afin d’utiliser l’outil pour effectuer la prise. Veuillez définir les commandes DO en fonction de la situation réelle.
|
||
Aller au point de départ de la prise |
Le robot se déplace vers le point de départ de la prise (la position représentée par PR[62]). |
||
Aller au point intermédiaire |
L’instruction entière déplace le robot en mode articulé vers un certain point intermédiaire entre le point de départ de la prise et le point d’approche de la dépose.
|
||
Déplacer le robot vers le point d’approche de la dépose |
|
||
Aller au point de dépose |
Le robot se déplace du point d’approche de la dépose vers le point de dépose. |
||
Définir des commandes DO pour effectuer la dépose |
Après que le robot se soit déplacé vers le point de dépose, vous pouvez définir une commande DO (telle que “DO[1]=OFF”) pour contrôler le robot afin d’utiliser l’outil pour effectuer la dépose. Veuillez définir les commandes DO en fonction de la situation réelle.
|
||
Déplacer le robot vers le point de départ de la dépose |
Le robot se déplace vers une position au-dessus du point de dépose et atteint le point de départ de la dépose.
|
||
Revenir à la position Home |
Le robot se déplace du point de départ de la dépose vers la position Home à nouveau. |