Skip to main content

Rubrique : Paramètres

Dans cette section, vous pouvez définir tous les paramètres qui doivent être disponibles pour un paramétrage dans le Paramètres de l'instance de module.

SEC Parameters                               //optional: yes, modifier: [UPDATE]
    SEC Param : <parameter identifier>         //optional: yes, modifier [HIDE,UPDATE]
            Variable := <variable name>;         //optional: yes, type: InstancePath
            VariableType := <data type>          //optional: yes, type: @JG???IEC-Typ
            Name := <parameter name>;            //optional: no, type: text
            Desc := <parameter description>;     //optional: no, type: text
            Group := <parameter group name>      //optional: yes, type: text
            MustBeSet := TRUE/FALSE              //optional: yes, type: BoolFlag
            Default := <default value>;          //optional: yes, type: LiteralOrConstant
            Max := <max value>;                  //Optional: yes, type: LiteralOrConstant
            Min := <min value>;                  //Optional: yes, type: LiteralOrConstant
    END_SEC
END_SEC

Les détails concernant la syntaxe des types de définition sont décrits dans la section Déclaration du module.

. Spécification:
  • La cible de la section Param doit identifier le paramètre de manière unique.

  • La définition Variable est un chemin d'instance d'entrée relatif au bloc fonctionnel du module. Cette variable stockera la valeur du paramètre, son type définit le type du paramètre. Si Variable est déclaré, le paramètre VariableType n’a pas besoin d’être défini et sera ignoré.

  • Le paramètre VariableType définit le type CEI de la variable. Si VariableType est déclaré mais aucune variable FB réellement existante n'est donnée dans le Variable définition, le Default une définition doit exister. Cette valeur doit correspondre à la VariableType.

  • Les paramètres Name et Desc sont des chaînes et doivent être définies dans une liste de textes.

  • Le paramètre du module peut être des types et des énumérations de base, mais aucune instance de structures ou de tableaux.

  • Les variables de paramètres doivent avoir Valeurs d'initialisation, qui sont définis dans la déclaration du bloc fonction.

  • Le paramètre facultatif Default permet d'écraser la valeur d'initialisation. Pour l'expression d'initialisation et pour la valeur par défaut, les littéraux et les constantes du type correct sont autorisés. Cela inclut les paramètres de bibliothèque.

  • Le paramètre facultatif Group permet de diviser les paramètres en groupes. Chaque groupe est ensuite affiché sous forme d'onglet distinct dans l'éditeur de module sous Paramètres .

  • Avec le paramètre optionnel MustBeSet l'utilisateur peut être obligé de définir un paramètre dans l'éditeur de module. Si le paramètre n'est pas défini, un message d'erreur apparaît.

  • Les définitions Min. et Max. permettent de fixer des limites pour la valeur du paramètre. La vérification de ces limites n'est possible que pour les variables de type numérique ou horaires. Tous les autres types de variables ne sont pas autorisés et produiront une erreur.

Exemple 20. Exemple
SEC Parameters
        SEC Param : InParam1
                Variable := xIn1;
                VariableTyp := BOOL;
                Name := TL.Input1_Name;
                Desc := TL.Input1_Desc;
        END_SEC
END_SEC

La variable xIn1 doit être défini dans la partie déclaration du bloc fonction : xIn1 : BOOL := FALSE ;



Valeurs d'initialisation

La valeur d'initialisation est la valeur d'une variable définie lors de l'initialisation. Dans les variables simples du FB, cette valeur se trouve toujours à droite de la déclaration de variable :

iVar : INT := 17 ;  // Initialisierungswert: 17

En cas de définition de variables dans des structures l'initialisation de la structure est indispensable :

TYPE s : STRUCT
        i1 : INT := 7 ;
        r1 : REAL := 5 ;
END_STRUCT END_TYPE

Déclaration dans le module FB :

structVar : s := (i1 := 2, r1 := 0.0) ;

Dans ce cas la valeur d'initialisation qui définit la valeur de structVar.i1 est 2 (et pas 7).

Dans les structures imbriquées, toutes les initialisations dans le chemin allant du module FB à la variable doivent être prises en compte. L'initialisation la plus externe de la variable détermine la valeur.