Problème contrôle servomoteur

Bonjour à tous,

j'ai besoin d'aide concernant le pilotage d'un servomoteur(180°) avec un potentiometre (montage classique) avec un arduino UNO.

J'ai donc raccordé le potentiometre à l'entrée A0, et la sortie signal du servo a la borne 9.

Le probleme est:

-du 0 à la moitié du potar, le servo se met a fond d'un coté.
-de la moitié au max du potar, le servo passe a fond de l'autre coté.

Je ne comprend pas du tout pourquoi.. si vous pouvez m'aider??

le servo est un BLUE BIRD BMS-136MG que je viens de recevoir.

mon code :

#include <Servo.h>

Servo myservo;

int potpin = 0;
int val;

void setup()
{
myservo.attach(9);
}
void loop()
{
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 179);
myservo.write(val);
delay(15);
}

Up, personne aurait une idée? merci d'avance.

Bonjour,
a) Alimente ton servo avec une alim extérieur à l'Arduino, pour être sur de ne pas avoir de problème de ce côté. ( des piles pour faire 6V, la masse doit être commune avec celle de l'Arduino).

b) Essaye le programme dans Menu>Exemple>Servo>Sweep
Pour être sur au lieu de delay(15), passe à delay(30).

c) Ensuite vérifie que ce servo est bien standard, pulse de 1 à 2 ms tout les 20ms.

A+ Teiva


www.Zartronic.fr : Arduino & Robotique

Merci pour l'aide, j'ai essayé avec une alim exterieure, rien n'y fait, je pense que mon servo n'est pas standard en fait. il est fait pour fonctionner comme ça.

Je vais donc changer de modele.

J'ai regardé le type de servo et j'ai trouvé ça :
http://www.pb-modelisme.com/PBModelisme/Servo/detail_servo.php?servo=106

Il s'agit d'un servo qui fonctionne en tout ou rien pour rentrer ou sortir les trains d'atterrissage. Donc c'est normal qu'il ait un tel comportement.

A+
JC

merci beaucoup J_C