Go Down

Topic: Aiuto modifica sketch playground su EEM12L-32A (Read 1 time) previous topic - next topic

ziopippo

Feb 11, 2013, 01:15 am Last Edit: Feb 11, 2013, 01:18 am by ziopippo Reason: 1
Ho collegato ad un Arduino Mega questo contatore monofase  http://www.energiasolare100.it/contatore-monofase-a-due-cavi-guida-din-con-uscita-impulsi-p-670.html

Ho usato lo sketch preso dal playground http://playground.arduino.cc/Main/EEM12L-32AKWhMonitoring utilizzando una resistenza come consigliato nell'articolo ma da 330 ohm.

Da quello che ho visto mi rileva la potenza attuale in step di 0,50 w alla volta e non ha mezze misure. Accendendo il microonde per alcuni minuti a 750W mi segnala potenze variabili da 0.0010 a 0.0015 mentre in situazioni "stabili" mi segnala sempre da 0.0000 a 0.0050 ed inoltre il contatore mi si incrementa ovviamente di 0.0050 alla volta.

Come devo modificare il codice per conoscere l'esatta potenza istantanea in uso da utilizzare magari come stato di allerta in per evitare il distacco del contatore per superamento della soglia?

Grazie mille.

uwefed

devi misurare il tempo tra un impulso e l' altro.
Ciao Uwe

ziopippo

Buon giorno uwe e grazie per la risposta.
In effetti non lo avevo scritto ma sul fatto che dovessi calcolare il tempo tra T0 e T1 ci ero già  arrivato.  ;) Quello  che non so è che usando  il playground gli interrupt non so come fare a riconoscere in quel codice il mutamento  di stato da low ad high.  :smiley-red:

leo72

Nel codice che hai linkato agganciano un interrupt al passaggio del pin da alto a basso:
Code: [Select]
attachInterrupt(0, Kirq, FALLING);
Se il tuo problema è misurare lo stato inverso, passaggio da basso ad alto, metti RISING

Documentazione base degli interrupt hardware dell'Arduino:
http://arduino.cc/en/Reference/AttachInterrupt

cyberhs

Il dispositivo fornisce un impulso di 50 ms ogni 0,5 Wh (e non W come erroneamente indicato).

Quindi il programma non fa che sommare gli impulsi che arrivano, azzerandoli nel caso siano superiori al miliardo (500 kWh).

Il programma indicato è probabilmente un prototipo in cui ci sono delle variabili non utilizzate (ad esempio SUM).

Se collego una stufetta da 1kW, leggerò dopo 60 minuti un incremento del contatore (variabile rpk) di 2000 impulsi.

Riceverò, cioè, circa 2000 imp /3600 sec = 0.55 impulsi al secondo.

Go Up