Tutorial: arduino servo con alimentazione esterna

L’alimentazione erogata da arduino spesso non è sufficiente per consentirti di alimentare uno o più servocomandi e devi ricorrere ad arduino servo con alimentazione esterna.

arduino servo con alimentazione esterna

Ossia devi utilizzare una alimentazione per arduino ed una separata per il o i servocomandi.

Usare una alimentazione esterna è necessario sopratutto con i servomotori che sono solitamente alimentati a 4,8v/6v mentre arduino deve essere alimentato da 7v/20v ( io consiglio di non superare i 12v ):

come alimentare arduino

La maggior parte dei progetti che coinvolgono i servomotori utilizzano i 5v erogati da arduino in un collegamento simile a questo:

schema Arduino e servomotore

tuttavia sia in presenza di più servocomandi sia quando usi servocomandi particolarmente onerosi in termini di corrente assorbita hai che la potenza erogata da arduino attraverso il suo alimentatore interno non è sufficente e puoi incorrere in malfunzionamenti quali:

  • tremolio dei servocomando
  • difficoltà da parte del servocomando a mantenere la posizione data
  • eccessiva lentezza del servo nel raggiungere la posizione desiderata
  • surriscaldamento dell’alimentatore arduino
  • ecc…

solo per citare i più ricorrenti.

Qual’è la soluzione ?

La soluzione è senza dubbio quella di alimentare in modo separato la scheda arduino ed i servocomandi.

Come si collega arduino servo con alimentazione esterna ?

Quando vuoi alimentare un dispositivo controllato da arduino, ad esempio un servo, devi ricondare che la cosa fondamentale è mettere il terminale GND ( massa o negativo ) in collegamento tra le alimentazioni ed i dispositivi, si chiama per questo motivo anche terminale comune 🙂

Un esempio di connessione è:

arduino servo con alimentazione esterna

in cui il servo prende alimentazione dal pacco batterie formato da 4 pile da 1,5v erogando 6v

L’alimentazione di arduino la puoi prendere da una pila a 9v o un alimentatore differente, la cosa importante è che il pin negativo del servo sia collegato al Gnd Arduino come il pin negativo del pacco batterie da 4 pile.

Anche il negativo della pila da 9v sarà collegato al Gnd tramite il connettore anteriore.

Il positivo del servo lo devi collegare direttamente al pacco batterie in alto ( 4 x 1,5v ) in modo che il servo prenda alimentazione da quest’ultimo.

Come collego più servocomandi ?

Se vuoi collegare altri servo, arduino ha 6 uscite PWM, puoi seguire questo schema e aggiungere tutti i servo che vuoi semplicemente come aggiungi il secondo:

arduino come collegare due servo

Buon collegamento !!

Cortesemente, prima di inserire i commenti leggi il regolamento

Permanent link to this article: http://www.mauroalfieri.it/elettronica/tutorial-arduino-servo-con-alimentazione-esterna.html

151 comments

1 ping

Skip to comment form

    • Riccardo on 11 dicembre 2013 at 10:42
    • Reply

    Ciao mauro, davvero un ottimo articolo chiarissimo sulla “problematica” di alimentazione dei servo. Una sola domanda: lasciando tutto collegato come è mostrato negli schemi, se l’unica cosa che cambiassi è il collegamento di arduino che invece di farlo alla batteria da 9V lo lascio attaccatto alla usb del pc e quindi lo alimento con i 5V del pc andrebbe bene ugualmente o è comunque meglio in queste occasioni una tensione esterna dai 7-12V per arduino??
    Grazie 🙂

    1. Ciao Riccardo,
      puoi tranquillamente alimentare Arduino dal Pc per fare i test ed il debug, certamente dovrai rivolgerti all’alimentazione esterna quando il tuo progetto vorrà vivere di vita propria, senza l’ausilio del Pc.

      Mauro

    • giovanni on 15 dicembre 2013 at 09:16
    • Reply

    Biongiorno, vorrei realizzare una bobinatice con due motori passo passo che facciano un numero di giri programmato in un senso e nell’altro puo’ aiutarmi grazie Giovanni

    1. Ciao Giovanni,
      certo che posso aiutarti a realizzarla anche se ammetto la mia ignoranza su cosa sia una bobinatrice.

      Io posso consigliarti gli articoli che puoi leggere per imparare a controllare i motori passo passo e quali driver puoi usare, tu dovrai scrivere il programma partendo dai miei articoli.

      Mauro

    • Michele on 16 dicembre 2013 at 11:08
    • Reply

    Ciao Mauro,
    Sto usando un servo towerpro sg90 x fare delle prove con arduino e lo sto alimentando direttamente coi 5 volt prelevati dal pin 5v. Sui datasheet del servo ho notato che la tensione di utilizzo è x l’appunto 4.8 v. In effetti scricchiola un po’ mentre è alimentato, il servo.
    Però vedo in diversi tutorial che il servo sg 90 è alimentato così e non con alimentazione esterna. Tu mi consiglieresti a queste tensioni di alimentarlo sempre esternamente ?

    1. Ciao Michele,
      il servo SG90, come la maggior parte dei servomotori per modellismo, puoi alimentarlo a 4,8v o 6v
      In ogni caso tra 4,8v e 5v non ci sono grose differenze.

      L’alimentazione esterna è utile se vuoi alimentare più sevomotori contemporaneamente perchè la corrente erogata da arduino potrebbe non essere sufficente.

      Mauro

  1. ciao Mauro devo pilotare un micromotore rh159 e il contatto di scatto della mia reflex con arduino uno e la scheda con i relè che si interfaccia con arduino. la mia domanda è questa : mi deve pilotare il motore a cc alimentato separatamente per circa tre ore con intervalli on 3 secondi off 30 secondi, allo stesso tempo deve darmi il contatto di scatto alla macchina fotografica sempre per 3 ore con intervalli on 30 secondi off 2 secondi, secondo te a che problemi posso andare incontro alimentando arduino e scheda relè con batteria a 9 volts. se puoi darmi qualche dritta grazie anticipato ciao franco

    1. Ciao Franco,
      dovresti provare a misurare l’assorbimento del motore e dello scatto per qualche minuto, ad esempio 15min, e verificare che il tipo di batteria sia sufficiente per le tre ore di funzionamento.

      Mauro

    • Michele on 16 gennaio 2014 at 21:02
    • Reply

    ciao mauro,

    sempre riferendomi ai servo della towerpro sg90, mi hai informato che funzionano con una tensione di utilizzo di 4.8/6V. per quanto riguarda la corrente di cui hanno bisono, sai darmi delle indicazioni? non riesco a trovare nessuna informazione riguardante la corrente.
    poi vorrei chiederti quale sia la corrente massima erogabile da un arduino uno. O meglio, i 5 V erogati da arduino, quale intensità di corrente eroga? questo te lo chiedo perche vorrei collegare 5 microservi , di cui sopra e sarei intenzionato ad usare una alimentazione esterna. Me la consigli?
    grazie

    1. Ciao Michele,
      nel blog trovi un mio articolo dedicato alla corrente assorbita da arduino e molti articoli in cui parlo della corrente erogata dai pin.
      Puoi reperire l’informazione della corrente erogata anche dalla scheda tecnica sul sito arduino.

      Ti anticipo che 5 micorservi non riuscirai ad alimentarli attraverso arduino, la corrente di funzionamento di 5 servo è sicuramente superiore a quella erogabile da arduino in totale, rischi di avere malfunzionamenti discontinui tipo tremolii dei servo o movimenti non fluidi o troppo lenti.

      Mauro

    • Michele on 17 gennaio 2014 at 13:05
    • Reply

    Ciao Mauro,
    Mi sono studiato l’articolo sull ‘assorbimento di arduino.
    Il problema è che già con un solo servo collegato nn viene rispettato il codice, cioè , il braccio del servo si muove a scatti non rispettando il delay , scricchiola, ed è lentissimo. Pensavo di aver rotto la scheda arduino, ma ho provato che con i led funziona tutto, quindi credo sia proprio un problema di servo o alimentazione di questo. So che con più servi ci vuole un ‘alimentazione esterna, ma non credevo mi desse problemi già con uno, che come tensione rientra nei parametri di arduino, 4,8/6V

    1. Ciao Michele,
      in passato mi hanno già scritto di problemi simili con sevo SG90, prova a controllarlo in microsecondi, ho scritto proprio oggi un articolo.

      Mauro

    • Luciano on 20 gennaio 2014 at 09:15
    • Reply

    Ciao Mauro , ho comprato arduino uno rev 3 e ho pasticciato mi da errori , ma come si resetta? , è vero che basta jumperare i 2 contatti vicino al button?
    grazie

    1. Ciao Luciano,
      arduino è dotato di un pulsante di reset posto di fianco al connettore USB che serve a fargli ricominciare l’elaborazione dello sketch.
      Puoi sempre provvedere a togliere alimentazione e USB e a riattaccarle e questo solitamente risolve il 90% dei problemi.

      Se arduino si è danneggiato in seguito a collegamenti errati o ha perso il bootloader dovresti seguire le procedure specifiche per il tipo di errore che ti si presenta.

      Mauro

    • Michele on 21 gennaio 2014 at 23:19
    • Reply

    ciao mauro,
    ho necessità di alimentare dai 3 ai 5 servi towerpro sg90 contemporaneamente ed esternamente con terminale GND in comune con la scheda arduino uno. Sapendo che la tensione necessaria x ciascun servo è 4.8V e avendo verificato che assorbono all’incirca 160mA ciascuno, secondo te, se alimento i servi con una batteria 9V 1A prelevando l’alimentazione da un regolatore di tensione L7805 ( che penso regoli la tensione in uscita fino a 5V) è sufficientente per alimentarli tutti?
    Perchè fino a che ne alimento uno solo con questo sistema non ci sono problemi, se invece ne alimento già 3, i servii cominciano tutti a vibrare molto e a non eseguire le istrizioni inviate.
    grazie,

    michele

    1. Ciao Michele,
      il regolatore 7805 eroga al Max 1A e dovresti farcela ad alimentare tutti i servo senza sforzarli.

      Sei un po’ al limite 160×5=850mA con un margine di 150mA per arduino.

      Mauro

    • Michele on 7 febbraio 2014 at 22:12
    • Reply

    Ciao Mauro,ti chiedo ancora aiuto, sto costruendo un robot Tank (con cingoli) composto da una scheda Arduino Uno R3,una scheda Arduino shield motors R3, un servomotore Tower pro 9g sg90,un sonar HC-SR04 e due motori “double gearbox Tamiya con rapporto 38.2:1. Ho caricato un semplice sketch per testare i motori ed il servomotore (tralasciando per ora il sonar perchè ho qualche difficoltà a scrivere lo sketch adeguato). Ho alimentato Arduino con un alimentatore esterno da 9v e 1A,poi ho collegato il pin 5v di arduino ai pin Vcc del sonar e del servomotore ed il pin gnd di Arduino ai pin gnd del sonar e del servomotore,ho collegato il pin dati del servo e i pin trig ed echo ai pin 8,7 e 6 di Arduino e per finire ho collegato i cavi dei motori al connettore della motor shield. A questo punto gira un solo motore ed il servo ruota (forse anche troppo velocemente),solo togliendo l’alimentazione al sonar incominciano a girare entrambi i motori e il servo.Ho provato anche ad alimentare con 4 pile AA da 1,5v ciascuna i motori collegando l’alimentazione delle pile al connettore e alimentando Arduino con una normale pila 9v ma il risultato è il medesimo. Secondo te da cosa potrebbe dipendere? è un problema del sonar? è un problema di correnti assorbite?devo aggiungere la scheda della sparkfun, il DC-DC Converter Breakout?
    Ti ringrazio per i preziosi consigli che ci dai con i tuoi tutorial e attendo consigli per risolvere il mio problema.

    1. Ciao Michele,
      prova ad alimentare i motori attraverso il connettore di alimentazione della motor shield R3 invece di sovraccaricare il circuito di alimentazione di arduino.

      Se il problema persiste potrebbe essere il sonar ad avere o un eccessivo assorbimento di corrente o un cortocircuito, alimentalo separatamente.

      Mauro

    • Giovanni on 16 febbraio 2014 at 10:35
    • Reply

    Buon giorno Mauro, il mio dilemma è come collegare il mio arduino yun in stand-alone senza dare più di 5v visto che yun non è come arduino uno che può essere alimentato fino a 12v.
    Ti ringrazio per una tua risposta.

    1. Ciao Giovanni,
      io uso di solito un alimentatore per cellulare di quelli con l’uscita a 5v USB e lo stesso cavetto USB con cui invio lo aketch alla Yun.

      Mauro

    • Giovanni on 16 febbraio 2014 at 22:50
    • Reply

    Si quello lo sto usando anche io ma se io lo volessi mettere su un robottino autocostruito?

    1. Ciao Giovanni,
      puoi usare un circuito di alimentazione dc-dc come quello descritto in un mio tutorial di qualche anno fa.

      Mauro

    • Maurizio on 18 febbraio 2014 at 15:25
    • Reply

    Ciao Mauro, vorrei chiederti alcune informazioni. Innanzitutto se un alimentatore da 12v 330mA va bene per alimentare arduino. Inoltre, starei progettando un plastico di domotica con due servomotori, uno per una tapparella e uno per un cancello scorrevole. Considerato, quindi, che non hanno bisogno di molta potenza… Quali servo mi consiglieresti? e soprattutto, essendo due, converebbe comunque collegarli ad alimentazione esterna?
    Grazie per la disponibilità!

    1. Ciao Maurizio,
      come alimentatore per arduino dovrebbe esserti sufficente, se poi vuoi aggiungere altre shield o led, motori, ecc.. dovrai calcolare l’assorbimento totale.
      Per i servo devi calcolare che tipo di coppia ti occorre per gli usi che ne devi fare ed acquistare i servo più adatti al tuo scopo, potrebbero andar bene anche dei miniservo, dipende molto dalla coppia di cui hai bisogno.

      Per l’alimentazione puoi provare ad alimentare i servo attraverso i 5v di arduino, se sono solo 2 e non richiedono troppa corrente potresti farcela.

      Mauro

    • Maurizio on 20 febbraio 2014 at 18:21
    • Reply

    Ciao Mauro, scusi il disturbo.
    Ho collegato il servo inserendo il sensore sopra, ho fatto il copia e incolla del tuo codice ma una ruota non gira e l’altra astento. poi il sensore si comporta in modo anomalo.

    1. Ciao Maurizio, sembra un problema di alimentazione insufficiente, alimenta. Arduino con i 9v dal connettore anteriore, il driver motore da due fili che prendi direttamente dai 9v e il servo con 4 pile stilo e il sensore da arduino 🙂

    • Alessandro on 28 febbraio 2014 at 11:26
    • Reply

    Buongiorno Mauro,
    È da un po’ di tempo che mi trovo a leggere il suo forum e, data la sua competenza vorrei chiederle dei chiarimenti.
    Sono riuscito a controllare un motore tramite un sensore ad ultrasuoni, ovvero più allontano la mano è più il motore va veloce e viceversa, ho collegato in un secondo momento il motore ad un alimentazione esterna collegando in serie due batterie da 9v e usando un mofset , fino a li nessun problema, in seguito ho comperato un motore da 250w è una batteria d auto, ho provato a fare gli stessi collegamenti e ovviamente il motore non mi risponde, l unica differenza che trovo tra il motore grande e piccolo oltre alla potenza sono dei condensatori , devo per caso aggiungerli al mio motore da 250w?

    1. Ciao Alessandro,
      senza specifiche del costruttore dei due motori è difficile darti un riscontro senza sbagliare.
      Sei sicuro che il Mosfet che stai utilizzando possa gestire motori di questa entità?

      Mauro

    • Alessandro on 28 febbraio 2014 at 12:08
    • Reply

    Perdoni la mia ignoranza ma ho iniziato a praticare da due settimane, il motore 24v 13.7a 2650rpm. Il mofset irf530 n, non sono sicuro che possa gestire tale potenza poiché non mi sono posto la domanda data la mia incompetenza, quindi l unico problema sarebbe il mosfet?
    Grazie per la rapidità della risposta
    Alessandro

    1. Ciao Alessandro,
      penso di si.

    • Alessandro on 28 febbraio 2014 at 12:44
    • Reply

    Sono andato a cercare i dati di targa, ho trovato che il mosfet che utilizzo io può dissipare una potenza di 80w, è quello il dato che devo leggere? Ho trovato un altro mosfet che ne dissipa 220, utilizzo quello? Grazie in anticipo

    1. Io cercherei un mosfet in grado di erogare almeno 300W considerando che il motore è un 250W.

      Mauro

    • Alessandro on 28 febbraio 2014 at 15:56
    • Reply

    Gentilissimo

    • michele on 24 aprile 2014 at 16:31
    • Reply

    ciao mauro, si possono utilizzare 5 servo towerpro sg90 ,usando un alimentazione esterna con 4 pile AA che sviluppano 4,8v o devo aumentare il voltaggio?

    1. Ciao Michele,
      si puoi farlo.
      Considera che i servo di cui scrivi assorbono parecchia corrente per cui più che del voltaggio mi preoccuperei di quanto tempo vuoi che funzioni il tuo progetto e quante volte vuoi sostituire le pile.
      Calcola bene l’assorbimento di ciascun servo e dimensiona l’alimentazione in modo adeguato.

    • Francesco on 4 maggio 2014 at 23:04
    • Reply

    Ciao! volevo chiedere un informazione per cortesia,
    stavo realizzando un piccolo robot con Arduino Uno e arduino motor shield, dunque ho un dubbio sull’alimentazione delle due schede.
    Se il motore assorbe correnti significative, devo scegliere di alimentare lo shield esternamente (attraverso l’apposito jumper EXT), in caso contrario, se le correnti fossero irrisorie (nell’ordine dei 100mA), potrei sfruttare direttamente l’alimentazione della scheda arduino Uno.. giusto?
    Bene, il mio dubbio sorge proprio riguardo al primo caso, infatti se per caso scegliessi di alimentare arduino alla stessa tensione nominale del motore (per esempio 9 volt) mi chiedevo se potevo fare un parallelo tra la batteria (appunto da 9 volt) e le due utenze (ossia il motore e arduino Uno) potrebbe andare?
    O forse devo utilizzare due batterie separate?

    grazie dell’attenzione, saluti

    1. Ciao Francesco,
      tutto corretto, puoi procedere utilizzando la medesima pila da 9v per alimentare entrambi facendo un collegamento parallelo dalla pila.
      Funzionerà ma ti scaricherà prima la pila.

        • Francesco on 5 maggio 2014 at 15:46
        • Reply

        Perfetto grazie mille Mauro.

    • luca on 9 maggio 2014 at 13:43
    • Reply

    ciao mauro, si possono alimentare i servo tower pro sg90 a 6v, nonostante sul datasheet è indiccata una tensione di 4.8v? grazie.

    1. Ciao Luca,
      dieri di no. Io rispetto sempre il valore riportato dal produttore in quanto è possibile che all’inizio sembri funzionare tutto senza problemi ma successivamente si presentino anomalie e malfunzionamenti che influiscono su tutto il progetto.

  2. Ciao Mauro, volevo chiederti se anche i servomotori sanwa più precisamente un sanwa srm-102 potessero andare a 6volt ??
    Ho cercato su internet ma non ho trovato un gran che quindi mi affido a te

    1. Ciao Mohamed,
      il secondo risultato su Google è questo link: http://www.servodatabase.com/servo/sanwa/srm-102z
      che riporta solo i 4,8v per questi servo.

    • Maurizio on 28 maggio 2014 at 00:58
    • Reply

    Ciao Mauro, avrei due domande riguardo all’alimentazione.
    1) Sulla mia breadboard ho messo la masse dell’alimentatore, la massa di Arduino e la massa del servo nella stessa pista orizzontale, oltre al vcc del servo e dell’alimentatore sulla stessa pista. Ho fatto una cavolata o va bene così?
    2) Inoltre… mi sfugge l’utilità dei transistor e dei mosfet. Mettendo tutto come ho scritto sopra, funziona tutto (in realtà anche senza alimentare Arduino). A cosa servono dunque? E come mai Arduino parte anche senza alimentarlo?

    Grazie per l’aiuto e scusa per le domande stupide!

    1. Ciao Maurizio,
      rispondo alle tue richieste:
      1. il terminale comune va bene, si chiama proprio comune per questo motivo; il vcc dell’alimentazione e del servo va connesso come da schema.
      2. non ci sono transistor o mosfet in questo progetto, dove li hai visti?
      3. Arduino si accende se colleghi l’alimentazione della batteria al suo pin Vin o 5v ( attenzione a non alimentarlo sui 5v con tensioni superiori )

        • Maurizio on 28 maggio 2014 at 16:19
        • Reply

        1) Ok, allora dovrebbe andare bene come ho fatto… ho messo massa del servo, di arduino e dell’alimentatore assieme e il vcc del servo con il vcc dell’alimentatore;
        2) Per quanto riguarda il mosfet ed il transistor… mi sono accorto dopo di non averlo scritto, ma non sono riuscito a trovare il tasto modifica, quindi ho aspettato che rispondessi per non lasciarti troppi post. In sostanza, oltre che per il servo, sto utilizzando l’alimentazione esterna anche per una ventola, da 5v, ma mi è stato consigliato di utilizzare un mosfet poichè la ventola richiede 110mA… ma non riesco a capire a cosa serve il mosfet… non basta semplicemente collegarlo all’alimentatore esterno e al pin di arduino? Tra l’altro, perchè un mosfet e non un transistor?
        3) Effettivamente, collegando solo la massa, Arduino si accende… ma i componenti collegati ad esso non vanno. Collegando anche Arduino con un alimentatore mi funziona tutto. Almeno questo è risolto 😛

        1. Ciao Maurizio,
          punto 1: ok;
          punto 2: noto confusione ti consiglio di leggere gli articoli che ho scritto sul controllo di motori dc con arduino, leggerai che con i motori è necessario sempre interporre un componente che ti consenta di veicolare il segnale PWM e alimentare il motore con una tensione esterna.
          punto 3: hai collegato la USB? Arduino può essere alimentato anche via USB dal computer

            • Maurizio on 28 maggio 2014 at 17:44

            No no, ho collegato Arduino ad un alimentatore da 12V. Dire che ho un po’ di confusione è un eufemismo :D, potresti indicarmi il nome dell’articolo? sono riuscito a trovare solo il tutorial su come controllare un motore dc tramite interruttori e potenziomentro.

            Grazie mille per l’aiuto!

          1. Non buttarti giù Maurizio, all’inizio è così per tutti.
            Vanno benissimo gli articoli che hai trovato, uno qualsiasi sui motori cc ti mostra che serve un driver per controllarli, io di solito uso la motor shield ( trovi molti articoli scritti su questa shield )

    • Maurizio on 28 maggio 2014 at 22:32
    • Reply

    Scusa se rompo di nuovo, ma purtroppo ho pochissime basi di elettronica e molte cose non le capisco. In un circuito in generale (con servi, led e sensori…), per quanto riguarda il GND, mi basta collegarli tutti assieme… ma per quanto riguarda il VCC? Devo collegarli tutti al vcc dell’alimentatore?
    Inoltre, non so se sai aiutarmi in questo, ho provato ad alimentare il mio arduino e ethernet shield con un alimentatore da 12v 330mA invece che via usb… mi si surriscalda tantissimo, non riesco neanche a toccarlo. Che alimentatore converrebbe utilizzare?

    Grazie e scusa per tutte queste domande stupide!

    1. Ciao Maurizio,
      prima di danneggiare arduino, i servo e te stesso ti consiglio di leggere qualche tutorial di elettronica base on-line.
      Anche io non ho grandi conoscenze di elettronica tuttavia esiste internet e tutto è documentato, spiegato e condiviso.

      Per rispondere alla tua richiesta il Gnd si chiama anche “comune” proprio perché tutti i pin e i fili di questo tipo devono essere collegati insieme per funzionare.
      Il Vcc devi usarlo per alimentare solo quello che accetta l’alimentazione di cui disponi, ad esempio se usi 12v e i servo funzionano a 6v non puoi.

    • Angelo on 13 luglio 2014 at 17:45
    • Reply

    Salve Mauro
    complimenti per le spiegazioni, anke se confesso ke alcune volte, se dettate piu elementarmente sarebbero piu comprensive per il sottoscritto.
    Ad ogni modo volevo chiedere ke alimentatore bisognerebbe usare per usare 6 servi per modellismo tutti collegati alla ztessa scheda arduino?
    inoltre arduino uno quale versione utilizzare per realizzare l’esempio citato?
    Grazie
    Angelo

    1. Ciao Angelo, in alcuni esempi sorvolo su descrizioni che ho già riportato in precedenti articoli per non annoiare chi é abituato a seguirmi quotidianamente e a leggere i miei percorsi didattici arduino.
      Se qualche descrizione ti sembra poco dettagliata usa il mio corso on-line gratuito per trovare gli articoli elementari e comprendere tutti i passaggi.
      Per alimentare i servo devi controllare la corrente assorbita da ciascun servo e sommarla per determinare l’assorbimento massimo.
      Sul tipo di arduino puoi usare qualsiasi versione della uno per questo esempio.

        • Angelo on 17 luglio 2014 at 17:32
        • Reply

        Gentilissimo e grazie della delucidazione
        da pochi giorni ho conosciuto l’esistenza del forum relativo all’argomento e quindi sono ancora poco pratico
        grazie ancora
        Angelo M.

    • Alessio Spinelli on 26 luglio 2014 at 14:03
    • Reply

    Buon giorno
    Sto costruendo un flipper di legno per mio figlio, adesso devo applicare dei motorini da 6v fino a12v e con la scheda arduinouno non lo posso fare? Mi suggeriresti per favore qualche soluzione? Ringraziando in anticipo saluto

    1. Ciao Alessio,
      anch’io vorrei costruire dei giocattoli in legno per il mio futuro figlio 🙂
      Ne stai realizzando uno a dimensioni reali? Potremmo condividere i disegni se ti va 🙂

      Che motori vuoi utilizzare, cc, passo-passo, servomotori ?
      Il voltaggio è un falso problema perché a seconda del motore che scegli esiste un driver di controllo che adatta il segnale arduino a 5v ai tuoi 6,8,10,12 volt ecc…

        • Alessio Spinelli on 28 luglio 2014 at 19:25
        • Reply

        Ciao Mauro
        Il flipper ha dimensioni ridotte, non l’ho misurato , n’è disegnato … Sono partito da una idea, ho adattato diversi giochi da far fare alle pallina e sono andato avanti, posso inviarti foto e video se vuoi, poi per i giochi , sto usando materiale di recupero, per esempio il motorino oggetto della domanda , veniva da un pd vecchio, ma per fortuna ho già risolto con un transistor :), il gioco funziona , ma se mi spieghi meglio o addirittura mi dici come fare a fa andare i motori cc da 9v con arduino te ne sarei grato, tanto il problema mi si ripresenterà … , per esempio devo far funzionare un solenoide da 12v con arduino,

        1. Ciao Alessio,
          si mi piacerebbe avere le foto, video e sketch che hai realizzato per scrivere anche degli articoli a tuo nome.
          Usa la casella info del blog, quella da cui ricevi le risposte ai commenti e che trovi nella sezione contatti del blog.

          Per i motori puoi usare una motor shield ( cerca nel blog ci sono decine di articoli ) per il solenoide puoi usare un relè o un circuito con transistor, visto che sai realizzartelo.

    • Alessio Spinelli on 29 luglio 2014 at 20:02
    • Reply

    Ok, da domani riavrò il pc, e sarà più semplice scrivere e postare foto, premetto che al momento è ancora in lavorazione il flipper, appena posso ti mando un po’ di materiale

    1. Grazie Alessio.

    • Francesco R. on 5 settembre 2014 at 19:32
    • Reply

    Ciao Mauro, come mi hai suggerito tu i ti contatto da qui! Ho acquistato una pinza robotica con due servi (pan-tilt per intenderci). Questi sono comandati da un potenziometro e due pulsanti. A seconda di quale premo, ruotando il potenziometro si muove il servo corrispondente. Il problema che ho è che se decido di muovere l’altro servo, questo inizialmente si porta alla posizione finale di quello mosso prima! Esempio: muovo servo1 a 45°, se decido di muovere servo2 a 75°, questo si porta prima a 45°, già prima di ricevere il mio comando! Come posso risolvere? Magari se vuoi ti posto il programma. Ti ringrazio anticipatamente ed eventualmente mi scuso per la banalità della domanda, ma sono agli inizi e sto cercando di imparare.

    1. Ciao Francesco,
      con un solo potenziometro è complesso controllare due servo senza che il secondo riprenda la posizione del primo.
      Devi far in modo che il valore in gradi applicato al secondo servo sia resettato nel momento stesso in cui premi il pulsante.

      In pratica:
      premi il primo pulsante, imposti il valore in gradi = lettura dal potenziometro, applichi il valore al servo;
      premi il secondo pulsante, imposti il valore in gradi = lettura dal potenziometro, applichi al secondo servo;

      è importante che le variabili dei gradi siano differenti per evitare che il primo valore finisca sul secondo servo.

        • Francesco R. on 8 settembre 2014 at 15:15
        • Reply

        Grazie per la risposta, Mauro.
        Ho variato leggermente il programma (sperando di aver capito i tuoi consigli) assegnando ad ogni potenziometro due variabili di angolo diverse (angolo1 e angolo2). Purtroppo in questi giorni non ho arduino per provare, quindi se a te non dispiace vorrei postare il programma per sentire il tuo parere: 🙂

        [ codice rimosso in automatico ]

        prima in entrambi i cicli usavo la sola variabile “angolo”.

        1. Ciao Francesco,
          come hai letto in ogni mio articolo c’è scritto di non pubblicare sketch nei commenti, ci terrei a che tu rispettassi questa regola oltre a leggere bene quello che scrivo 🙂
          Hai interpretato bene il mio consiglio.
          Siccome il codice viene rimosso in automatico dai commenti posso dedurre che tu abbia scritto correttamente lo sketch se hai capito il mio consiglio.

    • Francesco R. on 8 settembre 2014 at 21:00
    • Reply

    Scusami, non avevo letto questa regola, perdonami! 🙂

    • Nando on 3 novembre 2014 at 00:49
    • Reply

    Salve, ho bisogno di realizzare un sistema di controllo pan (180°)-tilt (90°)per comandare una gopro attraverso un comando modello joystik. Il circuito da te realizzato puo’ essere utilizzato a tale scopo?Sarei grato ricevere il tuo consiglio. Grazie

    1. Ciao Nando,
      trovi nel blog alcuni articoli dedicati al pan e tilt per controllare telecamere e non solo.
      Prova a leggere qualcuno di quelli e seguire come schema quello presente in questo articolo o negli articoli specifici.

        • Nando on 4 novembre 2014 at 20:45
        • Reply

        Grazie per la sua gentile risposta. Ho provato a dare un occhiata tra gli articoli, ma non essendo cosi ferrato in materia se potesse essere piu concreto ne sarei grato. Lo schema su rappresentato che pilota due servomotori attraverso arduino, puo’ messere utilizzato per il mio scopo? Quanta autonomia hanno le batterie? sia quella a 9v che il pacco a 6volt? Vorrei utilizzare per il controllo dei servo un joystick tipo : http://www.ebay.it/itm/181573211735?ssPageName=STRK:MEWAX:IT&_trksid=p3984.m1423.l2649 , E’ idoneo? Come andrebbe collegato? Che servomotori mi consiglia? Preferibilmente con ingranaggi in metallo che mi garantiscano una maggiore affidabilita’. Le spiego: questo meccanismo mi serve da portare in volo con parapendio per cui la componentistica deve essere solida
        Se non chiedo troppo, ringrazio anticipatamente.

        1. Ciao Nando,
          cosa intendi per più concreto? Se vuoi realizzare il tuo sistema pan-tilt ti serve acquisire le conoscenze necessarie a sviluppare sia la parte elettronica sia lo sketch.
          Lo schema presente in questo articolo mostra solo come alimentare due o più servo connessi ad arduino ma non presenta schemi di connessione per il joystick e sketch da utilizzare; per quelli dovrai leggere altri articoli e comprendere le logiche di programmazione ed i comandi per controllarli.

          In merito alle domande che mi poni:

          1. quanta autonomia hanno le batterie?
          dipende dal tipo di servo, joystick ed uso che ne fai

          2. sia quella a 9v che il pacco a 6volt?
          la 6v alimenta i servo e quindi più soggetta a scaricarsi

          3. é idoneo? Come andrebbe collegato?
          il joystick che indichi non l’ho mai provato potrebbe essere ottimo come troppo lento in risposta, devi provarlo

          4. che servomotori mi consiglia?
          prima di scegliere il tipo di servo io ti consiglio di comprendere quanta coppia ti serve, se da un lato immagino che la macchina fotografica pesi poco dall’altro devi calcolare la forza dell’aria che investirà la stessa e di conseguenza la coppia che i servo devono opporle.

            • Nando on 11 novembre 2014 at 15:46

            Ciao Mauro scusa, sono di nuovo io.
            In base alle tue conoscenze e esperienza, quali servo, secondo te, sarebbero più idonei a soddisfare le mie esigenze compatibili con la piattaforma Arduino? Naturalmente ti chiedo un consiglio indicativo. Mg 946R 18kg, MG 995 RC 10Kg ingranaggi in metallo sono consigliabili e compatibili? Avresti altri prodotti da suggerirmi? La GOPRO pesa 150g. E poi. come già dettoti nel primo messaggio mi serve in rotazione pan 180° e tilt 60°-90°.. Posso utilizzare anche servo con rotazione 360°o per forza 180°?
            Relativamente allo sviluppo dello sketch attraverso un mio amico appassionato, credo di districarmi. Credo 🙂
            Ah, altra cosa. In rete ho notato esistere schede Arduino compatibile e anche non originali. Sono affidabili entrambe oppure meglio diffidare?

            Grazie per la straordinaria pazienza

          1. Ciao Nando,
            per la realizzazione di un pan e tilt io userei dei servo 0-180° in quanto controllabili in gradi.
            I servo a 360°, spesso, non puoi controllarli in gradi ma in velocità per cui sono più simili a dei motori DC.
            Sul tipo di servo da scegliere influisce il peso da spostare; 150g sono comunque esigui.
            I servo con ingranaggi in metallo sono, solitamente, più affidabili in termini di risposta e precisione.

            Io uso solo schede originali per 2 motivi:

            1. l’unica scheda non originale che ho acquistato, sbagliando, è anche l’unica che oggi non funziona più su decine acquistate;
            2. è un progetto italiano e l’arduino è fatto in Italia penso che noi per primi abbiamo il dovere di difendere i nostri prodotti dalla contraffazione

    • marco on 14 novembre 2014 at 10:50
    • Reply

    Ciao Mauro,

    complimenti per l’articolo. Io vorrei chiederti un suggerimento in merito a questo problema. Io ho creato uno script con il software Matlab che spedisce dati angolari ad arduino attraverso l’usb. L’arduino poi usa questi dati per controllare 6 servo ed in futuro anche un motore passo passo. Tuttavia collegando i 6 servo ad alimentatore esterno con massa comune con arduino, dopo aver scaricato lo sketch, ricollegando l’usb al pc si verifica un assorbimento che cerca di andare oltre l’ampere sull alimentatore che mi obbliga a spegnere tutto onde evitare che i servo si brucino. E questo senza che il programma di spedizione dati dal pc sia nemmeno ativo. Se pero stacco l’usb l’assorbimento dell’alimentatore esterno torna normale. La cosa strana è che se ad esempio creo un programma tipo sweep 0 180 gradi che muove in contemporanea i sei servo, lo scarico, accendo l’alimentatore e ricollego l’usb NON sulla stessa porta dove ho scaricato il programma, tuti i servo si muovono correttamente con assorbimenti accettabili, e talvolta anche se lo ricollego sulla stessa porta dove lo ho programmato. Probabilmente sbaglio io qualcosa di banale ma non riesco a capire, se hai qualche suggerimento?
    Grazie in anticipo

    1. Ciao Marco,
      non ho mai verificato comportamenti simili, mi sentirei di dirti che il problema sia nelle righe che riguardano la comunicazione.
      Verifica una linea alla volta cosa accade al circuito e verifica che non ci sia qualche linea di codice errata.

      Altra verifica, anche se mi scrivi che la trasmissione dei dati non è ancora iniziata, è che la sequenza di controllo dei servo sia troppo rapida, ossia ti manca un delay() al termine di ogni posizionamento che permetta al servo di raggiungere i gradi impostati e lo costringa a spostamenti forzati continui.

    • andrea on 1 dicembre 2014 at 11:12
    • Reply

    Ciao Mauro.
    Innanzitutto grazie per il tuo sito e per la tua disponibilità, sono preziosissime!
    Vengo al dunque.
    Sto realizzando un braccio robotico sulla base del progetto uArm (openproject)
    Il movimento è composto da 3 servi MG995 55G e un microservo SG90 9G.
    Per ora lo sto facendo funzionare con 2 joystick.
    Al primo tentativo con l’alimentazione USb ovviamente non funzionava quasi nulla, ma me lo aspettavo.
    Ho quindi riprovato alimentando Arduino con un pacco batterie stilo da 6×1,5V.
    Le cose sono migliorate sensibilmente, i servi funzionano ma la precisione lascia molto a desiderare, si muovono male, a scatti, e a volte non rispondono proprio.
    Ho quindi preso un servo-shield v4 per alimentare il tutto con una fonte esterna adeguata.
    E qui arriva la domanda, visto che con le misure dell’elettricità ho qualche problema…
    Quali sono le caratteristiche che dovrebbe avere l’alimentatore?
    Ho capito che il voltaggio dovrebbe essere tra 6 e 7,2V, ma per quanto riguarda Watt e Ampere mi sono perso, qual’è la potenza necessaria ad alimentare i 4 servi? E se volessi aggiungere un ulteriore micro servo per una pinza?
    Grazie,
    Andrea

    1. Ciao Andrea,
      puoi calcolare in linea del tutto teorica la corrente che ti occorre considerando le caratteristiche dei servo che il produttore ti ha rilasciato.
      In alternativa puoi alimentare il tutto e misurare con un tester la corrente assorbita.
      Considera che quando i servo saranno sotto sforzo perché il braccio solleva qualcosa o la pinza si chiude, la corrente assorbita cresce fino a quella indicata come corrente di picco.

    • Aurelio on 4 dicembre 2014 at 15:24
    • Reply

    Ciao Mauro ho un servo TowerProMG995 che lavora da i 4,8-7,2V volevo chiederti posso utilizzare una batteria da 9V con una resistenza per alimentare il mio motore ? Grazie

    1. Ciao Aurelio,
      io preferisco metodi più stabili come diodi zener o stabilizzatori di tensione a 6v ( ad esempio: 7806 )
      Sopratutto perché i servo sono molto sensibili.

        • Aurelio on 4 dicembre 2014 at 21:17
        • Reply

        Grazie per la risposta, ho visto il datasheet della famiglia 78XX ed ho notato che hanno 2 condensatori in parallelo sulla tensione di entrata e quella di uscita pari a 0,33 microF e 0,1microF ciò significa che questi condensatori sono sempre questi indipendentemente dal regolatore che scelgo 7806 7805 e così via ???

        1. Ciao Aurelio,
          lo schema che hai visto è quello base consigliato per tutta la famiglia 78xx, troverai molti esempi di schemi on-line

          Mauro

            • Aurelio on 6 dicembre 2014 at 08:04

            Perfetto , l’ultima cosa che non mi è chiara è l’Amperaggio, io ho 3 MG995 che assorbono 450mA a 6V quindi in totale avrei un assorbimento di 1,35A ma il 7806 ho letto che è in grado al massimo di dare 1A come potrei fornire ai miei motori gli Ampere necessari?

          1. Ciao Aurelio,
            puoi usare 2 circuiti 7806 in parallelo oppure optare per un convertitore DC-DC come quello che ho recensito sul blog qualche anno fa e che eroga fino a 6A così sei coperto anche se i servo si rivelano più esosi in fase di utilizzo.

    • donato on 7 gennaio 2015 at 22:31
    • Reply

    Ciao Mauro
    Ho comprato Arduino 1 e con il blinks e un relè statico sono riuscito a muovere a tempi prestabiliti
    Un motore di una lavatrice
    Adesso contemporaneamente vorrei comandare anche il motorino 220 v
    Del programmatore che mi deve fare un altro lavoro.
    La mia domanda devo collegarlo sempre al pin 13 oppure no?
    Nella programmazione vanno assieme o vanno caricati due blink separati?

    Grazie in anticipo e scusa la mia ignoranza nell’argomento

    1. Ciao Donato,
      se il motore a 220v lo devi controllare in modalità on/off puoi usare il medesimo pin a patto di usare un circuito di controllo adeguato che non interferisca tra i due motori.

    • Gabriele on 18 marzo 2015 at 22:46
    • Reply

    Ciao Mauro,
    è la prima volta che uso Arduino. Ho letto il tutorail e ho visto che hai scritto che è fondamentale il terminale comune, ma si può anche collegare ad Arduino solo il pin che nella foto è giallo e quello nero direttamente al servo? Grazie in anticipo e scusa l ignoranza ma è proprio la mia primissima volta

    1. Ciao Gabriele,
      ti conviene rispettare esattamente lo schema suggerito per non danneggiare arduino o il servo.

        • Gabriele on 19 marzo 2015 at 11:32
        • Reply

        Grazie per la risposta. Quando ho comprato Arduino c’era incluso un alimentatore da collegare alla corrente, per esempio, sempre seguendo lo schema con il terminale comune, io ho un servo che gira a 4,8 V, in quel caso potrei usare quattro batterie da 1,2 V per alimentare il servo, e quell’alimentatore per alimentare Arduino ? Nell alimentatore L’output è 9V e 1A

        • Gabriele on 22 marzo 2015 at 22:42
        • Reply

        E se uso due servo devo usare il doppio del voltaggio o non c’è bisogno?

        1. Ciao Gabriele,
          assolutamente no !! romperesti i servo.
          Ciascun servo è alimentato con la tensione massima indicata dal produttore.

            • Gabriele on 24 marzo 2015 at 00:35

            Ciao Mauro,
            grazie per il chiarimento quindi in linea di massima se ne collego piu di uno il voltaggio lo lascio uguale e lavorano ugualmente bene al massimo si scaricano prima le batterie?

          1. Ciao Gabriele,
            in linea di massima si, se i servo sono tutti allo stesso voltaggio.
            Ti consiglio di leggere qualche wiki base sulla differenza tra tensione e corrente e la legge di Ohm.

            • Gabriele on 24 marzo 2015 at 14:45

            Ciao Mauro,
            Grazie per la pazienza perchè sono ancora alle prime armi, seguirò il tuo consiglio di cercare qualche wiki base.

    • Christian on 6 giugno 2015 at 16:51
    • Reply

    Ciao Mauro,
    Volevo chiederti, io ho alimentato il servo tramite 4 batterie esterne come te, ma usando un interruttore e un circuito di ricarica, il mio progetto è un robot automatico, succede che quando i 4 motori dc del robot stanno andando, il servo continua a girare a 360°, mentre dovrebbe stare fermo e ruotare solo quando i motori si fermano. Come mai?
    Grazie mille

    1. Ciao Christian,
      il problema che descrivi dubito che sia legato all’alimentazione, secondo me dipende dallo sketch che stai usando.
      Controllalo e correggilo per evitare la rotazione continua del servo.

    • Alberto on 10 luglio 2015 at 01:03
    • Reply

    Ciaooo volevo sapere se potevi fare un tutorial,oppure in un commento di risposta mi potevi fare uno schema più semplice ed efficace possibile di un solo ervo motore e l’arduino uno,controllato da un potenziometro con uno sketch e anche credo una batteria da poterlo usare indipendentemente(da solo) senza aver bisogno appunto dal computer o altre dispositivi,puoi dirmi cosa altro dovrei aggiungere SEMPRE cn uno schemino e uno sketch che nn ho mai fatto quindi se potresti usare termini da MORTALI xD Hahahah okkey,scusa il disturbo,grz in anticipo

    1. Ciao Alberto,
      trovi tutto quello che ti occorre in decine di articoli nel Blog.
      Inizia con il corso base e se non ti è chiaro qualcosa che leggi usa i commenti.

    • Gianluca on 23 ottobre 2015 at 09:46
    • Reply

    Ciao Mauro,
    io ho un sensore fotoelettrico da utilizzare con arduino. Questo utilizza una tensione da 10 a 30 V dc.
    Volevo chiederle come posso utilizzare questa fotocellula con arduino, e che alimentatore esterno dovrei utilizzare? Inoltre, che collegamenti opportuni dovrei fare?
    Grazie mille dell’aiuto

    1. Ciao Gianluca,
      premesso che non vedo il collegamento logico con questo tutorial ti chiedo di inserire il commento in un articolo in cui si parla dei sensori fotoelettrici, meglio se identico al tuo modello ( cerca nel sito ).
      Prima di scrivere il commento al prossimo articolo prova a verificare che l’esempio proposto funzioni con il tuo sensore, così saprai darmi qualche info in più.

    • Daniele on 30 ottobre 2015 at 12:29
    • Reply

    Ciao Mauro,
    sto costruendo un piccolo robot utilizzando 4 ruote tipo queste
    http://www.plexishop.it/it/motore-6v-con-ruota.html
    con un integrato L293D.
    Alimento separatamente le ruote con 2 batterie da 9V in serie.Ho un consumo anomalo della batteria e inoltre quando la somma delle 2 batterie arrivano a 13 V le ruote non si muovono per niente.
    Controllando con un tester ho visto che al motore arrivano 0.3/0.5 v.
    Ho provato anche a sostituire il L293D ma senza risultato

    Daniele

    1. Ciao Daniele,
      il consumo delle batterie potrebbe dipendere da un malfunzionamento del motore o dei collegamenti.
      In ogni caso sarà dovuto ad una anomalia di assorbimento di corrente ( A ) più che di v.

      Fai qualche test di assorbimento e dei consumi.

    • nicolas on 23 novembre 2015 at 15:11
    • Reply

    Ciao Mauro,
    io alimento arduino con un caricatore dovrei alimentare due sensori il dht11 e il sensore di umidita’ dal terreno
    per il dht11 posso usare i 5v di arduino per il sensore di sensore di umidita’ dal terreno non saprei come alimentarlo? non c’e’ un modo per attaccare i due sensori a arduino

    1. Ciao Nicolas,
      non ho compreso la domanda.

    • nicolas on 23 novembre 2015 at 17:47
    • Reply

    sto costruendo un serra automatizzata , all’interno della quale ho il dht11 per rilevare la temperatura e l’umidita’ e il sensore di umidita’ del terreno per rilevare l’umidita’ del terreno ,ogni sensore ha la su piastra . i 2 sensori usano 5v
    quindi avevo pensato di attaccare il dht11 ai 5v di arduino . ma non saprei come alimentare il sensore di umidita’ del terreno? e se volessi aggiungere altri sensori come potrei alimentarli?

    1. Ciao Nicolas,
      puoi collegare le alimentazioni in parallelo al 5v se ce la fai con la corrente erogata da arduino ad alimentare tutti i tuoi sensori.
      In alternativa dovrai usare un collegamento ad una alimentatore esterno da 5v.

    • Enrico on 3 dicembre 2015 at 18:32
    • Reply

    Ciao Mauro sono un principiante del mondo arduino.
    Voglio collegare un motorino 24vca ad arduino posso usare soltanto un relè con bobina da 5v?

    1. Ciao Enrico,
      se desideri che non sia controllato in accelerazione ma solo acceso e spento puoi usare un relay, leggi i miei articoli su come fare il circuito e lo sketch.

    • Gabriele on 19 dicembre 2015 at 10:24
    • Reply

    Ciao Mauro,
    stavo provando a fare camminare un robot bipede e al momento sto usando 10 servo. Quando ne collego solo sei funziona perfettamente, ma quando li collego tutti e dieci si blocca in una posizione e non si muove più. Ho visto che scollegando gli altri tre servo funziona di nuovo quindi ho pensato che fosse un problema di alimentazione. Uso 4 batterie da 1,5 V del tipo D in serie, quale batteria mi consiglieresti per alimentarli?

    1. Ciao Gabriele,
      se usi una alimentazione esterna puoi provare a raddoppiare le pile unendole in parallelo alle 4 che già usi, se il problema è la corrente dovrebbe risolversi.
      Il alternativa io uso pile LiPo che erogano correnti molto elevate ed hanno un peso ridotto, anche se il costo è elevato.

        • Gabriele on 28 dicembre 2015 at 18:12
        • Reply

        Non ho trovato lipo di 10 ah, perchè ogni servo ne assorbe 1A. Ho visto però che sconsigliano l’utilizzo delle batterie in parallelo perchè facilmente capita che batterie possono avere anche lievi differenze di carica che porterebbero la più carica a scaricarsi sull’ altra più scarica. Se invece del parallelo usassi solo il gnd comune tra i due pacchi batterie e arduino senza collegare i positivi e facessi due circuiti ognuno per metà dei servo ci sarebbe sempre quel rischio? Cioè un circuito per 5 servo con 4 pile, un altro per gli altri 5 con le altre 4 pile e le due masse collegate in comune con arduino?

        1. Ciao Gabriele,
          non comprendo perché parli di LiPo e poi di pacchi con 4 pile.
          In generale quello che scrivi è comunque pericoloso sia che sia eseguito con delle pile normali sia con delle LiPo

            • Gabriele on 30 dicembre 2015 at 15:47

            Ciao Mauro,
            si ho fatto un po di confusione mentre scrivevo cmq se è pericoloso meglio evitare, ma dato che ho un altro arduino se collegassi cinque servo (alimentati con una lipo o con le mie 4 pile) in un arduino con gnd comune, e facessi la stessa cosa con gli altri 5 all altro arduino però alimentati da altre quattro pile o un altra lipo come se dovessero essere due cose separate, e poi collegassi i due arduino con comunicazione i2c?

          1. Ciao Gabriele,
            potrebbe essere una soluzione.
            In alternativa io non trascurerei lìuso di shield per il controllo dei servo, mi sembra ci siano a 12 o 16 servo con comunicazione i2C

    • Gabriele on 30 dicembre 2015 at 22:29
    • Reply

    Ciao Mauro,
    Ti ringrazio per l’aiuto, già che ci sono allora penso che darò anche un occhiata a uno shield.

    1. Ottimo Gabriele !!!

    • peppe on 15 gennaio 2016 at 04:32
    • Reply

    salve
    è possibile collegare due servo ( alimentati esternamente) messi in parallelo ad un solo pin di arduino ?

    grazie
    saluti

    1. Ciao Peppe,
      non ho mai provato ma direi che se i servo non richiedono troppa corrente di controllo, dipende dal servo e va misurata con un tester, dovresti riuscirci.
      Di certo non avrai esattamente gli stessi movimenti in quanto la minima differenza meccanica tra i servo ha come effetto un diverso movimento.

    • Sergio on 19 gennaio 2016 at 23:10
    • Reply

    Carissimo Mauro,
    Ti ringrazio anticipatamente per tutti i consigli messi a disposizione nel tuo blog e ti faccio i più sinceri complimenti.
    Sono proprio alle prime armi con arduino e fin ora ho solo fatto qualche semplice esperimento, essendo un vecchio aeromodellista ho innumerevoli vecchi servocomandi di cui tre ne ho usati per muovere un piccolo braccio robot da me costruito, insieme a tre ponteziometri e scheda leonardo, con un semplicissimo schetc, ma due servi (all’epoca di qualità) anche se alimentati con batt. esterna presentano un leggero movimento pulsante incontrollato. Ho provato anche con un condesatore, ma niente, è questione di servi? Hai qualche suggerimento da provare?
    Grazie per la tua disponibilità.
    Saluti.
    Sergio

    1. Ciao Sergio,
      potrebbero essere servo che funzionano con dei timing differenti da quelli generati da Arduino, verifica sulle caratteristiche del costruttore quale frequenza di funzionamento abbiano ed eventualmente modifica il TIMER corrispondente di arduino per controllarli.
      Anche io uso con arduino dei servo Futaba di qualche decennio fa usati su aeromodelli e sono molto stabili.

        • Sergio on 20 gennaio 2016 at 13:38
        • Reply

        Grazie per la disponibilità provvederò subito.
        Saluti.

    • Salvatore on 29 giugno 2016 at 21:23
    • Reply

    Salve
    Volevo chiedervi se posso collegare tre servo ad un alimentatore esterno recuperato da un vecchio caricabatterie per cellulari da 5v e890mA.
    Ho provato con 4 batterie mini stilo da 1.5v ma dopo neanche un ora e mezza si scaricano per questo volevo provare con una alimentazione via cavo.

    1. Ciao Salvatore,
      ricorda solo che i servo al massimo possono essere alimentati a 6v, a meno che il produttore indichi tensioni differenti.

    • Ernesto on 4 luglio 2016 at 18:21
    • Reply

    Ciao, dove posso trovare l’alimentatore da presa origonale per arduino? Grz

    1. Ciao Ernesto,
      hai visto se esiste questo articolo sullo store del sito arduino.cc ?
      Io utilizzo degli alimentatori stabilizzati acquistati da robotics-3d.com che hanno marche differenti.

    • alberto on 1 settembre 2016 at 18:22
    • Reply

    Ciao Mauro, posso collegare 1 o più motoriduttori RH159 75 12V ad una batteria auto senza correre rischi di surriscaldamento cavi o peggio di bruciare i motoriduttori. Vorrei infatti evitare di dover scaricare troppo spesso una classica batteria al piombo, di quelle ricaricabili, da 7,4 ah.
    Ti ringrazio in anticipo

    1. Ciao Alberto,
      la micromotors, produttore del motore che possiedi, rilascia dei datasheet molto dettagliati che puoi consultare per comprendere quanta corrente assorbiranno i motori sotto carico. Purtroppo non conosco le caratteristiche di tutti i motori prodotti.

    • alberto on 5 settembre 2016 at 16:07
    • Reply

    modello: RH159.12.75

    Motoriduttore in corrente continua a 12V con velocità di rotazione di 43rpm ed una forza di 30Ncm. Soppressione disturbi con VDR sul collettore; direzione di rotazione secondo polarità.
    Tensione nominale 12V
    Corrente a vuoto <60mA
    Corrente a coppia max. 230mA
    Rapporto di riduzione 1:76,84
    Coppia Max. 30 Ncm
    Velocità a vuoto 43 rpm
    Diametro asse 6mm
    Materiale ingranaggi Canevasite (solo prima ruota)
    Acciaio sinterizzato
    Peso 190gr

    Ciao Mauro, la mia domanda era indirizzata a poter utilizzare una batteria da auto che ovviamente ha un amperaggio ben maggiore senza rischiare di bruciare tutto. Premesso che i motorini non avranno un moto continuo ma impulsi all’occorrenza, da profano pensavo che s e una batteria da 7,2Ah permette di dare 31 impulsi, una batteria da 60 Ah dovrebbe permetterne 260: è giusto come ragionamento o proprio non ci capisco niente?? Quindi, per riepilogare, non userei la batteria da auto per la potenza, dato che lo spunto dei motorini è di sicuro relativamente basso, ma solo per un fatto di durata.
    Grazie in anticipo per la risposta.

    1. Ciao Alberto,
      dalle caratteristiche il motore assorbe sotto carico, quindi in funzione, 230mA che è la corrente massima alla massima coppia.
      La batteria da 7,2Ah = 7200mA ti consentirebbe di tenere il motore acceso alla massima coppia per 7200 / 230 = 31h questo è approssimativamente il calcolo; ai 230mA devi sommare l’assorbimento del circuito e di tutti i componenti coinvolti, per cui la cosa migliore è eseguire una misurazione della corrente assorbita dal progetto una volta assemblato.

    • Andrea on 13 settembre 2016 at 22:53
    • Reply

    Ciao Mauro,
    Avevo un problema nell’alimentazione del mio robot (il motore è controllato dal modulo L298H, il quale è collegato con Arduino Uno ed il tutto era alimentato da un package di batterie da 7.5V), ma con questa configurazione e con l’aggiunta di sensori IR (alimentati dal pin 5V di Arduino) il package non riusciva a fornire abbastanza tensione per far funzionare correttamente i sensori e i motori stessi. Quindi avevo in mente di alimentare separatamente Arduino dai motori; provando non funzionavano i motori. Poi ho letto il tuo articolo molto chiaro ed ho capito che il problema era il GND che Arduino e L298H devono avere in comune. Perché la logica non funziona senza il GND comune? Ora funziona tutto alla grande! 🙂
    Grazie mille per l’articolo

    1. Ciao Andrea,
      sono molto contento ti sia stato utile il mio articolo.
      Se vorrai pubblicare in futuro il tuo progetto sarò a disposizione con il mio blog per farlo aiutando altri appassionati come te.

    • Sergio on 12 dicembre 2016 at 00:44
    • Reply

    Ciao Mauro,
    Sono uno studente, ed é da poco tempo che utilizzo arduino. Le volevo chiedere se si può collegare sia l’alimentazione sia collegare arduino al pc senza recare danni alla scheda?
    Grazie in anticipo

    1. Ciao Sergio,
      in linea di massima è possibile, io personalmente consiglio prudenza in quanto in caso di corto circuito, dovuto ad un tuo errore o a uno shield non certificato od originale chi ha la peggio è il Pc. Arduino, in generale, è più resistente e non si danneggia facilmente.

    • Paolo on 14 dicembre 2016 at 10:21
    • Reply

    Ciao Mauro io dovrei realizzare un sensore di peso che una volta raggiunta la pesata giusta cioè quella impostata mi attivi un rele mi puoi aiutare ? Ti lascio anche il mio whats app nel caso volessi inviarmi uno schizzo grazie anticipatamente ciao Paolo

    1. Ciao Paolo,
      penso tu abbia sbagliato articolo.
      Ho pubblicato articoli specifici sull’argomento, con uno sketch che puoi usare come base a cui apportare le tue modifiche.

    • Marco on 27 gennaio 2017 at 22:46
    • Reply

    Scusate…devo alimentare una breadboard ma il mio professore ha detto di tagliare un caricabatteria del telefono prendere il positivo ed il negativo ed alimentare la breadboard, mi chiedo…con il voltaggio di casa se faccio un corto circuito nel circuito che succede? Mando tutta la casa in corto circuito? Succede qualcosa?

    1. Ciao Marco,
      se usi un alimentatore per caricabatterie dei moderni telefoni avrai circa 5v sui poli negativo e positivo ed eventuali cortocircuiti al massimo bruceranno il circuito e l’alimentatore.
      Fai attenzione se usi arduino connesso al pc perché in caso di corti rischi di bruciare la porta usb del computer più che la casa.
      Trovi su questo blog un articolo in cui sono elencati i 10 modi per rompere arduino ironicamente scritto per dirti di non farlo.

    • Giovanni on 31 gennaio 2017 at 19:34
    • Reply

    Ho letto il suo tutorial con attenzione. Io possiedo una scheda Arduino Mega 2560, che da quanto so ha 54 uscite digitali, di cui 15 di tipo PWM, quindi da quanto ho capito capaci di pilotare un servomotore. Per il mio progetto dovrei riempire tutte le 54 uscite digitali, precisamente 51 uscite utilizzate per dei diodi led e 3 utilizzate per dei servomotori, che funzionano ad un voltaggio di 6 volts. Per l’alimentazione avrei pensato di utilizzare un alimentatore da pc, in particolare la linea a 12 volts, abbassando il voltaggio ai 6 volts necessari tramite un regolatore di tensione 7806, collegandoli insieme come si vede nel suo tutorial.
    E’ fattibile la cosa? è necessario comunque alimentare la scheda arduino a parte come si vede nel suo tutorial, ed eventualmente è possibile farlo sempre usando lo stesso alimentatore da pc, una linea da 12 volts, cambiando il regolatore di tensione con un 7809 per dare i 9 volts necessari per la scheda?
    Scusi per le mille domande e grazie in anticipo per la sua risposta.

    1. Ciao Giovanni,
      se opportunamente dimensionato l’alimentatore può servire sia per arduino sia per i led sia per i servo.
      E’ importante valutare la corrente necessaria per i singoli componenti e dimensionare correttamente l’alimentatore.

        • Giovanni on 1 febbraio 2017 at 14:46
        • Reply

        Grazie mille per la sua risposta. Quello che vorrei usare è un alimentatore da pc che eroga 10A sulla linea 12 volts e 25A su quella a 5 volts. Per quanto riguarda i servo, si possono alimentare ad una tensione compresa tra 4,8 e 6 volts. Quello che vorrei capire è: se utilizzo la linea a 12 volts dell’alimentatore mettendo un regolatore di tensione 7809 compreso di condensatori per abbassare la tensione a 9 volts, posso alimentare arduino direttamente o c’è necessità di abbassare anche la corrente, quindi gli ampere erogati?
        E contemporaneamente posso usare sempre la linea 12 volts(un altro cavo) per collegarla ad un altro tipo di regolatore di tensione, precisamente il 7806, per uscire con i 6 volts ed alimentare i 3 servomotori che ho intenzione di collegare ad arduino?

        1. Ciao Giovanni,
          si puoi, come ti ho scritto, puoi alimentare anche Arduino a 12v, se leggi sul sito del produttore ed è un arduino mega originale puoi portare i 12v direttamente ad arduino.
          Per i servo puoi tranquillamente usare un riduttore a 6v, l’unico dubbio che ho è che possa essere sufficiente un solo 7806 che eroga 1A dipende dai tuoi servo quanto assorbono.

            • Giovanni on 1 febbraio 2017 at 19:26

            Grazie, in effetti ho visto che arduino mega accetta un voltaggio compreso tra 7 e 12 volts massimi. Fprse il valore 9 volts è un valore “di sicurezza”?
            per quanto riguarda i 3 servo, il modello che uso io è l’HS-55. Le specifiche che ho trovano sono le seguenti: Current Drain – idle (4.8V) 5.4mA
            Current Drain – idle (6.0V) 5.5mA
            Current Drain – no-load (4.8V) 150mA
            Current Drain – no-load (6V) 180mA
            Secondo lei basta 1 A per alimentarli?
            L’altro problema è che non esiste un 7806, ma soltanto un 7808. Allora, poichè il servo in questione accetta una tensione di 4,8-6 volts, se gli dessi la 5 volts che mi esce direttamente dall’alimentatore che succederebbe? o conviene optare per la tensione 6 volts?

          1. Ciao Giovanni,
            in merito al 7806 esiste ed è regolarmente in vendita dai fornitori di materiale elettronico sia on-line sia in negozio.
            Se i servo assorbono 180mA a 6v ( come da tua tabella ) vuol dire ne puoi alimentare 5 con 1A ( 1000mA / 180mA ) ma questo senza carico, devi chiedere al fornitore o verificare con un tester nella tua applicazione, data la coppia opposta dal tuo progetto, quale sia la corrente necessaria.

            Ti consiglio, prima di iniziare il progetto di seguire un corso di elettronica base, anche on-line, per comprendere i minimi requisiti della realizzazione stessa.

    • Christian on 16 febbraio 2017 at 16:03
    • Reply

    Ciao Mauro,

    io sto costruendo un braccio robotico.

    ho 4 microservo towerpro sg90 da alimentare.

    Arduino lo alimento con una 9V.

    I servo come posso alimentarli? bastano 4 stilo in serie?

    Grazie mille in anticipo.

    -Christian

    1. Ciao Christian,
      si puoi utilizzare 4 pile tipo AA ( 1,5v ) per alimentare i servo.

    • Antonio on 28 maggio 2017 at 21:45
    • Reply

    Ciao Mauro

    un bel articolo ma ho un dubbio, è sufficiente alimentare arduino Atmega2560 rev3 tramite usb dal pc ed aggiungere un alimentatore da 9V 2A per alimentare 5 max7219 8digit 7segment, credo che questi consumino 180mA ciscuno con un voltaggio di 4,0 – 5,5V, più altri 17 led collegati ad altrettanti pin su arduino? O sarebbe preferibile alimentare i 5 max7219 come nell’esempio dei servo e staccare l’alimentatore di 9V da arduino e lasciarlo solo con il pc. Tieni presente che comunque arduino deve rimanere attaccato al pc lo uso (spero) per il simulatore di volo. grazie antonio

    1. Si Antonio, anche io farei come scrivi e come ho descritto in questo articolo.

    • alessandro on 3 giugno 2017 at 20:17
    • Reply

    Ciao Mauro,
    ho provato lo Schema con i relè ma non funziona. Ho alimentato Arduino mega con 12 volt, i relay con 5 volt, collegato il gnd come da schema ma non arriva corrente ai relay. Grazie per eventuale risposta.

    1. Ciao Alessandro,
      hai verificato che inviando HIGH o 1 ad un pin a cui sono connessi i relé arrivino 5v ?

    • Antonio on 9 gennaio 2018 at 11:21
    • Reply

    Ciao Mauro,
    ho un arduino Mega e devo controllare 4 servomotori HS-5485HB, avendo a disposizione un PCA9685 16 channel adafruit. Mi potresti aiutare a capire come alimentare i servomotori? Non riesco a capire in termini di tensione e corrente cosa scegliere. Grazie in anticipo

    1. Ciao Antonio,
      il calcolo della tensione è facile, dipende semplicemente da quanta in velocità/coppia desideri ottenete dal servo puoi alimentarlo a 4,8 o a 6v nella scheda tecnica del produttore trovi i riferimenti al rapporto tra i due parametri.
      In merito alla corrente, il produttore riporta una corrente di 500mA per servo a 6v senza carico, ma non esprime il valore sotto carico, dovresti provare ad alimentare il circuito con un alimentatore da banco e verificare l’assorbimento in funzione.

    • Roberto on 10 maggio 2018 at 12:50
    • Reply

    Buongiorno Mauro
    Scusami ma non sono pratico;
    Vorrei porti un quesito in merito ad: alimentazione esterna servomotori tower pro sg90 .
    Come posso fare?
    Certo di un riscontro ringrazio.
    Roberto

    1. Ciao Roberto,
      usa i commenti come hai fatto per scrivere la tua richiesta.

    • Antonio on 5 ottobre 2018 at 23:36
    • Reply

    Buonasera Mauro,
    come al solito tutto chiaro (grande). Riesco a far funzionare il servo sia alimentandolo dal 5V di arduino sia con alimentazione esterna.
    Però ho una curiosità. Ho provato a NON seguire l’indicazione di collegare il negativo dell’alimentazione esterna al GND di arduino (cosa che ripeti più volte di fare, ma ho voluto provare ). Il servo inizia a girare come impazzito. Come mai? Ho provato ad alimentare normali motori DC esternamente allo stesso modo (controllati ad esempio con ponte H) ma non ho avuto problemi simili . Forse perchè viene alterata la lettura dell’output PWM del controllo? Solo per capire
    Grazie e complimenti

    1. Ciao Antonio,
      corretto, il Gnd o massa è un riferimento che necessariamente deve esistere se vuoi che i segnali PWM siano correttamente interpretati.
      I servo, contrariamente al normali motori DC, sono dotati di una propria elettronica con feedback che “impazzisce” se non ha un riferimento a massa.

  1. […] Sono tutti sintomi di scarsa alimentazione e ti consiglio di leggere come collegare i servo con alimentazione esterna. […]

Lascia un commento

Your email address will not be published.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.