Esempio di programmazione per il livello base
L'esempio "Controllo a due mani con EDM" dal documento "PLCopen – Comitato tecnico 5 Specifiche tecniche del software di sicurezza Parte 2: Esempi utente Versione 1.01 – Rilascio ufficiale" viene utilizzato come CODESYS Safety Extension esempio di programmazione per un programma di livello base e illustrato come CODESYS Safety Extension Implementazione FBD.
Suggerimento
Per maggiori informazioni sulla programmazione nel livello base, vedere il documento "PLCopen - Comitato tecnico 5 Software di sicurezza".
Descrizione funzionale delle funzioni di sicurezza
In questo esempio vengono utilizzate le seguenti funzioni di sicurezza:
Quando si preme il pulsante di arresto di emergenza, tutti i movimenti pericolosi devono essere arrestati (tramite
SF_EmergencyStop
)L'arresto di emergenza ha la massima priorità. Dopo aver rilasciato il
EStop
pulsante, è necessario un reset tramite reset S0.L'uscita di sicurezza viene attivata premendo entrambi i pulsanti del controllo bimanuale. Il rilascio di uno qualsiasi dei pulsanti bimanuali disattiva l'uscita di sicurezza e arresta il movimento pericoloso tramite i dispositivi di commutazione
K1
EK2
(tramiteSF_TwoHandControlTypeII
)Lo stato di base e lo stato operativo dei dispositivi di commutazione collegati vengono monitorati. Se viene rilevato un errore, l'uscita di sicurezza non può diventare operativa. (tramite
SF_EDM
)Dopo l'attivazione dell'applicazione di sicurezza o funzionale, oppure dopo una condizione di arresto di emergenza, il controllo a due mani deve essere rilasciato e azionato nuovamente per riattivare l'uscita di sicurezza (tramite
SF_OutControl
). Per garantire questo per il riavvio funzionale, il segnale di processo dell'applicazione funzionale viene collegato alActivate
input del comando a due mani FBTHC_S2_S3
(Se il processo di applicazione viene riavviato mentre è attivato il controllo a due mani, il dispositivo passa allo statoC0003
, che segnala l'errore perché entrambi i pulsanti sono premuti quando vengono attivati e impedisce il riavvio.)
In questo esempio esiste un solo stato operativo.


Nome | Tipo di dati | Descrizione |
---|---|---|
|
| Pulsante di arresto di emergenza S1 |
|
| Interruttore S2 collegato al pulsante 1 del comando a due mani |
|
| Interruttore S3 collegato al pulsante 2 del comando a due mani |
|
| Dispositivo di feedback esterno K1 |
|
| Dispositivo di feedback esterno K2 |
|
| Reimpostato dallo sviluppatore con l'interruttore S0 (derivato dall'applicazione funzionale) |
|
| Rilascio del movimento da parte del processo (derivato dall'applicazione funzionale) |
Nome | Tipo di dati | Descrizione |
---|---|---|
|
| Controlla l'attuatore tramite |
|
| Segnalazione di errore di |
|
| Segnalazione di errore di |
|
| Segnalazione di errore di |
|
| Codice diagnostico per
|
|
| Codice diagnostico per
|
|
| Codice diagnostico per
|
Note aggiuntive
Questo esempio può essere utilizzato anche con SF_TwoHandControlTypeIII
.
L'input di Attivare è stato impostato su TRUE
per semplicità. Questo può essere sostituito da una variabile nell'applicazione.
Blocco funzione | Ingresso | Valore costante | Descrizione |
---|---|---|---|
|
|
| Nessun reset automatico all'avvio dell'S-PLC. |
|
| Nessun reset automatico, reset/conferma da parte dello sviluppatore necessaria | |
|
|
| Il ripristino automatico è consentito all'avvio dell'S-PLC. |
|
| Ripristino automatico, nessun ripristino/conferma necessaria da parte dello sviluppatore | |
|
| Dopo l'attivazione del blocco funzione o di una funzione di sicurezza attivata viene richiesta una modifica dinamica del segnale Appl_Control (fronte di salita) ( | |
|
|
| Nessun reset automatico all'avvio dell'S-PLC. |
|
| Il tempo massimo di risposta dei due segnali di feedback
|