Interrompere alimentazione sotto una soglia (12 volt)

Ciao a tutti, ho realizzato questo circuito sotto richiesta del mio babbo da applicare sull'impianto elettrico del suo escavatore siccome ha argano elettrico e fanaleria per il lavoro notturno, gli capita a volte di avere la batteria a livello troppo basso e se spegne il motore non ha più la potenza sufficente per avviarlo (restando a piedi).

Il ripartitore di tensione l'ho realizzato con un calcolatore perchè sono pigro :grin: ma pare sia corretto, ottengo 4,8 volt con un entrata di 13 volt quindi ottima per l'ATMega.

C'è solo un problema ovvero quando si verifica l'avviamento del motore a scoppio c'è un'improvvisa caduta di tensione sull'impianto a 12 volt, molto brusco che durerà un secondo e mezzo normalmente, massimo 3 nei casi più importanti.

Si può danneggiare l'ATMega con una caduta di tensione oppure patisce solo i sovravoltaggi?
Un consiglio, al posto dell'ATMega328 se uso un ATMega168 per risparmiare sul microcontrollore? si programma allo stesso modo, corretto?

20140205_153609.jpg

dipende un pò quanto scende, se da 12v passa 8V circa il regolatore fa il suo lavoro e i 5V su arduino son garantii (Ah mancano i condensatori di ingresso e uscita, e se vuoi far bene anche un diodo a cavallo del 7085).

la domanda vera è.. la caduta di tensione, manda in "allarme" il tuo sistema??? e se si cosa comparta?

Grazie della risposta. Quando "cade" la tensione per un avviamento del motore a scoppio si ottiene un eccitazione del relè che va ad azionare il teleruttore, il quale toglie alimentazione alla linea fari-verricello quindi è solo un effetto positivo che indirizza tutta la "corrente" verso l'impianto di avviamento, il quale è diretto con la batteria interrotto solo da uno staccabatterie a sua volta comandato da un chiavino.

I condensatori in uscita intendi dopo il relè?

La caduta di tensione non riesco a misurarla... è repentina e il multimetro che ho non mi da un valore attendibile, ammettiamo per ipotesi che scenda anche a 2 o 3 volt (anche se è impossibile visto che c'è un accumulatore)

PS. cavolo ho scordato di disegnare i condensatori in entrata e uscita dal 7805.... ma ci sono. :wink:

quindi se ho capito bene, a 12v il partitore da 4,8V, ma quando ce la caduta, quanto da?? e questo valore, arduino lo riconosce come zero? (non so i valori di solgia! :blush:) ma se alla caduta se troppo veloce o troppo poco "caduta" potresti avere sorprese inaspettate!!
ooviamnte sto facendo un pò l'avvocato del diavolo... ma è da prendre in esame la cosa

no no che avvocato dei diavolo, mi stai aiutando!
la tensione è di 4,8v dopo al partitore mentre prima è 12,98v, mi son tenuto basso onde evitare picchi di corrente, si sa mai. Quando c'è una caduta di tensione in ingresso però non so quanto possa uscire dal partitore, dovrebbe essere proporzionale all'entrata esatto? via software posso impostare la soglia che "voglio" per l'eccitazione del relè dici che scendendo troppo cambi qualcosa? Conviene mettere un condensatore sulla 12 volt? che tamponi?

si, anche l'errore sarà in proprorzione, se il partitore "riduce" della meta, i 12v-->6V e se hai uan caduta di 3V-->1.5V.

gli ingressi digitali, le soglie, non penso siano programmabili, però puoi usare l'ingresso analogico e decidere li per benino a che valore commutare (puoi fare anche a solgie divere tipo trigger di shmitt, anzi forse è meglio).

almeo io afrei così.

ps nello schema hai scrtto +12 e -12 scritto cosi sembrerebbe che tu usi una tensione duale, potrebbe dar origine a confusione!!

edit: pilotare il relè direttamente con arduino non è una gran idea!!!! quindi vai di transistor e un diodo di ricircolo salla bobina!!!!!

Giusto! non dovevo scrivere -12 ma GND vero!

Per i livelli di commutazione pensavo a un semplice lavore maggiore di, minore di con un'isteresi. Questo trigger di shmitt non lo conosco ma mi documento!

Effettivamente vedendo come sono composti i moduli relè mi rendo conto che a pilotarlo direttamente non è una bella scelta, inoltre si carica da morire il pin di arduino. Forse a prendere un modulo relè già pronto si risparmia anche.

Quindi se all'atmega "manca tensione" semplicemente non funziona esatto? oppure è meglio mettere un condensatore che tamponi la mancanza repentina di tensione?

schema corretto:

lo schema per ora mi sembra meglio (ma son appena svegliato :astonished: ) trigger di shmitt è solo un isteresi appunto, ma che la fai in modo analogico (il pin3 dell atmega mi sembra sia digitale vero?) leggevo ieri sera che arduino considera 1 da> 2,5V a 5V 0 da 0V a<2,5V.

se la tensione scente a V78xx- 3,5 (vado a memoria i 3,5 è la tensiono sotto la quale la serie 78xx non lavora più bene e non sai con sicurezza che combini), innutile dire che se scende a 5v o meno.... l'uscita a5V ovviamente, non è più garantita..poi bisogna vedere il micro che tolleranze ha prima di alzare bandiera bianca!!!

Martinix:
leggevo ieri sera che arduino considera 1 da> 2,5V a 5V 0 da 0V a<2,5V.

Non è così, secondo il datasheet dell'Atmega328 le tensioni fra -0.5V e 0.3V vengono considerate come livello logico basso, mentre le tensioni fra 3V e 5.5V vengono considerate come livello logico alto: queste tensioni valgono in caso di VCC = 5V.
Le tensioni comprese fra 0.3V e 3V non fatto variare lo stato logico, mi spiego meglio: se su un pin leggi attualmente 5V e quindi un livello logico alto e successivamente lo porti ad una tensione compresa fra 0.3V e 3V il suo livello logico resterà invariato. Stessa cosa partendo da un livello logico basso.

lo avevo letto su di un libro (non datasheet), ma ottimo a sapersi, scriverò un appunto pe ril futuro (mi sembravano valori un pò strani in efeftti, ma tocac fisarsi a volte eheheh)

Ringrazio un sacco per la collaborazione illuminante! ma hey, sono un pirla! :grin: ho confuso i pin dell'atmega coi pin di arduino!

PIN ATMega 328 / 168 / 88:
PIN di rilevamento tensione: PIN5 (pwm)
PIN di pilotaggio relè: PIN4 (digitale)

Inoltre, giustamente avete fatto il ragionamento su un input digitale ma io avrò un input analogico e il software analizzarà un valore analogico appunto non digitale. Scusatemi!

Per quanto riguarda l'alimentazione dell ATmega, il datasheet riporta come massima: 1.5v - 5.5v al di sopra si frigge ma al di sotto non saprei che succede.

Attento che per far funzionare l'Atmega328 con un clock di 16MHz, devi alimentarlo necessariamente con una tensione compresa 4.5V e 5.5V. Se vuoi alimentarlo con una tensione più bassa compresa fra 2.7V e 5.5V dovrai settare il micro in modo da funzionare a 8MHz ovvero con l'oscillatore interno.

Ah quindi a 8 mhz non serve un quarzo estreno perchè possiede un oscillatore interno? fighissimo! anche se non saprei come attivarlo... vedo se trovo una guida! Ma in ogni caso mi piacerebbe sapere se si danneggia in caso la tensione di alimentazione scenda sotto i livelli di lavoro tollerati.

NOn si danneggia, semplicemente inizia a comportarsi in modo anomalo.

Per quanto riguarda la configurazione ad 8 MHz, non ti serve quarzo esterno né i suoi condensatori. Devi programmare i fuse interni per attivare il clock inferiore. Ti serve un programmatore esterno e o un programma ad interfaccia grafica oppure lavorare da terminare per pilotare avrdude, il programma che serve per agire sulle memorie del micro, fuse compresi.

Puoi aiutarti con questo tool online:
http://www.engbedded.com/fusecalc

Il valore dei fuse originali lo trovi nel file boards.txt all'interno dell'IDE.
Cerca anche sul forum, ogni tanto si parla di come programmare i fuse, di come impostare un chip a 8 MHz.

Con un partitore 1K-5K2 rompi il microcontrollore,
-inverti la posizione delle 2 resistenze ,
-siccome 5K2 non è un valore commerciale della serie E12 usa un partitore 4K7-1K
-connetti l'uscita del partitore ad un ingresso analogico

ICIO perchè scrivi 5K2 invece di 5.2K? non mi confondere il cervello che se lavora a 1 Hz è già tanto!
Ho invertito le resistenze? ops! :cold_sweat: volevo scrivere 10K - 5,2K non 1k - 5.2k!!!!! imbecille che sono! ecco cosa capita a disegnare quando in casa c'è rumore e fastidio! :frowning:

In effetti 5.2K noto che si trovano solo da 2 watt e a fatica!
Dici di fare quindi un partitore con 4.7k e 1k ma come mai col calcolo mi esce 2.2 volt output con 13 volt input? :relaxed: Qualcosa non mi torna, dov'è l'errore?


Leo72:

Ho letto la guida di Menniti, gran lettura, molto bella e interessante, ma alla fine preferisco usare il micro a 16 Mhz siccome non ho problemi di assorbimento di corrente (accumulatore da 350Ah) meno "sbatti" per i pigroni come me è meglio :grin: ma lo terrò presente dovessi alimentare un micro su circuito portatile! Anche perchè se la tensione scende sotto i 4,5v significa che la batteria è tremendamente sotto alla tensione nominale quindi cotta da buttare oppure tanto scarica da non accendere manco più un faretto dell'escavatore anche se l'atmega da i numeri non fa danni male che vada da consensi non desiderati al relè il quale non fa altro che armare il circuito accessori dell'escavatore stesso quindi nessun problema.

E' una convenzione

Goretto:
perchè scrivi 5K2 invece di 5.2K?

E' una convenzione che usa il simbolo dell'unità di misura come separatore decimale.
Viene fatto anche sui volt, ad esempio trovi 3V3 per 3,3V. Credo sia ereditato dal modo di scrivere su PCB e componenti, dove magari il punto potrebbe essere non letto e 3,3V diventare 33V oppure 5.2K venir preso per 52K.
Alla fine è comodo, risparmi un carattere :wink:

Il numero che ricavi dall ADC con 2.28V di tensione è pari a 2.28 * 1023 / 5 = 466 quindi un numero grande che puoi comparare benissimo con la tua soglia con elevata precisione, inoltre possiamo tollerare sovratensioni fino a 30 volts circa

metti un piccolo condensatore da 100nF in uscita sul partitore

La notazione 4K7 è internazionale, rispetto a 4.7K che non è internazionale, il punto decimale non viene mai usato perchè sulla reel (la bobina di componenti smd) il punto si può cancellare generando un errore