#include <Servo.h> // Incluimos la biblioteca Servo
Servo mi_servo0; //Definimos los servos que vamos a utilizar
Servo mi_servo1;
int posicion_mi_servo0; //Estas variables definirán las posiciones de los servos en
int posicion_mi_servo1; cada momento
const int pulsador_izquierda = 2; //Definimos el número de Pin para cada uno de los
const int pulsador_derecha = 3; pulsadores
const int pulsador_arriba = 5;
const int pulsador_abajo = 6;
int estado_pulsador_izquierda = 0; //variables para leer el estado del pulsador
int estado_pulsador_derecha = 0;
int estado_pulsador_arriba = 0;
int estado_pulsador_abajo = 0;
int incremento_de_angulo = 25; //incremento que queremos para cada vez que pulsemos
void setup() //Comenzamos la configuración de los pines
{
mi_servo0.attach(9) ; //Definimos los pines de salida para cada servo
mi_servo1.attach(11) ;
pinMode(pulsador_izquierda, INPUT); //Definimos los pines para la señas de los
pinMode(pulsador_derecha, INPUT); pulsadores como entradas
pinMode(pulsador_arriba, INPUT);
pinMode(pulsador_abajo, INPUT);
}
void loop() {
estado_pulsador_izquierda = digitalRead(pulsador_izquierda); //Leemos el estado
estado_pulsador_derecha = digitalRead(pulsador_derecha) ; de cada uno de los
estado_pulsador_arriba = digitalRead(pulsador_arriba) ; pulsadores
estado_pulsador_abajo = digitalRead(pulsador_abajo) ;
if (estado_pulsador_izquierda == HIGH)
// Si tenemos pulsado el "Pulsador izquierda
// El servo inferior se mueve a la nueva posición
// La nueva posición será la posicion actual + el incremento angular
Esperamos 700ms hasta una nueva señal
{
posicion_mi_servo0 = posicion_mi_servo0+ incremento_de_angulo;
mi_servo0.write(posicion_mi_servo0);
delay(700);
}
else{ if (estado_pulsador_derecha == HIGH)
// Si tenemos pulsado el "Pulsador izquierda
// El servo inferior se mueve a la nueva posición
// La nueva posición será la posicion actual + el incremento angular
Esperamos 700ms hasta una nueva señal
{
posicion_mi_servo0 = posicion_mi_servo0 - incremento_de_angulo;
mi_servo0.write(posicion_mi_servo0);
delay(700);
}
if (estado_pulsador_abajo == HIGH)
// Si tenemos pulsado el "Pulsador izquierda
// El servo inferior se mueve a la nueva posición
// La nueva posición será la posicion actual + el incremento angular
Esperamos 700ms hasta una nueva señal
{
posicion_mi_servo1 = posicion_mi_servo1+ incremento_de_angulo;
mi_servo1.write(posicion_mi_servo1);
delay(700);
}
else if (estado_pulsador_arriba == HIGH)
// Si tenemos pulsado el "Pulsador izquierda
// El servo inferior se mueve a la nueva posición
// La nueva posición será la posicion actual + el incremento angular
Esperamos 700ms hasta una nueva señal
{
posicion_mi_servo1 = posicion_mi_servo1 - incremento_de_angulo;
mi_servo1.write(posicion_mi_servo1);
delay(700);
}
else {
//Si no tenemos pulsado ningún pulsador
// esperamos 700ms hasta una nueva señal
delay(700);
}
}
}

No hay comentarios:
Publicar un comentario