VARIABLE

Icône du lien vers le conceptVoir également Icône du lien vers le conceptExemple

Gestion des variables.

Support WebVue - Oui.

Mode

Mnémonique

Syntaxe

1 STATUS 1
2 MASK 2
3 UNMASK 2
4 ENABLE 3
5 DISABLE 3
6 LONGLABEL 4
7 ASSOCLABEL 4
8 SIMU 5
9 DOMAIN 4
10 NATURE 4
11 UNIT 4
12 NUMBER 6
13 THRESHOLD_GETTYPE 3
14 THRESHOLD_GETVALUE 7
15 THRESHOLD_SETVALUE 8
22 BATT 9
23 TATT 10
24 WRITE 11
25 LOCKTONODE 12
26 UNLOCKTONODE 12
27 FLOWPARAMTONODE 13
28 IMPORTBUFFER 14
29 IMPORTFILE 15
30 STARTWATCHLIST 16
31 STOPWATCHLIST 17
32 GET_LONG_IN_DB 18
33 GET_DOUBLE_IN_DB 19
34 GET_PHYSICAL_MIN 19
35 GET_PHYSICAL_MAX 19
36 GET_CONTROL_MIN 19
37 GET_CONTROL_MAX 19
38 SETBATT 20
39 SETTATT 21
40 SAVE 22
41 SETLONGLABEL 25
42 GET_ALARM_PRIORITY 3
43 GET_COMMAND_LEVEL 3
44 GET_CONTROL_LEVEL 3
45 GET_TEXT_LEVEL 3
46 GET_TYPE 3
53 GET_DEADBAND_TYPE 3
54 GET_DEADBAND_VALUE 23
55 SET_DEADBAND 24
56 TREND 3
57 GETSERVERSLIST 4
60 ADD_HMIBIT 26
61 ADD_HMIREG 27
62 ADD_HMITXT 28
63 REMOVE_HMIVAR 29
64 SETINVALID 3
65 TIMESTAMP 30

Arguments communs à plus d'un mode

Argument

Définition

VarNname

Nom d'une variable état. Type STR

Syntaxe 1

IntVal = VARIABLE (Mode, VarName, Property);

Type de retour : INTEGER

Argument

Définition

Property

Propriété à renvoyer. Type INTEGER

1 EXIST
2 VALID
3 MASK
4 ENABLE
5 COM
6 TS_TYPE
7 TEMPORARY_DB
8 SIMU

Exécution

Mode

Mnémonique

Action

1

STATUS

Renvoie la valeur correspondant à Property pour la variable VarName:

EXIST Renvoie 1 si la variable existe, 0 sinon.
VALID Renvoie 1 si la variable a une valeur valide, 0 sinon.
MASK Renvoie le statut du masquage représenté par un poids binaire :

1 - Masquage par programme utilisateur 1
2 - Masquage par programme utilisateur 2
4 - Masquage par programme utilisateur 3
8 - Masquage par programme utilisateur 4
16 - Masquage opérateur
32 - Masquage par dépendance (sur une autre variable)
128 - Masquage par expression.

ENABLE Renvoie 1 si la variable est inhibée, 0 sinon.
COM Renvoie 1 si la variable est inaccessible suite à un défaut de communication, 0 sinon.
TS_TYPE Retourne le type d'horodatage de la variable :

0 Horodate valide issue du logiciel PcVue.
1 Horodate valide issue de l'équipement.
2 Horodate incertaine issue de l'équipement (défaut d'horloge, équipement non synchronisé etc.).

TEMPORARY_DB Renvoie 1 si la variable est temporaire, 0 sinon.

SIMU retourne 1 si la variable est simulée, 0 sinon.

Syntaxe 2

IntVal = VARIABLE (Mode, VarName, MaskLevel);

Type de retour : INTEGER.

Argument

Action

MaskLevel

Champ de bits représentant la raison du masquage.

1 - Masquage par programme utilisateur 1
2 - Masquage par programme utilisateur 2
4 - Masquage par programme utilisateur 3
8 - Masquage par programme utilisateur 4
16 - Masquage opérateur
32 - Masquage par dépendance (sur une autre variable)
128 - Masquage par expression.

Exécution

Mode

Mnémonique

Action

2

MASK

Masque l'alarme en utilisant le ou les niveau(x) donné(s.

3

UNMASK

Démasque l'alarme en utilisant le ou les niveau(x) donné(s.

 

 

Retour : 1 si OK, 0 sinon.

Dans les fenêtres d'Alarmes ou de Consignations, le comportement est le suivant :

  • Pour afficher une alarme masquée en utilisant la combinaison de programme utilisateur 1, programme utilisateur 2, programme utilisateur 3 et programme utilisateur 4, le filtre Masquée par programme doit être coché.
  • Pour afficher une alarme masquée par un opérateur, le filtre Masquée par opérateur doit être coché.
  • Pour afficher une alarme masquée par dépendance, le filtre Masquée par variable doit être coché.
  • Pour afficher une alarme masquée par expression, le filtre Masquée par expression doit être coché. FerméVoir l'image

Vous pouvez paramétrer une combinaison de masques en utilisant le poids binaire. Par exemple, la valeur 9 correspond à la combinaison des valeurs de masquage 1 et 4.

Syntaxe 3

IntVal = VARIABLE (Mode, VarName);

Type de retour : INTEGER

Exécution

Mode

Mnémonique

Action

4

ENABLE

Désinhibe la variable VarName.

5

DISABLE

Inhibe la variable VarName.

13

THRESHOLD_GETTYPE

Renvoie le système de seuils de la variable VarName

0 - Pas de seuil.
1 - ppppigh / pphigh / hihi / high
2 - pphigh / hihi / high / low
3 - hihi / high / low / lolo
4 - high / low / lolo / pplow
5 - low / lolo / pplow / ppplow

42

GET_ALARM_PRIORITY

Renvoie le niveau de priorité d'alarme de VarName.

43

GET_COMMAND_LEVEL

Renvoie le niveau de commande de VarName s'il s'agit d'une variable état.

44

GET_CONTROL_LEVEL

Renvoie le niveau de commande de VarName s'il s'agit d'une variable mesure.

45

GET_TEXT_LEVEL

Renvoie le niveau de commande de VarName s'il s'agit d'une variable texte.

46

GET_TYPE

Renvoie le type de la variable VarName.

1 Etat
2 Mesure
4 Texte
8 Alarme

53

GET_DEADBAND_TYPE

Renvoie le type de bande morte de la variable VarName.

-2 La variable n’existe pas ou n’est pas une mesure.
-1 La variable est une variable temporaire.
0 La bande morte est ‘absolue’.
1 La bande morte est ‘un pourcentage de la plage’.
2 La bande morte est ‘un pourcentage de la valeur’.

56

TREND

Renvoie 1 si la variable VarName est en tendance, 0 sinon.

64 SETINVALID

Définit le statut de la variable VarName à NS. Ce mode peut être utilisé pour n'importe quelle source de variable.

Retour : 1 si OK, 0 sinon.

Les modes ENABLE et DISABLE sont le seul moyen de modifier l'état d'inhibition d'une alarme. Comme pour n'importe quel autre type de variable, de telles modifications par script seront consignées si l'alarme est archivée et que la liste de consignation est configurée de manière appropriée.

Syntaxe 4

StrVal = VARIABLE(Mode, VarName);

Type de retour : STR

Exécution

Mode

Mnémonique

Action

6

LONGLABEL

Renvoie le libellé long (description) de la variable VarName.

7

ASSOCLABEL

Renvoie le libellé associé de la variable VarName, correspondant à à sa valeur actuelle.

9

DOMAIN

Renvoie le domaine de VarName.

10

NATURE

Renvoie la nature de VarName.

11

UNIT

Renvoie l'unité de VarName (Mesure uniquement).

57

GETSERVERSLIST

Renvoie le nom de la liste de postes producteurs de la variable VarName.

Syntaxe 5

IntVal = VARIABLE(Mode, VarName, Flag);

Type de retour : INTEGER.

Argument

Définition

Flag

Indicateur d'opération.

Exécution

Mode

Mnémonique

Action

8

SIMU

Passe la variable VarName en mode simulé.

0 pour OFF
1 pour ON

Lorsqu'une variable est simulée, il est possible de la modifier comme toute variable interne.

Retour : 1 si OK, 0 sinon.

Syntaxe 6

LongVal = VARIABLE(Mode);

Type de retour : LONG

Exécution

Mode

Mnémonique

Action

12

NUMBER

Renvoie le nombre total de variables configurées dans le projet.

Syntaxe 7

DblVal = VARIABLE(Mode, VarName, Rank);

Type de retour : DOUBLE

Argument

Définition

Rank

Un nombre entre 0 et 3 spécifiant le rang du seuil (1er, 2e etc.). Type INTEGER.

Exécution

Mode

Mnémonique

Action

14

THRESHOLD_GETVALUE

Renvoie la valeur du seuil spécifié par son rang.

Syntaxe 8

IntVal = VARIABLE(Mode, VarName, Rank, Value[, Rank, Value] [, Rank, Value] [, Rank, Value][, SaveFlag]);

Type de retour : INTEGER

Argument

Définition

Rank

Un nombre entre 0 et 3 spécifiant le seuil (1st, 2nd etc.). Type INTEGER Tous les seuils qui sont omis restent inchangés.

Value

Valeur de seuil.

SaveFlag

Si positionné à 1, le seuil est modifié de manière permanente et sauvegardé lorsque le logiciel PcVue est arrêté.

Exécution

Mode

Mnémonique

Action

15

THRESHOLD_SETVALUE

Permet de définir une nouvelle valeur de seuil Value au seuil de rang Rank de la variable VarName.

La valeur fournie est vérifiée :

Par rapport à la valeur maximum et minimale de la variable.
Pour voir si elle s'inscrit dans la séquence de seuils (par exemple un seuil haut doit être supérieur à un seuil bas).

Retour : 1 si OK, 0 sinon. (valeur incorrecte etc.).

Si la modification est appliquée, les dépassements de seuils sont recalculés, et les variables seuils sont mises à jour.

Syntaxe 9

IntVal = VARIABLE(Mode, VarName, BattNum);

Type de retour : INTEGER

Argument

Définition

BattNum

Un rang de l'attribut binaire. Entier compris entre 1 et 30. Type INTEGER

Exécution

Mode

Mnémonique

Action

22

BATT

Renvoie la valeur de l'attribut booléen de rang BattNum.

Syntaxe 10

StrVal = VARIABLE(Mode, VarName, TattNum);

Type de retour : STR

Argument

Définition

TattNum

Numéro de l'attribut texte. Type INTEGER Valeur 1 à 16.

Exécution

Mode

Mnémonique

Action

23

TATT

Renvoie la valeur de l'attribut texte TattNb de la variable VarName.

Cette instruction permet de récupérer le Domaine (TattNum = 1) et la Nature (TattNum = 2) de la variable

Syntaxe 11

IntVal = VARIABLE(Mode, SubMode);

Type de retour : INTEGER

Argument

Définition

SubMode

Un code indiquant l'action à prendre. Type INTEGER

0 Inhibe le forçage des variables non produites par le poste local.
1 Autorise le forçage de variables non produites par le poste local (par défaut pour toutes les versions).
2 Envoie une requête d'écriture même si la valeur reste inchangée (par défaut avant la version 10).
3 Envoie une requête d'écriture uniquement si la valeur a changé par rapport à la valeur réelle de temps
(Par défaut à partir de la version 10).

Exécution

Mode

Mnémonique

Action

24

WRITE

Traitement des requêtes de forçage sur le poste local.

Retour : 1 si OK, 0 sinon.

Il y a toujours deux valeurs par défaut : 1 et 2 pour les versions avant 10.0 et 1 et 3 pour les versions supérieures à 10.0.

Les sous-modes 0 et 1 autorisent l'inhibition ou l'autorisation d'envoi de commandes à partir de postes redondants passifs.
Les sous-modes 2 et 3 sont applicables à toutes les variables (Internes, Equipement, OPC, BACnet etc.), pour prévenir l'envoi de commandes à partir de postes redondants passifs.
Le sous-mode 3 optimise l'écriture de requêtes pour visualiser les modifications en cours.

Le sous-mode 3 ne s'applique pas aux recettes.

Syntaxe 12

IntVal = VARIABLE(Mode, StationNb);

Type de retour : INTEGER

Argument

Définition

StationNb

Un numéro de poste. Type INTEGER

Exécution

Mode

Mnémonique

Action

25

LOCKTONODE

Verrouille l'envoi des messages de changement de valeur vers le poste StationNb. Utilisé dans des projets multi-postes basés sur des liaisons téléphoniques.

26

UNLOCKTONODE

Déverrouille l'envoi des messages de changement de valeur vers le poste StationNb. Utilisé dans des projets multi-postes basés sur des liaisons téléphoniques.

 

 

Retour : 1 si OK, 0 sinon.

Syntaxe 13

IntVal = VARIABLE(Mode, StationNb, StopLimit, StartLimit, Filter);

Type de retour : INTEGER

Argument

Définition

StationNb

Un numéro de poste. Type INTEGER.

StopLimit

Seuil sur le nombre de variables dans la boîte aux lettres du gestionnaire LAN pour le poste StationNb sur lequel le contrôle de flux est stoppé. Type INTEGER.

StartLimit

Seuil sur le nombre de variables dans la boîte aux lettres du gestionnaire LAN pour le poste StationNb sur lequel le contrôle de flux est démarré. Type INTEGER.

Filter

Nombre représentant les types de variables à affecter par le contrôle de flux. Chaque type de variable est représenté par un poids binaire. Type INTEGER.

1 Pour réguler les variables de type état.
2 Pour réguler les variables de type alarme.
4 Pour réguler les variables de type mesure.
8 Pour réguler les variables de type texte.

Par exemple, une valeur de 7 permet de réguler les variables état, alarme et mesure.

Exécution

Mode

Mnémonique

Action

27

FLOWPARAMTONODE

Paramétrage de la régulation des flux de variables vers un poste distant.

Retour : 1 si OK, 0 sinon.

Les paramètres par défaut (avant l'utilisation de l'instruction VARIABLE) sont :

StopLimit 10

StartLimit 1000

Filter 15

Syntaxe 14

IntVal = VARIABLE(Mode, Handle [,Flag, ResultVar, FileReport]);

Type de retour : INTEGER

Argument

Définition

Handle

Localisation du buffer mémoire retourné par ALLOC_BUFFER. Type LONG.

Flag

Flag indiquant comment les modifications de configuration doivent être distribuées. Type INTEGER

0 : Modification locale (par défaut)
1 : Distribution de la modification (non encore implémenté)

ResultVar

Nom de la variable mesure dans laquelle est retourné le status d'import des variables. Type STR.

0 : Import en cours.

1 : Import terminé sans aucune erreur.

2 : Import terminé avec des erreurs.

FileReport

Nom du fichier contenant le rapport de l’import. Type STR.

Format du rapport d'import des variables

Exécution

Mode

Mnémonique

Action

28

IMPORTBUFFER

Import de modifications de configuration pour des éléments associés aux variables, c'est-à-dire des variables, des expressions, des tendances et des événements. De manière générale, des éléments peuvent être ajoutés, modifiés et supprimés.

Les éléments à importer sont récupérés dans le buffer Handle.

Pour plus d'informations, voir la rubrique Syntaxe de fichier pour les modes IMPORTFILE et IMPORTBUFFER de l'intruction VARIABLE. L'import fait des modifications permanentes, la configuration modifiée est sauvegardée.

Retour : 1 si Handle existe, 0 sinon.

Cette méthode n'est plus recommandée pour faire de l'import de configuration. Il est préférable d'utiliser l'Import Générique XML et le Smart Generator.

Syntaxe 15

IntVal = VARIABLE(Mode, FileName [,Flag, ResultVar, FileReport, FileError]);

Type de retour : INTEGER

Argument

Définition

FileName

Nom du fichier texte. Type STR.

Chemin relatif au répertoire TP du projet.

Flag

Flag indiquant comment les modifications de configuration doivent être distribuées. Type INTEGER

0 : Modification locale (par défaut)
1 : Distribution de la modification (non encore implémenté)

ResultVar

Nom de la variable mesure dans laquelle est retourné le status d'import des variables. Type STR.

0 : Import en cours.

1 : Import terminé sans aucune erreur.

2 : Import terminé avec des erreurs.

FileReport Nom du fichier contenant le rapport de l’import.Format du Rapport d'Import de Variables Type STR.
FileError Nom du fichier contenant les erreurs de syntaxe. FORM.ERR par défaut dans le dossier LOGFILES . Type STR.

Exécution

Mode

Mnémonique

Action

29

IMPORTFILE

Import de modifications de configuration pour des éléments associés aux variables, c'est-à-dire des variables, des expressions, des tendances et des événements. De manière générale, des éléments peuvent être ajoutés, modifiés et supprimés.

Les éléments à importer sont récupérer dans le fichier FileName.

Pour plus d'informations, voir la rubrique Syntaxe de fichier pour les modes IMPORTFILE et IMPORTBUFFER de l'instruction VARIABLE. L'import fait des modifications permanentes, la configuration modifiée est sauvegardée.

Retour : 1 si le fichier FileName existe, 0 sinon.

Cette méthode n'est plus recommandée pour faire de l'import de configuration. Il est préférable d'utiliser l'Import Générique XML et le Smart Generator.

Syntaxe 16

LongVal = VARIABLE(Mode, Branch, Handle, ResultVar, Flag);

Type de retour : LONG

Argument

Définition

Branch

Facultatif. Branche de la base de données utilisée conjointement avec les noms de variables fournis par le buffer. Type STR.

Handle

Localisation du buffer mémoire contenant une liste des noms de variable. Taille maximale du buffer : 128 Ko. Type LONG.

Le buffer doit contenir une liste de noms de variables. Ceux avec une branche doivent avoir le préfixe '@', par exemple:

@VARNAME1

VARNAME2

VARNAME3

ResultVar

Nom de la variable état. Type STR.

Flag

0 ou 1.

Exécution

Mode

Mnémonique

Action

30

STARTWATCHLIST

Mise en scrutation des variables dont les noms sont dans le buffer Handle.

Lorsque toutes les variables de la liste ont toutes été rafraîchies, la valeur spécifiée par Flag est écrite dans la variable VarResult.

Le mode STARTWATCHLIST est habituellement utilisé conjointement avec le mode STOPWATCHLIST.

Retour : Un handle sur un buffer mémoire. Une fois la variable ResultVar forcée à Flag, ce buffer contient la liste des variables effectivement mises en scrutation avec succès.

 

 

 

Syntaxe 17

IntVal = VARIABLE(Mode, Handle);

Type de retour : INTEGER

Argument

Définition

Handle

Handle du buffer mémoire retourné par l'instruction STARTWATCHLIST. Type LONG.

Exécution

Mode

Mnémonique

Action

31

STOPWATCHLIST

Arrêt de la scrutation d'une liste de variables. Voir le mode STOPWATCHLIST pour plus d'informations.

Retour : 1 si OK, 0 sinon.

Syntaxe 18

LongVal = VARIABLE(Mode, VarName);

Type de retour : LONG

Exécution

Mode

Mnémonique

Action

32

GET_LONG_IN_DB

Retourne la valeur de la variable VarName convertie en LONG.

Syntaxe 19

DblVal = VARIABLE(Mode, VarName,);

Type de retour : DOUBLE

Exécution

Mode

Mnémonique

Action

33

GET_DOUBLE_IN_DB

Renvoie la valeur de la variable VarName convertie en DOUBLE.

34

GET_PHYSICAL_MIN

Renvoie le minimum physique de la variable VarName.

35

GET_PHYSICAL_MAX

Renvoie le maximum physique de la variable VarName.

36

GET_CONTROL_MIN

Renvoie la consigne minimum de la variable VarName.

37

GET_CONTROL_MAX

Renvoie la consigne maximum de la variable VarName.

Syntaxe 20

IntVal = VARIABLE(Mode, VarName, Value);

Type de retour : INTEGER

Argument

Définition

Value

Nouvelle valeur des attributs booléens de la variable. Type : INTEGER, LONG, SINGLE, DOUBLE et CONST.

Exécution

Mode

Mnémonique

Action

38

SETBATT

Modifie la valeur des attributs booléens de la variable VarName.

Retour : 1 si OK, 0 sinon.

Syntaxe 21

IntVal = VARIABLE(Mode, VarName, TattNb, Text);

Type de retour : INTEGER

Argument

Définition

TattNb

Attribut texte de rang 3 à 16. Tout type numérique.

Text

Nouvelle valeur de l'attribut texte. Type STR.

Exécution

Mode

Mnémonique

Action

39

SETTATT

Modifie la valeur de l'attribut texte TattNb de la variable VarName.

Retour : 1 si OK, 0 sinon.

Vous ne pouvez pas utiliser le mode SETTATT pour modifier le Domaine ou la Nature (attributs 1 et 2).

Syntaxe 22

IntVal = VARIABLE(Mode, 0, NoDisplayBarGraph);

Type de retour : INTEGER

Argument

Définition

0

Réservé, toujours égal à 0.

NoDisplayBarGraph

0 Montre la barre de progression (par défaut).

1 Ne montre pas la barre de progression.

Exécution

Mode

Mnémonique

Action

40

SAVE

Sauvegarde la totalité de la configuration des variables.

Retour : 1 si OK, 0 sinon.

Syntaxe 23

SVal = VARIABLE (Mode, VarName);

Type de retour : SINGLE

Exécution

Mode

Mnémonique

Action

54

GET_DEADBAND_VALUE

Renvoie la valeur de la bande morte d'une variable.

Syntaxe 24

IntVal = VARIABLE (Mode, VarName, DBvalue, DBtype);

Type de retour : INTEGER

Argument

Définition

DBvalue

Nouvelle valeur de bande morte. Type DOUBLE.

DBtype

Nouveau type de bande morte. Type INTEGER

Exécution

Mode

Mnémonique

Action

55

SET_DEADBAND

Positionne le type et la valeur de la bande morte de la variable VarName.

Retour :

-5 La variable n’existe pas ou n’est pas une mesure.
-4 La valeur de Dbtype n'a pas la valeur souhaitée. (doit être 0,1 ou 2).
-3 La valeur de Dbtype n'est pas un INTEGER.
-2 La valeur de Dbvalue n'est pas un FLOAT.
-1 La variable est une variable temporaire.
1 OK.

Syntaxe 25

IntVal = VARIABLE (Mode, VarName, Lang0[, Lang1]);

Type de retour : INTEGER.

Argument

Définition

Lang0

Chaîne de caractères pour la langue 0. Type STR.

Lang1

Chaîne de caractères pour la langue 1. Optionnel. Type STR.

Exécution

Mode

Mnémonique

Action

41

SETLONGLABEL

Modifie la propriété Description de la variable VarName. Si le projet est configuré pour être bilingue, vous pouvez modifier la chaîne pour les langues 0 et 1. La modification est permanente.

Retour : 1 si OK, 0 sinon.

Syntaxe 26

IntVal = VARIABLE (Mode, VarName[, Scope [,Description_1[, Description_2[, AssocLabel]]]]);

Type de retour : INTEGER.

Argument

Définition

Scope Portée de la variable :

0 = Contexte session (par défaut).

1 = Contexte client.

2 = Poste local.

Description_1

Description de la variable pour la langue 0. Valeur par défaut = "". Type STR.

Description_2

Description de la variable pour la langue 1. Valeur par défaut = "". Type STR.

AssocLabel Nom du libellé associé à la variable. Valeur par défaut = "". Type STR.

Exécution

Mode

Mnémonique

Action

60

ADD_HMIBIT

Une variable IHM de type état nommée VarName est créée en utilisant les propriétés fournies.

Retour :
0 si OK.
1 si erreur de syntaxe.
2 si une variable du même nom existe déjà.

Syntaxe 27

IntVal = VARIABLE (Mode, VarName[, Scope [,Description_1[, Desciption_2[, AssocLabel[, Min[, Max[, Format_1[, Format_2[, Unit_1[, Unit_2]]]]]]]]]]]);

Type de retour : INTEGER.

Argument

Définition

Scope Portée de la variable :

0 = Contexte session (par défaut).

1 = Contexte client.

2 = Poste local.

Description_1

Description de la variable pour la langue 0. Valeur par défaut = "". Type STR.

Description_2

Description de la variable pour la langue 1. Valeur par défaut = "". Type STR.

AssocLabel Nom du libellé associé à la variable. Valeur par défaut = "". Type STR.
Min Valeur minimale. Valeur par défaut = 0. N'importe quel type numérique.
Max Valeur maximale. Valeur par défaut = 65535. N'importe quel type numérique.
Format_1 Format d'affichage pour la langue 0, par exemple ###. ##. Valeur par défaut = "". Type STR.
Format_2 Format d'affichage pour la langue 1, par exemple ###. ##. Valeur par défaut = "". Type STR.
Unit_1 L'unité pour la langue 0, par exemple "DegC". Valeur par défaut = "". Type STR.
Unit_2 L'unité pour la langue 1, par exemple "DegC". Valeur par défaut = "". Type STR.

Exécution

Mode

Mnémonique

Action

61

ADD_HMIREG

Une variable IHM de type mesure nommée VarName est créée en utilisant les propriétés fournies.

Retour :
0 si OK.
1 si erreur de syntaxe.
2 si une variable du même nom existe déjà.

Syntaxe 28

IntVal = VARIABLE (Mode, VarName[, Scope [, Description_1[, Description_2[, AssocLabel[, TextSize]]]]]);

Type de retour : INTEGER.

Argument

Définition

Scope Portée de la variable :

0 = Contexte session (par défaut).

1 = Contexte client.

2 = Poste local.

Description_1

Description de la variable pour la langue 0. Valeur par défaut = "". Type STR.

Chaîne de caractères pour la langue 0. Type STR.

Description_2

Description de la variable pour la langue 1. Valeur par défaut = "". Type STR.

AssocLabel Nom du libellé associé à la variable. Valeur par défaut = "". Type STR.
TextSize Longueur maximale. Valeur par défaut = 132. N'importe quel type numérique.

Exécution

Mode

Mnémonique

Action

62

ADD_HMITXT

Une variable IHM de type texte nommée VarName est créée en utilisant les propriétés fournies.

Retour :

Syntaxe 29

IntVal = VARIABLE (Mode, VarName);

Type de retour : INTEGER.

Exécution

Mode

Mnémonique

Action

63

REMOVE_HMIVAR

Supprime la variable IHM VarName.

Retour :
0 si OK.
1 si la variable IHM n'existe pas.

Syntaxe 30

DblVal = VARIABLE(Mode, VarName);

Type de retour : DOUBLE.

Exécution

Mode

Mnémonique

Action

65

TIMESTAMP

Renvoie l'horodate de la variable VarName en nombre de millisecondes depuis le 01/01/1970 à 00:00:00.000.

Note au sujet de la validité des variables

Chaque variable possède un status de validité en plus d'une valeur et d'une horodate. Une variable invalide est affichée d'une façon spéciale ; par exemple la valeur d'une mesure sera remplacée par un "?". Un certain nombre de conditions peut rendre une variable invalide et celles-ci peuvent être divisées en 3 classes principales.

Cause

Définition

Masking

Voir la rubrique Masquage par Programme.

Inhibition

Lorsqu'une variable est inhibée, sa scrutation est abandonnée. Une variable est normalement inhibée lorsque le matériel qui délivre sa valeur est en défaut.

Inaccessible

L'inaccessibilité est une condition qui est détectée automatiquement lorsque la source externe de la variable, équipement de terrain ou autre poste producteur de la variable, devient indisponible (coupure réseau...).

Exemples

Pour le mode 15, THRESHOLD_SETVALUE:

Modifier, de façon permanente , le premier seuil d'une variable var1 à 100 et le troisième seuil à 500 :

intval = VARIABLE("THRESHOLD_SETVALUE","var1",0,100,2,500,1);

Mode 38, SETBATT :

Forçage des attributs booléens de la variable int.b1 à partir de la variable mesure int.b1.batt.

SUB SetBAtt()

VARIABLE("SETBATT", "int.b1", int.b1.batt);

END SUB

Forçage à 1 du troisième attribut booléen de la variable int.b1 et remise à 0 des autres bits.

SUB SetBAtt3()

VARIABLE("SETBATT", "int.b1", 4);

END SUB

Mode 56, TREND :

PRINT("x1 is a trend variable");

PRINT(VARIABLE(56, "x1"));

PRINT("x2 is not a trend variable");

PRINT(VARIABLE("TREND", "x2"));

Résultats :

x1 est une variable de tendance

1

x2 n'est pas une variable de tendance

0

Pour plus d'exemples, sélectionnez le lien Exemple ci-dessus.