Project75 Inserito: 24 ottobre 2023 Segnala Inserito: 24 ottobre 2023 Buongiorno a tutti, ho un s71200 collegato ad un pannello weintek serie CMT3162x, dovrei trasferire un valore al plc di tipo time_of_day, quindi nel pannello aggiungo un oggetto numerico con la sintassi **:**:**:***, che sarebbero rispettivamente le prime 2 ore, le successive 2 minuti, e poi altre 2 secondi e le ultime 3 i millisecondi, non potendo fare modifiche su plc credo che si dovrebbe ricorrere ad una macro, che dovrebbe trasformare le prime due cifre, che sono le ore, in ms, poi trasformare i minuti in millisecondi, poi ancora trasformare i secondi in millisecondi, infine sommare i risultati ottenuti compresi eventuali millisecondi se ci sarebbero, e trasferire questa somma con risultato in millisecondi alla variabile Time_of_Day del plc. Ho provato ad inserire dall'oggetto numerico un valore in h:m:s:ms però se vorrei ad esempio inserire 1 ora, quindi 01:00:00:000, il pannello trasferisce 10000000ms e non 3600000ms che corrispondono ad un ora, quindi servirebbe una macro che trasformi le h i m i s in ms sommi il tutto compreso i ms se ci sono e lo trasferisce al plc in modo corretto, spero di essermi spiegato bene. Qualcuno sarebbe gentile ad aiutarmi nella macro dal momento che ho scarse conoscenze? Grazie mille
max.bocca Inserita: 24 ottobre 2023 Segnala Inserita: 24 ottobre 2023 Io su hmi di altro vendor ho fatto tre caselle hh, mm, ss e poi un bottone send, il quale lancia un segmento sul plc che lancia una sub sul plc oppure un segmento che moltiplica e somma ((hh*3600)+(mm*60)+ss)*1000....
Project75 Inserita: 24 ottobre 2023 Autore Segnala Inserita: 24 ottobre 2023 33 minuti fa, max.bocca ha scritto: Io su hmi di altro vendor ho fatto tre caselle hh, mm, ss e poi un bottone send, il quale lancia un segmento sul plc che lancia una sub sul plc oppure un segmento che moltiplica e somma ((hh*3600)+(mm*60)+ss)*1000.... Si grazie, potrebbe essere una buona idea, ma vorrei evitare le tre caselle e la modifica al programma sul plc.
cagliostro Inserita: 24 ottobre 2023 Segnala Inserita: 24 ottobre 2023 (modificato) 12 ore fa, Project75 ha scritto: il pannello trasferisce 10000000ms e non 3600000ms Non vorrei ricordar male ma mi sembra che in Weintek nella proprietà della tag, il dato in introduzione attraverso una casella "spuntabile" abilita una normalizzazione che puoi scegliere tra lineare e quadratica. In questo modo puoi normalizzare il dato da inviare al PLC nella giusta rappresentazione. Se poi il tuo fine è anche quello di evitare eventuali modiiche al programma del PLC, allora devi per forza far uso delle macro. Modificato: 24 ottobre 2023 da cagliostro
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora