Go Down

Topic: servo analog (Read 614 times) previous topic - next topic

az

salut!

je viens de recevoir 2 servomoteurs Futuba S3801
(cf :http://www.robopolis.com/produit/1378/77/servomoteurs/Servomoteur--S3801-.php)
malheureusement le servo est analogique, et ne comprend rien ce que lui envoi la arduino (en ecrivant en analogique à la sortie de la carte et en utilisant la librairie servo).

Quelqu un connait une astuce pour piloter un servo analogique depuis une arduino?

Merci d'avance.
AZ

Skall

tu n'as pas du beaucoup chercher sur le forum ...

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1206110733/9#9

(mais je me suis trompé, c'est 20ms entre deux impulsions, pas 70)

il faut que ton arduino envoie des pulses de largeur proportionelle a l'angle que tu veux donner à ton servo, entre 500 et 2500us.
DelayMicroSconds permet d'attendre le temps necessaire...

donc en gros, tu fais :
DigitalWrite(pin,HIGH);
delayMicroSecond(largeur);
DigitalWrite(pin,LOW);

et hop, ca envoie un pulse.

le truc, c'est qu'il faut en envoyer plusieurs pour que le servo arrive à destination. Un pulse ne suffit pas. Et il faut que tes pulses soient espacés de 20ms minimum.


az

ok merci du coup de main
je vais regarder ca.

Go Up