Primi passi con Arduino Nano e prima fumata! Sigh!

Ciao a tutti,
sto costruendo un display secondario per la mia moto (seguendo piu' o meno uno schema trovato in rete) che dovra' visualizzare la temperatura dell'aria, temperatura liquido reffrigerante e tensione della batteria.
Ho acquistato una scheda Arduino Nano V3 compatibile:
http://www.ebay.it/itm/121656005144?_trksid=p2060353.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT
e un display DOGM....

Per il momento mi sono dedicato alla realizzazione del circuito per l'acquisizione dei dati e poi mi dedichero' al display. La lettura dei valori acquisiti la faccio tramite seriale...
Questa e' la parte del circuito che ho realizzato e in prima battuta provando la temperatura aria e la tensione della batteria sembra funzionare:

In pratica riesco a visualizzare correttamente via seriale la temperatura aria e per quanto riguarda la tensione della batteria invece il valore e' molto ballerino e oscilla tra 8/9 fino a 10V.
Utilizzo come Vin un alimentatore che mi eroga 13,9V e il problema del valore sbagliato penso sia dovuto al fatto che ho utilizzato una resistenza da 2,7K invece di quella riportata nello schema (24K).
La formula che utlizzo per la conversione e':
Vbat=((analogReadSampled(pinVbat) * 5.0) / 1024.0) * 5.20;

Dopo questa breve introduzione veniamo alle domande: :slight_smile:

Secondo voi la scheda Arduino Nano compatibile/cinese e' affidabile o devo rassegnarmi e comprarne una originale? In questo caso, dove conviene acquistarla? Io sono a Genova, si trova in negozio?

Utilizzando una R da 2,7K invece di quella da 24K come da schema come devo modificare la formula per avere il valore corretto?
Perche' la lettura della tensione e' ballerina?

Mentre provavo la lettura dei valori avevo la scheda alimentata con l'alimentatore 12V e il cavo USB collegato al pc per visualizzare le stampe da seriale.... l'alimentatore (molto vecchio) ha iniziato a ronzare e dopo un paio di botte che lo hanno calmato solo per pochi istanti l'ho spento con l'interruttore.
Penso che a questto punto l'Arduino abbiam preso alimentazione dalla USB perche' sembrava continuare a leggere i valori di temperatura dalla sonda correttamente ma i valori di tensione sono scesi.
Ho riacceso l'alimentatore e dopo qualceh minuto l'ho nuovamente spento pensando che lo "switch" tra acceso e spento non causasse problemi e invece.... pufff!!! Quando ho spento per la secconda volta ho visto un po di fumo dall'Arduino e ora ovviamente non funziona piu'. :frowning:

Cosa potrebbe essere successo?

Grazie mille a chiunque vorra' rispondermi.
Marco

E' probabile che sia saltato il regolatore di tensione a 5V sul retro della scheda: se è così dovrebbe essere annerito.

Se la scheda continua a funzionare solo con la connessione USB, basta sostituirlo.

Se invece non funziona, è possibile che il processore sia bruciato.

Comunque, il partitore di tensione è mal calcolato: consiglio di usare un 20k più un 10k (5% di precisione) in modo da avere un rapporto 3:1.

La batteria nominalmente è da 12V, ma in fase di carica la tensione arriva a 13.8V ed in alcuni istanti anche a 15V.

Proprio ieri ho bruciato l'ennesima scheda alimentandola dalla presa accendisigari dell'auto. Nonostante fosse a motore spento si è bruciato sia il regolatore che il processore. Mai più 12 Volt, solo 7 o 9 volt al massimo.

In teoria una copia cinese dovrebbe funzionare.

Ho il dubbio se usano componenti scarsi (eliminati dal produttore perché fuori specifiche e recuperate dallo smaltimento) perché senó non si giustificno i prezzi cosí bassi.
Nel caso che é cosí puó capitare di tutto. Dal funzionare bene al rompersi.

Ciao Uwe

Grazie mille per le risposte.
Purtroppo non funziona piu' neanche alimentata via USB...
La cosa che non capisco e' perche' si sia bruciata quando ho spento l'alimentatore. Scusate l'ignoranza ma mi aspettavo una cosa simile all'accensione dell'alimentatore, non allo spegnimento.

Mi consigliate quindi di abbandonare l'idea di alimentare con la batteria della moto?
Mi piaceva l'idea di entrare nella scheda con solo due fili che arrivano da un positivo sotto chiave in modo da alimentare la scheda e utilizzare il segnale anche per visualizzare la tensione della batteria stessa se invece mi tocca usare un alimentatore 5V esterno dovro' portare un'altra coppia di fili alla scheda credo e se invece aggiungo un DC-DC 12V-5V alal scheda devo cercare il modo di farlo stare nelle attuali dimensioni.
Non so cosa fare! :slight_smile:

Non c'e' un modo semplice per abbassare la tensione proveniente dalla batteria sul pin 30 (Vin)? Mettendoci un diodo per fare una caduta di tensione? Forse sto dicendo eresie, scusate... :slight_smile:

Per quanto riguarda il partitiore, a che problemi posso andare incontro con la mia attuale configurazione?
Non vorrei fare casini nel dissaldare le resistenze per cambialre.... non sono proprio un mago del saldatore. :slight_smile:

Potresti usare dei diodi in serie tipo 1N400x (caduta di tensione circa 0.7V) in modo da abbassare la tensione in entrata al regolatore del NANO in modo da ottenere una tensione prossima a 9V.

Tuttavia la soluzione migliore è quella di usare un LM7809 con relativi condensatori.

Markino76:
Mi consigliate quindi di abbandonare l'idea di alimentare con la batteria della moto?

ma non ci pensare ne anche!

prima di tutto....
con il tutto attaccato tramite usb, dovresti controllare quanta corrente assorbe il tuo circuito!?
considera che, un esempio se il circuito assorbe 0.1A a 5 volt sono 500mW di potenza e se il tuo regolatore ha un limite di un watt.. lo fulmini perche e costretto dissipare tutto quello che avanza, con 12 volt (lasciamo perdere 13.8 effettivi a motore acceso) hai una potenza si 1,2 w il datasheet e preventivo ti da anche le tempistiche di cottura... questo e solo un esempio di troppi. intanto ti consiglio un regolatore dc-dc per iniziare ..
esempio
poi calcolati bene il partitore(google partitore di tensione wiki e trovi la formula matematica) e ovviamente usa le resistenze con errore di 1% (blu) ... anche se io preferisco due amplificatori invertenti con un attenuazione di x..

prova ancora a vedere se il micro e vivo tramite ArduinoIsp..

e poi che moto e'? per avere un idea del regolatore che e montato

a presto

p.s. riesci a fare uno schema anche su carta del circuito? (completo)

Eccomi!
Grazie ancora per le molte risposte.
Preso dallo sconforto ieri sera ho ordianto questo DC DC senza badare a spese, spero sia valido visto la cifra:

Poi ho praticamente terminato il circuitino: ho scollegato il filo che dal positivo della batteria andava al pin 30 (Vin) in modo che ora la 12V rimane solo sul partitore (se lascio 100K e 2,7K per pigrizia a cosa vado incontro?) per l'acquisizione.
Ecco il circuitino completo:

e il risultato (preso dalla fonte d'ispirazione) dovrebbe essere questo:

Oggi dovrebbe arivarmi il DC DC e pensavo di collegarlo a un positivo sotto chiave e poi portare i due fili di uscita a 5V e collegarli uno alla massa del circuito e la'ltro al pin 27 del Nano (+5V).
Per controlalre la tensione della batteria va bene se porto il filo con il positivo sotto chiave e lo collego al partitore? La massa e' sempre la stessa giusto?

La moto e' una Honda NC750X. :slight_smile:

Ti ripeto che i valori dei resistori sono errati: con quelli i 12V della batteria diventano 0.32V, mentre a 15V il valore diventa 0.39V.

I due valori convertiti dal ADC di Arduino tramite analogRead(pinVbat) diventano circa 64 e 78.

Usando la formula che hai indicato (probabilmente analogReadSampled() effettua una media dei valori)

Vbat=((analogReadSampled(pinVbat) * 5.0) / 1024.0) * 5.20;

otterresti per Vbat un valore di 1.625V e 1.98V.

Questo ammesso che la tensione di alimentazione sia esattamente 5V: usando un alimentatore switching il ripple potrebbe essere è di circa 20mV, cioè un errore di 4 passi (5/1024 ~= 5mV)

cyberhs:
Ti ripeto che i valori dei resistori sono errati: con quelli i 12V della batteria diventano 0.32V, mentre a 15V il valore diventa 0.39V.

I due valori convertiti dal ADC di Arduino tramite analogRead(pinVbat) diventano circa 64 e 78.

Usando la formula che hai indicato (probabilmente analogReadSampled() effettua una media dei valori)

Vbat=((analogReadSampled(pinVbat) * 5.0) / 1024.0) * 5.20;

otterresti per Vbat un valore di 1.625V e 1.98V.

Questo ammesso che la tensione di alimentazione sia esattamente 5V: usando un alimentatore switching il ripple potrebbe essere è di circa 20mV, cioè un errore di 4 passi (5/1024 ~= 5mV)

Ricevuto! Scusa l'ostinazione, ma per pigrizia speravo di evitarmi la modifica.
Ora cerchero' di calcolarmi i valori e rientrando a casa comprero' due belle resistenze blu! :slight_smile:

Markino, per risparmiare, potevi prenderti uno di quegli alimentatori 5V per presa accendisigari. Ovviamente lo adattavi tirando fuori i due cavi positivo e negativo da collegare alla batteria. Prendevi il tuo cavetto usb e ci alimentavi in relativa sicurezza arduino.

khriss75:
Markino, per risparmiare, potevi prenderti uno di quegli alimentatori 5V per presa accendisigari. Ovviamente lo adattavi tirando fuori i due cavi positivo e negativo da collegare alla batteria. Prendevi il tuo cavetto usb e ci alimentavi in relativa sicurezza arduino.

Ci avevo pensato ma ho scartato l'idea per due motivi:
il primo e' che non vorrei usare il cavetto USB per alimentare la scheda in quanto vorrei inserirla in una scatoletta stagna il piu' piccola possibile eho pensato che entrare con due fili in una morsettiera potrebbe semplificarmi.
il secondo e' che alloggiando il tutto in una moto devo fare tutto stagno e quindi la scatoletta che ho comprato mi sembrava meglio
Ovviamente posso sbagliarmi...

Markino76:
(se lascio 100K e 2,7K per pigrizia a cosa vado incontro?)

Oggi dovrebbe arivarmi il DC DC e pensavo di collegarlo a un positivo sotto chiave e poi portare i due fili di uscita a 5V e collegarli uno alla massa del circuito e la'ltro al pin 27 del Nano (+5V).
Per controlalre la tensione della batteria va bene se porto il filo con il positivo sotto chiave e lo collego al partitore? La massa e' sempre la stessa giusto?

La moto e' una Honda NC750X. :slight_smile:

si puoi collegare sotto chiave poi al partitore... pero' te lo sconsiglio tanto il micro non ne risente se mentre e spento si trova una tensione di 1 e qualcosa volt su un pin analogico

cyberhs:
Questo ammesso che la tensione di alimentazione sia esattamente 5V: usando un alimentatore switching il ripple potrebbe essere è di circa 20mV, cioè un errore di 4 passi (5/1024 ~= 5mV)

per bypassare il problema dei 5 volt ballerini potresti usare analogReference(INTERNAL) che diventera 1.1V ovviamente ti dovrai rifare tutti i calcoli per TUTTE le porte analogiche, pero' sara piu' preciso..
ma se non vuoi complicarti troppo la vita
al posto della resistenza 2,7k gli metti un trimmer multi giro da 22k e quando e' tutto acceso prendi un tester lo attacchi alla batteria... ti metti a girare il trimmer nel verso piu' opportuno e quando vedrai che la tensione sul tester e' uguale al display hai finito

rimango a disposizione