Étape 9: Déterminer la gamme de mouvement
Nous devons maintenant déterminer notre gamme de mouvement pour nos servos. Dans le même temps, je vais vous montrer un code rapide qui sera exploité un servo sans utiliser la bibliothèque de servo.Bases de servo
Pour avancer, un servo attend une impulsion. Nous pouvons produire que d’impulsions par tour une broche numérique sur et en dehors rapidement avec le délai correct.
Plus précisément, un servo attend une impulsion sur dans la gamme de microsecondes de 500-2500 avec une période d’arrêt de 20 millisecondes entre.
Heureusement, Arduino fait c’est vraiment facile à faire.
Tapez le code suivant dans votre environnement Arduino, et nous utiliserons cette esquisse rapide de comprendre nos valeurs maximales et minimales pour animer notre arbre. (ou vous pouvez couper et coller à partir du fichier texte inclus)
int servoPin = 8 ; Il s’agit de la broche où sera connecté le servo, changement pour n’importe quel axe numériqueint servoPos = 2500 ; Cette valeur sera de définir la position du servo
les valeurs varient de 500 à 2500 et représentent entre 0 - 180 degrés.
est en fait de temps en microsecondes pour déterminer la taille de l’impulsion pour le servo
void setup() {}
définir le code pin comme sortie
pinMode(servoPin,OUTPUT) ;
}
void loop() {}
dans ce cas, nous utilisons une boucle for pour veiller à ce que nous avons atteint la position que nous voulons atteindre rapidement avec le servo
une impulsion se déplacera le servo seulement un peu de moyens vers sa destination finale, donc nous faisons 20 impulsions consécutives
pour (int i = 0; i < 20; i ++) {}
digitalWrite(servoPin,HIGH) ; tourner sur l’axe du servo, c’est à dire envoyer 5V
delayMicroseconds(servoPos) ; délai pour la longueur de l’impulsion définie dans les déclarations
digitalWrite(servoPin,LOW) ; tourne broche servo faire marche arrière à la fin de l’impulsion
Delay(20) ; vous devez attendre 15 à 20 milli-secondes entre les impulsions, pas plus, pas moins.
}
}
Copiez le code suivant parcourt juste réglage de la position du servo. Afin de comprendre vos valeurs, brancher des valeurs différentes pour le servoPos de l’ordre de 500 à 2500.
Essayez une valeur, téléchargez-le. Essayer un autre, téléchargez-le. Un parcours fastidieux, mais il veille à ce que vous trouviez un mouvement parfaitement agréable. Je voulais aussi vous montrer une méthode de contrôle servo rapide et sale.
Lorsque vous trouvez une bonne valeur pour chaque extrême, prenez une note, quelque chose comme ; Bouche ouverte = 1100, bouche fermée = 500.
Procéder ainsi pour tous les deux de vos servos, et nous pouvons nous déplacer le long de quelque chose d’un peu plus intéressant.