Vai al contenuto
PLC Forum


Valori Temperatura Con Wincc V6.0 - Visualizzare decimali ?


Messaggi consigliati

Inserito:

Ciao a tutti.

Come faccio a visualizzare i decimali con wincc v6.0 di una variabile associata a un ingresso analogico.

Io ho configurato la variabile nel seguente modo:

STEP7:

word con segno

WINCC v6.0:

variabile: valore a 16bit con segno

campo I/O: formato decimale, visualizzazione: 999,9

Ecco cosa mi appare in wincc: 218,0 con valore 218 in step7 (dove la temperatura è 21,8°C)

come faccio a portare il n°8 dopo la virgola e visualizzare 21,8 e non 218,0.

Grazie.

Massimo


Inserita: (modificato)

Ciao Massimo,

Dunque..

L'insieme dei numeri decimali involve due sottoinsiemi di propieta' diverse: i numeri interi e i numeri in virgola mobile (floating-point).

La variabile PLC in rappressentazione ingenieristica 2180 potrebbe essere formatata come decimale intero oppure in virgola mobile per poi essere visualizzata.

esempio:

Tag type I/O integer var1 = 2180 ( 16 bits )

Tag type I/O Real var2 = 218,0 ( 32 bits )

Se l'intervallo per la variabile ingenieristica sarebbe stabilito tra 0 e 9999 allora se la formati come intero l'intervallo per la visualizzazione sara' 0 - 999 [°C], incambio in virgola mobile sara' 0,0 - 999,9 [°C].

come faccio a portare il n°8 dopo la virgola e visualizzare 21,8 e non 218,0.

Allora... se lo leggi come numero in virgola mobile ( formatato nel PLC ) :

Tag type I/O Real var2 = ###,# [ 0,0 - 999,9 ] [°C].

Altrimenti lo leggi come intero ... per esempio:

7456 ... poi implementando uno script formati l'intero in una variabile tipo STRING... per dopo visualizzarlo cosi':

Se Var_String e' una STRING...

( " ###.# " , Var_String[0], Var_String[1] ,Var_String[2] ,Var_String[3] ).... 745.6 [°C]

Non so ... per formatare la varabile "Int" come "String" puoi utilizzare la member "Format" della Classe "CString" oppure "sprintf" .. etc.

Link CString.

Link CString

Link sprintf

Modificato: da Savino
Inserita:

Dapprima una domanda: Sei sicuro che Il WinCC sia la versione 6.0 (non esiste) o si tratta di Protool?

In ogni caso io di solito faccio la rappresentazione 99999 e imposto la voce Sposta punto decimale a 1

Inserita:

Lavorando dal solo lato WinCC 6.0 Crea un campo di uscita, selezionalo, tasto destro del mouse, proprieta', Uscita/Ingresso, seleziona il campo Dinamico di valore di uscita, tasto destro e apri la "Finestra dinamica"

Nel campo dell'Espressione-Formula" scrivi la formula 'tag_variabile' / 10.0 e seleziona "Diretto" come campo di validita'.

  • 2 weeks later...
Inserita:

Ok, ringrazio tutti ma mi è tornato più utile il messaggio di rguaresc.

Adesso ho un altro problema:

nel caso di campo di uscita, ok.

Invece se devo usare un campo I/O con impostazione della temperatura manualmente, come faccio.

Se inserisco 21,6 in wincc, nel plc mi ritrovo 22.

P.S. per Simone70 : In che senso non esiste? Io ho wincc v6.0 e l'ho appena aggiornato alla v.6.4

Grazie.

Massimo

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...