Ciao! Mi chiamo Emma, da qualche mese sto lavorando ad un progetto per una mano robotica, si tratta di una mano stampata in 3D, con ogni dito collegato ad un servomotore, tutti collegati ad una breadboard, sempre ad essa sono connessi 5 sensori di flessione, che verranno posizionati su un guanto per far muovere la mano robotica. Lavoro con arduino da diversi anni ma ho difficoltà a capire come ragiona con il passaggio di corrente. Attualmente ho collegato solo un dito, quindi ho un solo servomotore ed un solo sensore di flessione. Sto utilizzando una scheda Arduino UNO R3, alimentata via USB dal pc fisso. Le mie domande sono:
Dovendo collegare più servomotori e sensori, c’è naturalmente bisogno di una maggiore potenza, posso quindi collegare 4 pile ricaricabili da 1.5V e in contemporanea tenerlo attaccato via USB?
Dovrei attaccarli alla breadboard o direttamente alla scheda?
Se collegassi l’alimentazione esterna con un totale di 6V, la corrente totale sarebbe sommata anche al USB oppure la scheda lo “blocca” in automatico?
Scusatemi per la lunghezza e la stupidità delle richieste, spero di essermi spiegata il meglio possibile, grazie in anticipo!
arduino con usb quando carichi programma, con jack a regime, dovrebbe switchare automaticamente quando stacchi usb ma io preferisco non farlo
servo con la loro alimentazione esterna
masse in comune
Grazie della risposta, continuo però a non avere chiaro il funzionamento, il circuito preferisco tenerlo attaccato via USB per vedere i valori sul monior seriale, posso quindi attaccare alla breadboard le 4 pile da 1.5V o rischio di bruciare la scheda?
Si procedi con un solo servo rc e alimentalo con le 4 pile da 1.5V.
Da questo pacco batterie il negativo è da connettere sia al servo che al pin GND della scheda arduino. Mentre il positivo del pacco batterie è collegato solo al servo rc.
Per la sperimentazione in laboratorio non userei le pile ma un alimentatore,
Se hai un alimentatore regolabile stabilizzato lo regoli a 6V ci alimenti il servo come descritto prima.
Va benissimo con il collegamento usb che con alimentazione esterna (connettore nero) a cui devi fornire almeno 7V.
Grazie del consiglio, spero di aver capito correttamente, non me ne intendo molto, ma avendo 5 servo e 5 sensori come faccio a collegarli tutti con l’alimentazione in GND? andrebbe bene collegare semplicemente alla porta jack della scheda un’alimentazione da 9V (per evitare problemi) e in contemporanea il USB?
Indipendentemente dal collegamento USB o jack, anche un solo servo rc deve essere alimentato separatamente come ti ho suggerito a maggior ragione 5 servo richiedono maggiore corrente e quindi sempre alimentatore separato.
Ho trovato questo articolo forse può esserti utile.
L'alimentazione 9V dal jack può essere utile se i sensori di flessione sono letti tramite analogRead() sempre che l'alimentatore in questione sia di buona qualità.
In ogni caso USB + jack possono coesistere, l'elettronica a bordo scheda sceglie automaticamente il jack.
Se vuoi semplificare i collegamenti e non stare ad impazzire con i cavetti volanti, prendi una shield basata sul driver PCA9685 come questa
Oltre ai vantaggi hardware legati al cablaggio semplificato, guadagni anche lato software in quanto "alleggerisci" il microcontrollore dell'onere di dover generare i segnali di controllo per i servomotori.
Grazie mille, sono riuscita a buttare giù una bozza ma non so quanto sia corretta, allego il circuito Tinkercad, qualche buon anima saprebbe dirmi se può funzionare senza che bruci tutto il circuito? Come ho detto in precedenza non ho molta confidenza con Arduino, sto provando in tutti i modi a documentarmi ed imparare, chiedo di avere quindi molta pazienza e tolleranza negli stupidi errori che potrei aver commesso, accetto consigli di ogni tipo.
(le resistenze sono da 22kOhm); Sotto suggerimento aggiungerò probabilmente un PCA9685 per i servo, per il momento il circuito potrebbe dare problemi? Grazie.
Non mi torna il collegamento del pacco di batterie, sembrerebbe che tra Rosso e Marrone ci siano 9V mentre devono essercene 6V.
Oppure hai dei servo RC che possono essere alimentati a tensione differente da 6V?
Anche se usassi pile ricaricabili 1.35 x 6 = 8.1V.
Comunque misura con il multimetro la tensione tra Rosso e Marrone e se è troppo alta per i tuoi servo devi cambiare configurazione pile.
Ho controllato, i servo sono dei micro servo sg90, effettivamente hanno una massima di 6V, ho un multimetro quindi proverò a misurarne la tensione. A livello di circuito per il resto andrebbe tutto bene giusto? mi basta cambiare l'alimentazione con 4 pile (non ricaricabili) da 1.5V? Continuo ad essere dubbiosa su una cosa stupidissima però, In alternativa posso utilizzare anche un alimentatore direttamente attaccato alla presa di corrente da 9V attaccato al jack della scheda Arduino, il minimo richiesto sarebbe di almeno 7V se non sbaglio. I servo reggono massimo 6V, come faccio quindi ad evitare che ne arrivino 9V e romperli? con delle resistenze? Grazie, ciao.
Non sono sicuro di aver capito. Con alimentatore da 9V alimenti Arduino da jack e poi dallo stesso alimentatore vuoi prendere i 9V abbassandoli ? Ci sono dei modulini step-down che lo fanno.
Come ti è stato detto al post #6 NON prendere alimentazione da Arduino per i servo. I pin di Arduino non possono erogare abbastanza corrente (e lo rompi).
Ricorda poi che alimentatore deve dare abbastanza corrente. E il modulo stepdown da 9V a 6V deve abbassare tensione ma anche erogare abbastanza corrente per i servo. (Alcuni modulini erogano poca corrente e non andrebbero bene)
Quindi alla fine, come hai detto tu, per non far bruciare la scheda, la soluzione sarebbe attaccare la batteria 6V (1.5V x 4) direttamente alla breadboard + USB arduino (per passaggio dati)? Ti chiedo scusa se ripeto gli stessi concetti, ma sono molto dura a capirne il funzionamento, grazie della pazienza.
Se usi il pacco da 4x1,5V okay.
Puoi anche usare alim 9V. Io ti avvisavo solo che se usi un alimentatore da 9V NON prendere la corrente per i servo da Arduino. Per abbassare 9V a 6V userei un modulino apposito che usa un chip tipo LM7806 che permette di uscire fino a 2A. Con le resistenze andresti incontro a molti problemi.
Tutto chiaro, solo un'ultima cosa, ho cercato le differenze tra pile ricaricabili e non, alcuni dicono che i servo rischiano di avere problemi con quelle non ricaricabili, è un'affermazione fondata o posso andare tranquilla con quelle normali?
Non sono un elettronico ma un programmatore. Io sinceramente non ho mai sentito di questo problema con le pile non ricaricabili.
Al più unica differenza è che le non ricaricabili sono da 1.5V mentre le ricaricabili sono di solito da 1.2 o 1.3V. (se scrivo cavolate gli elettronici mi correggeranno )
L'unica differenza che mi viene in mente è che le ricaricabili possano erogare correnti maggiori (poi dipende da che tipo... sto pensando alle litio per uso aeromodellistico che sono un caso estremo). Uno di quei servo in stallo assorbe anche mezzo ampere, e ce ne sono cinque. Dubito che delle normali stilo riescano a erogare 2,5 .. 3A. Può essere che con le pile "normali" i servo sotto sforzo tutti insieme "perderanno potenza".
Come è già stato detto da altri ci sono varie alternative, quale scegliere dipende caso per caso.
Caso laboratorio
Non spreco tempo e soldi con le pile, potrei pure accidentalmente fare corto circuito, scaricando le batterie e forse danneggio la breadboard. L'alimentatore tollera cortocircuiti e va nella modalità "protezione" la tensione erogata scende quasi a zero idem per la corrente, quindi fili e breadboard sono salvi come pure il tempo che non ho sprecato. Uso almeno 2 alimentatori separati, uno per alimentare arduino (A), il secondo per alimentare il/i servomotori RC (B).
A.GND e B.GND sono collegati assieme per creare un riferimento unico. Noi la chiamiamo "tensione" ma la si dovrebbe chiamare d.d.p (differenza di potenziale).
Versione finale
La versione finale deve essere presentabile e funzionare per la durata della presentazione. Se le condizioni lo permettono la versione finale è pure indipendente e ciò semplifica l'installazione.
Quindi tutto alimentato da batterie.
Batteria per arduino: 9V Radio di qualità spacchettata nel momento della installazione e collegata subito allo spinotto, questo perché i terminali sono a vista e basta un contatto accidentale con una superficie metallica per scaricarla considerevolmente.
Batteria per servo:
Fusibile passante per batteria 6V
Come hanno detto per la versione finale ci sono alternative inclusa la
batteria da 12V piombo gel a cui aggiungere gli alimentatori step-down da 12 a 8V per arduino (si così puoi collegare anche la usb), altri step down da 12 a 6V quanti ne servono per i servomotori RC. Ad esempio 2 stepdown da 2 Amper per i 5 servo RC. Uno stepdown alimenta solo 2 servo RC.
Per gli step-down cerca con amazzone "step-down arduino".