Principio di confronto con un tipo Main
Il blocco di confronto con il tipo Main gestisce le soglie, le uscite riflesse e gli eventi nel seguente modo:
Il confronto viene configurato nella schermata di configurazione attivando almeno una soglia.
Il confronto può essere utilizzato per attivare:
oazione di programmazione sulle soglie
oun evento su soglia associato a un task esterno
Il tipo Main può gestire fino a 2 soglie.
Una soglia è un valore configurato, confrontato con il valore di conteggio corrente. Le soglie sono utilizzate per definire fino a 3 zone o per reagire al superamento di un valore.
Sono definite dalla configurazione e possono anche essere regolate nel programma applicativo usando il blocco funzione HSCSetParam.
Se Sogliax (x= 0, 1) è configurata e il confronto è attivato (EN_Compare = TRUE), il pin di uscita THx del blocco funzione è:
oOpzione 1:
Conteggio avanti – L'uscita riflessa x è TRUE quando il valore < TH0 (reimpostata quando il valore = TH0).
Conteggio indietro – L'uscita riflessa x è TRUE quando il valore ≤ TH0 (reimpostata quando il valore = TH0).
oOpzione 2:
Conteggio avanti – L'uscita riflessa x è TRUE quando TH0 ≤ valore < TH1 (impostata quando il valore = TH0 e reimpostata quando il valore = TH1).
Conteggio indietro – L'uscita riflessa x è TRUE quando TH0 < valore ≤ TH1 (impostata quando il valore = TH1 e reimpostata quando il valore = TH0).
oOpzione 3:
Conteggio avanti – L'uscita riflessa x è TRUE quando il valore ≥TH1 (impostata quando il valore = TH1).
Conteggio indietro – L'uscita riflessa x è TRUE quando il valore > TH1 (reimpostata quando il valore = TH1).
NOTA: Quando EN_Compare è impostato su FALSE sul blocco funzione, le funzioni di confronto sono disattivate, inclusi i task esterni attivati da un evento di soglia e le uscite riflesse.
Questo diagramma mostra lo stato dell'uscita riflessa (uscita digitale rapida) per ogni singola opzione:
TH0 e TH1 sono gestite dal task e aggiornate alla velocità del tempo di ciclo del task.
La configurazione di un evento in corrispondenza del superamento della soglia permette di attivare un task esterno. Si può scegliere di attivare un evento quando si supera verso l'alto, verso il basso o in entrambe le direzioni il valore di soglia configurato.
Quando l'HSC sta contando:
oavanti, il task di eventi esterni configurato viene attivato quando il valore di conteggio = valore di soglia + 1
oindietro, il task di eventi esterni configurato viene attivato quando il valore di conteggio = valore di soglia - 1
In caso di overflow o underflow, non viene attivato alcun task di eventi esterni.
Comportamento delle uscite riflesse
La configurazione delle uscite riflesse permette di attivare le uscite fisiche riflesse.
Queste uscite non sono controllate nel contesto del task, riducendo così il tempo di reazione al minimo. Ciò è adatto per le operazioni che necessitano di un'esecuzione rapida.
È possibile accedere alle uscite utilizzate dal contatore ad alta velocità soltanto attraverso il blocco funzione. Non è possibile leggerle o scriverle direttamente all'interno dell'applicazione.
NOTA: Lo stato delle uscite riflesse dipende dalla configurazione.
TH0, TH1, Reflex0, Reflex1, Out0, Out1 e le uscite fisiche funzioneranno in base ai valori di soglia, anche quando questi ultimi verranno modificati dinamicamente, fino a che SuspendCompare= TRUE.
Prestare quindi attenzione quando i confronti con le soglie sono attivi per evitare risultati imprevisti dalle uscite riflesse fisiche e dalle uscite del blocco funzione HSCMain. Se la funzione di confronto è disattivata, i valori di soglia possono essere modificati senza il rischio di provocare risultati imprevisti. Tuttavia, se la funzione di confronto è abilitata, occorre sospendere almeno il confronto delle soglie mentre si modificano i valori di soglia.
|
FUNZIONAMENTO ANOMALO DELL'APPARECCHIATURA |
oNon modificare i valori di soglia senza usare l'ingresso SuspendCompare se EN_Compare = 1. oAssicurarsi che TH0 sia inferiore a TH1 prima di riattivare la funzione di confronto. |
Il mancato rispetto di queste istruzioni può provocare morte, gravi infortuni o danni alle apparecchiature. |
Passo |
Azione |
---|---|
1 |
Impostare SuspendCompare su TRUE. Il confronto è congelato al valore attuale: oI bit di uscita TH0, TH1, Reflex0, Reflex1, Out0, Out1 del blocco mantengono l'ultimo valore. oLe uscite fisiche 0, 1 mantengono l'ultimo valore NOTA: EN_Compare, EN_Out0, EN_Out1, F_Out0, F_Out1 restano operativi mentre SuspendCompare è impostato. |
2 |
Modificare i valori di soglia come necessario usando il blocco funzione HSCSetParam. NOTA: Seguire queste regole per configurare i valori di soglia: oPer la modalità One-shot: 0 < Valore soglia 0 < Valore soglia 1 < (Preimpostazione - 1) oPer la modalità Modulo-Loop: 0 < Valore soglia 0 < Valore soglia 1 < (Modulo - 1) oPer la modalità Free-large: 0 < Valore soglia 0 < Valore soglia 1 I valori di soglia non sono limitati dal valore Preimpostato per la modalità Free-large. |
3 |
Impostare SuspendCompare su FALSE. I nuovi valori di soglia vengono applicati e il confronto viene ripreso. |