Exemple de programme 5 : MM_S5_Viz_SetBranch
Présentation du programme
Description |
Le robot déclenche l’exécution du projet Mech-Viz, définit le port de sortie pour l’étape Branch by Msg dans le projet Mech-Viz, puis obtient le chemin planifié pour la prise et la dépose. |
||
Chemin de 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 uniquement à titre de référence. Avant d’utiliser le programme, veuillez le modifier selon le scénario réel. |
Description du programme
Cette partie décrit le programme d’exemple MM_S5_Viz_SetBranch.
| La seule différence entre le programme d’exemple MM_S5_Viz_SetBranch et le programme d’exemple MM_S2_Viz_Basic est que MM_S5_Viz_SetBranch peut définir le port de sortie de l’étape Branch by Msg dans le projet Mech-Viz (le code de cette fonctionnalité est en gras). Par conséquent, seule la fonctionnalité de définition du port de sortie de l’étape Branch by Msg est décrite dans la section suivante. Pour des informations sur les parties de MM_S5_Viz_SetBranch identiques à celles de MM_S2_Viz_Basic, voir Exemple de programme 2 : MM_S2_Viz_Basic. |
NOP
'--------------------------------
'FUNCTION: trigger Mech-Viz
'project then set branch and get
'planned path
'Mech-Mind, 2023-12-25
'--------------------------------
'clear I50 to I69
CLEAR I050 20
'initialize p variables
SUB P071 P071
SUB P072 P072
SUB P073 P073
'move to robot home position
MOVJ C00000 VJ=50.00
'initialize communication
'parameters (initialization is
'required only once)
CALL JOB:MM_INIT_SOCKET ARGF"192.168.170.22;50000;1"
'move to image-capturing position
MOVJ C00001 VJ=50.00 PL=0
'open socket connection
CALL JOB:MM_OPEN_SOCKET
'trigger Mech-Viz project
CALL JOB:MM_START_VIZ ARGF"2;30"
'set branch
CALL JOB:MM_SET_BRANCH ARGF"1;1"
'get planned path, 1st argument
'(1) means getting pose in JPs
CALL JOB:MM_GET_VIZDATA ARGF"1;51;52;53"
'check whether planned path has
'been got from Mech-Viz
'successfully
IFTHENEXP I053<>2100
'add error handling logic here
'according to different error
'codes
'e.g.: I053=2038 means no
'point cloud in ROI
PAUSE
ENDIF
'close socket connection
CALL JOB:MM_CLOSE_SOCKET
'save waypoints of the planned
'path to local variables one
'by one
CALL JOB:MM_GET_JPS ARGF"1;71;61;62"
CALL JOB:MM_GET_JPS ARGF"2;72;63;64"
CALL JOB:MM_GET_JPS ARGF"3;73;65;66"
'follow the planned path to pick
'move to approach waypoint of
'picking
MOVJ P071 VJ=50.00 PL=0
'move to picking waypoint
MOVJ P072 VJ=10.00 PL=0
'add object grasping logic here,
'such as DOUT OT#(1) ON
PAUSE
'move to departure waypoint of
'picking
MOVJ P073 VJ=50.00 PL=0
'move to intermediate waypoint of
'placing
MOVJ C00002 VJ=50.00
'move to approach waypoint of
'placing
MOVL C00003 V=166.6 PL=0
'move to placing waypoint
MOVL C00004 V=50.0 PL=0
'add object releasing logic here,
'such as DOUT OT#(1) OFF
PAUSE
'move to departure waypoint of
'placing
MOVL C00005 V=166.6 PL=0
'move back to robot home position
MOVJ C00006 VJ=50.00
END
Le flux de travail correspondant au code du programme d’exemple ci-dessus est illustré dans la figure ci-dessous.
Le tableau ci-dessous décrit le processus de définition du port de sortie de l’étape Branch by Msg dans le projet Mech-Viz. Vous pouvez cliquer sur le lien hypertexte du nom de la commande pour en afficher la description détaillée.
| Fonctionnalité | Code et description |
|---|---|
Définir le port de sortie pour l’étape Branch by Msg dans Mech-Viz |
Dans l’ensemble de l’instruction, le projet Mech-Viz avec un ID de 1 utilise le port 0 de l’étape Branch by Msg, comme illustré dans la figure suivante.
|