Arduino auto spegnimento tramite transistor o TIP120

Salve a tutti, sono ormai ore che cerco di venire a capo da questo quesito. Vorrei creare uno switch (tramite NPN o PNP se credete migliore) controllato da un output di Arduino UNO o MEGA per interrompere la corrente dello stesso Arduino che è alimentato da 2 litio in serie che mi danno 8V (ma possono scendere anche a 6 quando più scariche). Posso già anticiparvi che ho anche a disposizione dei TIP120 che ho letto a volte siano preferibili per questi scopi.

Ho letto queste guide/discussioni:

https://www.electroyou.it/forum/viewtopic.php?f=1&t=48555
ma quello che ottengo è avere Arduino sempre acceso sia che l’output è basso o alto.

Forse sbaglio nel dimensionamento delle resistenze dove infatti ho qualche dubbio o forse c’è un errore di concetto che non vedo.
Comunque l’Arduino consuma circa 60 mA ma dovrei abbassarlo a 30 mA tramite sleep mode.

Vi allego quello che è all’incirca lo schema del mio circuito però prendete nota di ciò:
1)l’interruttore in parallelo al transistor serve per il riavvio di arduino, che quando si accende mette basso l’output e poi lo alza quando deve spegnersi.
2)mettendo R2 sia a 1k che 2k ad Arduino arriva una tensione minore di 5V e anche se premo il pulsante parallelo al transistor non riesce ad accendersi.

Quindi per non rovinare l’Arduino ho deciso di chiedervi aiuto!
Dov’è che sbaglio? ho calcolato male?

enomis10:
1)l'interruttore in parallelo al transistor serve per il riavvio di arduino, che quando si accende mette basso l'output e poi lo alza quando deve spegnersi.

Casomai il contrario, l'output deve restare alto tutto il tempo in cui si vuole il transistor acceso.

2)mettendo R2 sia a 1k che 2k ad Arduino arriva una tensione minore di 5V

I volt che mancano cadono sulla resistenza da 330Ω che infatti va tolta. Quando alimenti Arduino tramite un interruttore mica interponi in serie anche una resistenza.

Ciao Claudio, grazie della risposta.

Casomai il contrario, l'output deve restare alto tutto il tempo in cui si vuole il transistor acceso.

Si esatto mi sono confuso.
Poi per quanto riguarda la resistenza da 330 ohm l'ho tolta. Ora come faccio a calcolare il dimensionamento della resistenza alla base del transistor? ho provato con resistenze fino a 20 k ma all'arduino anche non premendo il pulsante arriva comunque una tensione maggiore di 3.6 V che riesce ad accendere il LED di "power" dell'Arduino anche se di fatto non ha abbastanza tensione per funzionare. Con 50k arriva a 3 V e non si accende ma una volta avviato Arduino e posto l'OUTPUT alto non riesce a tenerlo acceso.
Il TIP120 potrebbe comportarsi in maniera migliore?

consiglio un mosft logic-level ... soo piu efficenti dei transistor, e dato che il gate e' praticamente l'equivalente di un condensatore, consumano anche molto meno in fase di accensione ... :wink:

Ti allego questo schema dove ho preferito interrompere il ramo positivo.
Ovviamente il terminale libero di controllo della base sei libero di collegarlo a qualsiasi uscita di arduino, che devi portare LOW per ottenere la conduzione del transistor.
Vale comunque il consiglio di Etemenanki sull'uso di un mosfet a canale P.

Schema in arrivo… Forse

Grazie ragazzi! per quanto riguarda il mosfet sono consapevole che sia più efficiente anche perchè si tratta di un dispositivo a batteria ma per adesso non ne ho a disposizione purtroppo.
@lelebum grazie mille per lo schema ma vorrei farti notare (e chiedo delucidazione in merito) che la mia alimentazione è di 6-8 V mentre te hai inserito una 5 V. Fa lo stesso o devo modificare qualcosa? Per le resistenze come hai fatto a calcolare i valori?

Nel frattempo ho provato con il tuo schema anche con la mia alimentazione è di 8 V e ho appurato che l'Arduino riesce ad accendersi in qualsiasi caso anche non premendo il pulsante di avvio. Credo proprio che ci sia qualcosa da cambiare

Ciao
prova questo
anche con due transistor funziona

Lo schema allegato al post 5 si ottiene in uscita circa la stessa tensione presente sulla base. E' preticamente lo schema di un alimentatore stabilizzato a transistor.
L'ultimo schema è sicuramente migliore e si comporta come interruttore.

bene ragazzi ho risolto! ho utilizzato il secondo schema e sono riuscito a trovare un P mosfet! grazie ancora.
Comunque per chi vuole sarei interessato a sapere come si fa a dimensionare le resistenze. Anche tramite qualche breve guida.

Il mio schema funziona con uscita LOW ed è adatto solo con alimentazione a 5v e comunque la stessa di Arduino.
Lo schema di "milefori" invece richiede uscita HIGH e può essere usato con qualsiasi tensione.
Se hai rispettato gli schemi ed hai inserito su arduino il giusto codice che controlla l'uscita che comanda il MOS tutto dovrebbe funzionare.

lelebum, messaggio n.5, e milefori, messaggio n.8, grazie per i due schemi ben fatti, a matita o più tecnologicamente che sia :slight_smile:

Allora se andavano bene anche altre soluzioni c'è anche questa, con lo stesso pulsante si può sia accendere che spegnere :slight_smile:

alfio-on-off.png

alfio-on-off.png