Généralités

L'analyseur vérifie les règles suivantes et, en cas de non-respect dans l'application, des erreurs sont générées :

  • L'EFB ne doit être utilisé qu'une seule fois dans toute l'application.

  • Une carte PCMCIA de type DATA doit se trouver à l'emplacement approprié.

  • La taille des données doit correspondre aux limites de la mémoire.

Un seul SFC_RESTORE

Un seul bloc fonction SFC_RESTORE est utilisé pour contrôler la sauvegarde et la restauration du SFC.

NOTE : SFC_RESTORE ne peut être utilisé qu'une seule fois dans une application (instance à contrôle unique).
NOTE : Le nombre de sections SFC enregistrées est limité à 250.

Emplacement de SFC_RESTORE

Il est recommandé de situer l'utilisation de SFC_RESTORE dans une section exécutée avant la première section SFC.

Une modification lors des entrées a donc une incidence sur toutes les sections SFC de la même scrutation.

Il est également vivement recommandé de ne pas désactiver cet EFB ou la section dans laquelle il se trouve, sinon les données sauvegardées ne sont plus cohérentes avec les diagrammes SFC.

SFC_RESTORE désactivé ou supprimé

Si le bloc fonction SFC_RESTORE est désactivé ou supprimé, l'interpréteur SFC n'est plus notifié.

Ce comportement est détecté après quelques scrutations et la fonction d'enregistrement et de restauration du SFC est alors arrêtée. Plus aucune sauvegarde n'est effectuée.

Les données de la carte mémoire PCMCIA sont conservées et un avertissement est enregistré dans le tampon de diagnostic.

Mode actif actuel

L'action ou le mode actif actuel est calculé conformément au tableau ci-après.

Mode/Action

Valeur Save

Valeur Restore

Valeur Resume

inactif

0

0

0

sauvegarde

1

0

0

restauration

0 ou 1

0 -> 1 (front montant)

0 ou 1

reprise

0 ou 1

0

0 -> 1 (front montant)

Carte mémoire PCMCIA

Le bloc fonction SFC_RESTORE peut uniquement être utilisé dans les UC avec un emplacement de carte mémoire PCMCIA.

Lors de l'analyse, la présence d'une carte mémoire PCMCIA adaptée est vérifiée dans les données de configuration.

Une erreur est signalée si aucun emplacement ou un emplacement erroné est sélectionné.

Si la valeur correspond à une constante, une vérification supplémentaire est effectuée pour s'assurer que la zone de mémoire est adaptée à la taille de la carte mémoire à partir de l'adresse donnée.

Néanmoins, une erreur d'exécution s'affiche sur la sortie STATUS en cas d'absence de la carte (WRITE_PCMCIA, par exemple. 16#0201 : aucune zone de fichiers dans la carte mémoire).

Estimation de la mémoire

Pour estimer la quantité de mémoire nécessaire pour enregistrer des sections SFC, utilisez la formule suivante :

octets Σ = 570 + n*210

570

octets nécessaires pour la gestion des données

n

nombre de sections SFC

210

octets nécessaires par section SFC

NOTE : Ces valeurs peuvent changer lors de la mise à jour de l'OS.

Zone mémoire

A partir de l'adresse donnée par l'entrée ADR_W, l'interpréteur SFC suppose une zone mémoire de SPACE_KW * 2 Ko utilisables par la fonction de sauvegarde et de restauration du SFC.

Une somme de contrôle (checksum) effectuée sur chaque bloc vérifie l'intégrité de cette mémoire.

En cas de détection d'une erreur (par exemple Erreur de checksum), le bloc concerné est marqué comme étant non valide et une erreur est signalée.

Dans l'analyse suivante, SFC tentera de sauvegarder de nouveau les étapes actives de sorte que l'impossibilité d'effectuer une restauration peut n'être que temporaire.

NOTE : Ne perdez pas de vue que même les blocs READ_PCMCIA et WRITE_PCMCIA peuvent gérer la carte mémoire PCMCIA.

Nombre de sections SFC sauvegardées

Selon l'entrée SPACE_KW, une certaine quantité de mémoire est utilisée. Lors de la génération, aucun contrôle n'est effectué pour vérifier que la quantité de mémoire convient.

Si le nombre de sections SFC détectées au moment de l'exécution est trop important pour la mémoire, une erreur est signalée.

La restauration des diagrammes SFC qui ont été enregistrés reste possible.

Si le nombre de sections SFC actives augmente (activation de sections, ajout avec la modification en ligne), ce type d'erreur peut être spontanément détecté au moment de l'exécution.

Trois sorties disponibles donnent des indications sur le nombre de sections SFC dans l'application :

  • NUMSAVED : nombre de sections SFC sauvegardées

  • NUMFAILED : nombre de sections SFC non sauvegardées

  • NUMPOSBL : nombre maximum de sections SFC pouvant être sauvegardées dans le scénario actuel

NOTE : S'il n'est pas nécessaire d'économiser la mémoire, il est recommandé d'ajouter un peu d'espace mémoire pour les futures extensions. Le nombre de sections SFC enregistrées est limité à 250.

Mémoire non effacée

Selon une génération/modification en ligne, de nouveaux paramètres seront pris en compte dans l'EFB.

En cas de changement d'adresse, la nouvelle mémoire sera utilisée.

NOTE : L'ancienne mémoire ne sera pas effacée.

Une modification de SPACE_KW se traduira par l'augmentation ou la diminution de la mémoire utilisée.

Il est supposé que cette mémoire est présente et disponible de façon exclusive.

Nouvelle sauvegarde en cas de génération

En cas de génération/modification d'une partie de l'application changée, les données sauvegardées ne sont plus valides.

En effet, la signature de l'application, utilisée pour identifier les pairs application/stockage valides, est modifiée.

NOTE : Pour pouvoir procéder à une nouvelle restauration, une nouvelle sauvegarde doit obligatoirement être effectuée après une génération/modification.