EQ (=)

L'istruzione EQ esegue il confronto tra il primo ingresso e il secondo per stabilire l'uguaglianza di tipi di dati Integer, Real, Time, Date e String.
Dettagli operazione:
  • La prova di uguaglianza dei valori Durata non è raccomandata per i blocchi istruzione TON, TP e TOF.
  • L'utilizzo del tipo di dati Real per confronti di uguaglianza non è raccomandato poiché nelle operazioni matematiche i numeri vengono arrotondati in modo diverso rispetto a quanto apparivano sul display di uscita delle variabili. Di conseguenza, due valori di uscita possono sembrare uguali sul display, tuttavia la valutazione risulterà comunque falsa. Ad esempio, quando si confronta 23,500001 con 23,499999, entrambi vengono visualizzati come 23,5 sul display di ingresso delle variabili, ma nel controllore non saranno uguali.
Lingue supportate: Diagramma a blocchi funzione, Diagramma Ladder, Testo strutturato.
Questa istruzione vale per i controllori Micro810, L20E, L50E e L70E.
EQ
EQ
Parametri EQ
Parametro
Tipo di parametro
Tipo di dati
Descrizione
EN
Ingresso
BOOL
Quando è impostato su vero, l'istruzione è abilitata.
  • TRUE: Eseguire il calcolo corrente.
  • FALSE: Non viene eseguito alcun calcolo.
Applicabile alle programmazioni in diagramma ladder.
i1
Ingresso
BOOL
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
STRING
Tutti gli ingressi devono essere dello stesso tipo di dati.
L'inserimento del valore Durata si applica ai linguaggi Testo strutturato, Diagramma Ladder e Diagramma a blocchi funzione.
il tipo di dati Real non è raccomandato.
i2
Ingresso
BOOL
SINT
USINT
BYTE
INT
UINT
WORD
DINT
UDINT
DWORD
LINT
ULINT
LWORD
REAL
LREAL
TIME
DATE
STRING
o1
Uscita
BOOL
TRUE se i1 = i2.

Confronto dei valori Real utilizzando SUB (-), ABS e LT (<) come esempio

Il tipo di dati Real non è consigliabile per confrontare l'uguaglianza dei valori a causa delle differenze nell'arrotondamento dei numeri. Due valori di uscita potrebbero sembrare uguali su un display
FactoryTalk Design Workbench
, ma comunque valutati come false.
Ad esempio, quando si confronta 23,500001 con 23,499999, entrambi vengono visualizzati come 23,5 sul display di ingresso delle variabili, ma nel controllore non saranno uguali.
Per verificare se due tipi di dati Real sono uguali, è possibile usare l'istruzione SUB per ottenere la differenza tra i valori e quindi determinare se la differenza è inferiore a un valore con precisione stabilita. Vedere l'esempio seguente di programma LD per il confronto tra i valori di due dati di tipo reale.
Confronto dei valori Real utilizzando SUB (-), ABS e LT (<) come esempio
Confronto dei valori Real utilizzando SUB (-), ABS e LT (<) come esempio

Esempi di EQ

Esempio di Diagramma a blocchi funzione EQ
Esempio di Diagramma a blocchi funzione EQ
Esempio di programma Diagramma Ladder EQ
Esempio di programma Diagramma Ladder EQ
(* ST Equivalence: *) aresult := (10 = 25); (* aresult is FALSE *) mresult := ('ab' = 'ab'); (* mresult is TRUE *)
Fornire un feedback
Hai domande o feedback su questa documentazione? invia il tuo feedback qui.
Normal