Paso 9: Determine el rango de movimiento
Ahora tenemos que determinar nuestro rango de movimiento de los servos. Al mismo tiempo le mostrará algunos código rápido que un servo sin utilizar la librería servo.Conceptos básicos de servo
Para avanzar, un servo está esperando un pulso. Podemos generar que pulso por vuelta un pin digital encendido y apagado rápidamente con el retardo correcto.
Específicamente, un servo está esperando un pulso en el rango de microsegundos de 500-2500 con un periodo de 20 milisegundos entre.
Por suerte, Arduino hace esto muy fácil de hacer.
Escriba el siguiente código en el entorno de Arduino, y usaremos este boceto rápido para averiguar los valores máximos y mínimos para animar nuestro árbol. (o puede cortar y pegar desde el archivo de texto incluido)
int servoPin = 8; Este es el pin donde se conectará el servo, el cambio de cualquier pin digitalint servoPos = 2500; Este valor será definir la posición del servo
los valores van desde 500 a 2500 y representan de 0 - 180 grados.
es realmente de micro-segundos para determinar tamaño de pulsos para el servo
void setup() {}
definir el pin como salida
pinMode(servoPin,OUTPUT);
}
void loop() {}
en este caso estamos utilizando un bucle para que nos alcanzaron la posición que queremos alcanzar con el servo rápidamente
un impulso moverá el servo sólo un maneras poco hacia su destino final, por lo que estamos haciendo 20 pulsos en una fila
para (int i = 0; i < 20; i ++) {}
digitalWrite(servoPin,HIGH); girar sobre el eje del servo, es decir enviar 5V
delayMicroseconds(servoPos); retraso en la longitud del pulso en las declaraciones
digitalWrite(servoPin,LOW); Apagar pin servo para acabar con el pulso
Delay(20); es necesario esperar a 15-20 milisegundos entre pulsos, no más, no menos.
}
}
Este código simplemente recorre el ajuste de la posición del servo. Con el fin de averiguar sus valores, enchufe diferentes valores para servoPos en el rango de 500-2500.
Trate de un valor, subirlo. Intentalo con otro, subirlo. Una ruta tediosa, pero asegura que encontrará un movimiento perfectamente agradable. También quería mostrarles un método de control de servo rápido y sucio.
Cuando encuentres un buen valor para cada extremo, tomar nota, algo así como; Boca abierta = 1100, boca cerrada = 500.
Hacer esto para ambos de sus servos, y podemos movernos a lo largo para algo un poco más interesante.