Table des matières:

Capteur Arduino DHT22 et projet d'humidité du sol avec menu : 4 étapes
Capteur Arduino DHT22 et projet d'humidité du sol avec menu : 4 étapes

Vidéo: Capteur Arduino DHT22 et projet d'humidité du sol avec menu : 4 étapes

Vidéo: Capteur Arduino DHT22 et projet d'humidité du sol avec menu : 4 étapes
Vidéo: Tutoriel : Capteur d'humidité du sol arduino 2024, Juillet
Anonim
Capteur Arduino DHT22 et projet d'humidité du sol avec menu
Capteur Arduino DHT22 et projet d'humidité du sol avec menu

Bonjour les gars Aujourd'hui, je vous présente mon deuxième projet sur instructables. Ce projet présente le mélange de mon premier projet dans lequel j'ai utilisé le capteur d'humidité du sol et le capteur DHT22 qui est utilisé pour mesurer la température et l'humidité. Ce projet est facile à réaliser et les personnes qui utilisent Arduino le trouveront plutôt intéressant à réaliser. La différence entre ce projet et le premier est que dans ce projet, l'utilisateur aura un menu dans lequel il pourra choisir ce qu'il veut voir pour le moment. Il y aura quatre options. Alors prenez votre kit et commencez à faire ce projet qui peut être utilisé dans n'importe quelle maison.

Étape 1: Obtention de toutes les pièces

Obtention de toutes les pièces
Obtention de toutes les pièces
Obtention de toutes les pièces
Obtention de toutes les pièces
Obtention de toutes les pièces
Obtention de toutes les pièces

Ce projet utilise peu de partie. Ces pièces sont très bon marché à obtenir, alors ne vous inquiétez pas du prix. Certaines des pièces utilisées dans ce projet peuvent être modifiées afin que le projet puisse être moins cher à fabriquer. C'est sur vous quelles parties de recommandé allez-vous utiliser et rendre ce projet encore meilleur. Pièces utilisées dans ce projet:

  1. Arduino uno rev3 (Vous pouvez également utiliser d'autres Arduino)
  2. Planche à pain
  3. Écran LCD 1602 vert avec I2C (vous pouvez également utiliser un écran sans I2C mais vous aurez besoin de plus de broches pour le connecter)
  4. Clavier à 16 boutons (Modifiable)
  5. FC-28-d Module de détection d'hygromètre de sol + capteur d'humidité du sol
  6. Capteur de température et d'humidité DHT22 (vous pouvez utiliser DHT11 qui est moins cher à obtenir)
  7. Diode LED rouge
  8. Diode LED bleue
  9. 2 résistances 220 ohm (utilisées pour les diodes)
  10. Résistance 4k7 utilisée pour DHT22 sur le schéma
  11. Connecteur de batterie Arduino
  12. Peu de câbles de démarrage pour connecter toutes les pièces

Une chose que je dois vous dire avant de commencer à construire ce projet est que le clavier n'est pas nécessaire. J'ai utilisé le clavier cette fois parce que mon encodeur rotatif était cassé. Je pense que ce projet serait parfait s'il avait un encodeur rotatif car il utiliserait moins de broches, ou il pourrait utiliser 3 boutons.

Étape 2: Connecter toutes les pièces ensemble

Connecter toutes les pièces ensemble
Connecter toutes les pièces ensemble

Dans cette étape, vous pouvez voir le schéma que j'ai fait avec fritzing. Je vais écrire à chaud pour connecter chaque partie clé de ce projet.

Comme vous pouvez le voir, nous utilisons 5V et GND d'arduino pour alimenter la maquette.

ACL:

  • VCC à 5v (+ partie sur maquette)
  • GND à gnd (- partie sur la maquette)
  • SDA vers broche analogique A4
  • SCL vers broche analogique A5

Clavier à 16 boutons:

Nous utilisons les broches 9, 8, 7, 6, 5, 4, 3, 2 pour connecter le clavier (c'est la raison pour laquelle j'utiliserais un encodeur rotatif, car il ne prendrait que 3 broches sur la carte)

Capteur d'humidité du sol:

  • VCC à 5v (+ partie sur maquette)
  • GND à gnd (-partie sur la maquette)
  • D0 à la broche numérique 0
  • A0 à la broche analogique A0

DHT22:

  • VCC à 5v (+ partie sur maquette)
  • GND à gnd (-partie sur la maquette)
  • La broche de sortie est connectée à la broche 12

Connexion de diodes:

  • une partie de la diode entre dans - une partie de la maquette
  • la deuxième partie traverse une résistance de 220 ohms et est ensuite connectée à la broche 10 (diode bleue) ou 11 (diode rouge)

Étape 3: écriture du code

Je vais essayer d'expliquer le code en quelques parties. Il y aura également un code complet écrit afin que vous puissiez le copier et le modifier si vous en ressentez le besoin. De plus, dans ce code, quelques méthodes sont écrites pour le travail des capteurs, mais cette fois, l'objectif principal était de créer un menu qui sera facile à comprendre pour les personnes qui débutent avec Arduino. Cette fois, je n'utilise aucune interruption, mais dans mes prochains projets, je le ferai, alors gardez à l'esprit que ce code peut être bien meilleur avec les interruptions.

  1. La première partie du code inclut toutes les bibliothèques utilisées pour ce projet. Gardez à l'esprit que pour toutes les pièces que j'ai dites que j'utilise, vous avez besoin des bibliothèques suivantes: Wire, LiquidCrystal_I2C, Keypad et DHT. Toutes les bibliothèques peuvent être trouvées sur Arduino IDE si vous accédez à la partie esquisse, puis dans les bibliothèques d'inclusion. Gardez également à l'esprit que si vous utilisez quelque chose comme un encodeur rotatif, vous aurez probablement besoin d'obtenir de nouvelles bibliothèques au lieu du clavier, qui serait probablement Rotary.h et button. Si vous utilisez le capteur DHT11, la bibliothèque est toujours DHT.
  2. Dans la deuxième partie du code, il y aura une définition de toutes les parties utilisées. Tout d'abord est LCD. Après cela, il y a un capteur DHT qui est représenté comme un objet avec un type de capteur dht, ainsi qu'une broche qui est connectée. Le capteur d'humidité du sol et les diodes sont le troisième.
  3. Je vais décrire un peu plus le clavier. Comme je l'ai dit, mon encodeur rotatif était cassé, j'ai donc décidé de l'utiliser. Pour ce projet, il suffit d'avoir seulement quatre boutons, même trois c'est bon pour ça. J'utilise donc quatre boutons sur le clavier pour une seule option. Vous pouvez utiliser certains des boutons si vous voulez pour autre chose si vous avez une idée. Vous devez définir des lignes et des colonnes dans cette partie. Après cela, hexaKeys vous représentera les options utilisées pour ce projet. Dans mon projet, il y a B (retour), U(haut), D(bas) et A(accepte). Vous pouvez faire en sorte que chaque bouton fasse autre chose. Un bouton pourrait allumer le rétro-éclairage, on peut l'éteindre. Alors n'hésitez pas à jouer un peu plus avec
  4. Dans cette partie se trouvent les variables globales utilisées dans le code. Les variables booléennes sont utilisées pour le changement d'écran. La variable de bienvenue est vraie pendant quelques secondes seulement lorsque l'arduino i est allumé, après quoi elle sera fausse pour le reste du temps. L'accent est mis sur la variable mainScreen. Cette variable est utilisée pour vous guider du menu vers n'importe quelle autre option dans le code. Si cette variable est fausse, cela signifie que l'utilisateur a décidé d'utiliser l'une des quatre options de ce projet.
  5. C'est ici que sont écrites toutes les méthodes utilisées dans ce code. Je vais essayer d'expliquer toutes les méthodes écrites dans cette partie
  • void startScreen(); // méthode de démarrage du projet et de l'arduino
  • int choixNumber(int choix); // cela change votre choix d'options du projet. Le nombre va de 1 à 4
  • void mainScreenP(int choix); // il sera écrit quatre options de périphérique qui est fait
  • bool mainScreenCS(bool mainScreen); //cela change mainScreen en false
  • bool mainScreenBack(bool mainScreen); //cela change mainScreen en true
  • void tempCelsius(); // lecture de la température dans l'option capteur C DHT
  • void tempFarenheit(); // lecture de la température dans l'option sonde F DHT
  • void printHumidity(); // option capteur d'humidité lecture DHT
  • void readSensorData(); // lecture des données sur les capteurs connectés
  • Chaîne getTemperatureC();
  • Chaîne getTemperatureF();
  • Chaîne getHumidity();
  • void groundMoisture(); // c'est pour un autre capteur et des diodes
  • void printSensorSoilMoisture(); // impression de la partie humidité du sol sur lcd
  • void diodeLights(int value); // allumer et éteindre les diodes
  • void printValue(int value);

6. La configuration pour arduino fait partie de la configuration des capteurs LCD et DHT, ainsi que des diodes.

7. La partie principale est la partie où toutes les méthodes écrites ci-dessus sont utilisées.

Le code complet de ce projet sera en pièce jointe de cette étape. Gardez à l'esprit qu'il est possible que les broches ne soient peut-être pas connectées comme sur le schéma, je pense que les diodes sont changées.

Étape 4: Utilisation de votre Arduino

Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino
Utilisation de votre Arduino

C'est probablement la partie la plus drôle. Au moins, c'est plus drôle après tout le codage écrit. Dans cette partie, vous pouvez voir des images du fonctionnement du projet. Il y a 4 options.

  1. Lecture de la température en Celsius
  2. Lecture de la température en Fahrenheit
  3. Lecture de l'humidité
  4. Allumage des diodes et lecture des valeurs du capteur d'humidité du sol.

Vous pouvez choisir l'une des options possibles, vous pouvez également revenir en arrière et choisir à nouveau si vous voulez voir autre chose. Simple et facile à utiliser.

S'il y a une autre question que vous pouvez me poser. Merci les gars d'avoir regardé mon projet. Avec toutes mes salutations. Sébastien

Conseillé: