Declencheur-intervallometre  pour appareil photo 

Suite logique après avoir bien pataugé dans les méandres de L’arduino

construit sur la base d’un Arduino Méga 2560, un lcd shield Adafruit RGB, quelques optocoupleurs, (TIL 111) ou (4n35) et quelques composants 

Arduino mega 2560 V3 

Arduino-Mega-2560-Pinout

Afficheur LCD RGB I2C ADAFRUIT  

ID716_MED

l’idée est de pouvoir tout paramétrer sans utiliser de PC ou potentiometres 

j’ai pour le moment un truc fonctionnel particulierement bien dégrossi au niveau des menus, avec une nette amelioration de la partie déclencheur « laser » par rapport a un de mes essais ICI.

Pour optimiser le temps de réponse , je vais non pas utiliser une photoresistance, mais un photo-transistor , l’utilisation d’un laser n’est pas une obligation, mais procure de meilleurs résultats avec de l’eau par exenple, pour le passage d’objet une lampe LED est suffisante


Parametrage Menu laser 

– Temps d’exposition

– Retard a l’enclencement 

– Interval entre 2 prises 

– Sensibilité 

– Déclenchement sur un front montant / descendant / Les2

– Aide a la calibration du phototransistor

 


Parametrage Menu intervallometre

– Temps d’exposition

– Nombre d’images

– Interval entre chaques images

– Gestion AE/AF on/off en cours

– Pré-éclairage (debut /fin) en cours

– infos (estimation durée du film pour 25 i/s)

– infos (estimation durée de prises de vues    jours/heures/minutes/secondes) 


Parametrage Menu audio/choc

– en cours de programmation


Parametrage Menu mouvements 

– en cours de programmation


ce projet est en cours de développement, et toujours en l’état de prototype, je vous tiend au courant sur les avancées  ! 

vous pouvez consulter, telecharger,  modifier ce code comme bon vous semble 

lien vers le programme ICI   version 1.2 Mai 2013

etat actuel du proto

_MG_1523

 

Illustrations

Partie du code pour le déclenchement laser

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 value = analogRead(photores); // lecture de la valeur de la photoresistance
 // retard = analogRead(potar); // lecture de la valeur de retardement 
 if (Mode == 0)
 {
 if (value > fval+sens) // Sombre Vers Clair
 {
 clic();
 }
 }
 if (Mode == 1)
 {
 if (value < fval-sens) // Clair vers sombre
 {
 clic();
 }
 }
 fval=analogRead(photores);
 delay (mesure); 
 buttons = lcd.readButtons();
 if (buttons) {
 if (buttons & BUTTON_SELECT) {
 Serial.println ("Menu");
 lcd.clear();
 delay (500);
 lcd.setCursor(0,0);
 lcd.print ("Parametrage");
 menulaser();
 }
 }
 goto debut;

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *