[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linux_var] Lettura potenza su linee 220v
On 12/21/2011 08:35 PM, nextime wrote:
Be un carico resistivo ha un cosfi == 1, quindi quello che leggi e' tutta potenza attiva.
Il problema e' appunto con i carichi induttivi che hanno anche una potenza reattiva che andrebbe
rimossa, e lo si fa conoscendone il cosfi.
Se pero' non hai bisogno di chissa' che precisione, avendo carichi misti puoi assumere un cosfi
medio intorno a 0.9, oppure semplicemente considerare il cosfi 1 e poi levare un coefficiente fisso
e avvicinarti comunque al reale. Magari puoi ricavare il coefficiente facendo un po' di raccolta
dati per capire quanto si discosta il valore letto dal contatore enel o chi per essa
dal valore che leggi tu o qualcosa di simile.
Qui:
http://tinyurl.com/blaxj74
Il tizio fa:
const int filter = 4;
int get_mA () {
int max = 0, min = 32767, cnt = 0;
unsigned long start = millis ();
do {
int val = 0;
for (int i = 0; i <filter; i + +)
val + = analogRead (sensorPin);
if (max <val) max = val;
if (min> val) min = val;
cnt + +;
}
While (millis () - start <= 1100 / hz);
int mA = long ((max-min)) * 9333 / 1000 / filter;
return mA;
}
Mi sa che non calcola sul picco ma fa una media, eliminando il sinusoide
negativo filtrando (filter=4)
ma 9333/1000 è il tuo cosfi??
JohnnyRun
--
Per cancellare l'iscrizione: <talking-unsubscribe at ml.linuxvar.it>
Archivi web e configurazione: http://ml.linuxvar.it/ml/