Programme d’exemple 7 : MM_S7_Viz_SwitchTCP
Introduction du programme
Description |
Le robot démarre le projet Mech-Viz, obtient le résultat de planification de trajectoire, puis change l’outil en fonction de l’ID d’outil du point de prise pour effectuer 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 via le chemin |
Projet |
Projets Mech-Vision et Mech-Viz |
Prérequis |
|
|
Description du programme
Cette partie décrit le programme d’exemple MM_S7_Viz_SwitchTCP.
| La seule différence entre le programme d’exemple MM_S7_Viz_SwitchTCP et le programme d’exemple MM_S2_Viz_Basic est que MM_S7_Viz_SwitchTCP peut changer l’outil selon l’ID d’outil (le code de cette fonctionnalité est en gras). Ainsi, seule la fonctionnalité de changement d’outil selon l’ID d’outil est décrite dans la section suivante. Pour des informations sur les parties de MM_S7_Viz_SwitchTCP qui sont cohérentes avec celles de MM_S2_Viz_Basic, voir Programme d’exemple 2 : MM_S2_Viz_Basic. |
NOP
'--------------------------------
'FUNCTION: trigger Mech-Viz
'project and get planned path,
'switch TCP according to the
'toolId
'Mech-Mind, 2023-12-25
'--------------------------------
'clear I50 to I69
CLEAR I050 20
'initialize p variables
SUB P081 P081
SUB P082 P082
SUB P083 P083
'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.10.40;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"
'get planned path, 1st argument
'(2) means getting pose in Pose
CALL JOB:MM_GET_VIZDATA ARGF"2;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
'switch TCP according to the
'toolId
'save waypoints of the planned
'path to local variables one
'by one
CALL JOB:MM_GET_POSE ARGF"1;81;61;62"
CALL JOB:MM_GET_POSE ARGF"2;82;63;64"
CALL JOB:MM_GET_POSE ARGF"3;83;65;66"
'reset tool signals according
'to received toolid
SWITCH I064 CASE 1
'reset tool signal
'SETE P081 TL#(0)
'SETE P082 TL#(0)
'SETE P083 TL#(0)
PAUSE
CASE 2
'reset tool signal
'SETE P081 TL#(1)
'SETE P082 TL#(1)
'SETE P083 TL#(1)
PAUSE
DEFAULT
'reset tool signal
PAUSE
ENDSWITCH
'follow the planned path to pick
'move to approach waypoint of
'picking
MOVL P081 V=166.6 PL=0
'move to picking waypoint
MOVL P082 V=50.0 PL=0
'add object grasping logic here,
'such as DOUT OT#(1) ON
SWITCH I064 CASE 1
'open tool signal
PAUSE
CASE 2
'open tool signal
PAUSE
DEFAULT
'open tool signal
PAUSE
ENDSWITCH
'move to departure waypoint of
'picking
MOVL P083 V=166.6 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
'reset tool signals according
'to received toolid
SWITCH I064 CASE 1
'reset tool signal
PAUSE
CASE 2
'reset tool signal
PAUSE
DEFAULT
'reset tool signal
PAUSE
ENDSWITCH
'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 de programme d’exemple ci-dessus est illustré dans la figure ci-dessous.
Le tableau ci-dessous décrit le code en gras.
| Fonctionnalité | Code et description | ||
|---|---|---|---|
Obtenir la trajectoire planifiée |
L’ensemble de l’instruction indique que le robot obtient la trajectoire planifiée à partir du projet Mech-Viz.
|
||
Enregistrer la trajectoire planifiée |
La commande entière « CALL JOB:MM_GET_POSE ARGF"1;81;61;62" » enregistre le TCP, l’étiquette et l’ID d’outil du premier point de passage dans les variables spécifiées.
|
||
Changer l’outil en fonction de l’ID d’outil |
L’instruction ci-dessus vous permet de déterminer l’outil à utiliser lorsque le robot se déplace vers la pose cible (point de prise) en fonction de la valeur de I064, c’est-à-dire de changer l’outil selon l’étiquette. Lorsque le robot se déplace vers le point de prise, vous pouvez activer les signaux DO correspondant à l’ID d’outil, comme illustré dans le code suivant.
Lorsque le robot se déplace vers le point de dépose, vous pouvez désactiver et réinitialiser les signaux DO correspondant à l’ID d’outil, comme illustré dans le code suivant.
|