Variables implicites
Chaque objet SFC fournit des variables implicites permettant de surveiller l'état des étapes et des actions IEC lors de l'exécution. Ces variables implicites sont automatiquement déclarées pour chaque étape et chaque action IEC.
Les variables implicites sont des instances de structure du type SFCStepType
pour les étapes et le type SFCActionType
Pour les actions. Les variables portent les mêmes noms que leurs éléments, par exemple « étape1 » pour le nom de l'étape « étape1 ». Les membres de la structure décrivent l'état d'une étape, d'une action ou le temps écoulé dans une étape active.
Astuce
Dans le Propriétés des éléments SFC, vous pouvez définir si oui ou non CODESYS devrait exporter une définition de symbole pour cela drapeau à la configuration du symbole.
Statut des Étape et des actions
Important
Vous pouvez utiliser les variables ci-dessus pour forcer une valeur d'état spécifique pour une étape afin de l'activer. Cependant, cela peut entraîner un état instable dans le SFC.
Syntaxe pour la déclaration de variable implicite :
<step name>:SFCStepType;
_<action name>:SFCActionType;
Étape | |
| Affiche l'état d'activation dans le cycle en cours Si |
| Affiche l'état d'activation pour le cycle suivant Si |
| Le drapeau Pour plus d'informations, voir : Drapeaux SFC |
| Pour usage interne uniquement |
| Point d'entrée permettant d'obtenir des informations sur les éléments ISFC dans la liste chaînée lorsque la fonctionnalité « MetaStep » est activée (voir ci-dessous). |
Action de la CEI | |
|
|
|
|
Liste chaînée d'éléments dans le diagramme SFC, variable implicite _MetaStep
Important
La fonctionnalité « MetaStep » génère beaucoup de code implicite supplémentaire pour permettre la liaison des éléments. Ne l'activez que si cela est réellement nécessaire.
La variable implicite _MetaStep
Identifie l'élément appartenant à l'étape initiale (Étape initiale) d'un graphe SFC. Lorsque la fonctionnalité « MetaStep » est activée, des variables implicites supplémentaires sont créées, représentant une liste chaînée des éléments d'un graphe SFC. À partir de l'étape initiale, toutes les transitions, étapes et sauts sont liés par des références à d'autres. ISFCElement
objets (de la IecSfc.library
, >= V4.4.0.0). Un ISFCElement
possède toujours un prédécesseur, un successeur, un nom et le nombre d'éléments dans la liaison selon l'interface. Selon le type de ISFCElement
objet, une sous-interface plus spécifique avec des attributs supplémentaires peut être implémentée.
La variable <POU name>._MetaStep
est utilisé comme point d'entrée. Le IQueryInterface
La fonction peut être utilisée pour déterminer les informations sur les éléments prédécesseurs et successeurs dans la liste chaînée des éléments ISFC.
Restrictions Dans la version actuelle de la fonctionnalité, les noms des transitions au sein d'un programme SFC doivent être uniques. Dans le cas contraire, un avertissement est émis et les données supplémentaires de la liste chaînée ne sont pas générées.
Pour activer la fonctionnalité MetaStep, vous devez effectuer les étapes suivantes :
Dans le Informations sur le projet dialogue, sur le Propriétés onglet, définissez le
UseMetaStepsEnabled
(BOOL) propriété àTrue
.Dans le Propriétés dialogue de l'objet, sur le Paramètres SFC onglet, activer l'utilisation du
SFCMetaSteps
variable pour chaque objet SFC qui nécessite la fonctionnalité.
Accès aux variables implicites
Syntaxe d'accès
Dans le POU, vous attribuez directement la variable implicite :
<variable name>:=<step name>.<implicit variable>
ou <variable name>:=_<action name>.<implicit variable>
status:=step1._x;
D'un autre POU avec le nom :
<variable name>:=<POU name>.<step name>.<implicit variable>
<variable name>:=<POU name>._<action name><implicit variable>
status:=SFC_prog.step1._x;
Génération de symboles
Dans les propriétés d'élément d'une étape ou d'une action, vous définissez si CODESYS devrait ajouter une définition de symbole pour l'indicateur d'étape ou d'action. Dans le Propriétés vue, vous devez sélectionner les droits d'accès nécessaires dans le Symbole colonne.