Hello,

dans le cadre d'une activité photo, j'ai construit un photobooth. Grosso modo, c'est un photomaton

On appuie sur un bouton, un décompte (optionnel) se lance et la photo est prise. Ca c'est ce que je souhaitais réaliser. N'ayant réussi à coder ça, j'ai détourné le problème. :smiley-grin:

Matériel utilisé :
- un bouton de ce style : http://hobbycomponents.com/switches/...ush-button-red
- une carte Arduino R3
- un afficheur 7 segments
- un appareil photo reflex

Actuellement, ça fonctionne mais c'est loin d'être optimal.
Côté hardware, le bouton est relié à la prise télécommande de l'appareil photo (ça je conserve) ET est relié à l'Arduino.
Ce dernier étant connecté à l'afficheur 7 segments.

Actuellement, lorsqu'on appuie sur le bouton, ça coupe l'alimentation de l'Arduino.

Quand on relache, l'Arduino est alimenté et le décompte de 2 secondes se lance jusqu'à 0.
Le bouton étant lui même connecté à l'appareil photo (va la prise télécommande) il déclenche immédiatement la photo. Pour que le déclenchement de l'APN et le décompte sur l'afficheur soient synchro, j'ai réglé l'APN sur retardateur 2 secondes.

Bref, c'est monté à l'envers mais ça fonctionne. Mais, 2 secondes c'est court. J'aimerai passer à 3-4-5 secondes.

Pour cela il me faut modifier l'hardware mais aussi le coté soft. Niveau hardware, je suppose que le déclencheur doit être branché à l'Arduino plutot qu'au bouton. L'Arduino lui donnera ainsi l'ordre de déclencher.
Actuellement, ça déclenche de suite puisque branché sur le bouton. Bon, ça déclenche le retardateur pour détourner le problème mais c'est pas super propre comme méthode...

Pour le montage propre, j'ai le cheminement en tête mais je galère à coder le truc :/

Mon idée :
- l'afficheur 7 segments affiche 0

--> on appuie sur le bouton
---> lance le décompte 5-4-3-2-1-0
----> déclenche l'APN (qui n'est plus mis sur le retardateur)

Le déclenchement de l'APN doit donc être à la suite du décompte alors qu'actuellement il est simultanné (retardateur 2 secondes)

Je me répète un peu parce que je trouve mon montage assez tordu... :smiley-twist:


Je vous joint le code actuel et le schéma de montage.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
int sega=2; // le segmeent A est connecter au pin 2 de l'arduino
int segb=3; // le segment B est connecter au pin 3 de l'arduino
int segc=4; // le segment C est connecter au pin 4 de l'arduino 
int segd=6; // le segment D est connecter au pin 6 de l'arduino
int sege=9; // le segment E est connecter au pin 9 de l'arduino
int segf=11; // le segment F est connecter au pin 11 de l'arduino
int segg=13; // le segment G est connecter au pin 13 de l'arduino
int tempo = 1000; // tempo est le temps qui va se passer entre chaque nombre donc la cest une 1 seconde d'attente entre chaque nombre car 1000 ms = 1 second
 
 
 
void setup() // je déclare mes sortie de mon arduino 
{
pinMode (sega,OUTPUT);
pinMode (segb,OUTPUT);
pinMode (segc,OUTPUT);
pinMode (segd,OUTPUT);
pinMode (sege,OUTPUT);
pinMode (segf,OUTPUT);
pinMode (segg,OUTPUT);
}
 
void loop()
 
{
 
 
// afficher 2
digitalWrite (sega,LOW);
digitalWrite (segg,LOW);
digitalWrite (sege,LOW);
digitalWrite (segd,LOW);
digitalWrite (segb,LOW);
digitalWrite (segc,HIGH);
digitalWrite (segf,HIGH);
 
// laisser 1 seonde d'attente
delay (tempo);
// afficher 1
digitalWrite (sega,HIGH);
digitalWrite (segg,HIGH);
digitalWrite (segd,HIGH);
digitalWrite (sege,HIGH); 
digitalWrite (segf,HIGH); 
digitalWrite (segb,LOW);
digitalWrite (segc,LOW);
 
 
// laisser 1 seconde d'attente 
delay (tempo);
 
// afficher le 0
digitalWrite (sega,LOW);
digitalWrite (segb,LOW);
 
 
 
 
digitalWrite (segc,LOW);
digitalWrite (segd,LOW);
digitalWrite (sege,LOW);
digitalWrite (segf,LOW);
digitalWrite (segg,HIGH);
 
 while(5) ; 
 
}

Le bouton noir sur le schéma représente l'appareil photo.




Pourriez vous m'aider à corriger mon taff ?

D'avance, je vous remercie