Programmation dans l'éditeur CFC
Note
Vous vous engagez sur le langage d'implémentation lors de la création du POU. Par la suite, il n'est plus possible de passer d'un langage à l'autre. Diagramme de fonctions continues (CFC) et Diagramme de fonctions continues (CFC) - orienté page langages d'implémentation.
Insertion d'éléments et câblage avec lignes de connexion
Faites glisser un Module élément et un Sortie élément dans l'éditeur.
Cliquez sur la sortie du Module élément.
La sortie est marquée d'une module rouge.
Faites glisser une ligne de connexion à partir de la broche de sortie du Module élément à la broche entrée du Sortie élément.
Le symbole du curseur change lorsqu'il atteint la broche entrée .
Relâchez le bouton gauche de la souris.
La broche de sortie du module est câblée à la broche entrée de la sortie.

Vous pouvez également maintenir la touche Ctrl clé, sélectionnez chaque broche, puis faites un clic droit Broches sélectionnées connectées.
Appel d'instances
Créez un nouveau projet en utilisant le modèle standard et spécifiez le nom
FirstPar exemple.Le projet
First.projectest créé.Étendez l'application avec le bloc fonctionnel
FB_DoItdans le ST langage d'implémentation avec entrées et sorties.Exemple:
FUNCTION_BLOCK FB_DoIt VAR_INPUT iAlfa : INT; iBravo: INT; sCharlie : STRING := 'Charlie'; xItem : BOOL; END_VAR VAR_OUTPUT iResult : INT; sResult : STRING; xResult : BOOL; END_VAR VAR END_VAR iResult := iAlfa + iBravo; IF xItem = TRUE THEN xResult := TRUE; END_IFSélectionnez l'application et cliquez sur Ajouter un objet → POU. Sélectionnez le Diagramme de fonctions continues (CFC) langage d'implémentation et le type
Program. Spécifiez le nomPrgFirstPar exemple.Cliquez D'ACCORD pour confirmer le dialogue.
Le
PrgFirstLe programme est créé et s'ouvre dans l'éditeur. Il est encore vide.Instanciez des blocs de fonctions et déclarez des variables.
PROGRAM PrgFirst VAR iCounter: INT; fbDoIt_1 : FB_DoIt; fbDoIt_2 : FB_DoIt; iOut : INT; sOut: STRING; xOut: BOOL; END_VARFaites glisser un Module élément de la Boîte à outils vue dans l'éditeur.
Cliquez sur le
???champ et tapezADDcomme nom de la module .Le type de module est
ADDLa module agit comme un additionneur.Cliquez sur la ligne 3 dans l’éditeur de déclaration.
La ligne de déclaration de
iCounterest sélectionné.Cliquez dans la sélection et faites glisser la variable sélectionnée dans l'implémentation. Concentrez-vous sur une entrée de la variable.
ADDmodule.Une entrée a été créée, déclarée et connectée à la module.
Cliquez à nouveau dans la sélection et faites glisser la variable vers la sortie du
ADDmodule.Une sortie a été créée, déclarée et connectée à la module.
Faites glisser un Entrée élément de la Boîte à outils vue de la mise en œuvre. Cliquez sur son
???champ et tapez1.Connectez le
1entrée à une entrée duADDmodule.Un réseau est programmé. À l'exécution, le réseau compte les cycles de bus et stocke le résultat dans
iCounter.
Cliquez sur la ligne 5 dans l’éditeur de déclaration.
La ligne est sélectionnée.
Cliquez dans la sélection et faites glisser l'instance sélectionnée dans l'implémentation.
L'instance apparaît sous forme de module dans l'éditeur. Le type, le nom et les repères de la module sont affichés en conséquence.

Faites glisser le
fbDoIt_2Instance à l'éditeur. Interconnectez les instances entre elles et aux entrées et sorties.Exemple:

Un programme en ST avec les mêmes fonctionnalités pourrait ressembler à ceci :
PROGRAM PrgFirstInSt VAR iCounter: INT; fbDoIt_1 : FB_DoIt; fbDoIt_2 : FB_DoIt; iOut : INT; sOut: STRING; xOut: BOOL; END_VAR iCounter := iCounter + 1; fbDoIt_1(iAlfa := 16, iBravo := 32, sCharlie := 'First', xItem := TRUE, iDelta := 2, iResult => fbDoIt_2.iAlfa, xResult => fbDoIt_2.xItem); fbDoIt_2(iBravo := fbDoIt_1.iResult, sCharlie := 'Second', iDelta := 2, iResult => iOut , sResult=> sOut, xResult => xOut);
Création de marques de connexion
Exigence : Un POU CFC possède des éléments connectés.
Sélectionnez une ligne de connexion entre deux éléments.
La ligne de connexion est affichée comme sélectionnée. Ses extrémités sont marquées d'un
boîtes rouges.Cliquez CFC → Étiquette de liaison.
La connexion est séparée en un Étiquette de liaison – Source et un Étiquette de liaison – Évier Le nom de la marque est généré automatiquement.

Cliquez sur les marques de connexion source .
Vous pouvez modifier le nom.
Précisez le nom
SimpleMarkpour la étiquette de liaison source .La étiquette de liaison source et la étiquette de liaison cible ont le même nom.

Résolution des collisions et fixation des lignes de connexion au moyen de points de contrôle
L'exemple suivant montre comment utiliser le Routage de toutes les liaisons commandement avec points de contrôle.
Positionnez le Entrée et Sortie éléments. Reliez les éléments.

Position deux Module éléments sur la ligne.
La ligne de connexion et les cases sont marquées en rouge à cause de la collision.

Cliquez CFC → Routage → Routage de toutes les liaisons.
La collision est résolue.

Changez progressivement les lignes de connexion.

La ligne de connexion a été modifiée manuellement et le routage automatique est désormais bloqué. Ceci est indiqué par un symbole de cadenas à la fin de la connexion.

Sélectionnez la ligne de connexion et cliquez sur CFC → Routage → Créer un point de contrôle.
Un point de contrôle est créé sur la ligne de connexion. Cette ligne est fixée au point de contrôle.

Vous pouvez également faire glisser un point de contrôle depuis le Boîte à outils vue sur une ligne.
Modifiez la ligne de connexion comme indiqué dans l’exemple suivant.

Utilisez le point de contrôle pour modifier la ligne de connexion selon vos besoins. Vous pouvez définir autant de points de contrôle que vous le souhaitez.
Dans le menu contextuel, cliquez sur CFC → Routage → Supprimer point de contrôle pour supprimer le point de contrôle.
Cliquez Résoudre la connexion ou cliquez sur le symbole du cadenas pour déverrouiller la connexion.
Sélectionnez la ligne de connexion et cliquez sur Routage de toutes les liaisons.
La ligne de connexion est acheminée automatiquement comme indiqué à l’étape 3.

Important
Les connexions dans un groupe ne sont pas routées automatiquement.
Réduire l'affichage d'une module
Condition préalable : Un POU CFC est ouvert. Dans l'éditeur, ses cases avec toutes les broches déclarées sont affichées.
Sélectionnez une module dont les broches sont partiellement déconnectées.
Exemple:
fb_DoIt_1
La module a besoin d'espace pour toutes les broches.
Cliquez CFC → Broches → Supprimer les connexions non reliées.
Désormais, la module nécessite moins d'espace et s'affiche uniquement avec les broches fonctionnellement pertinentes.
