Étape 2: Ajouter un capteur flex
Donc vous pouvez permuter dehors pour capteur différent. J’utilise un capteur de flex d’instructables. Le capteur modifie la résistance comme elle est pliée. C’est de [##REF ##].
Le capteur flex est accroché comme ceci :
5V----------
|
Broche 0---100K---une extrémité du flex capteur---
| |
| Capteur de Flex
| |
Sol---autre fin de flex capteur---
La valeur de la résistance dépend de la résistance du capteur. Il devrait être dans le même ordre que la résistance maximum du capteur. Vous devrez également modifier le code en mappant les valeurs d’entrée à l’angle de servo.
Vous cherchez cette ligne de code :
Val = carte (val, 40, 90, 350, 179) ; redimensionnez-la pour l’utiliser avec le serv
Voici une vidéo :
Remplacer le potentiomètre par le capteur flex
-Régler les valeurs d’entrée analogiques afin que tout fonctionne bien avec le capteur flex. Il est correct de deviner un peu
-Voici le code de mise à jour
Arduino Code / / /
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
Avec capteur flex
-Tweak Val d’Angle plan
/*
Voici le câblage :
Câblage-
Flex capteur |---Arduino Gnd
Flex capteur |---analogique 0
100K |---analogique 0
100K |---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 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)
Serial.println(Val) ;
valComp = analogRead(potpin) ;
Serial.println(Val) ;
Val = carte (val, 40, 90, 350, 179) ; redimensionnez-la pour l’utiliser avec le servo (valeur comprise entre 0 et 180)
valComp = carte (valComp, 350, 40, 0, 90) ; autre servo fait face
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
}