Hace ya un tiempo enseñé cómo hacer un cable para disparar una Canon EOS remotamente. El cable podría ser adosado a un interruptor, pulsador o similares. Esta vez conectaré el mismo cable a un Arduino, de esta forma podremos disparar la cámara bajo las condiciones que nos podamos imaginar: cambios de luz, ruidos, movimiento, temperatura, vibraciones, etc.
Para poder hacer las conexiones, necesitaremos:
- el cable de disparo remoto (entrada previa)
- dos transistores PN2222
- dos pines digitales del arduino
Realizaremos las conexiones como aparecen en el esquema:
Una vez hecho ésto podemos realizar algunas pruebas usando el siguiente código:
/* Disparar Canon EOS
via cable remoto
*/
const int f_pin = 6; // pin para enfoque
const int s_pin = 7; // pin para disparo
/* Recordar que la EOS no disparara si esta
en enfoque automatico y no esta enfocada
correctamente.
Si se desea disparar a cualquier costo, se
debe definir enfoque manual.
*/
void setup() {
//defino los pines como salidas
pinMode(focusPin, OUTPUT);
pinMode(shutterPin, OUTPUT);
//dejo las salidas en LOW
digitalWrite(focusPin, LOW);
digitalWrite(shutterPin, LOW);
}
void loop(){
/* Este bloque tal cual como esta
actuaria como un intervalometro y
serviria para hacer time-lapses
*/
digitalWrite(focusPin, HIGH); //enfoco
/* El delay es para que enfoque adecuadamente
Se debe ajustar segun la dificultad que haya
para enfocar*/
delay(2000);
digitalWrite(shutterPin, HIGH); //disparo
/* Dejo un tiempo antes de terminar el proceso
Este valor debe ser adecuado segun el tiempo de
disparo. El tiempo de exposicion se define en la
camara. Este delay definira el tiempo de obturacion
en modo bulb.
*/
delay(1000);
digitalWrite(shutterPin, LOW); //dejo de enfocar
digitalWrite(focusPin, LOW); //dejo de disparar
delay(10000); //espero 10 segundos hasta sgte ciclo
}
Ahora a jugar.