Il microcontrollore si spegne a causa di una breve perdita di potenza, un condensatore può risolvere questo problema?


9

Ho un microcontrollore collegato a un'alimentazione a 5 V che passa attraverso un regolatore di tensione sceso da 12 V.

Suppongo che si riavvii perché è possibile che la tensione diminuisca rapidamente per una piccola frazione di tempo, il che è sufficiente per causare il riavvio del chip.

Questo assunto è corretto?

L'aggiunta di un condensatore al circuito potrebbe risolvere questo problema?


Sono un po 'sorpreso che le note sull'applicazione del fornitore non abbiano già specificato un paio di condensatori ...
Ignacio Vazquez-Abrams

3
Certo, ma la capacità necessaria per un funzionamento affidabile in normali variazioni di carico è un po 'inferiore a quella necessaria per operare in caso di brevi guasti dell'alimentazione.
Chris Stratton,

2
Il chip funziona bene con un'alimentazione affidabile a 5 V? Potrebbe anche essere il watchdog che reimposta il chip, sei sicuro che sia impostato correttamente o disabilitato?

4
Prendi un oscilloscopio e osserva la tensione di alimentazione. Guarda anche il segnale di reset. Questo ti darà maggiori informazioni sul tuo problema. La durata del brownout (un calo o un picco verso il basso della tensione di alimentazione) ti aiuterà a dimensionare il condensatore o a capire in primo luogo cosa sta causando il picco. Se si rileva il picco discendente che causa il reset del μC, non esitate a pubblicare lo screenshot qui.
Nick Alexeev

Risposte:


19

Probabilmente ci sono due cose in corso qui, glitch brevi (da ns a µs) e interruzioni di fornitura molto più lunghe (da ms a s).

È sempre necessario un condensatore di bypass tra potenza e massa di un microcontrollore. Ciò mantiene stabile l'offerta locale nonostante le variazioni piuttosto brevi a breve termine della corrente che il microcontrollore sta attingendo. Queste variazioni sono troppo rapide per consentire la regolazione dell'alimentazione. Inoltre, le tracce di ritorno all'alimentazione hanno un'impedenza sufficiente alle alte frequenze di queste variazioni di corrente veloce da causare fluttuazioni di tensione locale anche se l'alimentazione principale era totalmente stabile.

L'altro problema delle interruzioni dell'alimentazione a lungo termine deve essere gestito con un significativo accumulo di energia da qualche parte. Dopotutto, per un certo periodo di tempo non arriva energia sufficiente e la memoria locale deve compensare temporaneamente la differenza. Il posto migliore per metterlo è davanti al regolatore. Supponiamo che il tuo regolatore richieda un'altezza libera di 2 V. Ciò significa che continuerà a produrre 5 V in uscita fino a quando il suo ingresso non scende al di sotto di 7 V. Questo è 5 V in meno rispetto al 12 V in ingresso nominale. Un cappuccio abbastanza grande sull'ingresso può sostenere la tensione di ingresso del regolatore per qualche tempo dopo che l'ingresso a 12 V scompare improvvisamente. Mettere un diodo Schottky in serie con l'ingresso a 12 V, quindi il cappuccio in seguito. Ciò impedisce che l'ingresso si scarichi dallo scarico.

Ad esempio, supponiamo che sia stato inserito un cappuccio da 1 mF sull'ingresso del regolatore (oltre ovviamente ai piccoli cappucci ad alta frequenza richiesti per il funzionamento del regolatore di base, come specificato nel foglio dati). Dato che non hai detto quale sia la tua corrente, in questo esempio sceglieremo arbitrariamente 100 mA. Diciamo anche che il diodo Schottky scende a 500 mV a piena corrente.

Il tappo viene quindi caricato a 11,5 V durante il normale funzionamento e può scendere a 7 V prima che l'alimentazione a 5 V inizi a cadere. (4,5 V) (1 mF) / (100 mA) = 45 ms, ovvero per quanto tempo il cappuccio può far funzionare le cose dopo che l'ingresso a 12 V scompare improvvisamente.


Se stai utilizzando forniture più elevate per alimentare l'MCU, utilizza una capacità inferiore. Consentirà di risparmiare risorse se fabbricato su un circuito integrato. Inoltre, guarda nell'alimentatore. I moderni regolatori di tensione (come LM723) non mostrano quasi mai questo comportamento e dovresti studiare il tuo circuito di alimentazione. Un altro motivo di questo comportamento è un corto circuito da qualche parte. Non posso sottolineare l'importanza di eliminare i pantaloncini non intenzionali .
ps95,

8

Se si verifica davvero una caduta dell'alimentatore, farai meglio con un condensatore davanti al regolatore di tensione (isolato con un diodo, se necessario). Ciò consentirà alla tensione di scendere di più prima di perdere le specifiche per il micro.

Ad esempio (selezionando i numeri dall'aria) supponiamo che il tuo micro abbia bisogno di 5 V, che il tuo erogatore fornisca 4,75 V e che il tuo micro funzioni a 4,5 V. E supponiamo inoltre che stai alimentando il regolatore con 9 V da una verruca a parete e che il micro e altri oggetti assorbano 50 mA. E supponiamo che il regolatore cada a 1,5 V.

Se si inserisce un condensatore da 1000uF dopo il regolatore, il tempo in cui regge il micro è:

t = 1000uF * (4,75 V - 4,5 V) / 50 mA = 5 ms

Se lo metti davanti al regolatore, il tempo in cui terrà il micro è:

t = 1000uF * (9 V - 6 V) / 50 mA = 60 ms (circa 12 volte più lungo)

Ho il sospetto che questo possa essere un problema EMI che causa l'interruzione del microprogramma a meno che tu non abbia una forte indicazione che la tensione sta effettivamente calando.


3

È obbligatorio disporre di condensatori ceramici vicini (~ 1 cm) ai pin di alimentazione dell'MCU. Questo è praticamente vero per tutti i circuiti integrati.

Ma se hai dei dubbi sul perché la MCU si reimposta, di solito hanno dei registri che mostrano perché si è verificato un reset. Alcuni MCU dispongono di un circuito brown-out a bordo e il punto di scatto può essere impostato anche su alcuni di essi.

Quale MCU usi?


2

È buona norma disporre di una certa capacità posizionata vicino ai pin di alimentazione del microcontrollore. In genere un 1uF e un 0,1uF in parallelo lo farebbero. Questa è una linea guida generale però. Dipende da quanto grave è il calo di tensione (quanto di un tuffo e per quanto tempo) che ti dirà quanta capacità di massa.

Inoltre, per ridurre il rumore condotto a causa dell'ESD, aggiungerei un cappuccio da 470pF in parallelo con quanto sopra.

Detto questo, ti consiglio di consultare il foglio dati per il microcontrollore per vedere se c'è un bit di interruzione dell'alimentazione che viene impostato in casi come questo per vedere se si tratta di un'interruzione di corrente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.