martes, 11 de octubre de 2016

TUTORIAL ARDUINO CON SERVO DE 180 GRADOS CONTROLADO POR MONITOR SERIE ESPAÑOL

COMPONENTES:

ARDUINO MEGA
FUENTE DE ALIMENTACIÓN 5V
PROTOBOARD
SERVO 180 GRADOS







CONEXIONES:




IMPORTANTE CONECTAR EL SERVO CON UNA FUENTE DE ALIMENTACIÓN EXTERNA Y PUENTEAR EL NEGATIVO CON GND DEL ARDUINO.


CÓDIGO ARDUINO:


#include <Servo.h>          // Incluimos la librería para el manejo del servo

Servo servo180;               // Declaramos el nombre del servo
String lectura;                 // Declaramos una variable para guardar la lectura de monitor serie
int val;                            // Variable para guardar la lectura

void setup() {
  servo180.attach(8);      // El servo lo conectamos al pin 8
  Serial.flush();    
  Serial.begin(9600);       //Iniciamos el Puerto Serial
  Serial.println("ESPERANDO ÁNGULO:  ");
}

void loop() {
 if(Serial.available()>1)
  {
  lectura=Serial.readString();  // LEEMOS EL ÁNGULO INTRODUCIDO
  val=lectura.toInt();               // Lo convertimos a numero entero
  if (val>0 and val<180)         // Si cumple la condición valor entre 1 y 179
       {
  servo180.write(val);             // Servo ira a la posición indicada
  delay(50);
  Serial.print("EL ÁNGULO ES DE :  ");
  Serial.println(val);
  Serial.println("INTRODUZCA UN NUEVO ÁNGULO: ");
      }
  }


}



ABRIMOS  EL MONITOR SERIE INTRODUCIDOS UN VALOR ENTRE 1 Y 179.   PARA LA PRIMERA PRUEBA PONER VALORES ENTRE 30 Y 150 PARA VER DONDE TIENE EL TOPE NUESTRO SERVO. LUEGO CON LA FUNCIÓN MAP REGULAR.

EJEMPLO  val = map(val, 1, 179, 3, 150);

No hay comentarios:

Publicar un comentario