Skip to main content

SF_TestableSafetySensor

Suggerimento

La versione del blocco funzione come descritto qui corrisponde all'ultima versione del blocco funzione in Elenco delle versioni dei blocchi funzionali.

Norme di sicurezza applicabili

SF_TestableSafetySensor è un blocco funzione PLCopen certificato. Per informazioni dettagliate sugli standard applicati, vedere "PLCopen – Comitato tecnico 5 – Software di sicurezza".

Importante

I requisiti elencati nelle norme devono essere soddisfatti dall'utente.

Descrizione dell'interfaccia

Questo FB viene utilizzato per il test periodico di un sensore elettronico/ottico testabile o di un'apparecchiatura di protezione elettrosensibile di tipo 2 (ESPE). L'FB può essere utilizzato anche per sensori di sicurezza testabili esternamente (ESPE: Dispositivo di protezione elettrosensibile, ad esempio raggio luminoso). Monitora anche lo stato del sensore di sicurezza.

Tabella 50. VAR_INPUT

Nome

Tipo di dati

Valore iniziale

Descrizione, valori dei parametri

Activate

BOOL

FALSE

Parametri di input generali

S_OSSD_In

SAFEBOOL

FALSE

Variabile

Stato dell'uscita del sensore, ad esempio griglia ottica.

FALSE: Sensore di sicurezza in stato di test o richiesta di risposta orientata alla sicurezza.

TRUE: Sensore in stato per stato operativo normale

StartTest

BOOL

FALSE

Variabile

Input per avviare il test del sensore. Imposta S_TestOut e avvia la funzione di monitoraggio del tempo interno dell'FB.

FALSE: Nessun test richiesto.

TRUE: Test richiesto

TestTime

TIME

T#10ms

Costante. Intervallo: 0 … 150 ms.

Tempo di prova per il sensore di sicurezza.

È necessario rispettare la nota di avvertenza 'TestTime'.

NoExternalTest

BOOL

FALSE

Costante

Indica se è supportato il test manuale del sensore esterno.

FALSE: È supportato il test del sensore esterno manuale. Dopo un test del sensore automatico difettoso, un test automatico è possibile solo di nuovo dopo una sequenza completa di commutazione manuale del sensore.

TRUE: Il test del sensore esterno manuale non è supportato. Dopo un test del sensore automatico difettoso, è possibile di nuovo un test automatico, senza una commutazione manuale del sensore.

S_StartReset

SAFEBOOL

FALSE

Parametri di input generali

S_AutoReset

SAFEBOOL

FALSE

Parametri di input generali

Reset

BOOL

FALSE

Parametri di input generali



Tempo di prova

Per gli sviluppatori di livello esteso: TestTime input deve essere impostato su un valore costante. Questo valore non deve essere modificato per le chiamate.

Tabella 51. VAR_OUTPUT

Nome

Tipo di dati

Valore iniziale

Descrizione, valori dei parametri

Ready

BOOL

FALSE

Parametri di output generali

S_OSSD_Out

SAFEBOOL

TRUE

Uscita orientata alla sicurezza che visualizza lo stato dell'ESPE.

FALSE: Il sensore richiede un'azione orientata alla sicurezza o un errore di prova.

TRUE: Il sensore non richiede un'azione orientata alla sicurezza, E errore di test.

S_TestOut

SAFEBOOL

TRUE

Accoppiato con l'ingresso di prova del sensore. Sebbene specificato come SAFEBOOL, in pratica il segnale è spesso collegato ad un BOOL produzione.

FALSE: Richiesta di prova inviata

TRUE: Nessuna richiesta di prova

TestPossible

BOOL

FALSE

Segnale di feedback al processo.

FALSE: Non è possibile effettuare un test automatico del sensore.

TRUE: È possibile effettuare un test automatico del sensore.

TestExecuted

BOOL

FALSE

Un fronte positivo del segnale indica l'esecuzione corretta del test automatico del sensore.

FALSE:

  • Non è stato ancora eseguito un test automatico del sensore.

  • È attivo un test automatico del sensore.

  • Un test automatico del sensore non è riuscito.

TRUE: Il test del sensore è stato eseguito con successo.

Error

BOOL

FALSE

Parametri di output generali

DiagCode

WORD

16#0000

Codici diagnostici



Suggerimento

OSSD sta per: Output Signal Switching Device

Figura 82. Blocco funzione: SF_TestableSafetySensor
Blocco funzione: SF_TestableSafetySensor


Descrizione funzionale

Tipo 2 ESPE viene utilizzato per test periodici. È destinato a rilevare un errore pericoloso (ad esempio, guasto del sensore, tempo di risposta superiore al tempo specificato). Il segnale di test dovrebbe simulare il funzionamento del controllo di misurazione e la durata del test periodico non dovrebbe superare i 150 ms. Il test dovrebbe verificare che ogni raggio luminoso funzioni nel modo specificato dall'utente. Se il test dovesse essere avviato da un sistema di controllo esterno orientato alla sicurezza (ad esempio una macchina), allora il ESPE dovrebbe essere dotato di apparecchiatura di input idonea (ad esempio terminale).

Importante

IL ESPE deve essere selezionato in base agli standard di prodotto e alle categorie richieste in base agli standard.

È necessario monitorare con una funzionalità separata che il test venga avviato entro intervalli appropriati.

Attenzione

IL S_StartReset E S_AutoReset gli ingressi devono essere attivati solo se è garantito che non possa verificarsi alcuna situazione pericolosa all'avvio dell'S-PLC.

Procedura. Modalità di prova
  1. StartTest = TRUE: STestOut = FALSE. Inizio del tempo di monitoraggio

  2. S_TestOut il segnale arresta il trasmettitore (monitoraggio di TestTime iniziato per la prima volta)

  3. S_OSSD_In passa da TRUE A FALSE (monitoraggio di TestTime iniziato per la seconda volta)

  4. S_TestOut passa da FALSE A TRUE

  5. Avviare il trasmettitore

  6. Sensore S_OSSD_In Passa da FALSE A TRUE

  7. Interrompere il monitoraggio del tempo

  8. S_OSSD_Out È TRUE durante il test

. Blocco di avvio opzionale
  • Blocco avvio dopo l'attivazione del FB

  • Blocco di avvio dopo l'interruzione della protezione

Diagramma di stato

Figura 83. Diagramma di stato: SF_TestableSafetySensor
Diagramma di stato: SF_TestableSafetySensor


Suggerimento

Nota: il passaggio da qualsiasi stato a Idle stato, avviato da Activate = FALSE, non viene mostrato. In ogni caso, queste transizioni hanno la priorità più alta.

Diagramma temporale

Figura 84. Diagramma temporale: SF_TestableSafetySensor
Diagramma temporale: SF_TestableSafetySensor


Rilevamento degli errori

Le seguenti condizioni forzano una transizione allo stato di errore:

  • Timeout del test senza feedback ritardato del sensore

  • Test senza feedback del segnale del sensore

  • Segnale di reset statico non valido nel processo

  • Controllo di plausibilità dell'impostazione del tempo di monitoraggio

Comportamento di errore

In caso di evento di errore, il S_OSSD_Out l'output è impostato su FALSE e rimane in questo stato. Non appena l'errore è stato corretto e il sensore è in funzione (S_OSSD_In = TRUE), un reset rimuove lo stato di errore e imposta il S_OSSD_Out uscita a TRUE.

Se S_AutoReset = FALSE, allora è necessario un bordo di trigger ascendente al momento del Reset.

Dopo il passaggio da S_OSSD_In A TRUE, il blocco di avvio opzionale può essere riavviato da un fronte di salita al Reset ingresso.

Dopo l'attivazione del blocco funzione, il blocco di avvio opzionale può essere riavviato da un bordo di trigger in salita al Reset ingresso.

Codici di errore e di stato specifici di FB

Tabella 52. Codici di errore specifici di FB

DiagCode

Nome della statua

Descrizione dello stato e impostazione dell'output

16#C000

Parameter Error

Valore non valido del parametro TestTime

Valori compresi tra 0 ms E 150 ms sono possibili.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C001

Reset Error 1

Condizione di reset statico rilevata dopo l'attivazione di FB

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#C002

Reset Error 2

Statico Reset condizione rilevata nello stato 8003

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C003

Reset Error 3

Condizione di reset statico rilevata nello stato C010.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C004

Reset Error 4

Condizione di ripristino statico rilevata nello stato C020.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C005

Reset Error 5

Condizione di reset statico rilevata nello stato 8006

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C006

Reset Error 6

Condizione di reset statico rilevata nello stato C000.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = TRUE

16#C007

Reset Error 7

Condizione di reset statico rilevata nello stato 8013

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = TRUE

Error = TRUE

16#C010

Test Error 1

Tempo di prova scaduto nello stato 8020

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted= FALSE

Error = TRUE

16#C020

Test Error 2

Tempo di prova scaduto nello stato 8030

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted= FALSE

Error = TRUE



Tabella 53. Codici di stato specifici di FB

DiagCode

Nome della statua

Descrizione dello stato e impostazione dell'output

16#0000

Idle

Il blocco funzione non è attivo (stato di base).

Ready = FALSE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8001

Init

È stata rilevata un'attivazione dal blocco funzione.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8002

ESPE Interrupted 1

L'FB ha rilevato un requisito di sicurezza.

L'interruttore non è ancora stato testato automaticamente.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8003

Wait for Reset 1

Attendi il bordo di attivazione in salita dopo lo stato 16#8002.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8004

External Function Test

Il test automatico del sensore non è riuscito.

È necessario un test manuale del sensore esterno.

Sul blocco funzionale è stato attivato il supporto per il test manuale del sensore esterno necessario (NoExternalTest = FALSE).

È richiesto un fronte di segnale negativo sul sensore.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8005

ESPE Interrupted

External Test

Il test automatico del sensore non è riuscito.

È necessario un test manuale del sensore esterno.

Sul blocco funzionale è stato attivato il supporto per il test manuale del sensore esterno necessario (NoExternalTest = FALSE).

UN TRUE è richiesto un segnale al sensore.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8006

End External Test

Il test automatico del sensore non è riuscito.

È necessario un test manuale del sensore esterno.

Sul blocco funzionale è stato attivato il supporto per il test manuale del sensore esterno necessario (NoExternalTest = FALSE).

Il test manuale esterno è completato.

Il dispositivo ha rilevato un ciclo completo di commutazione del sensore (controllato esternamente).

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8010

ESPE Free No Test

L'FB non ha rilevato alcun requisito di sicurezza.

Il sensore non è stato testato automaticamente.

Ready = TRUE

S_OSSD_Out = TRUE

S_TestOut = TRUE

TestPossible = TRUE

TestExecuted = FALSE

Error = FALSE

16#8020

Test Request

Il test automatico del sensore è attivo. Il timer di test è avviato per la prima volta. Il segnale del trasmettitore è stato disattivato dal blocco funzione.

Il segnale del ricevitore deve seguire il segnale del trasmettitore.

Ready = TRUE

S_OSSD_Out = TRUE

S_TestOut = FALSE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8030

Test Active

Il test automatico del sensore è attivo. Il timer di test è avviato per la seconda volta. Il segnale del trasmettitore del sensore è stato attivato dal blocco funzione.

Il segnale del ricevitore deve seguire il segnale del trasmettitore.

Ready = TRUE

S_OSSD_Out = TRUE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted = FALSE

Error = FALSE

16#8000

ESPE Free Test ok

L'FB non ha rilevato alcun requisito di sicurezza.

Il sensore è stato testato automaticamente.

Ready = TRUE

S_OSSD_Out = TRUE

S_TestOut = TRUE

TestPossible = TRUE

TestExecuted =TRUE

Error = FALSE

16#8012

ESPE Interrupted 2

L'FB ha rilevato un requisito di sicurezza. L'interruttore è stato testato automaticamente.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted =TRUE

Error = FALSE

16#8013

Wait for Reset 2

Attendi un bordo di trigger ascendente di Reset dopo lo stato 16#8012.

Ready = TRUE

S_OSSD_Out = FALSE

S_TestOut = TRUE

TestPossible = FALSE

TestExecuted =TRUE

Error = FALSE