Retour à l’origine
Cette instruction démarre le retour à l’origine selon les paramètres spécifiés dans la mémoire de positionnement (zone de configuration des axes).
Entrée
Numéro de voie
Configurator PMX : SYS_PMX_CHANNEL_0–SYS_PMX_CHANNEL_3
Configurator PM7 : SYS_PM7_AXIS_1–SYS_PM7_AXIS_8
Si une opérande est une valeur en dehors de l’intervalle autorisé, une erreur d’opération apparaît.
L’arrêt a priorité lorsque les conditions d’arrêt du système, d’arrêt d’urgence, d’arrêt limite et d’arrêt de décélération sont remplies.
Une erreur d’opération apparaît lorsque le registre système d’une voie spécifiée est autre que Sortie impulsionnelle [opération avec table].
Lorsque la méthode de retour à l’origine sélectionnée est DOG method 1, DOG method 3 ou Home return method, une erreur d’opération apparaît si le retour à l'origine n’a pas été défini dans le registre système. Lorsque la méthode de retour à l’origine sélectionnée est DOG method 2 ou Data set method, le retour à l'origine démarre même s’il n’a pas été défini dans le registre système.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si une valeur spécifiée pour un paramètre est en dehors de l’intervalle autorisé.
Si Sortie impulsionnelle [opération avec table] n’a pas été définie dans les registres système.
Si la zone spécifiée à l’aide du modificateur d’adresse est en dehors des limites autorisées.
Si une valeur spécifiée pour un paramètre est en dehors de l’intervalle autorisé.
Si Sortie impulsionnelle [opération avec table] n’a pas été définie dans les registres système.
Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU. Le même en-tête de POU est utilisé pour tous les langages de programmation.
VAR
bGoHome: BOOL:=FALSE;
iChannel0: INT:=0;
END_VAR
La fonction est exécutée lorsque la variable bGoHome passe de FALSE à TRUE.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 6 ;
NETWORK_BODY
B(B_F,F382_Positioning_Home!,,7,2,19,6,,?DEN?Ds1_Channel?AENO);
B(B_CONTACT,,bGoHome,3,3,5,5,);
B(B_VARIN,,iChannel0,5,4,7,6,);
L(1,4,3,4);
L(1,0,1,6);
L(5,4,7,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF (bGoHome) then
F382_Positioning_Home(s1_Channel := iChannel0);
END_IF;