Home › Forum › Terminali operatore (Weintek) › Lettura Variabili “Time_Of_Day – TOD” da PLC Siemens ET200 SP
- Questo topic ha 2 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 4 anni, 5 mesi fa da
GABRIELEGALLI.
-
AutorePost
-
Dicembre 14, 2021 alle 5:57 pm #62764
toposauro
PartecipanteBuongiorno, non sono riuscito a trovare nel Forum la risposta al mio problema, quindi cerco di spiegarlo sperando di avere un chiarimento in merito. Premetto che uso il PLC per fare Domotica in abitazione.
Il problema è il seguente:
In un PLC Siemens ho creato un blocco Dati dove ci sono una serie di variabili che elaborano un dato che arriva da un Ingresso Analogico, usato per misurare la temperatura esterna con sonda e convertitore. Con varie elaborazioni nel blocco ci sono dei Dati Float, Int, che riesco a leggere direttamente dal Blocco con gli oggetti a disposizione su EasyBuilder (Numerico).Per le Date non essendoci (almeno mi pare) oggetti che leggono direttamente tale valore dai blocchi di origine, ho creato una Macro che legge il Dato (GetData) e tramite la funzione DATE2ASCII converto in stringa, invio il dato ad un indirizzo del Weintek, e lo leggo tramite l’oggetto ASCII di EasyBuilder.
Fino a quà tutto bene, prima di spiegare dove si presenta il problema devo premettere che il blocco mi memorizza giornalmente i seguenti dati:
Temperatura Attuale (Float), Temperatura Minima (Float), Data Temperatura Minima (Date), Ora Temperatura Minima (Time_Of_Day – TOD), e tanti altri sempre di Tipo Float, dove però non ho problemi a leggere.
Il problema è sull’orario, per es Ora Temperatura Minima (Time_Of_Day – TOD da Siemens), riesco a leggere il valore con GetData ma nelle macro non c’è una funzione che mi converta il Time_Of_Day in Stringa per poi poterla leggere con un oggetto ASCII in EasyBuilder. Naturalmente se non converto in Stringa escono nell’oggetto ASCII dei simboli senza senso.
Qualcuno ha qualche dritta?
Dicembre 14, 2021 alle 6:05 pm #62844Sergio Bertana
Amministratore del forumPurtropo non conosco i PLC Siemens, io naturalmente utilizzo PLC Elsist, e problemi come il tuo lo risolviamo ad esempio scrivendo direttamente un file CSV nel file system del PLC (Vedi StringToLogFile). Il file potrà poi essere acquisito in FTP (Il PLC ha un server FTP) oppure inviato direttamente dal PLC verso un server FTP remoto (Vedi FTPClient).
Nel tuo caso perchè non utilizzi l’oggetto Data Sampling direttamente nel pannello, in questo modo puoi leggere i valori dalle variabili PLC e registrarli in un file storico sul pannello già con il relativo riferimento di tempo. Se cerchi nel forum “Data Sampling” troverai topic che trattano l’argomento con programmi di esempio.
Oppure gestisci un orologio in EpochTime sul PLC e così dal pannello puoi acquisire il valore su di una variabile LWORD. Poi se ti serve data/ora dovrai fare una macro di conversione da EpochTime a data/ora.
Aprile 27, 2022 alle 5:43 pm #65072GABRIELEGALLI
PartecipanteBuonpomeriggio.
Ho appena iniziato a utilizzare Easy Builder PRO con un PLC ELSIST. Non riesco a visualizzare su di un Oggetto Grafico Angolare l’uscita di un convertitore ADC che su LOGICLAB ha indirizzo %MD100.20 e su EasyBuilder %MDW 40020. Potrebbe darmi un’indicazione? Grazie
-
AutorePost
- Devi essere connesso per rispondere a questo topic.