Septuagésima octava misión: precisión.
¿Habéis visto por la noche un grupo de estrellas en fila india?
¿De qué motores se beneficia nuestro cerebro?
Aprende a programar un movimiento preciso con los miniservos:
1) Abre en tu ordenador el IDE de Arduino.
2) Copia el programa que aparece más abajo.
3) Selecciona en herramientas la placa Arduino UNO y el puerto correspondiente.
4) Carga el programa en Arduino.
5) Modifica el valor de retraso y observa qué pasa.
6) ¿Podrías imitar un reloj?
Aquí tienes un programa para controlar el movimiento del miniservo:
/* Programita para controlar un miniservo. Estos giran a una posición de 0 a 180º */
#include <Servo.h> // incluyo una librería o colección de programas para controlar servos
Servo myservo; // myservo es la etiqueta para referirme al servo que voy a conectar. Podré controlarlo con las instrucciones que incluye la librería anterior
int pos = 180; // variable para almacenar la posición del servo. Inicialmente está en la posición 180º
void setup(){
myservo.attach(9); // voy a conectar el servo al pin 9: cable naranja al pin 9, rojo a Vcc y marrón a GND, o bien cable
blanco al pin 9, rojo a Vcc y negro a GND
}
void loop(){
for (pos = 180; pos>0; pos--) {
//Avanza en el sentido de las agujas del reloj, de 180º a 0º, restando 1 a cada vuelta del bucle
myservo.write(pos); //doy la orden de que se desplace hasta los grados almacenados en pos
delay(20); // espero un momento para que le de tiempo al servo a llegar a la posición marcada
}
delay(2000); // esperamos 2 segundos
for (pos = 0; pos<180; pos++) {
//Avanza en sentido contrario a las agujas del reloj
myservo.write(pos); //damos la orden con los grados
delay(20); // esperamos que el servo llegue a la posición
}
delay(2000);
}