Arduino Problème Programme
Répondre à la discussion
Page 1 sur 3 12 DernièreDernière
Affichage des résultats 1 à 30 sur 63

Arduino Problème Programme



  1. #1
    invite995929e1

    Arduino Problème Programme


    ------

    Bonjour à tous
    Je suis un éleve de terminale, débutant pour la programmation et arduino.
    En PPE, notre projet est un pont mobile verticale, donc un pont qui se lève lorsqu'un bateau est détecté.
    C'est pourquoi nous allons utiliser deux capteur un en amont et un en aval du pont afin de détecter un bateau et ainsi lever le pont par le biais de la mise en marche du moteur et l'autre pour détecter ce même bateau et ainsi baisser le tablier.
    Pour faire nos test nous utilisons une led.
    Notre objectif est donc de détecter un objet avec un capteur et ainsi d'allumer une led tant que l'autre capteur n'a pas détecter un objet. Bien sur les capteurs sont séparé d'une cinquantaine de centimètre environ.
    Cependant nous avons beaucoup de mal à réaliser ce programme.

    Les capteurs:
    Capteur sharp. : Module capteur de distance infrarouge Sharp GP2Y0A21
    http://www.dfrobot.com/image/data/SE...2y0a21yk0f.pdf

    Voici le code que nous avons réalise, mais qui ne marche pas
    Code:

    Code:
    int LED = 13 ;
    int sensor_0 = 0 ;
    int sensor_1 = 1 ;
    int monte=0 ;
    int descente=1 ;
    
    void setup() 
    {
      pinMode(LED,OUTPUT) ;
      pinMode(sensor_0,OUTPUT) ;
      pinMode(sensor_1,OUTPUT) ;
    }
    
    void loop() 
    {
      monte=analogRead(sensor_0);
      descente=analogRead(sensor_1);
      
      if (monte > 35 )
       do ( digitalWrite(LED,HIGH)) ;
       while (descente < 35 ) ;
       
      else
      ( digitalWrite(LED,LOW) ) ;
      
      if (descente > 35 )
      ( digitalWrite(LED,LOW) ) ;
      
      }

    Remarque: La valeur 35 est bonne, nous avons fait des tests.
    De plus on a regarder les valeurs prise par le capteur à l'aide du logiciel arduino et nous avons remarqué que lorsque le capteur de montée détecte un objet, l'autre capteur ne détecte plus rien, plus de valeurs.
    La fonction do ... while n'est certainement pas la bonne

    Merci de votre aide. Elle nous sera très utile. De plus nous avons les olympiades de si mercredi prochain.
    Merci d'avance

    -----
    Dernière modification par JPL ; 30/03/2015 à 20h35. Motif: Ajout de la balise Code (#) pour garder l'indentation

  2. #2
    jiherve

    Re : Arduino Problème Programme

    Bonjour,
    N'y aurait il pas contradiction en le pinMode (OUTPUT) des senseurs et l'analogRead des mêmes ce qui suppose qu'ils soient en INPUT?
    JR
    l'électronique c'est pas du vaudou!

  3. #3
    Biname

    Re : Arduino Problème Programme

    Hello,

    Voir la syntaxe de if

    Code:
    if (){
    }
    else if (){
    }
    else{
    }
    Manquent les crochets et l'IDE Arduino ne marque pas l'erreur ??

    Revoir do/while aussi

    Biname
    Dernière modification par JPL ; 30/03/2015 à 20h36. Motif: Ajout de la balise Code (#)

  4. #4
    invite995929e1

    Re : Arduino Problème Programme

    Bonjour jiherve
    Merci de votre réponse rapide
    Oui merci j'essayerais.
    Vous pensez que le problème ( que j'ai évoqué dans la remarque concernant le fait que le capteur ne prenne plus de valeur lorsque le premier a détecté un objet) peut venir du fait que nous avons mis OUTPUT à la place de INPUT ?

  5. A voir en vidéo sur Futura
  6. #5
    jiherve

    Re : Arduino Problème Programme

    Re
    c'est même déjà étonnant qu'il ait pu fournir une mesure. Sa sortie et celle du µC sont en conflit au final il y en aura un qui perdra.
    JR
    l'électronique c'est pas du vaudou!

  7. #6
    invite995929e1

    Re : Arduino Problème Programme

    Bonjour Biname
    Merci
    Non l'IDE Arduino ne marque pas d'erreur

  8. #7
    invite995929e1

    Re : Arduino Problème Programme

    Merci jiherve
    D’accord j'essayerai demain puisque le matériel est au lycée
    J'espère que c'est la solution

  9. #8
    invite995929e1

    Re : Arduino Problème Programme

    Bonsoir.
    Si quelqu'un a une autre idée ?
    merci beaucoup

  10. #9
    nornand

    Re : Arduino Problème Programme


  11. #10
    Biname

    Re : Arduino Problème Programme

    Hello,

    Noyau simplifié
    Code:
              if (monte>35 && descente < 35){digitalWrite(LED, HIGH);}
              else {digitalWrite(LED, LOW);}
    commandes pinMode
    Code:
              pinMode(LED,OUTPUT) ;
              pinMode(sensor_0, INPUT) ;
              pinMode(sensor_1, INPUT) ;
    Simulé ici http://123d.circuits.io/circuits/691...0mars2015/edit avec deux potentiomètres pour capteurs

    Biname
    Dernière modification par Biname ; 31/03/2015 à 01h12.

  12. #11
    invite995929e1

    Re : Arduino Problème Programme

    Bonjour Normand.
    Merci de votre réponse.
    Je suis désolé je n'est pas bien compris comment refaire le programme.
    Pouvez vous me proposer le programme auquel vous pensez ( seulement le " void loop" )
    Merci d'avance et merci beaucoup
    Arnaud

  13. #12
    invite995929e1

    Re : Arduino Problème Programme

    Bonjour biname
    Merci de ta réponse
    En fait les deux capteurs sont séparé d'une cinquantaine de centimètres
    Donc si le premier capteur capte il faut qu'il reste allumé jusqu'a que l'autre capte.
    Donc même si le premier ne capte plus il faut tout de même qu'il reste allumé tant que l'autre n'a pas capté.
    Merci beaucoup
    Arnaud

  14. #13
    invite995929e1

    Re : Arduino Problème Programme

    De plus j'ai remplacé OUTPUT par INPUT, mais il n'y a eu aucun changement
    Merci de vos réponse
    Arnaud

  15. #14
    jiherve

    Re : Arduino Problème Programme

    Bonjour
    Biname t'a aussi fourni une modif de code qui tient compte de la remarque de Nornand, j'avoue mêtre arrêté à la première incongruité.
    en clair vous ne relisez pas la valeur de "descente" dans le do ... while au moyen d'un analogRead, la variable n’étant pas rafraichie la boucle ne peut pas fonctionner correctement.
    JR
    l'électronique c'est pas du vaudou!

  16. #15
    invite995929e1

    Re : Arduino Problème Programme

    Merci jiherve
    Mais je ne sais pas comment faire rafraichir la variable dans la boucle
    Je suis vraiment un débutant dsl
    Arnaud

  17. #16
    jiherve

    Re : Arduino Problème Programme

    Re
    ben tu regardes la deuxième slide de Nornand, c'est indiqué.
    JR
    l'électronique c'est pas du vaudou!

  18. #17
    invite995929e1

    Re : Arduino Problème Programme

    Oui c'est ce que j'ai fait
    Mais l'IDE d'arduino m'affiche une erreur.
    Je ne comprend pas trop les flèches
    Pouvez vous m'indiquer le programme que vous feriez ( seulement le void loop)
    Merci beaucoup et merci d'avance
    Votre aide nous ait vraiment très précieuses
    Arnaud

  19. #18
    invite995929e1

    Re : Arduino Problème Programme

    Pensez vous que le code suivant peut fonctionner:
    Code:

    Code:
    int sensor_0=0;
    int sensor_1=1;
    int LED=13;
    int monte=0;
    int descente=1;
    
    void setup ()
    {
      pinMode(sensor_0,INPUT);
      pinMode(sensor_1,INPUT);
      pinMode(LED,OUTPUT);
    }
    
    void loop()
    {
      monte=analogRead(sensor_0);
      descente=analogRead(sensor_1);
     
    if (monte > 35)
    {
     do (digitalWrite(LED,HIGH));
     while (descente < 35); 
     descente=analogRead(sensor_1);
    }
       
    else if (descente > 35)
      digitalWrite(LED,LOW);
     
    }
    Arnaud
    Dernière modification par gienas ; 31/03/2015 à 22h28. Motif: Ajouté les balises code obligatoires pour les programmes

  20. #19
    invite1d577638

    Re : Arduino Problème Programme

    Teste, tu verras bien... S'il y a des erreurs, la moindre des choses est de les poster afin que l'on puisse t'aider...

  21. #20
    jiherve

    Re : Arduino Problème Programme

    re
    Code:
    if (monte > 35)
    {
    do 
    {
    digitalWrite(LED,HIGH);
    descente=analogRead(sensor_1);
    }
    while (descente < 35);
    
    }
    JR
    l'électronique c'est pas du vaudou!

  22. #21
    invite995929e1

    Re : Arduino Problème Programme

    Merci jiherve
    J'ai testé mais ça ne marche pas.
    Lorsqu’on passe un objet devant le premier capteur la led s'allume mais ne reste pas allumé lorsqu'on enleve l'objet. Alors que nous voulons que la led reste allumé jusqu'à que l'autre capteur détecte l'objet.
    Je pense que lorsque le premier capteur détecte un objet ce dernier ne retient pas la valeur.
    Merci de vos réponse
    Arnaud

  23. #22
    invite995929e1

    Re : Arduino Problème Programme

    Bonjour
    Si quelqu'un a une soulution elle nous serais vraiment utile.
    Merci

  24. #23
    invite995929e1

    Re : Arduino Problème Programme

    J'ai testé ce programme il ne marche pas
    Je ne trouve vraiment pas de solution
    Merci de m'aider

  25. #24
    invite1d577638

    Re : Arduino Problème Programme

    J'ai lu en diagonale le fil, mais je ne comprends pas le fonctionnement exact du programme. Tu pourrais décrire plus précisément les étapes de l'algorithme en français ? Là, avec toutes les boucles, c'est dur à comprendre...

  26. #25
    invite995929e1

    Re : Arduino Problème Programme

    Merci de ta réponse

    Si le premier capteur détecte un objet ( valeur envoyé a l'arduino par le capteur >35) alors il faut que la led reste allumé tant que le deuxieme capteur ne capte rien ( donc tant que la valeur est < 35 ).
    Si le premier capteur a détecter un objet il faut que la led reste allumé, même si il ne capte plus, jusqu’à que le deuxieme capteur capte un objet.
    Dans notre code, le premier capteur capte mais la led ne reste pas allumé.
    Je pense que c'est à cause de la boucle if. En effet si il n'y a plus la condition if qui est remplie la boucle ne s'effectue pas. Mais je ne sais pas par quoi le remplacer. ( ce n'est qu'une hypothese le problème ne vient pas forcément de là )

    Merci beaucoup de votre aide
    Arnaud

  27. #26
    invite1d577638

    Re : Arduino Problème Programme

    Dessine un logigramme...

  28. #27
    jiherve

    Re : Arduino Problème Programme

    re
    essayes ça:
    Code:
    int sensor_0=0;
    int sensor_1=1;
    int LED=13;
    int monte=0;
    int descente=1;
    int ff = 0;
    
    void setup ()
    {
    pinMode(sensor_0,INPUT);
    pinMode(sensor_1,INPUT);
    pinMode(LED,OUTPUT);
    }
    
    void loop()
    {
    monte=analogRead(sensor_0);
    descente=analogRead(sensor_1);
    
    if (monte > 35)
    {
     ff = 1
    }
    else if (descente >35)
    {
     ff = 0
    }
    
    if (ff = 1) 
    {
      digitalWrite(LED,HIGH)
    }
    else
    {
      digitalWrite(LED,LOW)
    }
    }
    JR
    l'électronique c'est pas du vaudou!

  29. #28
    invite995929e1

    Re : Arduino Problème Programme

    Merci jiherve
    Le programme ne marche malheureusement pas.
    La led reste allumé tout le temps sans qu'aucun capteur ne capte
    Arnaud

  30. #29
    invite57b37f86

    Re : Arduino Problème Programme

    Est ce que tu ess sur de la valeur 35 par ce que la fonction analogRead retourne un nombre entre 0 et 1023

  31. #30
    invite57b37f86

    Re : Arduino Problème Programme

    Déjà je n'arrive pas à comprendre ton raisonnement essaie de mettre 3 Leds pour mieux comprendre le fonctionnement du pont :
    *Led 1 si le pont est fermé
    *Led 2 si le pont est ouvert
    *Led 3 si le pont se déplace
    essaie de développer un peu l'idée

Page 1 sur 3 12 DernièreDernière

Discussions similaires

  1. [Arduino] Programme pour accélérometre
    Par invitedd0e0c88 dans le forum Électronique
    Réponses: 12
    Dernier message: 03/05/2015, 23h21
  2. vérification programme arduino
    Par invitec69fc300 dans le forum Électronique
    Réponses: 7
    Dernier message: 05/01/2015, 21h41
  3. programme arduino
    Par invitec078c399 dans le forum Électronique
    Réponses: 26
    Dernier message: 24/07/2014, 12h33
  4. programme de language arduino
    Par invite14858a05 dans le forum Électronique
    Réponses: 4
    Dernier message: 25/02/2014, 08h29
  5. Programme sur Arduino
    Par invite364f7719 dans le forum Programmation et langages, Algorithmique
    Réponses: 5
    Dernier message: 22/02/2013, 23h36
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...