Je suis présentement entrain d'expérimenter un projet, mais je suis malheureusement en difficulté. J'essaye de controller un continuous rotation servo Parallax à l'aide d'un flex sensor.
Lorsque je plie mon sensor, le servo ne cesse de tourner, mais je voudrais qu'il suive la flextion du sensor et qu'il sarrete lorsque le sensor est à 90°.
J'utilise se programme suivi:
#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
void setup()
{
myservo.attach(9);
}
void loop()
{
{
val = analogRead(potpin);
val = map(val, 1023, 0, 0, 90);
myservo.write(val);
delay(15);
}
Cette ligne présuppose que le capteur après numérisation retourne une valeur comprise entre 0 et 1023 pour une flexion de 0 à 90°.
As-tu vérifié que c'est bien le cas?
Ensuite un servo à rotation continu est plutôt prévu pour faire la base roulante de petits robots ou de véhicules. Dans un servo un rotation continu, la consigne détermine la vitesse et le sens de rotation de l'axe du servo.
Si tu veux contrôler l'angle du servo avec la flexion de ton doigt il fait utiliser un servo classique. Dans un servo classique la consigne fixe l'angle de l'axe.