Étape 1: Code de Servo pour Arduino
Pièces :
2 servo-moteurs
Carte Arduino (j’ai un bouclier vis là-dessus, mais ce n’est pas critique)
Potentiomètre (c’est 0 à 100Kohm)
Fils de raccordement
Cure-pipes (pour le visualiser).
1 - raccorder les servo-moteurs. Ce sont des moteurs spéciaux, vous pouvez saisir un angle et le moteur va le faire. Les servos ont trois fils : puissance (rouge, 5V) - terrain (noir) - jaune (communication - angle info va ici).
Dans cette configuration : rouge va le 5V de l’Arduino, noir va à la masse de l’Arduino, jaune ira aux broches d’entrée/sortie spécifiques sur l’Arduino.
Servo 1: Jaune---Pin 9
Servo 2: Jaune---pin 10
2 - fils du potentiomètre
Il a trois fils.
Plomb1---5V
Plomb 2---goupille 0
D’exécution 3---au sol
3 - code-
Le code ci-dessous provient de l’exemple de l’Arduino pour commande de moteur servo. Il inclut la bibliothèque de servo, ce qui le rend facile à communiquer à l’asservissement.
Cela correspond également (échelles) l’entrée du pot dans un angle (en radians) pour le moteur d’asservissement. Nous voulons que les deux moteurs d’aller dans des directions opposées. Pour cela j’ai traduit les valeurs pot bas les valeurs d’angle élevé.
Vous serez lnotice il y a quelques références à « serial » - ce genre de choses vous permet d’envoyer des données de l’Arduino via l’USB à l’ordinateur. Vous pouvez ensuite visualiser les valeurs, c’est utile.
Remarque : L’éditeur d’instructables supprime la ligne pour inclure le moteur servo.
Ça doit être comme ceci :
#include < Servo.h > ; utiliser la bibliothèque de servo
Contrôles de bouche de marionnettes
-deux servos
-en face des angles
-Entrée pot
Arduino Code / / /
Il s’agit d’un exemple inluded avec téléchargement IDE Arduino.
Contrôler la position du servo à l’aide d’un potentiomètre (résistance variable)
par Michal Rinott
MPC - ajouté sortie série ' n stuff
/*
Voici le câblage :
Câblage-
|---Arduino Gnd
Encodeur |---analogique 0
|---5V de l’Arduino
| Jaune---Digi 9 (PWM)
Servo haut de la page | Rouge---5V
| Brun---Gnd
| Jaune---Digi 10 (PWM)
Servo de fond | Rouge---5V
| Brown---
*/
#include < Servo.h > ; utiliser la bibliothèque de servo
Servo myservo ; Créez l’objet servo pour contrôler un servo
Servo otherServo ;
int potpin = 0 ; broche analogique utilisé pour connecter le potentiomètre
int val ; variable pour lire la valeur de l’axe de l’analogique
valComp int ;
void setup()
{
myservo.Attach(9) ; attache le servo sur la broche 9 à l’objet de servo
otherServo.attach(10) ;
Serial.Begin(9600) ;
}
void loop()
{
Val = analogRead(potpin) ; lit la valeur du potentiomètre (valeur comprise entre 0 et 1023)
valComp = analogRead(potpin) ;
Serial.println(Val) ;
Val = carte (val, 0, 1023, 90, 179) ; redimensionnez-la pour l’utiliser avec le servo (valeur comprise entre 0 et 180)
valComp = carte (valComp, 1023, 0, 0, 90) ;
myservo.Write(Val) ; définit la position du servo selon la valeur à l’échelle
Delay(15) ;
otherServo.write(valComp) ;
Delay(25) ; attend que le servo pour y arriver
}