Misuratore di corrente AC con ATtiny84. (ora SO quanto mi costi!)

Come promesso eccomi qua, fresco fresco di prove effettuate.

Grazie al prezioso suggerimento di marinaio67 i valori sono cominciati a rientrare nella normalità, infatti ora se attacco la lampadina da 5 W, ottengo misurazioni variabili tra 7,60 W e 8,70 W

In effetti anche Testato ha la sua ragione, infatti ho provato a rilevare il consumo di un asciugacapelli che riporta sull'etichetta un consumo di 1000 W, ed ho rilevato una variazione compresa tra 850 W e 870 W, che mi sembra più veritiera.

Inoltre, giusto per completezza, se spengo tutto ottengo una misurazione variabile tra 3,60 W e 4,70 W.

In effetti un valore max misurabile di 50 A non è reale, se scendo ad un valore max di 25 A potrei migliorare ulteriormente la situazione ?

Premesso che Testato ha ragione sull'aumento dell'imprecisione alla diminuzione dei valori misurati, per migliorare la situazione attuale devi migliorare il circuito... Il fatto che senza nessun assorbimento, ti rilevi ugualmente qualche watt di consumo, significa che l'offset non è preciso; a livello software non so come calcoli l'offset emon... bisogna guardare la libreria e sul sito dove c'è una pagina anche per quello (io adesso devo uscire e non posso); a livello hardware, la cosa la puoi migliorare di molto, utilizzando resistenze di precisione sia per il partitore che per la burden (1% vanno bene), inoltre ricordati che misuri comunque solo la corrente e dai dei valori fissi a tensione e cosfi... cosa che non è reale.

Ciao,
a livello software non faccio nessuna taratura, mi sono semplicemente limitato a fare uno spudorato copia-incolla
del codice messo a disposizione da emon, ad eccezione della correzione che tu mi segnalavi.

Riporto di seguito il listato del programma che carico:

#include <EmonLib.h>
EnergyMonitor emon1;                   // Create an instance

void setup() {  
  Serial.begin(9600);
  
  //emon1.current(1, 111.1);             // Current: input pin, calibration.
  emon1.current(1, 30);
}

void loop() {
  double Irms = emon1.calcIrms(1480);  // Calculate Irms only
  
  Serial.print(Irms*230.0);	       // Apparent power
  Serial.print(" ");
  Serial.println(Irms);		       // Irms
}

non puoi avere uno zero senza nulla attaccato, perche’ su valori cosi’ grandi un solo ed unico bit dell’adc ti sballa di una ventina di molto. se cerchi sul forum emon vedrai che spesso viene fatta questa domanda. per approssimazione diciamo che tutto cio’ che e’ sotto i 20W non e’ utilizzabile

Ok, però almeno valori prossimi allo 0 nemmeno ?

Quando parli di

perche' su valori cosi' grandi un solo ed unico bit dell'adc ti sballa di una ventina di molto

ti riferisci al fatto che il sensore è in grado di rilevare un range molto ampio di correnti ?

Se si, con altri tipi di sensore, magari con un range di misurazione più ristretto, si può ottenere una misurazione migliore ?

Se decido di fare come dici tu:

per approssimazione diciamo che tutto cio' che e' sotto i 20W non e' utilizzabile

posso considerare il consumo del mio asciugacapelli (circa 850 W) attendibile ?

se tu vuoi un range ampio, come quello che serve per misurare il consumo di un intero appartamento, quindi sui 16A, non c'e' molto che puoi fare sul miglioramento della rilevazione dei piccoli consumi. Inoltre qui siamo anche OT, perche' tu non stai usando nulla di questo progetto, che usa invece un sensore di corrente, non un TA. Io direi di dividere, dalla tua domanda in poi, in un altro topic, se il moderatore sta leggendo.

Volendo restare su misure dei 3kW enel non c'e' nulla da fare per piccoli consumi, se invece il tuo uso e' quello di misurare una singola applicazione allora conviene che cambi approccio e usi un piccolo sensore ad effetto hall.

La emonlib e' bella cosa nel momento in cui campioni sia la forma d'onda della corrente che quella della tensione, in modo da calcolare lo sfasamento reale fra le due e poter calcolare la potenza reale, nel tuo caso credo tu vuoi usare un riferimento fisso per V e cosFi, quindi si tratta di accontentarsi. Se tari lo strumento sulla misura di una lampadina ad incandescenza poi ti sballera' con l'asciugacapelli, perche' e' un oggetto RL. Se leggi i risultati raggiunti da questo progetto, e dalubar e' uno bravo che ci sa fare, troverai gli stessi limiti, si decide dove approssimare e si ci accontenta del risultato medio

In realtà a me questo dispositivo lo hanno venduto come TA e non come sensore di corrente.

Il mio intento è creare un rilevatore realtime del consumo di energia che ho a casa. Da quanto mi hai risposto capisco che essendo troppo ampio il range, non ce la faccio a misurare sia pochi watt, sia i 3 KW max. E' pur vero che mettendolo direttamente all'uscita del contatore, non avrò mai pochi watt di consumo, perchè la somma delle diverse utenze collegate dà comunque diversi watt di consumo, anche senza avere attaccati asciugacapelli e/o stufette varie.

Detto questo, trovo molto interessante l'argomento del calcolo reale del consumo, tenendo conto soprattutto dello sfasamento introdotto dai motori elettrici (quello che tu chiami oggetto RL). Visto che hai detto che la libreria emonLib è ottima per il calcolo sia della forma d'onda della corrente che di quella della tensione, mi spieghi come faccio ad ottenre i valori ?

Ho forse bisogno di due sensori (magari anche diversi da questo) ?

Appunto, il tuo è un TA, quindi con questo progetto, intendo il progetto del topic dove stiamo scrivendo non centra nulla XD

Il tuo TA va benissimo per emonlib, per misurare anche la tensione usi un trasformatore con uscita 9v.

Se vuoi affrontare bene tutto il tema devi spulciarti bene il sito di emonlib, e poi qui chiedi solo consigli o posti problemi, non puoi chiedere di spiegare qui le basi che servono sul tema.

Il tutto imho :)

Come dice Testato, il sito emon è ricchissimo di contenuti dove puoi trovare tutte le problematiche e le relative soluzioni… E’ un progetto ampio e se come pare, sei interessato all’argomento, devi studiartelo bene… Inoltre qui http://playground.arduino.cc//Italiano/Emoncms c’è un tutorial di pitusso in italiano… riguarda sopratutto la messa in rete dei dati, ma tratta un pò tutto l’argomento emon… Qui siamo oltremodo O.T.

Capito, mi scuso l'essere andato fuori tema e vi ringrazio infinitamente per i preziosi ed utili consigli che mi avete dato fino ad ora.

Ciao.