jueves, 16 de febrero de 2012

Mover servo con arduino

Intro.
Para esta entrada, veremos un pequeno tutorial para poder mover un servomotor, con dos push button y el arduino.

Material
Para hacer esta practica se empleo lo siguiente:

  • Protoboard


  • Resistencias


  • Cable de conexion


  • Dos push button

  • Servomotor Futaba S3010


  • Arduino Uno //Lo mismo que en el tutorial anterior
  • Cable USB //Lo mismo que en el tutorial anterior

Desarrollo:
Antes que nada hay que saber las salidas que nos da un servomotor, un servomotor(en mi caso estoy usando un servomotor Futaba), tiene tres salidas, las cuales son: tierra(Negro), voltaje(Rojo) y senal(Blanco). Para conectarlo a nuestro arduino seria, el negro con gwn, el rojo con vin y el blanco con alguno que sea un pin de salida.

Teniendo esto lo que sigue es conectar los push button con el protoboard,como en la siguiente imagen:

Una vez tenido esto, lo conectamos con el arduino:


Codigo:
El codigo empleado fue el siguiente:
#include 

Servo myservo;
#define leftPin 2
#define rightPin 4
int pos = 90;
//Declaramos las salidas y el valor del servo ne posicion inicial

void setup()
{
  myservo.attach(3); //Salida del servo
  myservo.write(pos); 
  pinMode(leftPin, HIGH);   //Posicion de los botones
  pinMode(rightPin, HIGH);
}

void loop() //Empezamos el ciclo
{
  if(digitalRead(leftPin) == LOW) //Si oprimimos el boton izquierdo
  {
   if( pos > 0)
 --pos;
    myservo.write(pos);  //Mueve el servo a la izquierda
  }
  if(digitalRead(rightPin) == LOW)  //Si oprimimos el boton derecho
  {
   if( pos < 180)
  ++pos;
    myservo.write(pos); //Mueve el servo a la derecha
  }
}  


Bibliografia:
http://www.arduinoacademy.com/2011/12/17/componentes-el-servomotor/

4 comentarios:

  1. En estos sería padre poner un video donde tú lo tienes armado y muestras cómo jala. Te pongo 7 para el lab de integrados.

    ResponderEliminar
  2. se pueden poner mas botones y posiciones?

    ResponderEliminar
  3. hola, tendrás el diagrama de como se hace el cableado? de antemano muchas gracias

    ResponderEliminar