FB_RemoteController - Informazioni generali

Panoramica

Tipo:

Blocco funzione

Disponibile a partire da:

V1.0.0.0

Task

Il blocco funzione è utilizzato per leggere lo stato di un SLC ed eseguire operazioni di manutenzione.

Descrizione

Il blocco funzione consente di interrogare lo stato di un SLC ed eseguire diverse operazioni di manutenzione.

Per il corretto funzionamento, impostare prima gli ingressi i_ifSafeLogic e i_sPassword e attivare il blocco funzione tramite l'ingresso i_xEnable in seguito. Se è stato inviato un comando al SLC, impostare l'ingresso i_etUserCommand ed eseguire la richiesta tramite un fronte di salita su i_xExecute.

Se la chiavetta di memoria del SLC non dispone ancora di una password, è necessario innanzitutto impostare una password tramite il comando ET_UserCommand.SetSafeKeyPassword e l'ingresso i_sNewPassword.

NOTA: Se si desidera impostare la password per una chiavetta di memoria, Sercos deve trovarsi nella fase di comunicazione 2, 3 o 4.

Il blocco funzione deve essere chiamato finché q_xDone o q_xError non cambia il valore su TRUE (e q_xActive passa a FALSE). Se non sono stati rilevati errori, lo stato del SLC può essere valutato tramite la struttura all'uscita q_stStatus. Gli errori rilevati durante l'elaborazione della richiesta di comando possono essere analizzati con q_etDiag e q_etDiagExt.

Se viene rilevato un errore, non vengono elaborati ulteriori comandi dal blocco funzione che può essere ripristinato solo disattivandolo e riattivandolo tramite l'ingresso i_xEnable.

Interfaccia

Ingresso

Tipo di dati

Descrizione

i_xEnable

BOOL

Un fronte di salita (FALSE -> TRUE) attiva la POU, un fronte di discesa (TRUE -> FALSE) disattiva la POU, cancellando gli errori e ripristinando la POU allo stato predefinito.

Una POU disattivata non esegue alcuna azione.

i_xExecute

BOOL

Un fronte di salita (FALSE -> TRUE) inizia a elaborare il comando specificato dall'ingresso i_etUserCommand sul SLC specificato dall'ingresso i_ifSafeLogic.

i_etUserCommand

ET_UserCommand

Specifica l'azione che deve essere eseguita dal SLC.

i_ifSafeLogic

SystemConfigurationItf.IF_SafeLogic

Specifica il SLC con cui interagire.

Il dispositivo deve esistere nella struttura Dispositivi in EcoStruxure Machine Expert.

i_sPassword

STRING[80]

Password del SLC su cui eseguire il comando. Se i_etUserCommand indica che è richiesta solo la condizione, la password non è rilevante.

i_sNewPassword

STRING[80]

Specifica una nuova password per la chiavetta di memoria da memorizzare nel SLC.

Uscita

Tipo di dati

Descrizione

q_xActive

BOOL

TRUE: la POU è attiva e deve essere eseguita ulteriormente.

FALSE: la POU è inattiva.

q_xReady

BOOL

TRUE: la POU è pronta per funzionare e può accettare i comandi dell'utente.

FALSE: il blocco funzione non è pronto per accettare i comandi dell'utente.

q_xBusy

BOOL

TRUE: la POU esegue il comando utente emesso.

FALSE: la POU è in attesa di ulteriori comandi utente.

q_xDone

BOOL

TRUE: il comando utente è stato eseguito.

FALSE: il comando utente è in corso di esecuzione o non è ancora stato emesso alcun comando.

q_stStatus

ST_StatusResponse

Ultima condizione segnalata dal SLC.

q_etDiag

GD.ET_Diag

Dichiarazione generale relativa alla diagnostica indipendente dalla libreria.

Un valore diverso da GD.ET_Diag.Ok corrisponde a un messaggio di diagnostica.

q_etDiagExt

ET_DiagExt

Uscita di diagnostica specifica della POU.

q_etDiag = GD.ET_Diag.Ok -> messaggio di stato

q_etDiag <> GD.ET_Diag.Ok -> messaggio di diagnostica

q_sMsg

STRING[80]

Messaggio attivato da evento che fornisce informazioni più dettagliate sullo stato della diagnostica.

q_stStatusExtended

ST_StatusExtendedResponse

Ultimo stato esteso segnalato da TM5CSLC300FS o TM5CSLC400FS.

Messaggi di diagnostica

q_etDiag

q_etDiagExt

Descrizione

OK

Disabled

La POU è disattivata.

OK

Initializing

È in corso l'inizializzazione della POU.

OK

Running

La POU è occupata nell'elaborazione di una richiesta o procedure interne.

OK

WaitForExecution

La POU è pronta e in attesa di esecuzione o di un’immissione dell'utente.

InputParameterInvalid

CommandFailedToExecute

Un comando è stato inviato correttamente al SLC ma è terminato in modo errato.

InputParameterInvalid

InvalidIfSafeLogic

L'interfaccia ifSafeLogic non è valida.

InputParameterInvalid

InvalidUserCommand

Il comando utente richiesto non è valido.

SercosConditionInvalid

CommunicationFailure

È stato rilevato un errore durante il tentativo di comunicare con il SLC.

UnexpectedProgramBehavior

CommandFailedToExecute

Un comando è stato inviato correttamente al SLC ma è terminato in modo errato.

UnexpectedProgramBehavior

CommunicationFailure

È stato rilevato un errore durante il tentativo di comunicare con il SLC.

UnexpectedProgramBehavior

GlobalSercosInterfaceInvalid

L'interfaccia Sercos globale non è valida.

UnexpectedProgramBehavior

UnknownInternalState

La POU ha rilevato uno stato interno indeterminabile.

ExecutionAborted

CommandFailedToExecute

Un comando è stato inviato correttamente al SLC ma è terminato in modo errato.

CommandFailedToExecute

Nome enumerazione:

CommandFailedToExecute

Valore enumerazione:

31

Descrizione:

Un comando è stato inviato correttamente al SLC ma è terminato in modo errato.

Causa

Soluzione

No, o altrimenti password SLC errata all'ingresso i_sPassword.

Verificare la password all'ingresso i_sPassword e correggerla se necessario. Se la password non è già stata impostata, impostarla e riprovare.

Il parametro RemoteControlAllowed non è impostato su "Yes-ATTENTION" nel programma SLC attivo.

Impostare il parametro RemoteControlAllowed su "Yes-ATTENTION".

Le precondizioni del comando richiesto non sono soddisfatte. Ad esempio, è stato emesso un riconoscimento di sostituzione modulo anche se non vi sono moduli sostituiti da riconoscere.

Emettere solo comandi consentiti che danno lo stato del SLC.

Ordine errato dei comandi eseguiti.

Eseguire i comandi nell'ordine corretto.

Ad esempio: prima confermare la chiavetta di memoria, quindi i moduli.

CommunicationFailure

Nome enumerazione:

CommunicationFailure

Valore enumerazione:

30

Descrizione:

È stato rilevato un errore durante il tentativo di comunicare con il SLC.

Causa

Soluzione

Il SLC ha risposto a una richiesta in modo errato.

Disattivare e attivare il blocco funzione per cancellare lo stato di errore rilevato e ripetere il comando.

Disabled

Nome enumerazione:

Disabled

Valore enumerazione:

1

Descrizione:

La POU è disattivata.

Il blocco funzione è disabilitato.

GlobalSercosInterfaceInvalid

Nome enumerazione:

GlobalSercosInterfaceInvalid

Valore enumerazione:

23

Descrizione:

L'interfaccia Sercos globale non è valida.

Causa

Soluzione

No, o in alternativa è stata rilevata l'interfaccia Sercos globale non valida.

Verificare che nella struttura del progetto sia presente un oggetto Sercos III e correggere se necessario.

Initializing

Nome enumerazione:

Initializing

Valore enumerazione:

2

Descrizione:

È in corso l'inizializzazione della POU.

Il blocco funzione è occupato nell'esecuzione delle relative procedure di inizializzazione.

InvalidIfSafeLogic

Nome enumerazione:

InvalidIfSafeLogic

Valore enumerazione:

20

Descrizione:

L'interfaccia ifSafeLogic non è valida.

Causa

Soluzione

No, o in alternativa è stato fornito un valore non valido all'ingresso i_ifSafeLogic.

Specificare un oggetto valido del tipo SystemConfigurationItf.IF_SafeLogic a i_ifSafeLogic.

InvalidUserCommand

Nome enumerazione:

InvalidUserCommand

Valore enumerazione:

21

Descrizione:

Il comando utente richiesto non è valido.

Causa

Soluzione

All'ingresso i_etUserCommand, è stato trasferito un numero il cui valore non può essere correlato ad alcun elemento di ET_UserCommand.

All'ingresso i_etUserCommand, occorre trasferire un elemento dell'enumerazione ET_UserCommand.

Running

Nome enumerazione:

Running

Valore enumerazione:

4

Descrizione:

La POU è occupata nell'elaborazione di una richiesta o procedure interne.

Il blocco funzione è occupato nell'esecuzione di un comando richiesto.

UnknownInternalState

Nome enumerazione:

UnknownInternalState

Valore enumerazione:

22

Descrizione:

La POU ha rilevato uno stato interno indeterminabile.

Causa

Soluzione

La POU ha rilevato uno stato interno indeterminabile.

Disattivare e attivare il blocco funzione per cancellare lo stato di errore e ripetere il comando.

WaitForExecution

Nome enumerazione:

WaitForExecution

Valore enumerazione:

3

Descrizione:

La POU è pronta e in attesa di esecuzione o di un’immissione dell'utente.

Il blocco funzione è pronto e in attesa di esecuzione o di un'immissione dell'utente.