Arduino Uno R3: fornire direttamente pin regolati da 5 V a 5 V?


24

Vorrei usare una batteria Arduino Uno R3 alimentata da un datalogger. Voglio alimentarlo direttamente con una fonte di energia ricaricabile a 5 V regolata Step-Up all'alimentazione pin 5V.

Non voglio sostituirlo con 5 V sul PowerJack o Vinperché non è necessario e si tradurrebbe in una tensione inferiore se alimentato con 5 V a Vine una dissipazione di potenza non necessaria a U1.

Diamo un'occhiata allo schema: http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf

L'ho modificato, dai un'occhiata alle aree verdi e ai percorsi blu (inizialmente ignora l'area gialla):
inserisci qui la descrizione dell'immagine

Solo fornirlo a quello, pin 5Vtuttavia, potrebbe distruggere il regolatore lineare U1che regola> 5 V + Vinfino a 5 V, temo.

Domanda

  • È accettabile e sicuro fornire 5V + regolati a pin 5V?
  • Dovrei inoltre abbreviarlo Vin?

Sfortunatamente non ci sono schemi interni per U1(NCP1117ST50T3G) nel foglio dati .

Per interesse

Dai un'occhiata all'area gialla: sbaglio o il diodo di protezione è invertito? Non dovrebbe avere il catodo USBVcc?

Modifica 1:

Dato che tre risposte affermano che sarebbe il modo più sicuro di fornire all'Arduino 5 V regolati tramite USB, vorrei chiarire un po 'la mia domanda: mi piacerebbe adattare l'installazione in un piccolo caso, quindi voglio evitare di collegare un Cavo USB se possibile.

Tranne che per scopi di test in cui ciò potrebbe accadere per caso, non è possibile che Vin/ VccUSBe Vcc 5Vsiano disponibili contemporaneamente.


Sto pensando di fare la stessa cosa, quindi chiedo: alla fine hai usato il pin 5V o il pin USBVCC o qualcos'altro?
heltonbiker

Mi sono imbattuto in una situazione in cui il mio circuito funziona utilizzando l'alimentazione esterna, ma smette di funzionare correttamente con l'USB collegato. Per consentire la connessione USB e avere comunque un comportamento corretto, ho usato l'aria calda per sollevare il fusibile dall'Uno. È l'aspetto d'oro accanto alla porta USB e la sua etichetta 501H.
Chris K,

Risposte:


11

Ecco un modo meno formale per esaminarlo: fornire alimentazione direttamente al pin + 5V è (quasi) esattamente ciò che accade quando Uno è alimentato tramite USB. Dato che l'alimentazione USB è perfetta, in base alla progettazione, anche la tua configurazione dovrebbe essere OK.

+ 5V regolati esterni possono essere forniti anche alla rete USBVCC, ad esempio utilizzando un cavo USB-B.

Come per la seconda domanda, si dovrebbe non connettersi a V_IN. L'output di NCP1117 potrebbe quindi diventare un'alternativa, fonte di energia concorrente e questo è meglio evitare.


1
"Fornire alimentazione direttamente al pin + 5V è (quasi) esattamente ciò che accade quando Uno è alimentato tramite USB" - Hai ragione. Grazie per avermi aperto gli occhi. :)
try-catch-finally

Dopo aver confrontato le risposte, penso che la tua risposta corrisponda meglio alla mia domanda, quindi ho accettato la tua risposta. (Ma dovrei dire che "in base alla progettazione" nella tua risposta dovrebbe essere sottolineato - il mio PC fornisce solo 4,85 V;)
try-catch-finally

Grazie :) Le specifiche USB definiscono la tensione consentita come 5 V +/- 5%, quindi ogni dispositivo USB dovrebbe essere in grado di gestire qualsiasi tensione da 4,75 V a 5,25 V. In alternativa, un alimentatore che emette una tensione regolata in questo intervallo, può essere utilizzato per alimentare un dispositivo USB (purché possa fornire abbastanza corrente).
DimKo

14

La posizione ufficiale di fornire energia direttamente al pin 5V sull'Arduino Uno è quindi:

5V. Questo pin emette un 5 V regolato dal regolatore sulla scheda. La scheda può essere alimentata dal jack di alimentazione CC (7 - 12V), dal connettore USB (5 V) o dal pin VIN della scheda (7-12 V). Fornire tensione tramite i pin 5 V o 3,3 V bypassa il regolatore e può danneggiare la scheda. Non lo consigliamo.

Detto questo, fornire 5 Volt regolati al connettore VUSB (non suddiviso come pin, AFAIK) dovrebbe essere la strada da percorrere: questo è il modo in cui la scheda è normalmente alimentata quando si stacca da un cavo USB, quindi evidentemente la caduta di tensione è accettabile.

Inoltre, l'unica caduta di tensione sulla linea + 5V quando viene alimentata da VUSB è la caduta attraverso la resistenza di accensione del MOSFET FDN340P, tra 70 e 110 mOhm. Per operazioni tipiche che non comportano l'eliminazione di correnti elevate dall'Uno, una richiesta di corrente di 100 mA comporterebbe una caduta di tensione di 11 mV , secondo una stima approssimativa.

Per un modo semplice per alimentare VUSB, basta liberare un cavo USB tagliandolo e applicare i 5 Volt su VUSB e pin di terra.


Grazie per la citazione, devo averla trascurata perché la cercavo anche su quella pagina. La frase "tramite 5 V o 3,3 V" è tuttavia fuorviante. Il bypass potrebbe davvero danneggiare gli U2, ma come dici tu, DimKo e Passerby, bypassare 5 V tramite T1 è ciò che fa un Arduino alimentato via USB.
try-catch-finally

Vedi anche il mio Modifica 1, vorrei evitare di collegare un cavo USB. Penso che alimenterò l'Arduino attraverso 5V pin(a mio rischio e pericolo;).
try-catch-finally

+1 per "Per un modo semplice per alimentare VUSB, basta liberare un cavo USB tagliandolo e applicare i 5 Volt su VUSB e pin di terra." Grande idea.
Pinguino anonimo

Non sono sicuro di cosa si riferisca a questa rete "VUSB". Suppongo che intendi il pin 1 del connettore USB (vedo che è "XUSB" su UNO) o la rete "USBVCC"?
Gwideman,

@gwideman Sì, USBVCC è indicato come VUSB su molti schemi di Arduino e quel conduttore ha anche un'etichetta serigrafata di VUSB sulla mia scheda.
Anindo Ghosh,

10

Non raccomandato ufficialmente

Arduino (la società) non consiglia di fornire direttamente 5 volt, perché:

  1. Il pubblico target non capisce sempre come viene progettato lo schema e, in quanto principianti / non tecnici, vorrebbe causare qualcosa di brutto, come collegare un volt non regolato alla 5Vlinea e soffiare cose, causando chiamate / rimborsi al servizio clienti / riparazioni / eccetera.
  2. L'alimentazione diretta a 5 volt ignora il metodo di rilevamento automatico / protezione della tensione.

Come funziona la selezione dell'alimentazione USB / esterna di Arduino

Fornire 5 volt direttamente è facile. L'alimentazione USB praticamente lo fa, così come il protocollo / intestazione ICSP. USB ha un fusibile PTC da 500 mA sulla linea e ha un mosfet a canale p, che da solo non offre alcuna protezione. Ma c'è anche l'etichetta LMV358 U5A, sopra quel mosfet. È (metà) un opamp, utilizzato come comparatore. Se VINviene rilevato e superiore a 3,3 volt, l'opamp porta la linea in basso, disabilitando il mosfet, tagliando USBVCCla 5Vlinea. Questo lo rende possibile da utilizzare VINe USBVCCallo stesso tempo senza problemi. Altrimenti avresti due fonti di alimentazione in competizione sullo stesso binario (USB e il regolatore da 5 volt).

Il mosfet ha un diodo corporeo

Fa parte della costruzione a mosfet, interna e funge da protezione contro la tensione inversa, impedendo alla 5Vbarra di alimentazione di fluire indietro verso USBVCC. È disabilitato quando il mosfet è acceso e invertito di parte quando è spento.

Avvertenze

  1. NON COLLEGARE USB E IL TUO 5V ALLO STESSO TEMPO!
    Inserendo un 5 volt regolato sul 5Vpin, si salta l'utile meccanismo di selezione della fonte di alimentazione. Puoi collegare altrettanto facilmente i tuoi 5 volt al connettore USB o tra il connettore USB e il fusibile PTC USB, ma ciò causerà un limite di 500 mA. Se hai bisogno di più corrente, puoi bypassare il fusibile, ma non il mosfet.
  2. Non mettere in corto 5Va VIN!
    Il regolatore da 5 volt in ogni caso, sarà solo dandy, purché VINnon venga utilizzato.

Per quanto riguarda le intestazioni ICSP (e ISP): il pin che è collegato alla rete + 5V è ISP VTG, che è destinato al dispositivo target (qui Arduino) per fornire energia al programmatore, che consente al programmatore di ospitare fino a + 5V o +3,3 obiettivi. Non è inteso come input per 5 V, quindi non è una prova a favore del collegamento di un'alimentazione a 5 V alla rete a + 5 V. (Anche se non fortemente contro entrambi.)
Gwideman,

1
"Se viene rilevato VIN e superiore a 3,3 v, l'opamp porta la linea bassa": In realtà c'è un divisore di tensione tra VIN e ingresso CMP a U5A, il che significa che VIN deve essere superiore a 6,6 V per disabilitare USBVCC come ingresso . Inoltre, poiché esiste un diodo tra la presa di ingresso di alimentazione PWRIN e VIN, (aggiungendo la caduta di 0,6 V) e il dropout di NCP1117 è da 1 a 1,2 V, ciò significa che l'alimentazione esterna dovrebbe essere superiore a 7,2 V per spegnere USBVCC, anche se senza USBVCC l'alimentazione esterna potrebbe fornire una potenza affidabile fino a 6,6 a 6,8 V
gwideman,

Ma concordo sul fatto che il collegamento di un'alimentazione a 5 V allo schermo Arduino + 5 V funzionerà, ma, come sottolinea Passerby, l'utente deve essere sicuro di non collegare tale alimentazione E USB allo stesso tempo. Un possibile risultato del collegamento di entrambi sarebbe il danneggiamento dell'host USB, dell'alimentazione esterna o, preferibilmente, del salto del fusibile F1.
Gwideman,

@Passerby La tua risposta spiega in un linguaggio fittizio cosa sta succedendo. Tuttavia non capisco bene cosa vorresti dire con "Diode on the mosfet, is a Body Diode". La mia ipotesi migliore è qualcosa di simile: sebbene il Mosfet contenga un diodo che normalmente protegge le correnti dal flusso nella direzione dell'host USB, questo diodo interno (protezione) viene disabilitato non appena viene applicata tensione ad Arduino il suo "USBVCC".
Pro Backup

@ProBackup Il diodo nel MOSFET è sempre presente e mai "disabilitato" di per sé. Tuttavia, quando il MOSFET è nel suo stato ON, il percorso della sorgente di drain ha una resistenza così bassa che il diodo che lo mette in parallelo è irrilevante. (Quindi il diodo è rilevante solo quando il MOSFET è OFF, e in quel caso consente la corrente solo nella direzione da USBVCC a + 5V.)
gwideman

4

Penso che dovresti stare bene.

Dal foglio dati NCP1117 , pagina 10:

inserisci qui la descrizione dell'immagine

Dal suono del foglio dati, il regolatore ha diodi di protezione interni che dovrebbero essere facilmente in grado di gestire il carico capacitivo presente VIN(dall'aspetto di esso (e avvitarlo, etichette di rete e schema non ricercabile), la capacità totale attraverso VINè 47 uF).

Pertanto, anche se tutti i condensatori sulla scheda sono completamente scaricati, l'unica corrente che fluirà attraverso i diodi di protezione del regolatore è la corrente richiesta per caricare quel singolo condensatore da 47 uF.


Se sei davvero preoccupato o vuoi essere più cauto, puoi mettere un diodo Schottky tra il pin 5V e il pin Vin. Ciò impedirà a qualsiasi corrente inversa di fluire attraverso il regolatore (sostanzialmente, è uguale a D1 nel diagramma sopra).

Potresti anche semplicemente saltare il pin Vin al pin 5V e inserire 5 V nel jack DC-in. Essere consapevoli del fatto che se si mangimi Arduino con più thn 5.5V, si sarà danneggiare qualcosa.


Chi sta votando questo? E perchè ?
Connor Wolf,

L'estratto del foglio dati che ho pubblicato dice chiaramente che la parte ha un diodo di protezione interno dall'output all'input. Potrebbe non essere una buona pratica usarlo in questo modo in un ambiente di produzione (non lo farei), ma l'unica cosa che potrebbe persino danneggiare sarebbe il regolatore di tensione, che non viene comunque utilizzato in questa situazione.
Connor Wolf,

1
Ti ho fatto +1 per una risposta ponderata e puntuale. Detto questo, penso che, a conti fatti, fornire l'alimentazione esterna + 5V al connettore USB sia il modo migliore per andare, in quanto impedisce la connessione accidentale di + 5V esterna contemporaneamente con l'alimentazione USB e sfrutta F1.
Gwideman,

3

Un'altra idea potrebbe essere quella di collegare un resistore 2.2k da + 5v al punto etichettato "CMP" che è l'ingresso non invertente sul pin dell'amplificatore operazionale 3. Ciò disattiverà l'alimentazione USB + 5v sulla scheda ma consentirà comunque le comunicazioni USB.

Ovviamente un interruttore SPST per spegnere 'la resistenza' sarebbe anche bello, quindi potresti disabilitare questa nuova funzione. Lo switch verrebbe cablato in serie con la resistenza 2.2k. Se non si prevede mai di utilizzare nuovamente l'alimentazione USB, tuttavia l'interruttore non sarà necessario, solo se a volte è necessario alimentare la scheda con l'alimentazione USB senza alimentazione esterna + 5v.

Qualunque cosa tu faccia test per assicurarti che funzioni misurando l'uscita dell'LM358 quando colleghi l'alimentazione esterna + 5v.


0

Fornire 5 volt direttamente è facile. L'alimentazione USB praticamente lo fa, così come il protocollo / intestazione ICSP. USB ha un fusibile PTC da 500 mA sulla linea e ha un mosfet a canale p, che da solo non offre alcuna protezione. Ma c'è anche l'LVV358 etichettato U5A, sopra quel mosfet. È (metà) un opamp, utilizzato come comparatore. Se viene rilevato VIN e superiore a 3,3 volt, l'opamp porta la linea in basso, disabilitando il mosfet, interrompendo l'USBVCC dalla linea 5V. Ciò consente di utilizzare VIN e USBVCC contemporaneamente senza problemi. Altrimenti avresti due fonti di alimentazione in competizione sullo stesso binario (USB e il regolatore da 5 volt).

Hmm, non è questo all'indietro? Il divisore di tensione è collegato all'ingresso non invertente del comparatore, quindi lo guida ALTO (+ 5 V) quando la tensione del divisore è superiore a 3,3 V e BASSO quando è inferiore a 3,3 V. Il MOSFET in modalità di miglioramento del canale P è spento quando la tensione di gate è ALTA (cioè Vgs = 0 V) ​​e acceso quando la tensione di gate è BASSA (cioè Vgs = -5 V).

Il risultato è lo stesso (una tensione superiore a 3,3 V sul divisore spegne il MOSFET e isola l'alimentazione USB e una bassa tensione sul divisore collega l'alimentazione USB al circuito) come afferma il paragrafo citato - ma penso che le tensioni dichiarate ci sono all'indietro.


-1

Penso che la cosa migliore da fare in quel caso sia alimentare l'arduino tramite + 5V Pin da una fonte regolata a 5V e, se mai fosse necessario collegare USB per codificare o stampare valori sul computer, utilizzare un cavo USB con il filo a 5V tagliato.

In questo modo non metterai mai il tuo arduino in una lotta contro la fonte di energia. Ma non avrai il suo pin 3.3V funzionante. Giusto?!, Perché la guida 5V non va al regolatore di tensione 3.3.

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.