FB_RemoteController - Informations générales

Présentation

Type :

Bloc fonction

Disponible à partir de :

V1.0.0.0

Tâche

Le bloc fonction permet de lire l'état d'un SLC et d'exécuter des opérations de maintenance.

Description

Vous pouvez utiliser ce bloc fonction pour obtenir l'état d'un SLC et réaliser plusieurs opérations de maintenance.

Pour assurer le bon fonctionnement du bloc fonction, définissez d'abord les entrées i_ifSafeLogic et i_sPassword avant d'activer le bloc via l'entrée i_xEnable. Si vous avez besoin d'envoyer une commande au SLC, définissez l'entrée i_etUserCommand et exécutez la requête sur un front montant de i_xExecute.

Si la clé USB du SLC n'a pas encore de mot de passe, vous devez d'abord lui en définir un via la commande ET_UserCommand.SetSafeKeyPassword et l'entrée i_sNewPassword.

NOTE : Si vous souhaitez définir le mot de passe d'une clé USB, Sercos doit être en phase de communication 2, 3 ou 4.

Le bloc fonction doit être appelé jusqu'à ce que la valeur q_xDone ou q_xError devienne TRUE (et que q_xActive devienne FALSE). En l'absence d'erreur, l'état du SLC peut être évalué via la structure au niveau de la sortie q_stStatus. Les paramètres q_etDiag et q_etDiagExt permettent d'analyser les erreurs détectées pendant la requête de commande.

En cas d'erreur, le bloc fonction ne traite aucune autre commande. Pour le réinitialiser, il est nécessaire de le désactiver, puis de le réactiver via l'entrée i_xEnable.

Interface

Entrée

Type de données

Description

i_xEnable

BOOL

Un front montant (FALSE -> TRUE) active le POU. Un front descendant (TRUE -> FALSE) le désactive, efface les erreurs et rétablit son état par défaut.

Un POU désactivé n'exécute aucune action.

i_xExecute

BOOL

Un front montant (FALSE -> TRUE) démarre le traitement de la commande indiquée par l'entrée i_etUserCommand sur le SLC défini par l'entrée i_ifSafeLogic.

i_etUserCommand

ET_UserCommand

Action à exécuter par le SLC.

i_ifSafeLogic

SystemConfigurationItf.IF_SafeLogic

SLC avec lequel interagir.

L'équipement doit figurer dans l'arborescence Équipements de EcoStruxure Machine Expert.

i_sPassword

STRING[80]

Mot de passe du SLC sur lequel doit être exécutée la commande. Ce mot de passe n'est pas pertinent si le paramètre i_etUserCommand indique que seul l'état est demandé.

i_sNewPassword

STRING[80]

Spécifie un nouveau mot de passe de clé USB à enregistrer sur le SLC.

Sortie

Type de données

Description

q_xActive

BOOL

TRUE : Le POU est actif et doit être exécuté ultérieurement.

FALSE : Le POU est inactif.

q_xReady

BOOL

TRUE : Le POU est prêt à fonctionner et peut accepter des commandes utilisateur.

FALSE : Le bloc fonction n'est pas prêt à accepter des commandes utilisateur.

q_xBusy

BOOL

TRUE : Le POU exécute la commande utilisateur émise.

FALSE : Le POU attend d'autres commandes utilisateur.

q_xDone

BOOL

TRUE : La commande utilisateur a été exécutée.

FALSE : La commande utilisateur est en cours d'exécution ou aucune n'a encore été émise.

q_stStatus

ST_StatusResponse

Dernier état signalé par le SLC.

q_etDiag

GD.ET_Diag

Informations générales sur le diagnostic indépendantes de la bibliothèque.

Une valeur différente de GD.ET_Diag.Ok correspond à un message de diagnostic.

q_etDiagExt

ET_DiagExt

Sortie de diagnostic propre au POU.

q_etDiag = GD.ET_Diag.Ok -> message d'état

q_etDiag <> GD.ET_Diag.Ok -> message de diagnostic

q_sMsg

STRING[80]

Message déclenché par un événement, qui fournit des informations plus détaillées sur l'état de diagnostic.

q_stStatusExtended

ST_StatusExtendedResponse

Dernier état étendu signalé par TM5CSLC300FS ou TM5CSLC400FS.

Messages de diagnostic

q_etDiag

q_etDiagExt

Description

OK

Disabled

Le POU est désactivé.

OK

Initializing

Le POU est en cours d'initialisation.

OK

Running

Le POU est occupé à traiter des requêtes ou à exécuter des procédures internes.

OK

WaitForExecution

Le POU est prêt et attend d’être exécuté ou la saisie d'un utilisateur.

InputParameterInvalid

CommandFailedToExecute

Une commande a été envoyée au SLC, puis a échoué.

InputParameterInvalid

InvalidIfSafeLogic

L'interface ifSafeLogic n'est pas valide.

InputParameterInvalid

InvalidUserCommand

La commande utilisateur demandée n'est pas valide.

SercosConditionInvalid

CommunicationFailure

Une erreur a été détectée lors de l'établissement de la communication avec le SLC.

UnexpectedProgramBehavior

CommandFailedToExecute

Une commande a été envoyée au SLC, puis a échoué.

UnexpectedProgramBehavior

CommunicationFailure

Une erreur a été détectée lors de l'établissement de la communication avec le SLC.

UnexpectedProgramBehavior

GlobalSercosInterfaceInvalid

L'interface Sercos globale n'est pas valide.

UnexpectedProgramBehavior

UnknownInternalState

Le POU a détecté un état interne indéterminé.

ExecutionAborted

CommandFailedToExecute

Une commande a été envoyée au SLC, puis a échoué.

CommandFailedToExecute

Nom d'énumération :

CommandFailedToExecute

Valeur d'énumération :

31

Description :

Une commande a été envoyée au SLC, puis a échoué.

Cause

Solution

Mot de passe du SLC manquant ou incorrect au niveau de l'entrée i_sPassword.

Vérifiez le mot de passe au niveau de l'entrée i_sPassword et corrigez-le si besoin. Définissez-le si ce n'est pas déjà fait, puis réessayez.

Le paramètre RemoteControlAllowed n'est pas défini sur « Yes-ATTENTION » dans le programme du SLC actif.

Définissez le paramètre RemoteControlAllowed sur « Yes-ATTENTION ».

Non-respect des prérequis concernant la commande demandée. Par exemple, une confirmation de remplacement de module a été émise alors qu'il n'existe pas de modules remplacés à confirmer.

Exécutez seulement des commandes autorisées par l'état du SLC.

Ordre d'exécution des commandes incorrect.

Exécutez les commandes dans le bon ordre.

Exemple : confirmez d'abord la clé USB, puis les modules.

CommunicationFailure

Nom d'énumération :

CommunicationFailure

Valeur d'énumération :

30

Description :

Une erreur a été détectée lors de l'établissement de la communication avec le SLC.

Cause

Solution

Le SLC n'a pas répondu correctement à la requête.

Désactivez et réactivez le bloc fonction pour effacer l'état d'erreur et exécutez à nouveau la commande.

Disabled

Nom d'énumération :

Disabled

Valeur d'énumération :

1

Description :

Le POU est désactivé.

Le bloc fonction est désactivé.

GlobalSercosInterfaceInvalid

Nom d'énumération :

GlobalSercosInterfaceInvalid

Valeur d'énumération :

23

Description :

L'interface Sercos globale n'est pas valide.

Cause

Solution

Interface Sercos globale manquante ou incorrecte.

Vérifiez qu'un objet Sercos III est bien présent dans l'arborescence du projet et corrigez-le si besoin.

Initializing

Nom d'énumération :

Initializing

Valeur d'énumération :

2

Description :

Le POU est en cours d'initialisation.

Le bloc fonction est occupé à exécuter ses procédures d'initialisation.

InvalidIfSafeLogic

Nom d'énumération :

InvalidIfSafeLogic

Valeur d'énumération :

20

Description :

L'interface ifSafeLogic n'est pas valide.

Cause

Solution

Valeur manquante ou incorrecte au niveau de l'entrée i_ifSafeLogic.

Indiquez un objet valide de type SystemConfigurationItf.IF_SafeLogic au niveau de l'entrée i_ifSafeLogic.

InvalidUserCommand

Nom d'énumération :

InvalidUserCommand

Valeur d'énumération :

21

Description :

La commande utilisateur demandée n'est pas valide.

Cause

Solution

Un nombre dont la valeur ne peut être associée à aucun élément de l'énumération ET_UserCommand a été transmis au niveau de l'entrée i_etUserCommand.

Un élément de l'énumération ET_UserCommand doit être transmis au niveau de l'entrée i_etUserCommand.

Running

Nom d'énumération :

Running

Valeur d'énumération :

4

Description :

Le POU est occupé à traiter des requêtes ou à exécuter des procédures internes.

Le bloc fonction est occupé à exécuter une commande.

UnknownInternalState

Nom d'énumération :

UnknownInternalState

Valeur d'énumération :

22

Description :

Le POU a détecté un état interne indéterminé.

Cause

Solution

Le POU a détecté un état interne indéterminé.

Désactivez et réactivez le bloc fonction pour effacer l'état d'erreur et exécutez à nouveau la commande.

WaitForExecution

Nom d'énumération :

WaitForExecution

Valeur d'énumération :

3

Description :

Le POU est prêt et attend d’être exécuté ou la saisie d'un utilisateur.

Le bloc fonction est prêt et en attente d'exécution ou des données d'entrée utilisateur.