Circuito di switch alimentazione arduino

Ciao..
Ho una curiosità che vorrei colmare per un mio progetto..
Come sapete, l'arduino ha la possibilità di essere alimentato tramite jack japan e tramite usb. Questo grazie ad un circuito di switch, che commuta l' alimentazione sul jack o sull'usb. Nel caso di tutti e due i connettori connessi e in alimentazione, mi sembra di ricordare, lo switch commuti sul jack.
Ecco volevo chiedervi se mi potete spiegare con quali componenti viene fatto questo switching e se si può riprodurre su un pcb. (o a foro passante o anche in smd)
Grazie

in alto a sinistra
RN1A, RN1B, U5A, T1

La tensione di Vin viene divisa a metá con le 2 resistenze RN1A e RN1B. L'amplificatore operazinale U5A un LMV358 confronta la metá di Vin con i 3,3V. Se la tensione Vin/2 é maggiore di 3,3V l' uscita di U5A va a H e il P-MOSFET T1, un FDN340P non conduce piú e interrompe i 5V del USB.

Se usi un amplificatore operazionale Rail To Rail e un Single P-Channel, Logic Level, MOSFET non ci sono problemi di costruirti il circuito sulla Tua scheda.

Ciao Uwe

Grazie uwefed, quindi se ho capito bene, dovrei prima fare il circuito per i 3.3v e poi con un amplificatore operazionale e un p-Mosfet dovrei fare il tutto...
Se quello che ho appena detto.. mi sai dare il nome di un amplificatore op. di tipo DIP da poter iniziare a fare delle prove ? Perchè magari alla fine usero gli smd e quindi potrei usare lo stesso che è nello schema, ma non saprei il nome di analogo in foro passante.

Il TLC2262 è un op-amp rail-to-rail DIP8 fatto per lavorare con tensioni max di 8V. Potrebbe fare al caso tuo.

Grazie Leo, ho guardato i datasheet e sembra effettivamente analogo...
Adesso vedo di fare qualche prova non quello e un MOSFET. lo vorrei applicare ad un 644 in standalone per poterlo programma anche finchè sarà in funzione, cioè sotto Vin, con un adattatore usb-seriale.

superzaffo:
Grazie uwefed, quindi se ho capito bene, dovrei prima fare il circuito per i 3.3v e poi con un amplificatore operazionale e un p-Mosfet dovrei fare il tutto...
Se quello che ho appena detto.. mi sai dare il nome di un amplificatore op. di tipo DIP da poter iniziare a fare delle prove ? Perchè magari alla fine usero gli smd e quindi potrei usare lo stesso che è nello schema, ma non saprei il nome di analogo in foro passante.

Per i 3,3V puoi usare anche un Diodo Zener e una resistenza. Arduino usa i 3,3V perché per altri motivi ci sono sulla scheda.
Ciao Uwe

Grazie uwefed.. ma io pensavo alla fine di "ricostruire" un po' il circuito dell' arduino... che ho visto usa un lp2935-33 come regolatore per i 3.3v.
Per fare le prove su breadboard, ne userò uno in formato DIP.
Ma sulla prima riposta, mi dici questo:

tensione Vin/2 é maggiore di 3,3V l' uscita di U5A va a H e il P-MOSFET T1, un FDN340P non conduce piú e interrompe i 5V del USB.

Cosa intendi per "H" ? subito mi era sfuggita la cosa.. io ho interpretato che l' uscita avrà una tensione che disabilita il mosfet..

H = High, poiché il mosfet è a canale P ha bisogno di LOW per lavorare, con H si interrompe

superzaffo:
Ecco volevo chiedervi se mi potete spiegare con quali componenti viene fatto questo switching e se si può riprodurre su un pcb. (o a foro passante o anche in smd)

Il modo più semplice è mettere in serie alla Vusb un diodo schottky in grado di reggere 1A, la tensione proveniente dal regolatore 5V la connetti a valle del diodo.
Il funzionamento è semplicissimo, se è collegata la USB Arduino si alimenta attraverso il diodo, unica nota negativa è che la tensione di funzionamento è ~4.6-4.7V invece di 5V, nessun reale problema ne per il micro ne per eventuali shield collegate, quando sono presenti i 5V del regolatore il diodo viene depolarizzato e di conseguenza non conduce più, Arduino viene alimentato esclusivamente dalla sorgente di alimentazione esterna anche se è collegato alla USB.
Questa soluzione, praticamente a costo 0, è molto pratica per una standalone che normalmente lavora alimentata autonomamente alle quale connetti la USB solo per aggiornare il programma e/o far dialogare il pc con Arduino, ti consente di alimentare Arduino anche dalla USB se manca l'alimentazione principale in modo semplice senza scomodare opamp e mos :slight_smile:

Cavoli astro... mi inchino a te :grin:
Solo un paio di chiarimenti... Il tipo di diodo schottky, basta solo che supporti fino ad 1A ? o devo guardare altre caratteristiche ?

la tensione proveniente dal regolatore 5V la connetti a valle del diodo

Con questo intendi una cosa simile ? Vusb->diodo S.->|alimetazione 5V|->circuito 644

superzaffo:
Solo un paio di chiarimenti... Il tipo di diodo schottky, basta solo che supporti fino ad 1A ? o devo guardare altre caratteristiche ?

Si va bene un qualunque diodo raddrizzatore che regge 1A continuo, volendo pure 800 mA.

Con questo intendi una cosa simile ? Vusb->diodo S.->|alimetazione 5V|->circuito 644

Si, colleghi la Vusb sul Anodo del diodo e sul suo Catodo il 5V proveniente dal regolatore, questa diventa la linea di alimentazione di Arduino.

@Michele: Grazie della conferma, allora era quello che avevo capito.
@Astro: Grazie ancora, mi attivo subito con questo schema.

Ok perfetto, funziona alla meraviglia il diodo S. Diciamo che perde qualche cosa nella tensione (4.8-4.7) ma non mi crea problemi.
Grazie a tutti

ciò che ti perde, come ti aveva già detto Astro, è l'ovvia caduta di tensione sul diodo, da 0,2 a 0,4V. Tieni presente che la tensione minima ufficiale di funzionamento del micro è 4,5V, valore che potresti raggiungere sotto carico aggiuntivo e senza alimentazione esterna. Ma Astro è stato chiaro nel sugggerirti questa soluzione solo per permetterti di riprogrammare lo stand-alone via seriale, prevedendo normalmente un'alimentazione via plug.

Si infatti, tutto come previsto. Io volevo questo circuito solo per programmare via usb il micro senza che ci fossero problemi mentre era sotto alimentazione esterna.
Grazie per la precisazione Michele..

4.5V è la tensione minima alla quale è garantito il funzionamento a 20 MHz, l'ATmega328 può lavorare con una tensione minima di 1.8V con il clock a 4MHz, con il clock a 16 MHz la tensione minima è ~4.3V.

Ovviamente mi riferivo al 328 "quarzato", visto che parliamo di uno stand-alone tipo Arduino. Comunque a pag. 308 del datasheet c'è il grafico delle alimentazioni da cui si evince che effettivamente 4,5V è la tensione minima a 20MHz, mentre a 16Mhz effettivamente è inferiore. Prima parlavo di tensione "ufficiale", io stesso ho appurato che alcuni 328P a 16MHz arrivano anche a meno di 4V senza problemi, diciamo che certamente non incontrerà alcuna difficoltà. :slight_smile:

Bene, però il mio è un 644 stand alone ]:smiley:
Ho visto dal datas. che per il 644P a 20MHz le tensioni Min e Max sono "20 MHz @ 4.5V - 5.5V"
Per cui ci sono abbastanza stretto.. ma ripeto.. sarà sempre comunque collegato alla Vin... per cui non penso d' avere problemi...
Comunque non vi nascondo che il circuito con l' op. e mosfet mi incuriosisce lo stesso. :grin:

Non devi guardare quella voce, ma il grafico che ti ho detto, trovalo anche sul 644 (pag. 335) e vedrai che sono molto simili, per cui anche nel tuo caso puoi lavorare tranquillamente a 4V circa, quindi no problem....

Certamente, il grafico è molto più chiaro..
Dopo che avrò collegato tutto farò una prova e vediamo sotto carico (per curiosità) quanto arriva.
Ma sicuramente non sarà un problema. :wink: