Arduino Uno - Dandogli Tensione non si avvia - premendo RESET parte!

Buongiorno,

mi succede un problema HW strano, che non mi era mai capitato :o
Ho un Arduino UNO alimentato a 12 V con il suo spinotto.
Sopra ho uno Shield di prototipazione che ha qualche componente passivo e un modem LORA.
Il sistema normalmente funziona, il software gira e fa quello che voglio.
Qualche volta (abbastanza spesso) ma non la prima volta, solo le successive, quando gli do tensione si incanta (non esegue nemmeno il setup -{verificato}) e rimane li senza far nulla.
Se li premo il pulsante di reset parte regolarmente.
Oppure se gli tolgo e gli ridò tensione velocemente parte regolarmente.
Sembrerebbe che il bootloader lo ferma in uno stato di stallo...
Cosa posso fare? Devo mettere un condensatore da qualche parte?

Grazie in anticipo...

L'arduino UNO non è originale ma questo:

Se sapessi che livello di conoscenza hardware hai sarebbe più facile (ma la tua presentazione non la trovo...).

Comunque hai provato a disconnettere lo shield? Cosa succede con UNO standalone?
Poi lascia perdere, per ora, che non è originale...

Alimentarlo a 12V implica il surriscaldamento del regolatorino di tensione onboard, generalmente lo si alimenta a 9V non 12.

Non dico che sia proprio questo il problema, ma insomma, una prova con un almentatore 9V al posto tuo la farei.

Grazie a tutti per le risposte!

@steve-cr la prova senza shield l'ho fatta anche se ho dovuto collegare il modem LORA diretto sui pin dell'Arduino, senza il quale altrimenti non si chiude un piccolo loop di comunicazione con il medesimo (che quindi non lo fa uscire dal setup). Senza shield lo fa lo stesso però collegato al sistema di alimentazione che ho in realtà, te lo descrivo: 4 batterie in parallelo 18650 3,7 volt nominali con un STEP-UP da 12V. La tensione 12V mi serve perchè ho delle fotocellule da alimentare e queste vanno da 10 a 30 VDC. Se invece lo alimento con USB va sempre... Quindi sembra proprio che il problema scaturisce dallo stadio di alimentazione...

@docdoc ok ma 12 v è i limite massimo consentito e comunque se fosse surriscaldato non manifesterebbe il problema all'accensione cioè a freddo... Però sicuramente potresti anche aver ragione...

Ora poichè quando poi funziona funziona bene anche a lungo termine vorrei capire cosa posso fare per risolvere senza stravolgere il tutto...

Lo STEP-UP in questione è questo
20pcs 8W USB Input DC DC 5V to 12V Converter Step Up Module Power Supply Boost Module|module peltier|modulating controllermodule lamp - AliExpress Ne ho usati ancora senza aver problemi ma non con le batterie ma da 5 volt con alimentatore di rete.

Ora ho fatto una prova: ho messo un condensatore al poliestere da 0.1 micro Farrad in parallelo all'alimentazione 12V . Così facendo dandogli tensione la prima volta funziona sempre. Solo se la tolgo e la ridò dopo circa 2 secondi fa il problema come descritto prima, ma se aspetto 3 secondi prima di ridarla allora funziona sempre :slight_smile:

Nel momento in cui lo accendi, la tensione va su troppo lentamente e il processore non si resetta.

Grazie Datman :slight_smile:
Sembra proprio che il condensatore risolve il problema, non lo elimina del tutto ma lo porta a livelli decisamente accettabili. Secondo te che effetto ha il condensatore sull'andamento dell'alimentazione?
Forse assorbe un picco della tensione che c'è allo spunto?
Questo spiegerebbe anche il motivo per il quale entro due secondi si ripresenta il problema, cioè se aspetto 3 secondi quando spengo prima di riaccenderlo il condensatore fa in tempo a scaricarsi... no? Se invece aspetto meno di 3 secondi, diciamo due, il condensatore non si scarica e alla successiva riaccensione non assorbendo più il picco, questo medesimo manda il tilt il microcontrollore...

Scusate mi sono appena accorto che il condensatore l'ho messo in parallelo sulla tensione delle batterie in ingresso al modulo STEP-UP, quindi non sulla 12 V ma sulla 3.7V (che poi varia da 4 a minimo 3 secondo la carica delle batterie)... Pertanto la spiegazione di prima non sussiste...

Allora forse questo piccolo condensatore filtra qualche disturbo che si crea sullo spunto...

Comunque funziona benone :slight_smile:

Domanda: perché necessiti di portare la tensione delle batterie da 3,7v a 12?
PS: l’eventuale risposta “per renderlo autoalimentato” non è contemplata :smiley: :smiley:

elsabz:
Allora forse questo piccolo condensatore filtra qualche disturbo che si crea sullo spunto...
Comunque funziona benone :slight_smile:

Se il problema è risolto, ok, meglio per te. :wink:

Però continuo ad avere dubbi sull'alimentatore: ma sei proprio certo che eroghi effettivamente 12V (misura la tensione a vuoto e poi anche col carico attuale) e che sia ben raddrizzato ossia esca bene in continua (magari ha solo un misero ponte quindi ci sono spurie dei 50Hz)? Inoltre tu con lo stesso alimentatore cosa ci alimenti contemporaneamente ad Arduino e come sono connesse le relative alimentazioni (hanno massa in comune?)? Potrebbe essere un altro apparato a darti quei disturbi.

Magari facci vedere l'alimentatore (link o marca/modello esatti).

Basta un convertitore Litio - 5V.
Per risolvere il problema del reset, comunque, dovrebbe essere sufficiente aumentare il condensatore di reset (C5 nello schema che ho io, che va al reset del 328P) da 100nF a 200nF, mettendone un altro in parallelo.

@Datman dici giusto, però io ho l'impressione che il problema sia "a monte" ossia nella qualità dell'alimentazione, e la correzione che suggerisci (raddoppiare il condensatore) è troppo " a valle".

A questo punto deve prima farci vedere uno schemino ESATTO delle connessioni ed un elenco di cosa sta usando per l'alimentazione (marca e modello, tra alimentatori, regolatori e altro), e dirci anche quali apparati ci alimenta insieme ad Arduino.

Buongiorno a tutti,

vi posto lo schema delle alimentazioni.
Ho constatato che molto meno frequentemente il problema si ripresenta.
Penso che la soluzione migliore sia mettere un ulteriore step_up a 5 V per l’Arduino,
perchè i 12V servono solo per le fotocellule, cosi rispondo a miky_police

E' lo step-up che non mi convince...
Onde evitare arrivino schifezze all'accensione, mettici un condensatore elettrolitico di almeno 100uF (35 o 50 volt) al posto del poliestere. Occhio alla polarità.

elsabz:
Penso che la soluzione migliore sia mettere un ulteriore step_up a 5 V per l'Arduino,
perchè i 12V servono solo per le fotocellule, cosi rispondo a miky_police

Scusa la curiosità, ma se hai le fotocellule che vanno a 12V ossia tra 10 e 30V e le batterie servono solo queste e Arduino, perché metti ben quattro 18650 in parallelo per poi essere costretto ad usare uno step-up per andare da 3.7 a 12? non potresti metterne 3 in serie ed avere così circa 11V? Andrebbero bene sia ad Arduino sia alle fotocellule..

D'accordo che scenderesti del 25% come Ah (da quante Ah sono quelle che usi?), ma magari per semplicità di realizzazione è meglio usarne 3 e se serve prendi delle 18650 di maggiore capacità (es. 2800 mAh?)...

Ma magari ci sono altre condizioni che non conosco, la mia era più che altro curiosità... :wink:

quoto in toto docdoc.

Mettendo in serie le batterie aumenta la tensione ma diminuisce la capacità, anche vero che il modulo step_up assorbe energia, ma a suo tempo avevo provato in serie ed ho riscontrato che ho maggiore autonomia con 4 in parallelo.

La capacità di una batteria è dichiarata 9800 mA/h ma non ci credo affatto, saranno 1/2 Ah… Se metti in serie la capacità è pari alla capacità di una batteria, se metti in parallelo la capacità si moltiplica per il numero di batterie. Considera che le fotocellule assorbono circa 15/20 mA l’una, mentre l’Arduino assorbe circa 50 mA…

Per questo trovo comodo lo step_up, come diceva DatMan, ho provato aggiungendo uno step_up 5V solo per l’arduino e il problema adesso è definitivamente svanito. Probabilmente lo step_uo che fa i 12 volt crea degli effetti transitori allo spunto che mandano in palla il bootloader o il circuito di oscillazione del micro.

elsabz:
La capacità di una batteria è dichiarata 9800 mA/h ma non ci credo affatto, saranno 1/2 Ah...

Dichiarata da chi? Le 18650 sono un formato, la capacità dipende dal modello specifico ma comunque non ho mai sentito di 9800 mAh su una singola 18650 (se le trovi dimmelo che me le metto sullo scooter al posto delle batterie della Leaf :smiley: ). In genere sono da 3000 mAh circa, se sono da 1Ah sono "riciclate".

Se metti in serie la capacità è pari alla capacità di una batteria, se metti in parallelo la capacità si moltiplica per il numero di batterie

Si ma ancora qualcosa mi sfugge del tuo criterio, perché devi considerare la tensione per calcolare la potenza accumulata (o assorbita).
Si mettono in parallelo per aumentare la CORRENTE erogabile, mentre in serie aumenti la tensione e diminuisci la corrente, ma la potenza (kWh) accumulata è sempre la stessa (P=VI). Ma aumentare la corrente erogabile a te non serve, viste le cifre che hai indicato. Se hai 4 batterie da 2Ah ciascuna a 3.7 V, messe in parallelo avrai 8 Ah su 3.7 V quindi 29.6 Wh, in serie avrai 2 Ah su 14.8 V, che sono sempre 29.6 Wh!
Poi ci sono ovviamente anche configurazioni di serie/parallelo, dipende dalla tensione richiesta e dalla corrente massima erogabile (per dire, le batterie del mio scooter arrivano a 200A a 150V DC).

Considera che le fotocellule assorbono circa 15/20 mA l'una, mentre l'Arduino assorbe circa 50 mA...

Spero di non sbagliare (si sbalio mi corigerete :wink: ) ma 50 mA a 5 V diventano 20 mA a 12V, e se le fotocellule assorbono 15 mA ciascuna a 12V ed Arduino 20 mA (lasciamo stare le dispersioni degli step-up, che comunque ci sono), hai un totale "spannometrico" di 80 mAh a 12V. Se metti 3 batterie in serie da 3000 mAh avrai circa 37 ore di autonomia "spannometrica". Se te ne servono di più puoi mettere batterie con maggiore capacità oppure metterne altre 3 in serie-parallelo.

Comunque è solo per chiacchierare, se il problema che lamentavi non è più presente e quindi ti va bene così, ok! :wink:

quoto in toto docdoc