Pan and Tilt para Arduino

Una parte muy importante de las aplicaciones de un arduino es su capacidad de controlar motores.
Cuando estos motores son pequeños, se puede hacer directamente desde los pines del arduino.
En esta oportunidad usaremos un mecanismo de pan and Tilt, que permitirá controlar una cámara o algún  sensor que coloquemos sobre ella.
wpid-20141014_235732.jpg
El pan and Tilt,  como lo indica su nombre, es un mecanismo que posee dos movimientos uno de giro y otro de inclinación. Se dice que tiene dos grados de libertad.

Los motores que se usan son unos servos. Tras el salto te mostramos los materiales y el armado del pan and tilt.

 

Materiales

  • Kit Pan & Tilt
  • Microservo x 2
  • Arduino (uno o Leonardo o WiDo)
  • Cables
  • PC con Arduino IDE
  • Mini protoboard

Armado y prueba de Código

El pan & Tilt se vende como un kit al que debes agregar los motores micro servo modelo sg90.

El kit es fácil de armar, pero requiere paciencia por el pequeño tamaño de sus piezas (me recuerda cuando jugaba con Lego de niño).

Las instrucciones del Kit se muestran en la siguiente imagen

image

La conexión de los servos no es un problema, simplemente el cable café va a tierra, el rojo a +5V y el naranja, que es de control, va al pin indicado en el sketch, en nuestro caso es D2 y D3. Para cablear todo usamos un mini protoboard.

Pan and  tilt connected to Arduino wido
Pan and tilt connected to Arduino wido

Para el control de servo usaremos la biblioteca servo de Arduino es standard por lo que no se necesita más.

El código de demo que tenemos es el siguiente,

// Sweep
// by BARRAGAN <http://barraganstudio.com> 
// This example code is in the public domain.
// modified by www.iot.cl 
// for pan &  Tilt demo


#include  <>
 
Servo myservo;  // create servo object to control a servo 
Servo myservo1;                // a maximum of eight servo objects can be created 
 
int pos = 0;    // variable to store the servo position 
 
void setup() 
{ 
  myservo.attach(2);
  myservo1.attach(3);  // attaches the servo on pin 9 to the servo object 
} 
 
 
void loop() 
{ 
  for(pos = 0; pos < 180; pos += 1)  // goes from 0 degrees to 180 degrees    {                                  // in steps of 1 degree      myservo.write(pos);    // tell servo to go to position in variable 'pos'      myservo1.write(pos);     delay(15);                       // waits 15ms for the servo to reach the position    }    for(pos = 180; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
  {                                
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    myservo1.write(pos);
    delay(15);                       // waits 15ms for the servo to reach the position 
  } 
} 

Con esto tenemos una prueba de movimiento básico para demostrar las posibilidades de este kit. Una aplicación práctica de este kit consiste en montar una cámara o un sensor en la parte superior.

No lo olvides! , si tienes consultas puedes usar nuestro formulario para mandarnos tus dudas e ideas para tu próximo proyecto.

Author: Manuel Carrasco

Ingeniero Eléctrico, Institutano, instructor certificado Cisco, en twitter @mcarrasco con comentarios y opiniones personales.

5 thoughts

    1. Pablo, este tutorial esta pensado para mover esa camara, no para conectar una, si deseas un sistema de vigilancia, lo mejor es usar algo como Raspberry Pi.
      Saludos
      JZ

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *