CTD / CTD_S – Contatore giù

Questo blocco di funzione contatore conta dall'alto verso il basso. In caso di fronte ascendente all'ingresso CD e di LOAD = FALSE, CV decrementa di uno. Quando CV raggiunge il valore 0, Q diventa TRUE e il blocco di funzione smette di contare. Quando LOAD = TRUE, il contatore viene inizializzato con il valore dell'ingresso PV. Per abilitare il procedimento di conteggio, l'ingresso LOAD deve essere FALSE. Altrimenti, il contatore continua a venire re-inizializzato.

È disponibile sia come blocco di funzione standard CTD sia come blocco di funzione di sicurezza CTD_S.

CTD

Parametro

Tipi di dati

Descrizione

CD

BOOL

Al rilevamento di un fronte ascendente, CV decrementa di uno.

LOAD

BOOL

Se TRUE, il contatore viene inizializzato con PV.

Se FALSE, viene abilitato il conteggio.

PV

INT

Valore preimpostato

Q

BOOL

TRUE quando CV = 0

CV

INT

Risultato conteggio

CTD_S

Parametro

Tipi di dati

Descrizione

CD

SAFEBOOL

Al rilevamento di un fronte ascendente, CV decrementa di uno.

LOAD

SAFEBOOL

Se TRUE, il contatore viene inizializzato con PV.

Se FALSE, viene abilitato il conteggio.

PV

SAFEINT

Valore preimpostato

Q

SAFEBOOL

TRUE quando CV = 0

CV

SAFEINT

Risultato conteggio

NOTA:

I blocchi di funzione devono essere istanziati. Come le variabili, le istanze devono essere dichiarate prima di poterle inserire nel corpo di codice. Le istanze devono essere uniche nell'ambito della UOP. Nell'esempio è stato usato il nome d'istanza 'CTD_S_1'.

Esempio di dichiarazione di un blocco di funzione di sicurezza CTD_S

Dichiarazione delle variabili

Dichiarazioni locali:

Dichiarazioni globali (variabili I/O):

NOTA:

Volendo usare il blocco di funzione standard CTD nel vostro foglio di lavoro (FdL) di codice, dovete selezionare il tipo di dati 'CTD' per l'istanza del blocco di funzione nel foglio di lavoro per variabili locali. Di conseguenza, dovrete usare i tipi di dati 'BOOL' e 'INT' e non 'SAFEBOOL' e 'SAFEINT'.