kilopiko Inserito: 20 maggio 2015 Segnala Share Inserito: 20 maggio 2015 devo implementare sul programma del Millennium3 io o un contatore acqua che mi manda un impulso nc/no ogni 10Lt acqua come faccio a fare una funzione che mi possa restituire sulla base della frequenza di impulsi la portata di acqua? Link al commento Condividi su altri siti More sharing options...
ETR Inserita: 20 maggio 2015 Segnala Share Inserita: 20 maggio 2015 Ciao kilopiko, guarda che non è un grosso problema, devi integrare (nel senso integrale) il tempo tra un impulso e l'altro (campionamento). Guarda che però il problema non è nella funzione, ma nella precisione del sistema. Minore è la risoluzione che ti mette a disposizione il tuo sistema e maggiori saranno gli errori di integrazione. Ciao Link al commento Condividi su altri siti More sharing options...
Gianmario Pedrani Inserita: 20 maggio 2015 Segnala Share Inserita: 20 maggio 2015 Prendi un blocco a tempo che campiona ogni 100 ms poi conti gli impulsi in un secondo gli moltiplichi per 60 cosi trovi i minuti poi per 60 ancora e trovi le ore aggiorni il dato, ed azzeri il contatore e riparti, cosi hai la portata oraria.. Link al commento Condividi su altri siti More sharing options...
STEU Inserita: 20 maggio 2015 Segnala Share Inserita: 20 maggio 2015 (modificato) dovresti sapere su che ordine di grandezza di portata lavori , 10 l/sec , 10 l/min? Comunque, con il fronte di salita fai partire un timer settato a 999 sec.( Spero che per il tuo ordine di grandezza vada bene). al secondo fronte leggi il valore del timer , fai 999 - valore timer e ottieni il periodo. fai 10 / periodo , e ottieni la portata in litri al secondo. Il problema è resettare il timer con il secondo fronte e farlo ripartire a contare. oppure con interrup a tempo , es 100 m.sec in ob 34, rilevi il fronte di salita del contalitri e incrementi una variabile all'interno dell' OB ad interrup fino all'impulso successivo, conti il valore e lo moltiplichi per 0,1 e ottieni il periodo (es 5 impulsi * 0,1= 0,5 sec) 10 l/sec / 0,5 = 20 l/sec Modificato: 20 maggio 2015 da STEU Link al commento Condividi su altri siti More sharing options...
kilopiko Inserita: 21 maggio 2015 Autore Segnala Share Inserita: 21 maggio 2015 si ma io devo visualizzare il dato quindi dovrei spedirlo ad una memoria una votlta ottenuto la campionatura su 60 secondi come la tengo per visualizzarla ? Link al commento Condividi su altri siti More sharing options...
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