Drapeaux SFC
Les indicateurs SFC sont des variables générées implicitement avec des noms prédéfinis. Ils permettent d'influencer le traitement d'un graphique SFC. Ils permettent, par exemple, d'afficher les délais d'expiration ou de réinitialiser les chaînes d'étapes. De plus, le mode jogging permet d'activer spécifiquement les transitions. Pour y accéder, il est nécessaire de déclarer et d'activer ces variables.
Drapeaux SFC
Nom | Type de données | Description |
---|---|---|
|
|
|
|
| Se comporte de manière similaire à Cependant, CODESYS Le traitement se poursuit après l'initialisation de l'étape initiale. Par exemple, lors de l'étape initiale, vous pouvez immédiatement réinitialiser le |
|
|
|
|
| Utilisé spécifiquement pour activer ( Si vous déclarez et activez cette variable (paramètres SFC), vous devez alors la définir sur L'exigence est la déclaration de |
|
| Stocke le nom de l'étape qui a provoqué un délai d'attente, qui a été enregistré par Le nom est conservé jusqu'à ce que l'erreur d'étape enregistrée soit réinitialisée au moyen de L'exigence est la déclaration de |
|
| Stocke le nom du bloc dans lequel un délai d'attente s'est produit et a été enregistré par L'exigence est la déclaration de |
|
| Tant que cette variable booléenne est L'exigence est la déclaration de |
|
| Tant que cette variable est |
|
|
|
|
| Affiche le nom de l'étape active, quelle que soit la surveillance du temps Dans les branches parallèles, le nom de l'étape de la ligne de branchement la plus à droite est toujours stocké. |
,
|
| Contrôle le « mode jogging » du bloc SFC Si vous activez cet indicateur avec |
, | Contient sous forme de chaîne toutes les variables qui contribuent à la valeur totale
| |
, | Contient dans un tableau toutes les variables qui contribuent à la valeur totale
|
Génération implicite d'indicateurs SFC
CODESYS déclare automatiquement les indicateurs SFC lorsque vous activez les options correspondantes. Vous pouvez définir cette option dans le Paramètres SFC onglet de la boîte de dialogue des propriétés pour chaque POU, ou dans le SFC boîte de dialogue des paramètres du projet pour chaque POU SFC du projet.
Astuce
Les paramètres SFC pour les indicateurs SFC des POU individuels ne sont effectifs que si vous n'avez pas sélectionné l'option Utiliser les valeurs par défaut option. Lorsque vous sélectionnez cette option, les paramètres définis dans les paramètres du projet s'appliquent.
Astuce
Les indicateurs SFC que vous déclarez dans la boîte de dialogue Paramètres SFC ne sont visibles que dans la vue en ligne du bloc SFC.
Génération explicite d'indicateurs SFC
Déclaration manuelle, qui était nécessaire dans CoDeSys V2.3, n'est désormais requis que pour activer l'accès en écriture depuis un autre bloc. Dans ce cas, il est important de noter que lorsque vous déclarez l'indicateur dans une liste de variables globales, vous devez désactiver son Déclarer dans la boîte de dialogue des paramètres SFC. Si vous ne le faites pas, un indicateur SFC local est implicitement déclaré, ce qui CODESYS utilise à la place de la variable globale.
Exemples d'application pour SFCError
Vous avez créé un bloc SFC nommé sfc1
, qui contient le s1
étape. Vous avez défini des délais d'expiration dans les propriétés de l'étape. (Voir « Vue en ligne de sfc1
(SFC POU" ci-dessous.)
Si pour une raison quelconque le s1
l'étape reste active plus longtemps que ses propriétés de temps ne l'ont permis (timeout), puis CODESYS définit le SFCError
drapeau pour autoriser l'accès par l'application.
Pour autoriser l'accès, vous devez déclarer et activer l'indicateur SFC dans les paramètres SFC. Si vous l'avez seulement déclaré, l'indicateur SFC n'est affiché que dans la vue en ligne de sfc1
dans la partie déclaration, mais il n'a aucune fonction.

L'indicateur SFC peut désormais être référencé dans le POU, par exemple dans une action (2) ou en dehors du bloc (1).

Vue en ligne du bloc SFC sfc1

SFCError
est TRUE
dès qu'un délai d'attente survient dans sfc2
.
Notez que vous pouvez utiliser le SFCErrorAnalyzation
et SFCErrorAnalyzationTable
drapeaux (Analyzation
bibliothèque) pour déterminer les composants de l'expression qui contribuent à la valeur TRUE
de la SFCError
.
Accès aux drapeaux
Syntaxe d'accès
Vous attribuez le drapeau directement dans le POU : <variable name>:=<SFC flag>
checkerror:=SFCerror;
À partir d'un autre POU avec le nom du POU : <variable name>:=<POU name>.<SFC flag>
checkerror:=SFC_prog.SFCerror;
Si vous avez besoin d'un accès en écriture à partir d'un autre bloc, vous devez également déclarer explicitement l'indicateur SFC en tant que variable VAR_INPUT dans le bloc SFC ou globalement dans un GVL.
Déclaration locale
PROGRAM SFC_prog VAR_INPUT SFCinit:BOOL; END_VAR
Déclaration globale dans une liste de variables globales
VAR_GLOBAL SFCinit:BOOL; END_VAR
PROGRAM PLC_PRG VAR setinit: BOOL; END_VAR SFC_prog.SFCinit:=setinit; //Write access to SFCinit in SFC_prog