Hola, tengo un problema con un proyecto que estoy haciendo, se trata de un servo y un sensor, por cada angulo que gira el servo obtengo un dato analógico, es decir: gira un grado, lee; gira otro grado,lee y así hasta 90º, el problema es que el servo no empieza a moverse hasta el paso 17, se queda parado, luego empieza a moverse desde la posición inicial bastante bien.
os escribo el programa:
#include <Servo.h>
Servo myservo;
int pos = 0;
int ldrPin = 3; //pin de toma de datos =3 //
int valor = 0; //valor inicial =0 //void setup() {
{Serial.begin(9600);}{
myservo.attach(9);
}}
void loop(){
{valor = analogRead(ldrPin);
Serial.println(valor);
delay(100); }{for(pos = 0; pos < 1; pos += 1)
{
myservo.write(pos);
delay(100);
}
}
{valor = analogRead(ldrPin);
Serial.println(valor);
delay(100); }{for(pos = 1; pos < 2; pos += 1)
{
myservo.write(pos);
delay(100);
}
}{valor = analogRead(ldrPin);
Serial.println(valor);
delay(100); }{for(pos = 2; pos < 3; pos += 1)
{
myservo.write(pos);
delay(100);
}
}
{valor = analogRead(ldrPin);
Serial.println(valor);
delay(100); }//................................. Sigue así cambiando los angulos..................................................//
{for(pos = 89; pos < 90; pos += 1)
{
myservo.write(pos);
delay(100);
}
} {valor = analogRead(ldrPin);
Serial.println(valor);
delay(100); }
{for(pos = 90; pos < 0; pos -= 90)
{
myservo.write(pos);
delay(100);
}
}
{while(1);}}
Por favor me seria muy útil vuestra ayuda, ya que estoy empezando y no se mucho.
Muchas gracias.