Calcul du temps de cycle de tâche minimum
Traduction de la notice originale
Introduction
En configurant un temps de cycle de tâche suffisamment important, la CPU du système de redondance d'UC M580 peut traiter les données générées par le système lors d'une scrutation. Si le temps de cycle de tâche configuré est inférieur au temps de traitement nécessaire, la CPU forcera l'exécution de la tâche au-delà du temps imparti.
Deux conditions principales sont requises pour éviter le dépassement du temps défini. En utilisant les formules (définies ci-dessous) pour calculer le temps de tâche minimal pour votre système, vous pouvez éviter qu'une tâche ne dépasse le temps défini.
Condition 1 : Configuration des E/S
Voici la formule générale pour une application multitâche :
     (nombre de stations RIO utilisant la tâche MAST / temps de cycle MAST) +
     (nombre de stations RIO utilisant la tâche SAFE / temps de cycle SAFE) +
     (nombre de stations RIO utilisant la tâche FAST / temps de cycle FAST) < 1,5
Où tous les temps de cycle sont mesurés en ms.
NOTE : Les UC redondantes M580 prennent en charge uniquement les tâches MAST, FAST et SAFE. Les tâches AUX0 et AUX1 ne sont pas prises en charge.
Equipements distribués :
Si des équipements DIO sont configurés, augmentez le temps de cycle minimal.
Exemple :
Dans cet exemple, la configuration se compose des éléments suivants :
Temps de cycle MAST minimal :
10 / TMAST < 1,5
ou
TMAST > 6,7 ms
Condition 2 : Charge du processeur du PAC (automate)
Chaque application utilise un pourcentage de ressources processeur, ce qui constitue la bande passante des tâches (TaskBW). La bande passante des tâches configurées par l'utilisateur dépend de plusieurs éléments :
Le PAC gère un ensemble de tâches utilisateur et système, et les planifie en utilisant une stratégie fixe. Il est nécessaire de réserver un minimum de bande passante de processeur de réserve pour permettre au PAC d'agir comme prévu et de gérer d'autres opérations intermittentes peu fréquemment exécutées, par exemple des modifications en ligne. Cette condition est décrite par l'expression :
     MastBW + SafeBW + FastBW < 0,8
Estimation de la bande passante des tâches :
L'estimation de la bande passante des tâches (TaskBW) est obtenue en calculant le taux de ressources CPU utilisées par une tâche par unité de temps. Pour cela il faut connaître ou calculer les informations de base suivantes :
  1. Temps d'exécution de chaque tâche (TEXE) sur la cible. Control Expert permet de le mesurer dans les conditions suivantes :
    • L'automate n'est pas connecté à un automate à l'état redondant. (Voir la remarque 1 ci-dessous.)
    • Les périodes des tâches sont ajustées au maximum possible pour éviter les interférences entre les tâches.
    TEXE = Temps d'exécution minimal. (Voir la remarque 2 ci-dessous.)
  2. Période de la tâche (TPER), un paramètre défini par l'utilisateur. Il est recommandé d'utiliser la période configurée pour chaque tâche et de ne pas régler la valeur dans le programme d'application, car le logiciel de configuration Control Expert permet de définir automatiquement certains délais de communication en fonction des valeurs définies pour les périodes des tâches.
    TPER = Période planifiée durant le fonctionnement normal.
  3. Pour un automate (PAC) à redondance d'UC, il faut ajouter le temps requis pour le transfert (TTFR) des données avec l'automate distant, pour chaque tâche. Comme suit :
    • Pour les tâches MAST et FAST :
           TTFR = (K1 x TaskKB + K2 x TaskDFB) / 1000
    • Pour la tâche SAFE :
           TTFR = (K1 x TaskKB + K2 x TaskDFB) / 500
    Dans chaque cas, TTFR est mesuré en millisecondes.
Dans les formules précédentes, K1 et K2 sont des constantes, dont les valeurs sont déterminées par le module CPU spécifique utilisé dans l'application :
Coefficient
BMEH582040S
BMEH584040S ou BMEH586040S
K1
32,0
10,0
K2
23,6
7,4
La bande passante des tâches est décrite avec la formule suivante :
     TaskBW = (TEXE + TTFR) / TPER
NOTE :
  1. Si l'automate PAC est connecté à l'automate redondant, le temps d'exécution indiqué par Control Expert inclut le temps de transfert. Il est égal à : TEXE + TTFR. Néanmoins, la mesure peut être plus instable, et être affectée par un manque de synchronisation des tâches. (Vérifiez les bits de synchronisation MAST, FAST et SAFE dans T_M_ECPU_HSBY DDT).
  2. Le temps d'exécution de certaines applications est très instable car le code exécuté est légèrement différent entre les cycles des tâches. Aucune règle générale ne permet de décider s'il faut appliquer la valeur minimum de la bande passante des tâches dans ce cas.