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.
SFC_RESTORE
ne peut
être utilisé qu'une seule fois dans une application
(instance à contrôle unique).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 |
Valeur |
Valeur |
---|---|---|---|
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 |
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.
AVERTISSEMENT | |
---|---|
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éesNUMFAILED
: nombre de sections SFC non sauvegardéesNUMPOSBL
: nombre maximum de sections SFC pouvant être sauvegardées dans le scénario actuel
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.
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.