biondo Inserito: 20 febbraio Segnala Inserito: 20 febbraio Ciao a tutti, mi trovo ad utilizzare i pannelli Unified serie Comfort.Sto cercando di fare dei test per capire meglio come poterli integrare poi sul campo. Ho un problema con le variabili di tipo TIME 🥵collegate direttamente al PLC.Nel campo IO del pannello se dichiaro la variabile di tipo TIME, quando inserisco compare un bruttissimo tastierino per inserire ore,minuti e secondi.Come posso evitare ed inserire magari un numero di tipo REAL e poi convertirlo in TIME con uno script ? Qualcuno ha già affrontato questo ? Come avete risolto ? Grazie per le eventuali dritte.Buona giornata
beppeconti Inserita: 20 febbraio Segnala Inserita: 20 febbraio (modificato) Prova a cambiare la formattazione del campo "Output Format". La formattazione segue lo standard UNICODE CLDR. Modificato: 20 febbraio da beppeconti
biondo Inserita: 21 febbraio Autore Segnala Inserita: 21 febbraio Ciao al momento mi sono fatto un FB "mio_timer" in cui a pannello gli passo un valore real in formato x.xx con il tastierino decente e classico (per me sono es 3,45s) lo moltiplico per 1000 e lo converto in UDINT, poi lo trasformo in variabile di tipo TIME per poi passarglielo ad un timer di tipo TON.Funziona ....ma che menata!!! Non c'è un sistema per farlo con Java script ? in modo da non toccare proprio il PLC....sto pensando a impianti vecchi con parecchi settaggi in formato time....come posso risolvere ?Qualche idea ?💡Vorrei gestire ogni tempo a pannello facendo la stessa cosa in Java.
Mattia Spoldi Inserita: 21 febbraio Segnala Inserita: 21 febbraio qui ti spiegano come fare, se sei con tia 20/21 è semplice, con quelli più vecchi è scomodo ma si può comunque https://support.industry.siemens.com/cs/document/109816808/wincc-unified-display-integer-value-in-an-i-o-field-with-decimal-places?dti=0&lc=en-IT
biondo Inserita: 23 febbraio Autore Segnala Inserita: 23 febbraio Ciao Mattia, quello che intendo è usare nel campo dati un dato di dipo real formattato con {F} in modo da avere il formato x,xx poi devo convertirlo per forza in UDINT e poi in TIME.Quindi come faccio in JAVA ? Esiste una sorta di REAL_TO_UDINT e successivamente un UDINT_TO_TIME ? io non l'ho trovato e chiedo lumi su come poter fare... o magari c'è un sistema migliore che mi sfugge.Tutto questo per passare il valore poi convertito nel campo PT di un timer di tipo TON. Grazie a tutti
Mattia Spoldi Inserita: 23 febbraio Segnala Inserita: 23 febbraio non c'è bisogno di conversioni, se guardi nella sezione B del link ti spiega come fare
biondo Inserita: 25 febbraio Autore Segnala Inserita: 25 febbraio Il 23/02/2026 alle 18:47 , Mattia Spoldi ha scritto: non c'è bisogno di conversioni, se guardi nella sezione B del link ti spiega come fare La parte B riguarda solo un numero intero e poi convertito in decimali, ma non è il mio caso.... Non posso passare ad un timer (TON) come PT un intero o un real o un udint...non funziona.Devo passargli per forza un dato di tipo TIME. Quindi come faccio nel mio campo IO trasformarlo ?
84paolo Inserita: 25 febbraio Segnala Inserita: 25 febbraio Ad un timer puoi anche passare un DINT dove il numero contenuto indica i millisecondi. se a pannello metti i secondi poi fai per 1000, oppure metti direttamente la variabile DINT con 3 virgole
biondo Inserita: 26 febbraio Autore Segnala Inserita: 26 febbraio Grazie 84paolo. Ho risolto e condivido con voi , dichiarato la variabile DINT che ho assegnato poi al PT del Timer. Nel pannello Unified ho messo nel IO Field , formato di emissione {F} , Valore di processo : export function Mio_IO_Field_ProcessValue_Trigger(item, triggerDataSet) { var value; let tag = Tags("HMI_Var_Dint"); value = tag.Read()/1000; return value; } EVENTI --> (inserimento terminato) ho aggiunto lo script : export function Mio_IO_Field_OnInputFinished(item, value) { let tag = Tags("HMI_Var_Dint"); let varErr = tag.Write(value*1000,1); //gestione errore if (varErr =! 0) { item.ProcessValue=tag.Read()/1000 } } così facendo inserisco a video 1,33 correttamente e lato plc sul mio timer vedo 1330 Grazie a tutti.😄
mdc93 Inserita: 1 ora fa Segnala Inserita: 1 ora fa (modificato) ***** N. d. m. ***** Per favore leggi il regolamento: gli accodamenti non somo mmai ammessi. Se vuoi risposte devi aprire una nuova discussione. Modificato: 54 minuti fa da Livio Orsini
acquaman Inserita: 55 minuti fa Segnala Inserita: 55 minuti fa No, mettete come formato di emissione 'Durata' {P}, e si gestisce lui anche l'immissione dei dati senza dover fare nessuna conversione, finalmente.
Messaggi consigliati