Déclencher une tâche d'événement (Trigger Event Task, EVENT)

Ces informations s’appliquent aux automates
CompactLogix
 5370,
ControlLogix
 5570,
Compact GuardLogix
 5370,
GuardLogix
 5570,
Compact GuardLogix
 5380,
CompactLogix
 5380,
ControlLogix
 5580,
GuardLogix
 5580 et ControlLogix 5590.
L’instruction ÉVÉNEMENT (EVENT) déclenche une exécution d’une tâche d’événement.
Langues disponibles
Diagramme à relais
EVENT_LD_avail_v31
Bloc fonctionnel
Cette instruction n'est pas disponible dans le bloc fonctionnel.
Texte structuré
EVENT(task_name);
Opérandes
Diagramme à relais
Opérande
Type
Format
Description
Task
TASK
nom
Tâche d’événement à exécuter. Si la tâche spécifiée n'est pas la tâche d'événement, alors elle ne sera pas exécutée.
Texte structuré
Opérande
Type
Format
Description
Task
TASK
nom
Tâche d’événement à exécuter. Si la tâche spécifiée n'est pas la tâche d'événement, alors elle ne sera pas exécutée.
Reportez-vous à Syntaxe du texte structuré pour plus d'informations concernant la syntaxe des expressions dans le texte structuré.
Description
Utiliser l’instruction EVENT pour exécuter par programmation une tâche d’événement.
Chaque fois que l'instruction est exécutée, elle déclenche la tâche d'événement spécifiée.
Assurez-vous d'accorder à la tâche d'événement suffisamment de temps pour terminer son exécution avant de la déclencher à nouveau. Sinon, un chevauchement va se produire.
Si vous exécutez une instruction EVENT alors que la tâche d’événement est en cours d’exécution, l’automate incrémente le compteur de chevauchement mais il ne déclenche pas la tâche d’événement.
L’instruction EVENT peut être utilisée pour déclencher la tâche d’événement avec tous les types de déclencheur.
Déterminer par programmation si une instruction EVENT a déclenché une tâche
Pour déterminer si une instruction EVENT a déclenché une tâche d’événement, utilisez l’instruction Lire la valeur système (GSV) pour surveiller l’attribut Status de la tâche.
Attribut
Type de données
Instruction
Description
État
DINT
GSV
SSV
Fournit les informations d’état relatives à la tâche. Une fois que l'automate définit un bit, vous devez le mettre à zéro manuellement pour déterminer si un autre défaut de ce type s'est produit.
À déterminer si
Examiner ce bit
Une instruction EVENT a déclenché la tâche (tâche d’événement uniquement)
0
Un délai d’expiration a déclenché la tâche (tâche d’événement uniquement)
1
Un chevauchement s’est produit pour cette tâche
2
L’automate ne met pas à zéro les bits de l’attribut Status, une fois qu’ils sont définis. Pour utiliser un bit afin d'avoir des informations sur un nouvel état, vous devez manuellement mettre à zéro le bit. Utiliser l'instruction Définir la valeur système (Set System Value, SSV) pour définir l'attribut sur une valeur différente.
Affecte les indicateurs d'état mathématique
Non
Conditions de défaut
Aucun spécifique à cette instruction. Reportez-vous à la section Attributs communs pour connaître les défauts liés aux opérandes.
Exécution
Diagramme à relais
Condition
Action entreprise
Préscrutation
N/A
La condition d'entrée d'échelon est égale à faux
N/A
La condition d'entrée d'échelon est égale à vrai
L'instruction s'exécute.
Post-scrutation
N/A
Texte structuré
Condition
Action entreprise
Préscrutation
N/A
Exécution normale
L'instruction s'exécute.
Post-scrutation
N/A
Exemples
Exemple 1
Un automate utilise plusieurs programmes, mais la procédure d’arrêt utilisée est commune. Chaque programme utilise un point d'accès du programme appelé Shut_Down_Line qui est activé si le programme détecte une condition qui nécessite un arrêt. La logique de chaque programme est exécutée comme suit :
Si Shut_Down_Line = activée (conditions requises pour un arrêt) alors
Exécute la tâche Shut_Down une fois
Diagramme à relais
Programme A
EVENT_LD_ex1_v31
Programme B
EVENT_LD_ex1_v31
Texte structuré
Programme A
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot:=Shut_Down_Line;
Programme B
IF Shut_Down_Line AND NOT Shut_Down_Line_One_Shot THEN
EVENT (Shut_Down);
END_IF;
Shut_Down_Line_One_Shot:=Shut_Down_Line;
Exemple 2
L’exemple suivant utilise une instruction EVENT pour initialiser une tâche d’événement. Un autre type d'événement déclenche normalement la tâche d'événement.
Tâche continue
IF Initialize_Task_1 = 1 THEN
L’instruction ONS limite l’exécution de l’instruction EVENT à 1 scrutation.
L’instruction EVENT déclenche une exécution de Task_1 (tâche d’événement).
Task_1 (tâche d’événement)
L’instruction GSV définit Task_Status (étiquette DINT) = attribut Statut de la tâche d’événement. Dans l’attribut Instance Name, THIS représente l’objet TASK de la tâche dans laquelle l’instruction se trouve (par exemple, Task_1).
EVENT_LD_ex3_v31
Si Task_Status.0 = 1, alors une instruction EVENT a déclenché la tâche d’événement (c.-à-d. lorsque la tâche continue exécute son instruction EVENT pour initialiser la tâche d’événement).
L’instruction RES réinitialise un compteur utilisé par la tâche d’événement.
EVENT_LD_ex4_v31
L’automate ne met pas à zéro les bits de l’attribut Status, une fois qu’ils sont définis. Pour utiliser un bit afin d'avoir des informations sur un nouvel état, vous devez manuellement mettre à zéro le bit.
Si Task_Status.0 = 1, alors ce bit est mis à zéro.
L’instruction OTU définit Task_Status.0 = 0.
L'instruction SSV définit l'attribut Status de la tâche THIS (Task_1) = Task_Status. Cela comprend le bit qui a été mis à zéro.
EVENT_LD_ex5_v31
Fournir une réponse
Vous avez des questions ou des commentaires sur cette documentation ? Veuillez envoyer vos commentaires ici.
Normal