Étape 1: Servo et l’Arduino utilisé pour étalonner
Les servos, que j’ai utilisé sont EXI modèle de que b1226 proviennent :
http://www.hobbypartz.com/12exiseb1.html
Vous aurez besoin d’un servo « corne » pour les relier à une roue de quelque sorte. Ce servo nécessite une corne spéciale faite pour le modèle B1228.
http://www.hobbypartz.com/sehosetforap.html
Le servo est techniquement pas un servo continu mais si incroyablement facile à convertir. Voir les photos...
1. Retirez le couvercle
2. enlever la mise à nu et les deux engrenages.
3. Retirer le clip circulaire peu blanc à l’aide de vos ongles.
4. calibrer le potentiomètre de la faire tourner à la même vitesse dans les deux sens et s’arrêter lorsque vous l’enverrez la commande vers le Centre lui-même.
5. utiliser le vernis à ongles pour coller les Potentiameter en place.
6. Remontez tous sauf le petit clip blanc que vous avez supprimé avec vos ongles.
Pourquoi utiliser ce servo spécifique ?
1. couple extrêmement élevé et juste la bonne vitesse pour 3 à 4 pouces roues à 6 volts.
2. il est de 14 $ chaque.
3. il a déjà les arrêts supprimés qui l’empêchent de tourner en permanence.
4. pour la faire fonctionner en continu il suffit de supprimer le clip. Il a été initialement conçu faire appel 8,5 fois d’un bout à l’autre. Après avoir retiré le clip qu'il fonctionnera de façon continue.
5. donc pas ne couper, aucune soudure. Si vous avez le programme d’étalonnage sur votre arduino, que vous pouvez l’avoir fait en moins de 5 minutes de faciles.
Code source pour calibrer le servo est ci-dessous. Il tourne à droite pour 3 secondes reste encore pendant 15 secondes, gauche pendant 3secondes, puis encore pendant 15 secondes. Vous tournez le potentiameter en arrière jusqu'à ce que la chose s’arrête de tourner pendant les périodes de 15 secondes pour plusieurs cycles du programme...
#include
Servo myservoR ;
void setup() {}
Serial.Begin(9600) ;
Delay(5000) ;
Serial.println('Start') ;
myservoR.attach(11) ;
}
void loop()
{
myservoR.write(180) ;
Serial.println ('envoi 180') ;
Delay(3000) ;
myservoR.write(90) ;
Serial.println ('envoi 90') ;
Delay(15000) ;
myservoR.write(0) ;
Serial.println ('envoi 0') ;
Delay(3000) ;
myservoR.write(90) ;
Serial.println ('envoi 90') ;
Delay(15000) ;
}