Go Down

Topic: Misuratore di corrente AC con ATtiny84. (ora SO quanto mi costi!) (Read 39643 times) previous topic - next topic

dalubar

Giusto per completare il discorso e non lasciare le cose in aria...

A uso di quanti volessero davvero (really?!??) realizzare il progetto del misuratore di corrente, pubblico la nuova versione del software di gestione.
L'aggiornamento comprende l'implementazione della funzione "contatore" visualizzando il numero degli scatti e l'incremento progressivo dei wattora (che corrisponderebbe alla "rotellina" dei contatori meccanici). Impostando il prezzo per Kwh (fisso, naturalmente) mostra anche l'ammontare del prezzo corrispondente agli scatti consumati.

Ovviamente per far fronte alle diverse visualizzazioni e impostazioni mi sono dovuto un po' ingegnare, dato che disponevo di UN solo pulsante. Per cui ho optato per la visualizzazione circolare delle schermate che cambiano ad ogni pressione "breve" del pulsante. Se si preme invece il tasto a lungo...vabbè faccio prima se ve lo mostro con un grafico:


La modalità di spegnimento in caso di allarme può essere scelta tra "automatico" (default) e "manuale". La prima spegne il relays automaticamente non appena il consumo scende nuovamente sotto il livello di soglia programmata (indicata se si collegano indicatori sonori e/o luminosi); nel modo "manuale", invece, occorre premere fisicamente il pulsante per disattivare l'allarme.
Per comprendere il perchè di quest'ultima opzione basti pensare al caso in cui venga collegato un teleruttore normalmente CHIUSO al circuito di rete elettrica, con lo scopo di staccare la linea in caso di superamento della soglia (comportamento tipico del normale contatore).
In questo scenario, in caso di allarme, se l'opzione fosse impostata a "automatico" si otterrebbe che il dispositivo staccherebbe l'impianto elettrico, ma cosi facendo si otterebbe consumo zero, per cui il dispositivo farebbe rientrare l'allarme riattivando così la linea, che però tornerebbe a superare la soglia...etc. Si otterebbe un comportamento oscillatorio decisamente indesiderato. Impostando in manuale, invece, si ottiene lo stesso effetto di un normale contatore che dovrà essere riattivato manualmente, ma col vantaggio che si trova...a portata di mano ;)

Niente da aggiungere...ovviamente il programma è solo un "esempio" di come potrebbe essere il vostro personale "current meter".

Per chiarimenti, consigli, improperi, etc... sono a disposizione :)

dalubar

Dimenticavo...

1) Data la presenza e la manipolazione di circuiti sotto tensione consiglio la realizzazione del progetto solo a persone con una certa ESPERIENZA, che sappiano dove mettere le mani, sconsigliando a chiunque avesse dei dubbi di fare qualsiasi cosa prima di manomettere l'impianto elettrico di casa!!

2) Il progetto è da considerarsi "sperimentale" e migliorabile, quindi i risultati mostrati NON costituiscono di certo "oro colato", nè devono essere presi come riferimento per eventuali contestazioni della bolletta elettrica.

3) Naturalmente non mi assumo nessuna responsabilità per eventuali danni a persone o cose derivanti dall'uso proprio (o improprio) del progetto. E' da considerarsi, a tutti gli effetti, un progetto amatoriale e didattico.

(Ahhh... ora mi sento meglio.)

pablos

Quote
(Ahhh... ora mi sento meglio.)

Era una settimana che non dormivi ? .......  :D :D :D
no comment


frazan

Mi associo a tutti quelli che ti fanno i complimenti.  Saluti

Michele Menniti

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

dalubar

Quote
Era una settimana che non dormivi ?

Lascia stare, pensa che avevo perfino finito la Valeriana e i fiori di Bach...  :D

Grazie a tutti per i complimenti.

Michele Menniti


Quote
Era una settimana che non dormivi ?

Lascia stare, pensa che avevo perfino finito la Valeriana e i fiori di Bach...  :D

Grazie a tutti per i complimenti.

Sono stra-meritati, non ti smentisci mai XD Quella della "doppia" pressione del tasto è una chicca e comunque con questa implementazione software hai realizzato uno strumento davvero completo a mio parere, penso che meriti molto più che stare solo soletto in casa tua  ;)
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

dalubar

Michele, ma lo sai che ogni volta che penso al tuo laboratorio me lo immagino grande e stracompleto di ogni ben di Dio di attrezzatura e componentistica?
A tal punto che se per caso, strofinando qualche vecchia valvola (una lampada sarebbe troppo banale XD) trovata in qualche antico baule ne dovesse uscire qualche "genio", il primo dei tre desideri sarebbe sicuramente questo: "Voglio un laboratorio come quello di Michele Menniti!!" :)
E non scherzo!

Michele Menniti


Michele, ma lo sai che ogni volta che penso al tuo laboratorio me lo immagino grande e stracompleto di ogni ben di Dio di attrezzatura e componentistica?
A tal punto che se per caso, strofinando qualche vecchia valvola (una lampada sarebbe troppo banale XD) trovata in qualche antico baule ne dovesse uscire qualche "genio", il primo dei tre desideri sarebbe sicuramente questo: "Voglio un laboratorio come quello di Michele Menniti!!" :)
E non scherzo!

sgamato :smiley-sweat:
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

dalubar

La mia faccia dopo aver ingrandito la seconda foto:   :smiley-eek: :smiley-eek: :smiley-eek:

La mia faccia dopo aver ingrandito la terza foto:  :smiley-eek: :smiley-eek: :smiley-eek: (ma per un altro motivo :D)

Michele Menniti


La mia faccia dopo aver ingrandito la seconda foto:   :smiley-eek: :smiley-eek: :smiley-eek:

La mia faccia dopo aver ingrandito la terza foto:  :smiley-eek: :smiley-eek: :smiley-eek: (ma per un altro motivo :D)


La mia faccia quando scattavano la terza foto:  :smiley-sweat: :smiley-sweat: :smiley-sweat: le sedute di Laurea sono sempre occasioni prossime di cattivi pensieri, se poi te li sbattono sulla faccia è la fine XD
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

dalubar

Quote
...se poi te li sbattono sulla faccia è la fine

ROTFL

Come ti capisco... in 25 anni di insegnamento nella Formazione Professionale, immagina a quante "feste di fine corso" avrò partecipato.  :smiley-yell:


acik

A me non funziona !
Ho compilato tutto nella IDE 0.23 (dove mi sono creato le board su misura)***

Viene compilato correttamente. Il programma si avvia, fa le prime scritte e poi inizia a contare i secondi velocemente. Troppo velocemente, e dopo 4 secondi iniziano a girare scritte strane sulla schermo !

Mi verebbe da pensare che ho overcloccato l' Atmel. Ma ho provato a togliere il quarzo e a meterne un' altro, ma non cambia nulla.

Ci sono altre cose che devo controllare quando porto un programma da IDE1.00 a IDE0.23 ?




***
Ho corretto alcune cose. Ad esempio:
    lcd.print(F(" Vrf="));
l' ho fatto diventare
     lcd.print(" Vrf=");

leo72

Probabilmente hai impostato nella board virtuale un clock differente da quello a cui sta effettivamente lavorando il micro.

Go Up