Actualisation du temporisateur chien de garde
La valeur du temporisateur chien de garde est prédéfinie avec la constante indiquée par s lorsque le déclencheur EN est TRUE. La valeur indiquée par s* est entre 1 et 255 et le temps prédéfini est de 2,5 ms * s* (637,5 ms).
Entrée
Indique la valeur du temporisateur chien de garde
Au lieu d’utiliser cette instruction F, nous recommandons d’utiliser l’instruction FP7 correspondante : FP_RESET_WATCHDOG
Le temporisateur chien de garde intervient lorsque le temps prédéfini dans le registre système 30, pour un cycle de scrutation, est dépassé. Cette valeur du registre système 30 s’applique à chaque nouveau cycle de scrutation. Il est cependant possible de superviser des parties de programme et donc de définir une valeur inférieure. Au cycle de scrutation suivant, la valeur du temporisateur chien de garde prédéfinie dans le registre système 30 s’applique à nouveau.
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
start: BOOL:=FALSE;
(*activates the function*)
END_VAR
La fonction est exécutée lorsque la variable start est sur 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,F142_WDT,,10,0,18,4,,?DEN?H@'s'?AENO);
B(B_VARIN,,1234,8,2,10,4,);
B(B_CONTACT,,start,3,1,5,3,);
L(1,0,1,6);
L(1,2,3,2);
L(5,2,10,2);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF start then
(* Watchdog timer value is changed to 123.4ms *)
F142_WDT(1234);
END_IF;