O

                  Obturador                

Comentarios    

            
 

 
      Obturador electrónico para nuestra cámara de placas.


 

 

   El esquema:

      El pulsador de disparo va conectado al Pin 12. El otro lado va a masa (Negativo)
     El conmutador de retardo del disparo va al Pin11. El otro lado va a masa.
     La tira de pines para seleccionar la velocidad de obturación va a los pines 4, 5, 6, 7, 8, 9 y 10.
     Un trocito de cable proveniente de masa nos servirá para insertarlo en uno de los pines.
     De esta manera si insertamos en el pin 4 obtendremos una velocidad de obturación de 1 segundo.
     En el pin 5 2 seg, 2n el pin 6 3 segundos, en el pin 7 4 seg, en el pin 8 6 seg, en el pin 9 8 seg y en el pin 10 12 segundos.
     En el esquema atacamos un zumbador piezoeléctrico, sin embargo yo lo he cambiado por un pequeño amplificador a 5V y un altavoz de 0,5W.
     El cable amarillo del servo debe ir conectado al pin 2 del arduino. El marrón a masa y el rojo a +5V.
      Para encender un led de alta luminosidad he añadido un transistor 2N2222, una resistencia de 390 en la base y otra de 100 oh en serie con el led para que luzca sin quemarse.

   El programa:

// Arduino Pro Mini 5V 16mhz Atmega 168
// Obturador para cámara fotográfica de placas
// Servo en Pin // Audio en Pin 3
// Botón para disparar Pin 11 Sin retardo
// Botón para disparar Pin 12 Conm retardo
// Pin 13 leds informativo
// Pines 4,5,6,7,8,9,10 Velocidad obturador 1,2,3,4,5,6,7 seg.

#include <Servo.h>
Servo obtura;
int velo;

void setup() {
  pinMode(2, OUTPUT);         // Servo
  pinMode(3, OUTPUT);         // Pitido
  pinMode(4, INPUT_PULLUP);   // Seleccionan velocidad
  pinMode(5, INPUT_PULLUP);
  pinMode(6, INPUT_PULLUP);
  pinMode(7, INPUT_PULLUP);
  pinMode(8, INPUT_PULLUP);
  pinMode(9, INPUT_PULLUP);
  pinMode(10, INPUT_PULLUP);
  pinMode(11, INPUT_PULLUP);
  pinMode(12, INPUT_PULLUP);  //Boton para disparar obturador

  pinMode(13, OUTPUT);        //LED Chivato
  obtura.attach(2,600,2400);
  obtura.write(0);
  int velo;
}

Void loop() {
   // Botón para hacer la lectura de luz
        if(digitalRead(4) == LOW){velo=1000;}
        if(digitalRead(5) == LOW){velo=2000;}
        if(digitalRead(6) == LOW){velo=3000;}
        if(digitalRead(7) == LOW){velo=4000;}
        if(digitalRead(8) == LOW){velo=6000;}
        if(digitalRead(9) == LOW){velo=8000;}
        if(digitalRead(10) == LOW){velo=12000;} 
   if(digitalRead(12) == LOW)
       {    
      if(digitalRead(11) == LOW) {pitidos();}
      dispara(velo);
        }
}

    // SUBRUTINAS
      // Cambia destellos para led 1 pin 13
      void pitidos(){
       for (int i = 0; i<15; i++)
{
      digitalWrite(13, HIGH);
      tone (3,1000,50);  
      delay(250);
      digitalWrite(13, LOW);
      delay(250);
      }

        for (int i = 0; i<15; i++)
{   
      tone (3,1000,30);   
      digitalWrite(13, HIGH);
      delay(100);
      digitalWrite(13, LOW);
      delay(100);
      }
      tone (3,1000,1000);
}

void dispara(int velocidad){
      digitalWrite(13, HIGH);
      obtura.write(120);  
      delay(velocidad);
      obtura.write(0);
      digitalWrite(13, LOW);
 }