CONFIGURE_OTB : envoyer la configuration logicielle d’Advantys OTB

Description du bloc fonction

Ce bloc fonction envoie les données de configuration EcoStruxure Machine Expert d'un Advantys OTB à l'équipement physique via Modbus TCP.

Elle permet de mettre à jour les données de configuration d'un îlot d'E/S sans logiciel tiers.

Le Modbus TCP IOScanner doit être à l'état STOPPED avant l'appel de cette fonction.

L'exécution de ce bloc fonction est asynchrone. Pour vérifier l'achèvement de la configuration, les indicateurs de sortie Done, Busy, et Error doivent être testés à chaque cycle d'application.

Représentation graphique

Représentation en langage IL et ST

Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction.

Description des variables d'E/S

Le tableau suivant décrit les variables d'entrée :

Entrée

Type

Commentaire

Execute

BOOL

Entrée d'activation. Lance la configuration sur le front montant.

sAddr

STRING

Adresse IP de l'OTB. Cette chaîne doit être au format 3{xx.xx.xx.xx}

Le tableau suivant décrit les variables de sortie :

Sortie

Type

Commentaire

Done

BOOL

TRUE lorsque la configuration a réussi.

Busy

BOOL

TRUE lorsque la configuration est en cours.

Error

BOOL

TRUE lorsque la configuration s'est terminée avec une erreur détectée.

ConfError

configurationOTBErrorCodes

Valeurs renvoyées : configurationOTBErrorCodes

CommError

CommunicationErrorCodes

Valeurs renvoyées : CommunicationErrorCodes

Exemple

Voici un exemple d'appel de cette fonction :

VAR

(*Bloc fonction pour configurer l'OTB. Nécessité d'arrêter le scrutateur d'E/S avant son exécution*)

configure_OTB1: CONFIGURE_OTB;

(*valeur init différente de 16#00000000 ; IO_start_done=0 quand le démarrage réussit*)

IO_start_done: UDINT := 1000;

(*valeur init différente de 16#FFFFFFFF , IO_start_done=16#FFFFFFFF quand l'arrêt réussit*)

IO_stop_done: UDINT := 1000;

(*Configure_OTB_done= true lorsque la configuration de l'OTB réussit. Il est ensuite possible de démarrer le scrutateur d'E/S.*)

Configure_OTB_done: BOOL;

myBusy: BOOL;

myError: BOOL;

myConfError: configurationOTBErrorCodes;

myCommError: UINT;

myExecute: BOOL;

END_VAR

(*Arrêter le scrutateur d'E/S avant de configurer l'OTB*)

IF NOT myExecute THEN

IO_stop_done:=IOS_STOP();

END_IF

(*Envoyer les données de configuration à l'OTB, à l'adresse IP 95.15.3.1, quand myExecute a la valeur TRUE *)

configure_OTB1(

Execute:= myExecute,

sAddr:='3{95.15.3.1}' ,

Done=> Configure_OTB_done,

Busy=> myBusy,

Error=> myError,

ConfError=> myConfError,

CommError=> myCommError);

(*Une fois la configuration de l'OTB achevée, démarrer le scrutateur d'E/S*)

IF Configure_OTB_done THEN

IO_start_done:=IOS_START();

END_IF