Comandare MG996R con arduino

Buongiorno, sto cercando di creare un braccio robotico, come motori ho scelto i MG996R.
Dalla scheda tecnica dovrebbero fornire una coppia di 9,4 kg/cm a 4,8V (che non so cosa significhi dal momento che io il momento torcente lo ho sempre calcolato in NM).

Il problema è che quando i bracci sono completamente distesi, paralleli al piano d'appoggio, il motore del primo braccio si pianta.

Facendo un due conti, considerando la massa dei bracci (1° = 1,3N e 2° = 0,7N) e la loro lunghezza (1° = 250mm e 2° = 195mm) mi viene un momento torcente di 0,5 Nm.

Adesso mettendo che i 9,4 kg/cm siano 1Nm (cosa di cui dubito, ma di cui non ho trovato risposta) il motore dovrebbe benissimo riuscire a muovere i bracci in quanto genera il doppio della coppia. Potrebbe essere però che avendo collegato tutti e tre i motori contemporaneamente l'arduino non generi per ciascuno i 5V e quindi il motore avendo meno tensione ha meno coppia (questa è una mia ipotesi siccome di elettronica ne capisco molto poco).

Mi piacerebbe sapere se qualcuno di questi miei ragionamenti è giusto e dove sto sbagliando.
In allegato lascio una foto del braccio (se si vede).
Grazie!

Buongiorno e benvenuto, :slight_smile:
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il succitato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread, nel rispetto del suddetto regolamento nessuno ti risponderà (eventuali risposte verrebbero cancellate), quindi ti consiglio di farla al più presto. :wink:

... 1 newton metro è uguale a 10.197162129779 kg-cm. da cui, 9.4 Kg-cm equivale a 0.9218251000000255 NM

Guglielmo

... ma tu stai alimentando il tutto con i 5V di Arduino ??? :open_mouth:

Guglielmo

Grazie.
Non so che senso abbia mettere tutte ste cifre significative, con cosa le misuro a lato pratico? Ma ok.

Quindi la mia considerazione era giusta, equivale a circa 1Nm (che per i conti che faccio andrà più che bene).
L'1 Nm è da considerarsi sul mozzo del motorino?

Si :shushing_face:

Arduino NON èin grado di fornire la corrente che ti occorre, devi usare un'alimetazione esterna mettendo i GND in comune.

Guglielmo

... le cifre sono quelle che si usano per la corretta conversione, poi tu tronchi alla precisione del tuo stumento di misura.

Guglielmo

In genere i servo sopportano quasi tutti fino a 6V quindi usa una alimentazione separata di almeno 6V e 2A per ogni servo

Posso usare un partitore di tensione e una batteria da 9V?
Devo mettere una batteria per ogni motore?

Ma hai letto il messaggio di Icio ? ? ? :open_mouth:

Hai letto di che correnti parliamo ? ... pensi di risolvere con delle pilette da 9V ? Ti ha detto cosa ti serve ...

Guglielmo

Dare una risposta utile su come dovrei fare, invece di fare ste domandine non è nelle tue capacità??? :partying_face:

NO, visto che ti è già stato detto cosa devi fare ... :roll_eyes:

Guglielmo

Siccome sono un ignorante cosa si intende per alimentazione separata, ovvero quale dispositivo devo comprare o quale circuito devo realizzare?

Ergo i tuoi commenti sono inutili. :smiling_face_with_three_hearts: :man_bald:

... bene, allora mi astengo da dare altre informazioni ... inutili ... :roll_eyes:

Guglielmo

"alimentazione separata" significa che tu hai un alimentatore in grado di alimentare l'Arduino e uno diverso per alimentare i servo.
Giustamente icio ti consiglia di provvedere UN alimentatore per CIASCUN servo, ma questo dipende dalla corrente che assorbe ciascun servo e dalla potenza di questo secondo alimentatore.

Da questo datasheet puoi vedere che il tuo servo può essere alimentato con una tensione da 4,8 a 7,2V, ma quella consigliata è di 6V. Inoltre la corrente che il servo assorbe durante il funzionamento varia da 500 a 900mA a seconda del carico che deve spostare, quindi avrai bisogno di un alimentatore in grado di fornire ALMENO 1,5-2A per ogni servo, come diceva icio. Un altro valore che ti può interessare è la Stall Current o corrente di stallo, che il servo assorbe quando è sovraccaricato e non riesce a muoversi. Questa condizione è pericolosa sia per il servo, che può surriscaldarsi, che per l'alimentatore, che può non essere in grado di fornire la corrente richiesta.

In conclusione tu devi avere UN alimentatore per alimentare Arduino e UN ALTRO (almeno) per alimentare i servo. Quello per Arduino puoi sceglierlo da 5V e almeno 1A se lo alimenti attraverso il pin 5V, oppure un alimentatore da 9V 1A (NON LA PILETTA CHE HAI INDICATO che a malapena raggiunge 0,2A) se lo alimenti attraverso il pin Vin. Quello per i servo deve essere un alimentatore stabilizzato da 6V e ALMENO 6A. Purtroppo è MOLTO difficile trovare un simile alimentatore già pronto, quindi o te lo costruisci tu, ma non mi sembra tu sia ancora preparato a questo, oppure puoi prevedere uno di questi alimentatori PER OGNI SERVO.

Il polo negativo di TUTTI e tre gli alimentatori (che dovrebbe essere la parte esterna del connettore) va collegato al GND di Arduino e ovviamente ai poli negativo dei servo, mentre il polo positivo di CIASCUN alimentatore (che dovrebbe essere il centro del connettore) va connesso al polo positivo di CIASCUN servo.

Quegli alimentatori forniscono al massimo 1A (e forse anche meno), ma dovrebbero essere sufficienti per far muovere i servo anche se non alla massima potenza. ATTENZIONE allo stallo, perché se un servo si blocca la corrente assorbita potrebbe essere eccessiva per l'alimentatore.

Ciao,
P.

Mi sfugge la ragione per cui dovrebbe usare un alimentatore per ciascun servo...

Secondo me basta (e avanza!) un qualcosa come questo e ci alimenta tutto, Arduino compreso (da Vin ovviamente).

Con il trimmer di regolazione dovrebbe arrivare fino ai 6V di targa del servomotore che comunque funziona altrettanto bene anche con 5V, è solo un pelo più lento.