Cette instruction permet de paramétrer l’entrée interruptive.
Le premier mot-clé détermine l’entrée définie comme entrée interruptive et le second mot-clé les conditions d’entrée. Le premier mot-clé est séparé du second par une virgule.
INT2,UP
INT2 |
Entrée interruptive INT0–INT7 : X0–X7 |
UP |
Fronts UP : front montant DOWN : front descendant BOTH : fronts montant et descendant |
Pour le FP-X, INT0–INT13 peuvent être paramétrés.
Lorsque cette instruction est exécutée, le contenu de la ROM système dans l’unité centrale n’est pas écrasé. Par conséquent, lorsque l’automate est mis hors tension puis à nouveau sous tension, le contenu des registres système est écrasé selon les paramètres indiqués par le logiciel.
Nous recommandons d’utiliser cette instruction uniquement en front montant.
Lorsque UP ou DOWN a été indiqué, les paramètres des registres système sont modifiés. Une erreur peut être signalée lorsque le programme est supervisé. Lorsque BOTH est indiqué, les paramètres des registres système ne sont pas modifiés.
Séparez les mots-clés par une virgule et n’utilisez pas d’espace.
Si le caractère indiqué n’est pas un mot-clé.
S’il n’y a pas de virgule entre les mots-clés.
Si le mot-clé a été indiqué en lettres minuscules.
Si le caractère indiqué n’est pas un mot-clé.
S’il n’y a pas de virgule entre les mots-clés.
Si le mot-clé a été indiqué en lettres minuscules.
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
bSetEdge: BOOL:=FALSE;
DT_value: DT:=DT#2010-06-30-11:15:00;
bEno: BOOL:=FALSE;
END_VAR
Lorsque InterruptX1 est TRUE, la condition d’entrée de l’entrée interruptive X1 passe à "Front montant".
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,E_SET_RTC_DT!,Instance,20,1,28,5,,?DEN?DIN?AENO);
B(B_VARIN,,DT_value,18,3,20,5,);
B(B_CONTACT,,bSetEdge,7,2,9,4,R);
B(B_COIL,,bEno,37,2,39,4,);
L(1,3,7,3);
L(9,3,20,3);
L(28,3,37,3);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (DF(InterruptX1)) then
SYS1('INT1, UP');
end_if;
Les valeurs entrées en s* sont automatiquement alignées à droite par le compilateur.