Arduino, Tutoriels

Comment utiliser Capteur d’humidité de sol avec Arduino

Capteur Capacitif D'Humidité De Sol V1.2 Avec Arduino

Les types des capteurs d’humidité de sol

Il existe plusieurs types de capteurs d’humidité de sol, notamment :

  1. Capteur d’humidité de sol résistif : ce type de capteur mesure la résistance électrique dans le sol. Lorsque le sol est sec, la résistance est élevée, et lorsque le sol est humide, la résistance est faible.
  2. Capteur d’humidité de sol capacitif : ce type de capteur mesure la capacité électrique entre deux électrodes immergées dans le sol. La capacité varie en fonction de la quantité d’eau dans le sol. Plus le sol est humide, plus la capacité est élevée.

Description du Capteur d’humidité de sol capacitif V1.2

Capteur capacitif d’humidité de sol V1.2 est un dispositif utilisé pour mesurer le taux d’humidité du sol. Il utilise la technologie de la capacité pour détecter les variations de conductivité électrique dans le sol, qui sont directement liées à l’humidité. Le V1.2 indique qu’il s’agit d’une version mise à jour du capteur, qui peut inclure des améliorations de performance ou des fonctionnalités supplémentaires par rapport à la version précédente. Il peut être utilisé dans diverses applications, notamment l’agriculture, la gestion de jardins, la surveillance de l’environnement et les systèmes de contrôle de l’irrigation.

capteur d’humidité de sol capacitif V1.2 Arduino fonctionnement

Le capteur capacitif d’humidité de sol V1.2 utilise une technique de mesure de la capacité pour détecter l’humidité dans le sol. Il comprend généralement une électrode conductrice, comme une plaque métallique, qui est enfoncée dans le sol, ainsi qu’un circuit électronique qui mesure la capacité électrique entre l’électrode et le sol. Plus l’humidité dans le sol est élevée, plus la capacité électrique sera grande. Le circuit électronique convertit ensuite cette mesure en une valeur numérique qui peut être utilisée pour déterminer le taux d’humidité dans le sol.

Les broches du Capteur d’humidité de sol capacitif V1.2

Nom de brocheFonction de broche
A ou AOUT ou OUTSortie analogique (l’équivalent de l’humidité du sol)
+ ou V+ VCC ou 5VTension d’alimentation positive (la plupart des capteurs sont compatibles de 3,3 V à 5 V)
GND ou – ou V-Connexion de masse
Capteur Capacitif D'Humidité De Sol V1.2

Matériel nécessaire

Branchement du Capteur d’humidité de sol capacitif V1.2 avec Arduino Uno

Capteur capacitif d’humidité de sol V1.2Arduino Uno
Broche VCCBroche 3.3V
Broche GNDBroche GND
Broche DOUTBroche A0
Capteur Capacitif D'Humidité De Sol V1.2 Avec Arduino
Capteur capacitif d’humidité de sol V1.2 avec Arduino

Code

Exemple 1

int sensorPin = A0;
int sensorValue = 0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  sensorValue = analogRead(sensorPin);
  Serial.println(sensorValue);
  delay(1000);
}

Note :

  • Vous devez ouvrir le moniteur série de l’Arduino pour voir les valeurs de l’humidité du sol en temps réel.
  • Notez que c’est un exemple de base pour utiliser ce capteur, il y a plusieurs façon de l’utiliser et de l’adapter à vos besoins.

Explication du code

  • La ligne “int sensorPin = A0;” déclare une variable pour stocker la broche du capteur connecté à l’Arduino.
  • La ligne “int sensorValue = 0;” déclare une variable pour stocker la valeur de l’humidité du sol lue par le capteur.
  • La fonction “setup()” configure la communication série entre l’Arduino uno et l’ordinateur.
  • La fonction “loop()” lit la valeur de l’humidité du sol sur la broche A0 et l’affiche sur le moniteur série.
  • La fonction “delay(1000)” permet de prendre une mesure toutes les secondes.

Exemple 2

const int dry = 595; // value for dry sensor
const int wet = 239; // value for wet sensor
void setup()
 { 
 Serial.begin(9600);
}
 void loop()
{
int sensorVal = analogRead(A0);

int percentageHumididy = map(sensorVal, wet, dry, 100, 0); 
Serial.print(percentageHumididy);
Serial.println("%");

delay(100);
 }

Ce code utilise la fonction analogRead() intégrée pour lire la valeur d’un capteur d’humidité connecté à la broche A0 de l’Arduino. Les constantes “dry” et “wet” définissent les valeurs de capteur correspondant à un capteur sec et humide respectivement.

La fonction setup() initialise la communication série à 9600 bauds.

La fonction loop() lit la valeur du capteur d’humidité, utilise la fonction map() pour convertir cette valeur en pourcentage d’humidité, imprime ce pourcentage d’humidité sur la console série, puis attend 100 millisecondes avant de répéter le processes .

Video explicatif du tutoriel Capteur d’humidité de sol capacitif V1.2 avec Arduino

Description du capteur d’humidité de sol résistif

Un capteur résistif d’humidité de sol est un dispositif utilisé pour mesurer le taux d’humidité dans le sol. Il est composé d’une électrode métallique qui est enfoncée dans le sol et d’une résistance qui change en fonction de la teneur en eau dans le sol. Le signal électrique est envoyé à un dispositif de lecture qui mesure la résistance et la convertit en une mesure de l’humidité du sol. Les capteurs résistifs d’humidité de sol sont utilisés pour une variété d’applications, telles que la surveillance de l’irrigation des cultures et l’optimisation de l’utilisation de l’eau dans les systèmes de culture hydroponique.

Ce capteur possède deux broches :

  1. La broche de masse ou de référence qui est connectée à la terre ou à un niveau de référence de potentiel.
  2. La broche de signal qui envoie un signal électrique à un dispositif de lecture pour la mesure de la résistance.
Capteur D'Humidité De Sol
capteur résistif d’humidité de sol

Utilisation du capteur d’humidité de sol résistif avec Arduino et un potentiomètre

Matériel nécessaire

Branchement

Capteur Résistif D'Humidité De Sol Avec Arduino
  • Connectez la première broche du capteur d’humidité de sol à la broche A0 de l’Arduino
  • Connectez la deuxième broche du capteur d’humidité de sol à la broche GND de l’Arduino
  • Connectez le potentiomètre à la broche 5V et GND de l’Arduino, la patte centrale est connectée à la broche A1 de l’Arduino.

Exemple de code

int soilPin = A0;
int potentiometer = A1;
int soilMoisture;
int potentiometerReading;

void setup() {
  Serial.begin(9600);
}

void loop() {
  soilMoisture = analogRead(soilPin);
  potentiometerReading = analogRead(potentiometer);
  
  Serial.print("Humidité du sol: ");
  Serial.print(soilMoisture);
  Serial.print(" Potentiomètre: ");
  Serial.println(potentiometerReading);
  
  delay(1000);
}

Fonctionnement du code

  1. Déclaration des variables : Les variables soilPin et potentiometer sont définies pour stocker les broches analogiques de l’Arduino à laquelle le capteur d’humidité de sol et le potentiomètre sont connectés. Les variables soilMoisture et potentiometerReading sont définies pour stocker les valeurs analogiques mesurées par le capteur et le potentiomètre.
  2. La fonction setup() : La fonction setup() configure la communication série à 9600 bauds pour permettre la transmission de données entre l’Arduino et l’ordinateur.
  3. La fonction loop() : La fonction loop() est exécutée en boucle et effectue les tâches suivantes : a. Mesure de l’humidité du sol : La fonction analogRead() est utilisée pour mesurer la valeur analogique à la broche soilPin, qui est stockée dans la variable soilMoisture. b. Mesure de la valeur analogique du potentiomètre : La fonction analogRead() est également utilisée pour mesurer la valeur analogique à la broche potentiometer, qui est stockée dans la variable potentiometerReading. c. Affichage des valeurs mesurées : Les valeurs mesurées sont affichées sur la console série via la fonction Serial.print() et Serial.println(). d. Pause de 1 seconde : La fonction delay(1000) est utilisée pour créer une pause de 1 seconde entre chaque lecture pour permettre une lecture plus claire des valeurs mesurées.

Video explicatif du tutoriel Capteur d’humidité de sol résistif V1.2 avec Arduino

Quelque ressources pour en savoir plus

Video explicatif du tutoriel Capteur d’humidité de sol résistif V1.2 avec Arduino : https://www.youtube.com/watch?v=zI_zyRxmeto

La fiche technique du capteur : https://www.sigmaelectronica.net/wp-content/uploads/2018/04/sen0193-humedad-de-suelos.pdf

Pour savoir plus sur un afficheur LCD si vous souhaitez de l’utiliser pour afficher les valeurs de l’humidité : https://www.moussasoft.com/afficheur-lcd-arduino