Comparatore di valori

Forum di supporto alla configurazione e utilizzo
per HomePLC Ladder IEC 1131-3 versione 1 e 2

In Questo Forum si discute solo della configurazione e della programmazione Ladder per altri tipi di programmazione e configurazioni utilizzare i Forum dedicati.
YahooSeeker [Bot]
Messaggi: 80
Iscritto il: gio 14 gen 2021, 18:56

Re: Comparatore di valori

Messaggio da YahooSeeker [Bot] »

Buongiorno vorrei sapere come un comparatore di valori nel mio caso temperature che differenza c'e' impostando una word rispetto a ident .

La libreria Ident è una costante quindi non la si può impostare da Visual Basic o altro linguaggio o Protocollo
per impostare i valori si può usare un READVAR per valori a 16 Bit (1 Word esp: %MW1000 > DTHP1000)
per impostare i valori si può usare un READVAR32 per valori a 32 Bit (1 Double Word esp: %MW1000 + %MW1001 > DTHP1000 + DTHP1001)

I valori in LadderHome sono sempre espressi come valori interi decimali,
esempio una temperatura può essere letta come 255 che in realtà indica 25.5 °C
quindi se leggo una DTHP1000 con valore 255 la posso dividere direttamente per 10 e ottengo appunto la visualizzazione in virgola mobile 25,5 a video.

Al contrario se devo comparare il valore letto nel ladder 255 con una CMP_W inviando un setpoint da Supervisione o altro dovrò comunque inviare un valore intero, in questo caso puoi fare in vari modi tra cui visualizzare il valore in virgola mobile
e poi togliere la virgola quando lo invii con le DTHP al HomePLC.

Stando attento all'errore potenziale del 25 gradi dato che se leggi 25, 0 gradi il programma lo indica come 25 e questo valore
non può essere poi inviato con due caratteri, serve quindi una formattazione che preveda in ogni caso 3 caratteri per valori > 9 e 2 caratteri per valori < 10.
Se si invia 25 la comparazione verrà eseguita su 2,5 Gradi causando un errore potenziale.