[RISOLTO]problemi con il controllo servo di ArduinoUno

Un saluto a tutti. Scusate l'intrusione. Sono nuovissimo, e sto cominciando con ArduinoUno e "Primi passi con Arduino". Tutto bene fino al servo. Facendo esattamente quanto scritto, il mio servo del kit ruota in una sola direzione di circa 10° per volta in continuo, sia che cambi il delay, insensibile alle variazioni del potenziometro, anzi fa lo stesso se lo levo dal circuito. Ho provato con un altro server, e questo fa tutta la sua escursione di 180°, insensibile ai valori del potenziometro come l'altro. Ho provato a dare l'alimentazione dall'esterno (come suggerito in un altro topic del forum) ma non cambia nulla. Sbaglio io o c'è qualcosa che non va nella scheda di Arduino?
Grazie per i consigli e i pareri

Ciao :slight_smile:
Se con un servo non va il problema è o il collegamento o il servo non certo arduino :grin:
Puoi postare una foto con ben chiari i cavi e i collegamenti di entrambi i servi ed il codice così guardiamo per bene ?
Ciao :slight_smile:

Ratto93, ti ringrazio moltissimo.
Ti confesso che questa cosa ha un po' raffreddato i miei entusiasmi, e spero vivamente che la colpa sia mia e non del sistema. Allego il codice e un paio di foto. Come ho detto quando collego tutto il servo ruota di pochi gradi in successione fino al fine corsa dove continua a cercare di andare oltre. In 180° compie 30 spostamenti.
Ti ringrazio ancora per la gentilezza

PS: spero che le immagini siano visibili come attached, perchè cliccando "Insert image" non mi lascia scegliere l'immagine
Paolo

Dalla foto mi parecollegato giusto... un consiglio cerca di caricare foto che non superino i 1024x768 xk chi naviga con i netbook come me non vede niente poi :slight_smile:

Il codice mi pare corretto... sostituisci al posto di gradi posizione e prova però.... non vorrei si incasinasse passando i valori da una varibile all'altra anche se mi pare impossibile...
Poi prova l'altro esempio dei servi così escludiamo anche la rottura del potenziometro (non credo si sia rotto... non ne ho mai visto uno consumato a tal punto :wink: )

Ratto93, scusa per le dimensioni della foto. Terrò conto del tuo consiglio.
Per quanto riguarda il tuo suggerimento, scusami, ma non capisco bene dove devo sostituire "posizione" con "gradi".
Il potenziometro nel programma con i led (per variare la velocità di accensione dei tre led) funziona bene.
Non so bene a cosa ti riferisci con "l'altro esempio dei servi". Sulla rivista di "Primi passi con Arduino" ne ho trovato solo uno.
Scusami per tutte queste incertezze e grazie ancora.
Paolo

Ratto93, ho provato a sostituire il potenziometro con quello lineare (che funziona, verificato con un led), ma ho sempre lo stesso risultato.
Ho provato con un altro codice (riportato qui sotto), uguale nel concetto, che ho trovato in internet, dove con un video mostra che funziona e cosa fa, ma ho sempre lo stesso risultato. Mi sto demoralizzando. Comincio a pensare che sia la scheda di Arduino UNO che ha qualcosa che non va.
Paolo

#include <SoftwareServo.h> (ho sostituito SoftwareServo con Servo)

SoftwareServo myservo; // create servo object to control a servo

int potpin = 0; // analog pin used to connect the potentiometer
int val; // variable to read the value from the analog pin

void setup()
{
myservo.attach(2); // attaches the servo on pin 2 to the servo object
}

void loop()
{
val = analogRead(potpin); // reads the value of the potentiometer (value between 0 and 1023)
val = map(val, 0, 1023, 0, 179); // scale it to use it with the servo (value between 0 and 180)
myservo.write(val); // sets the servo position according to the scaled value
delay(15);

Non può essere Arduino.... Se un servo funziona correttamente e l'altro no è colpa di quest'ultimo e non del microcontrollore....
hai preso un kit o componenti separati ? se hai preso i servi in un negozio di modellismo fattelo sostituire...

Ratto93, scusami ma probabilmente non mi sono spiegato bene. Il kit e quello della rivista. Il programma di controllo del servo con il potenziometro non ha mai funzionato ne con il servo del kit ne con un'altro che avevo già. Il problema e che non ha mai funzionato e per questo penso che sia ArduinoUNO che non va, se non ci sono errori nei collegamenti e nel codice.
Ti ringrazio ancora per la tua cortesia.
Paolo

Pardon avevo capito male...
Ora se vuoi gli diamo un occhiatina domani.. me ne vado a nanna ora..
nottee :wink:

Ok, grazie, buona notte. Paolo

Ratto93 (o altri di buon cuore), buona domenica.
Per verificare se è la scheda ArduinoUNO che non funziona bene posso usare una ArduinoMega2560 con lo stesso codice sostituendo solo l'istruzione del Servo1Attach (9) per il pin digitale 9 di ArduinoUNO con una per un pin digitale da 22 a 53 dell'ArduinoMega2560?

Grazie
Paolo

Ratto93, ho risolto il problema con un atto disperato: ho cambiato il cavo USB (quello contenuto nel kit) con un'altro e tutto funziona. Spero che questa esperienza possa essere utile ad altri che avessero lo stesso problema.

Comunque grazie ancora a te e a chi mi ha letto.
Paolo