Exemple De Création D'une Erreur Asynchrone - ABB MultiMove Manuel

Table des Matières

Publicité

7.4 Exemple de création d'une erreur asynchrone
À propos de cet exemple
Dans cet exemple, un processus est lancé par l'affectation de la valeur 1 à
do_myproc. Ce processus est ensuite contrôlé; le signal di_proc_sup est
paramétré sur 1 si le processus échoue.
En cas d'échec d'un processus pendant le mouvement d'un robot, une interruption
appelle une routine d'interruption. L'instruction ProcerrRecovery arrête le
mouvement et génère l'erreur ERR_PATH_STOP dans tous les programmes de
tâche avec mouvements synchronisés.
Le programme de tâche T_HANDLEROB doit comporter un gestionnaire d'erreurs
qui redémarre le mouvement lorsque l'erreur est résolue dans le programme de
tâche T_PROCROB. Seule l'instruction StartMoveRetry est nécessaire.
Programme de tâche T_PROCROB
Manuel sur les applications - MultiMove
3HAC050961-004 Révision: G
VAR intnum proc_sup_int;
PROC main()
...
SyncMoveOn, sync1, motion_tasks;
my_proc_on;
MoveL p101\ID:=10, v100, z10, gun1 \WObj:=wobj_handlerob;
MoveL p102\ID:=20, v100, fine, gun1 \WObj:=wobj_handlerob;
my_proc_off;
SyncMoveOff sync2;
...
ERROR
IF ERRNO = ERR_PATH_STOP THEN
my_proc_on;
StartMoveRetry;
ENDIF
ENDPROC
TRAP iprocfail
my_proc_off;
ProcerrRecovery \SyncLastMoveInst;
RETURN;
ENDTRAP
PROC my_proc_on()
SetDO do_myproc, 1;
CONNECT proc_sup_int WITH iprocfail;
ISignalDI di_proc_sup, 1, proc_sup_int;
ENDPROC
PROC my_proc_off()
SetDO do_myproc, 0;
IDelete proc_sup_int;
© Copyright 2004-2021- ABB. Tous droits réservés.
7 Récupération d'erreur RAPID
7.4 Exemple de création d'une erreur asynchrone
Suite page suivante
91

Publicité

Table des Matières
loading

Table des Matières