Problema con servo motore

Salve a tutti,
Per il progetto della maturità ho realizzato un braccio robotico che viene controllato mediante un joystick della PS2. Dopo diverse ore per completare lo sketch, ho riscontrato un problema su un motore.
Parto con il dire che il robot è composto da 6 servo motori e sono tutti alimentati allo stesso modo ovvero tramite una batteria esterna da 6V, e che tutti sono collegati ai pin digitali (dal 2 al 7). Il servo si dovrebbe muovere indietro e avanti quando vengono premuti L2 o R2 ma il servo esegue movimenti non voluti e incontrollabili avanti e indietro senza che gli venga detto nulla; quando effettuo la pressione su R2 o L2 questo movimento alternato, si sposta.
ho appurato che staccando il collegamento con il pin digitale il movimento cessa. Ho provato anche a cambiare pin digitale di collegamento ma il problema persiste.
Penso che non sia un problema di sketch in quanto l'ho controllato e ricontrollato decine di volte ma niente da fare. Se escludo la parte di programma nel loop dove è presente questo servo, quest'ultimo rimane appunto fermo.
Non so se pensare ad un problema del servo e quindi procedere con la sua sostituzione oppure a qualche altro problema. Chiedo quindi aiuto circa le possibili cause e su come risolvere il problema :frowning: :frowning:
Grazie

Come alimenti Arduino?

Lo alimento tramite la porta usb del pc, e quando un pc non mi è disponibile tramite un pacco da 6 batterie AA

e l'alimentazione dei servo e' sui +5V di Arduino ?

Nono l'alimentazione dei servo la prendo da una batteria esterna da 6V.

vero, lo avevi detto

  1. Se l'alimentazione da 6V non ha problemi di erogazione corrente
  2. Se come hai detto

Ho provato anche a cambiare pin digitale di collegamento

e quindi si esclude qualche altra funzione all'interno dello sketch che possa disturbare quel pin

Non rimane altro che sostituire il servo.
Comunque prima lo sostituirei con un'altro di quelli che hai e vedere cosa succede

Sostituire nel senso fisico oppure di applicare (prima di sostituirlo fisicamente) la sua funzione/ruolo all'interno dello sketc, con un servo già presente ?

io lo sostituirei fisicamente con un'altro.
perche' anche se il problema sembra sia dato dal servo ( quelli economici ad esempio codesto difetto lo presentano quasi sempre ), puo' essere ( ma mi pare strano ) che lavori con un carico particolare.
Puo' anche essere che dipenda dallo sketch, che so' , un invio di dati da un sensore non stabile

Insomma, fai prima a sostituirlo fisicamente con un'altro e vedere cosa succede

Grazie per l'aiuto. Diciamo che il servo (HS-645MG) non è proprio economico, costa sui 30 €. Si è sottoposto a un certo carico ma non credo che sia al limite.