IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Lancer une action après un décompte


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut Lancer une action après un décompte
    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

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonjour,

    Citation Envoyé par Nathanael_ Voir le message
    Actuellement, lorsqu'on appuie sur le bouton, ça coupe l'alimentation de l'Arduino.
    tu as branché le bouton sur l'alimentation ?

    L'Arduino possède 14 entrées/sorties numériques, tu peux brancher ton bouton sur une entrées, ton afficheur (même si ce n'est pas optimal) utilisera 9 sorties et une sortie pour déclencher l'appareil.
    Par contre, le problème c'est la liaison entre Arduino et l'appareil photo. Ton appareil a une entrée TTL ? Comment ça se présente ?

  3. #3
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 205
    Billets dans le blog
    48
    Par défaut
    Bonjour,

    Le bouton est relié au 5v et au Gnd ? Un appui sur le bouton, et hop, court-circuit ??

  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    C'est très probablement complètement illogique comme branchement mais ça me donnait un résultat qui marchait... ça aurait dû être provisoire mais c'est resté comme ça

    L'appareil photo (Canon EOS 50D/5D/6D) a une prise propriétaire 3 pins pour une télécommande. J'ai dénudé la télécommande pour la relier sur le bouton (qui comporte une LED) et le bouton (3 pattes) lui même relié à l'Arduino dont voici les branchements :
    GND, GND, 3.5V et 5V



    Oui, il y a bien une connection entre le negatif et le micro-switch (interrupteur)

    (le 3eme pin de la telco sert pour la mise au point, ici l'appareil est réglé sur mise au point manuelle donc inutile de faire un branchement)

  5. #5
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    Citation Envoyé par Nathanael_ Voir le message
    C'est très probablement complètement illogique comme branchement mais ça me donnait un résultat qui marchait... ça aurait dû être provisoire mais c'est resté comme ça
    avant d'aller plus loin, il faut que tu renonces à cette méthode. Débranche tout ça !

  6. #6
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    Sur le bouton, il devrait y avoir du coup 2 branchements ?
    - alimentation LED
    - le "poussoir" qui sert de contacteur quand on l'enfonce ?

    Tout ça relié à l'Arduino ?

    Et concernant la télécomande, elle est liée directement à l'Arduino également je suppose du coup ?

    Puisqu'à terme :
    le bouton déclenche le décompte sur l'Arduino (qui l'affiche sur le 7 segments) et à son terme déclenche l'appareil photo

    Sur la théorie, on est mieux là ?

  7. #7
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 205
    Billets dans le blog
    48
    Par défaut
    Citation Envoyé par Nathanael_ Voir le message
    [...] dont voici les branchements :
    GND, GND, 3.5V et 5V
    A vrai dire, je n'ai rien compris à ton câblage Et l'image ne m'aide pas davantage (LED positive sur GND ???)

    Sur le bouton, il y a deux connecteurs pour la LED et trois connecteurs pour le microswitch (Commun, NO, NF), c'est ça ?

  8. #8
    Futur Membre du Club
    Inscrit en
    Avril 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 5
    Par défaut
    Oui pour le cablage

    Pour le switch, oui aussi : COM, NO et NC (=NF ?)

Discussions similaires

  1. Lancer une action depuis une autre action
    Par anaon dans le forum Struts 1
    Réponses: 6
    Dernier message: 04/08/2006, 19h38
  2. Marquer une pause avant de lancer une action
    Par PrinceMaster77 dans le forum ASP
    Réponses: 1
    Dernier message: 12/07/2006, 11h50
  3. Lancer une action JS depuis un bouton de formulaire
    Par davinout dans le forum Langage
    Réponses: 3
    Dernier message: 14/06/2006, 08h50
  4. Envoi d'une action après click dans un select
    Par sutailga dans le forum Struts 1
    Réponses: 2
    Dernier message: 08/06/2006, 20h29
  5. Réponses: 4
    Dernier message: 10/03/2006, 17h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo