Webcervices. Con la tecnología de Blogger.
RSS

Unete a nuestro grupo de facebook

Unete a nuestro grupo de facebook
Hola que tal lectores de esta pagina tan maravillosa que es arduino Tec ...Los invito a que amplíen mas sus conocimientos en Arduino y Raspberry Pi Uniéndose a mi grupo Arduino Tec

Multi proyectos 0129

Disparador para Réflex - Parte 2

Fuente: digital trends
Este es un post de continuación al post Disparador para Réflex - Parte 1:

Ya conocemos un componente que sirve de interruptor y que podemos controlar electrónicamente, el relé. En este caso vamos a utilizar otro elemento, un optoacoplador, con el mismo objetivo: sustituir al botón que pulsábamos en el ejemplo anterior.

El optoacoplador se compone de un fotodiodo y un fototransistor; al pasar corriente por el diodo, le llega luz a la base del transistor y éste conduce. Desde fuera, veremos un encapsulado con cuatro terminales. Si hacemos que pase corriente entre las patillas del fotodiodo, los otros dos terminales estarán cortocircuitos.



Podemos conectar la patilla 2 a masa y la patilla 1 a un pin del Arduino que configuremos como salida. Comprueba en el datasheet de tu optoacoplador que la corriente máxima que soporta el diodo sea lo suficientemente elevada para no quemarse y si no lo es, añádele una resistencia entre el pin y la patilla 1. La patilla 4 irá unida al terminal que queramos llevar a masa, que estará en el terminal 3.




Por lo tanto, ya tenemos una forma de provocar que la cámara enfoque/dispare con sólo poner un pin a nivel alto. Si además disponemos de un mando de infrarrojos, ya tenemos una forma de disparar de forma inalámbrica.

Con todo esto, pasamos a la descripción del circuito completo:
Componentes:
- 1 cable Jack 2.5 mm macho a 3.5 mm macho
- 1 conector Jack 3.5 mm hembra
- 2 optoacopladores (uno para enfoque y otro para disparo)
Sensor de infrarrojos + mando







El sketch de nuestro ejemplo es el siguiente: 

#include 
#include <NECIRrcv.h>

//pines
#define IRPIN 11   // pin al que conectamos el receptor de IR
#define focus 9
#define shutter 7

//botones
#define boton1 4010852096
#define boton2 3994140416
#define boton3 3977428736

NECIRrcv ir(IRPIN) ;

int i;

//parámetros Time-lapse
int msTimeLapse=3000;
int NumFotos=3;


// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  Serial.begin(9600) ;
  pinMode(shutter, OUTPUT);
  pinMode(focus, OUTPUT);
  Serial.println("Modos:");Serial.println("1: Enfocar");Serial.println("2: Hacer foto");Serial.println("3: Time-lapse");
  ir.begin() ;
}


// the loop routine runs over and over again forever:
void loop() {
  unsigned long ircode ;
  while (ir.available()) { 
    ircode = ir.read() ;  
    switch(ircode)
    {    
      case boton1:   Serial.println("Enfocando"); //Focus con UP
                     digitalWrite(focus, HIGH);
                     delay(500);
                     digitalWrite(focus, LOW);
                     break;
                     
      case boton2:   Serial.println("Foto"); 
                     digitalWrite(shutter, HIGH);
                     delay(400);
                     digitalWrite(shutter, LOW);
                     break;
         
      case boton3:   Serial.println("Time-lapse");
                     for(i=1;i<=NumFotos;i++){
                       digitalWrite(shutter, HIGH);
                       delay(100);
                       digitalWrite(shutter, LOW);
                       delay(msTimeLapse-100);}
                     break;
     }//end switch    
  }//end while
}

Nota: si tienes problemas con las librerías de NECIRrcv, en concreto, con WConstants.h, haz lo siguiente.
-Abre NECIRrcv.cpp y borra la línea #include "WProgram.h"
-Abre NECIRrcv.h y sustituye la línea #include "WConstants.h" por #include "Arduino.h”

Probablemente tengas que revisar los #define de los botones para ponerles el valor que envíe tu mando. Para saber estos valores simplemente carga el sketch de aquí (http://elcajondeardu.blogspot.com.es/2014/02/utilizacion-mando-infrarrojos-i-lectura.html#more) y mira el monitor Serial al pulsar los botones que te interesen.

Funcionamiento:
Botón 1: enfocar
Botón 2: hacer foto
Botón 3: modo time-lapse, configurable con los parámetros NumFotos (número de fotos del time-lapse) y msTimeLapse (intervalo de tiempo entre fotos en ms).




Recuerda que el Arduino guarda el último sketch que hayas cargado desde el ordenador y que puedes alimentarlo con pilas, por lo tanto, tu intervalómetro puede ser totalmente portátil.
Con esto hemos realizado lo básico, como hemos comentado al principio, puedes hacer que tu disparador se ajuste a lo que necesites para tu cámara con sólo cambiar o añadir unas pocas líneas de código o algún componente más.

Por ejemplo, estas son algunas de nuestras ideas para añadir funcionalidades:

-Un modo que dispare un par de segundos después de pulsar un botón, para poder esconder el mando y no salir con él en la mano.

-Hacer que el número de fotos del time lapse y el intervalo de tiempo entre fotos sea ajustable; se podría hacer mediante un LCD para mostrar los parámetros y pulsadores para incrementar y decrementar valores.

-Barreras de luz: la cámara disparará cuando se interrumpa el haz de luz entre dos puntos.

-Conectar dispositivos inalámbricamente al Arduino para controlar la cámara, por ejemplo desde el móvil vía Bluetooth.

En resumen, con unos pocos componentes simples y económicos y nuestro Arduino podemos conseguir muchas nuevas funciones que nos ayuden a aprovechar nuestra cámara. 

Recuerda que algo tan sencillo como programar tu intervalómetro y dejar un rato la cámara mirando hacia arriba puede acabar dando resultados como este:


Anímate a construir tu intervalómetro inalámbrico y no dudes en dejarnos tus dudas o tus ideas en los comentarios.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentarios:

Publicar un comentario

Objetivo Y Reclamaciones

Este blog es un portal en el cual se publican contenidos de diferentes blogs.En los cuales se les anexa al pie de pagina un enlace a su pagina original aquí encontraran toda clase de proyectos de arduino y linux
Espero tengan una gran experiencia en este blog un Gran Saludo
de parte de la organización WebCervices..
objetivo
O del grupo ArduinoTec De arduino
Cualquier reclamación o petición comunicar al Administrador principal o hacer un comentario en la publicación que se sientan inconformes en los correos
electriarias@gmail.com
y para temas de suma importancia mi correo personal
pabioarias@hotmail.com

Siguenos en Twitter

Like

Unete a nuestro grupo de facebook

Hola que tal lectores de esta pagina tan maravillosa que es arduino Tec ...Los invito a que amplíen mas sus conocimientos en Arduino y Raspberry Pi Uniéndose a La mi grupo Arduino Tec

Unete Al Grupo De facebook

Unete Al Grupo De facebook
Amplia tus conocimientos debatiendo temas de Arduino y Raspberry pi