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 :

Faire une variation de 20g a 10000 g


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 2
    Par défaut Faire une variation de 20g a 10000 g
    Bonjour ,
    Je suis en terminal sti et j'ai un projet qui porte sur une station météo , à rendre Lundi 7 Mai a 18h00.
    Dans ce projet , je m'occupe de la pluie .. j'ai choisi au lieu d'un pluviomètre un capteur de force qui va pouvoir calculer la hauteur d'eau dans une cuve ou un sceau en plastique .
    Mon capteur de force est le FSR402S , il peut détecter a partir de 20 g a 10 000 g .
    J'aimerai que dans mon programme qu'on puisse afficher les chiffres a partir de 20 g jusqu'a 10 000 g merci
    Bien sur mon programme ne fonctionne pas , merci !
    Voici mon programme :

    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
    LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
    int sensor_force = A0;
    int poids = 0;
     
    void setup() {
    	lcd.begin(16, 2);
    	Serial.begin(9600);
    	pinMode(A0, INPUT);
    }
     
    void loop() {
     
    	for (poids = 20; poids < 10000; poids++) {
    		poids = analogRead(A0);
    		while (poids <= 20)
    			;
    		poids = analogRead(A0);
    		lcd.setCursor(7, 0);
    		lcd.print(poids);
    		lcd.setCursor(11, 1);
    		lcd.print("kg/g");
    		delay(100);
    		lcd.clear();
    	}
    }

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 493
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    La plage du capteur est "20 g à 2 kg" donc le double de ce que tu annonces. Bémol d'ailleurs quand tu écris 10 000 g, j'ai pensé à des g et non à des g

    J'ai édité ton message pour indenté correctement ton code. C'est une indentation automatique avec mon IDE. Regarde de nouveau ton code. Notamment le while(). Tu verras un gros problème !

    Ceci mis à part, à quoi sert ce while à l'intérieur de ce for ? D'ailleurs, à quoi sert ce for ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2018
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2018
    Messages : 2
    Par défaut Arduino , faire une variation de 20 g a 2 kg
    Merci d'avoir répondu , à mon appel .
    Je ne suis pas très fort en programmation , mais j'ai bien vu qu'il y avait un problème dans ce programme que j'ai écris .
    J'ai utilisé le for pour faire une incrémentation qui sera détectable à partir de 20 g et faire une limite jusqu'a 2kg .
    Et j'ai mi le while en pensant que cela tournerai en boucle tant que les 2kg ne seront pas atteint , alors qu'il y avait déjà mon incrémentation ..
    Je ne sais pas comment corriger tous sa , savoir ce qui est bon , par quoi faut remplacer les choses incorrectes .

  4. #4
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 493
    Billets dans le blog
    1
    Par défaut
    Si tu devais décrire en pseudo-code le fonctionnement attendu, qu'est-ce que ça donnerait ?

    Tu dois réussir à écrire quelque chose comme :
    valeur_lue = 0
    Tant que (valeur_lue not in [20; 20k]):
        valeur_lue = lire_valeur()
    
    afficher(valeur_lue)
    Une fois que tu as cet algorithme, ce sera le moment de le traduire en code Arduino.

Discussions similaires

  1. Réponses: 1
    Dernier message: 25/07/2013, 14h09
  2. [XSLT] Faire une boucle sur une variable [i]
    Par PoT_de_NuTeLLa dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 07/06/2010, 12h45
  3. comment faire une pause précise (1/10000 s)
    Par Batoche dans le forum C++
    Réponses: 12
    Dernier message: 13/05/2007, 19h33
  4. Faire une liste de device??
    Par jackjack dans le forum DirectX
    Réponses: 1
    Dernier message: 23/05/2003, 14h43
  5. [XSL]faire une balise dans une balise??? (ComboBox)
    Par rastoix dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/05/2003, 08h34

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