//************PRÁCTICA 13***************
//Funcionamiento de un Servomotor
//girar 0 y 180 grados
//importar libreria para servomotor
#include <Servo.h>
Servo servo1; //objeto de tipo servo, referenciar al servo/motor
int PINSERVO = 5; //Pin conectado el servo
//calcular la posición aproximada de los grados 0 y 180 (prueba y error) 1400 = 90 grados
int PULSOMIN = 500; //Pulso de (1000 microseg) 1ms equivale a 0 grados (500 casi exacto a 0 grados)
int PULSOMAX = 2400; //Pulso de (2000 microseg) 2ms equivale a 180 grados (2400 casi exacto a 180 grados)
int buttonPin = 2; // Pin donde está conectado el botón
int buttonState = 0; // Estado actual del botón
void setup() {
//Los valores de la función se requiere que esten en microsegundos
servo1.attach(PINSERVO, PULSOMIN, PULSOMAX); //inicializar el servo (pinconectado,pulsomin,pulsomax)
//Serial.begin(9600);
}
void loop() {
buttonState = digitalRead(buttonPin);
if (buttonState == HIGH) { // Si se presiona el botón (asumiendo pull-down, botón conectado a GND)
servo1.write(0); // Mueve el servo a 0 grados
delay(1000); // Espera un momento
servo1.write(180); // Mueve el servo a 180 grados
delay(1000); // Espera otro momento
}
}