Fonctionnement cyclique ou périodique

En fonctionnement multitâche, la tâche avec la priorité la plus élevée devra être utilisée en mode périodique pour permettre aux tâches avec la priorité la plus basse de s'exécuter.

Pour cette raison, seule la tâche avec la priorité la plus faible devrait être utilisée en mode cyclique. Par conséquent, choisir le mode de fonctionnement cyclique pour la tâche maître exclut l'utilisation de tâches auxiliaires.

Mesure des durées des tâches

La durée des tâches est mesurée en continu. Cette mesure représente la durée entre le démarrage et la fin de l'exécution de la tâche. Elle inclut le temps mis par les tâches de priorité de niveau le plus élevé qui peuvent interrompre l'exécution de la tâche mesurée.

Les mots système suivants donnent les durées des cycles actuels, maximum et minimum pour chaque tâche (valeur en ms)

Mesure des durées

Cycle

FAST

AUX0

AUX1

AUX2

AUX3

Courant

%SW30

%SW33

%SW36

%SW39

%SW42

%SW45

Maximum

%SW31

%SW34

%SW37

%SW40

%SW43

%SW46

Durée

%SW32

%SW35

%SW38

%SW41

%SW44

%SW47

NOTE : les durées maximum et minimum sont prises à partir des durées mesurées depuis le dernier redémarrage à froid.

Périodes de tâche

Les périodes sont définies dans les propriétés de la tâche. Elles peuvent être modifiées par les mots système suivants.

Mots système

Tâche

Valeurs

Valeurs par défaut

Remarques

%SW0

Cycle

0-255 ms

Cyclique

0 = en fonctionnement cyclique

%SW1

FAST

1-255 ms

5 ms

-

%SW2

AUX0

10 ms-2,55 s

100 ms

Les valeurs de la période sont exprimées en 10 ms.

%SW3

AUX1

10 ms-2,55 s

200 ms

%SW4

AUX2

10 ms-2,55 s

300ms

%SW5

AUX3

10 ms-2,55 s

400ms

Lorsque la durée de cycle de la tâche dépasse la période, le système règle le bit système %S19 de la tâche sur 1 et continue avec le cycle suivant.

NOTE : les valeurs des périodes ne dépendent pas de la priorité des tâches. Il est possible de définir la période d'une tâche rapide qui est plus importante que la tâche maître.

Chien de garde

L'exécution de chaque tâche est contrôlée par un chien de garde configurable, à l'aide des propriétés de la tâche.

Le tableau suivant offre la place des valeurs du chien de garde pour chacune des tâches.

Tâches

Valeurs du chien de garde (min...max) (ms)

Valeur du chien de garde par défaut (ms)

Mot système associé

Cycle

10..1500

250

%SW11

FAST

10..500

100

-

AUX0

100..5000

2000

-

AUX1

100..5000

2000

-

AUX2

100..5000

2000

-

AUX3

100..5000

2000

-

Si le dépassement du chien de garde se produit, l'application est déclarée en erreur, ce qui entraîne l'arrêt immédiat de l'automate (état HALT).

Le mot %SW11 contient la valeur du chien de garde de la tâche maître en ms. Cette valeur n'est pas modifiable par le programme.

Le bit %S11 indique que le chien de garde est dépassé. Il est réglé sur 1 par le système lorsque la durée de cycle est supérieure au chien de garde.

NOTE :
  • la réactivation de la tâche requiert la connexion du terminal afin d'analyser la cause de l'erreur, la corriger, réinitialiser l'automate et le faire passer sur RUN.

  • Il n'est pas possible de quitter HALT en basculant vers STOP. Pour ce faire, vous devez réinitialiser l'application pour vérifier la cohérence des données.

Contrôle des tâches

Lorsque le programme d'application s'exécute, il est possible d'activer ou d'inhiber une tâche à l'aide des bits système suivants :

Bits système

Tâche

%S30

Cycle

%S31

FAST

%S32

AUX0

%S33

AUX1

%S34

AUX2

%S35

AUX3

La tâche est active lorsque le bit système associé est réglé sur 1. Ces bits sont testés par le système à la fin de la tâche maître.

Lorsqu'une tâche est inhibée, les entrées continuent à être lues et les sorties à être écrites.

Au démarrage du programme d'application, uniquement au premier cycle d'exécution, la tâche maître est active. A la fin du premier cycle, les autres tâches sont automatiquement activées sauf si l'une des tâches est inhibée (associée au bit système réglé sur 0) par le programme.

Contrôles des phases de lecture d'entrée et d'écriture de sortie

Les bits des mots système suivants peuvent être utilisés (uniquement lorsque l'automate est en mode RUN) pour inhiber les phases de lecture d'entrée et d'écriture de sortie.

Inhibition de phases...

Cycle

FAST

AUX0

AUX1

AUX2

AUX3

lecture d'entrées

%SW8.0

%SW8.1

%SW8.2

%SW8.3

%SW8.4

%SW8.5

écriture des sorties

%SW9.0

%SW9.1

%SW9.2

%SW9.3

%SW9.4

%SW9.5

NOTE : par défaut, les phases de lecture d'entrée et d'écriture de sortie sont actives (bits des mots système %SW8 et %SW9 réglés sur 0).

Sur Quantum, les entrées/sorties qui sont distribuées via le bus DIO ne sont pas affectées par les mots %SW8 et %SW9.