Vai al contenuto
PLC Forum


Calcolo Della Media Di Un Avlore Analogico Dell'ultima Ora Corrent


virgolanera

Messaggi consigliati

Dovrei calcolare il valore medio di una misura analogica, dell'ultima ora corrente (dall'istante corrente ai precedenti 60 minuti). Il valore lo devo leggere, diciamo una volta ogni 5 secondi.

Visto che è un dato che farà solo supervisione, e non sarà collegata a nessuna automazione (allarmi, blocchi...) volevo cercare di ridurre il più possibile l'uso di memoria (sono gia abb carico). Dunque, secondo voi, qual'è il metodo meno "costoso" per realizzarlo??

Pensavo di creare una sorta di array, e ogni tot secondi far entrare un valore da una parte e farlo uscire dall'altro. O meglio. Di usarne due, perche con uno solo avrei valori troppo alti e rischio di andare in overflow. In uno calcolerei la media del minuto. In un altro piu grande, da 60, calcolerei la media oraria.

Ancora è solo un'idea e non l'ho messa in pratica.

Link al commento
Condividi su altri siti


Se ti serve solo per la supervisione dell'impianto, perchè non demandare tutto al supervisore?

Leggere un valore ogni 5"-10" non è un problema per il supervisore; come non ci sono problemi di memoria per un vettore di 600-1200 elementi. Anche la lunghezza di parola non è un problema, qualsiasi sia il linguaggio usato dal supervisore, lavorare in interi lunghi o real deve essere possibile. Nel PLC ti risparmieresti anche i calcoli relativi alla media che occupano tempo e memoria.

Link al commento
Condividi su altri siti

Se ti serve solo per la supervisione dell'impianto, perchè non demandare tutto al supervisore?

Sinceramente perchè in Movicon, non saprei come fare. (Ci sono di default medie giornaliere, settimanali... ma non orarie). Sto leggendo il manuale, ma per ora non vedo soluzioni accettabili..

Con il plc invece in un modo o nell'altro me la posso calcolare..

Link al commento
Condividi su altri siti

Non mi dirai che Movicon non permette di memorizzare dati, farne la somma e dividerne il risultato per un numero.

Fatta nel PLC non ci sono trucchi. Se esesgui una media aritmetica devi memorizzare i valori, sommarli e dividerne il risultato per il numero dei valori. La tua idea iniziale non è una media, ma è la media di valori medi. Può anche essere ininfluente ai fini pratici, però non è la media aritmetica delle letture orarie.

Puoi ovviare parzialmente con l'uso di una media scorrevole su di una finestra di un ora (sliding window); questo algoritmo smeplifica un poco le operazioni, però devi tenerti comunque in memoria tutti gli elementi del vettore.

Link al commento
Condividi su altri siti

Non mi dirai che Movicon non permette di memorizzare dati, farne la somma e dividerne il risultato per un numero.

certo che si, però avendo poca dimistichezza con questo software, fare un vettore scorrevole di elementi, mi riesce notevolmente piu facile in step 7.

Link al commento
Condividi su altri siti

Scusa, ma perché non fare un più semplice filtro derivativo? campionare ogni 5 secondi, per un ora, gestire la rotazione del buffer, fare tutte le somme e la media, è un bel lavoretto ed un bel pacco di dati.

Fare un filtro derivativo, con costante di tempo regolabile, è una bazzecola, per il PLC o per la supervisione e si presta a molti altri usi.

Link al commento
Condividi su altri siti

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...