Arduino servomotor

Vídeo

A continuación encontrara el vídeo en donde se explica el funcionamiento del circuito.

Acerca del proyecto

En este post vamos a trabajar con los servomotores, donde conoceremos sus características funcionamiento y la conexión a nuestro arduino, además conoceremos un poco de la tecnología PWM y de cómo nuestro servomotor funciona con estos pulsos.

Conocimiento previo

Para realizar este proyecto se requiere conocimiento previo de los siguientes temas, si aun no has trabajado con lo que se menciona en la siguiente tabla, allí están los links a los post para que puedas dar un repaso adicional o puedas recordar el conocimiento necesario para poder realizar este proyecto.

Proyecto Descripción
MG995 datasheet Esta es la hoja de datos del servomotor con el cual vamos a trabajar.
Líbreria servo En este post explicamos las funciones de la libreria servo.

¿Que es PWM?

La modulación por ancho de pulso es una señal de fuente de energía que modifica el ciclo de trabajo de una señal periódica, ya sea para transmitir información a través de un canal de comunicación o para controlar la cantidad de energía que envía a una carga.

Aplicaciones en los motores

El PWM es utilizado para regular la velocidad de giro de los motores eléctricos ya sea de inducción o asíncronos.

¿Que es un servomotor?

Un servomotor es un tipo de especial de motor de corriente continua, con la capacidad de posicionarse en una ubicación dentro de su rango de operación; para ello el servomotor tiene un sensor el cual detecta los pulsos que da el motor y determinar su posición.

Materiales

Material Cantidad Descripción
Arduino 1 Utiliza el que mas te guste
Servomotor 1 Para el ejercicio usamos el mg995

Circuito

Observemos el circuito anterior en donde tenemos conectado el servomotor a nuestro arduino, la conexión es prácticamente fácil, ya que solo necesitamos la alimentación del componente y conectar el cable de datos del servomotor al arduino.

Código

Encuentra el código el el siguiente link

//Se llama la librería del servo
#include <Servo.h>

//Pin a conectar el servo
int pinServo = 2;

//Se crea un nuevo objeto del servo
Servo servo;

void setup() {
  //Inicializamos el servo con el pin declarado
  servo.attach(pinServo);
  Serial.begin(9600);
}

void loop() {
  //Movemos el servomotor a 10°
  servo.write(10);
  delay(2000);
  //Leemos la posición de servomotor y la mostramos
  Serial.println(servo.read());
  servo.write(90);
  delay(2000);
  Serial.println(servo.read());
  servo.write(160);
  delay(2000);
  Serial.println(servo.read());
}

Primero incluimos la librería del servomotor, la cual ya contiene las instrucciones necesarias para trabajar, luego declaramos un objeto de servomotor para poder acceder a las instrucciones de la librería, dentro del setup usamos la librería attach la cual me permite declarar el pin que vamos a usar para el servomotor.

En el loop lo que hacemos es mover servo a las posiciones que queramos, recordemos que el servomotor mg995 solo se desplaza de 0° a 180°, así que con la función servo.write() colocamos el valor numérico, donde se posicionara automáticamente, la función servo.read() permite leer la posición de servomotor, devolviendo un valor de numérico.

Comentarios

Para dejar el comentario solo necesitamos tu correo que registraste en la pagina, pero si aun no te haz registrado se creara el usuario automaticamente.

Detalle contenido

base-arduino-servomotor-v2
Generic placeholder image
Oscar Fernandez Alzate

19, Mayo 2016

9440
Categorías
ARDUINO