Arduino: Utiliser un capteur de pluie

Un capteur de pluie est constituée d'une plaque avec deux pistes de circuit imprimés, et d'un circuit qui gére la comparaison des tensions de cette plaque. Voyons comment utiliser ce genre de matériel avec notre arduino.

rainsensor

La plaque du detecteur est la partie qui doit être exposée à la pluie. Lorsque l'eau tombe sur la plaque du detecteur, les deux pistes entrent en cours jus. Ainsi, plus l'humidité et les goutelettes d'eau seront présentes sur la plaque, plus la resistance entre les bordes de celle-ci tombera.

La carte du comparateur s'occupe déjà d'alimenter la plaque et de filtrer le signal reçu a travers cette résistance. Il dispose d'une broche digitale (0 ou 1) et d'une broche analogique (0 a 1024) qui indique la quantité de conductivité (et donc d'eau reçue) sur la plaque du capteur. Cette carte expose aussi une entrée VCC (3 a 5V) et GND.

Certaines cartes de controle disposent d'un potentiométre pour régler la sensibilité de la sortir digitale. Mais ce qualibrage peut aussi être fait côté arduino avec la sortie analogique.

Utilisation avec arduino

Ce capteur se comporte comme le ferai un simple potentiométre. En fonction de la grandeur que l'on veut mesurer, une resistance dans le capteur deviendra plus ou moins grande, et donc, peut être mesurée via n'importe quel pin analogique de l'arduino.

Pour ce montage il faudra simplement un arduino, quelques fils, et forcément un exemplaire du capteur de pluie.

On cablera la sonde comme suit:

Arduino --> Sonde
5V --> VCC
GND --> GND
DO --> D4
AO --> A0 

Et pourra être exploitée avec le code suivant:

const int capteur_D = 4;
const int capteur_A = A0;

int val_analogique;

void setup()
{
    pinMode(capteur_D, INPUT);
    pinMode(capteur_A, INPUT);
    Serial.begin(9600);
}

void loop()
{
    if(digitalRead(capteur_D) == LOW) 
    {
        Serial.println("Digital value : wet"); 
    } else {
        Serial.println("Digital value : dry");
    }
    val_analogique = analogRead(capteur_A); 
    Serial.print("Analog value : ");
    Serial.println(val_analogique); 
    Serial.println("");
    delay(1000);
}

Ce code affichera sur la sortie série les valeurs digitales et analogiques retournées par le capteur.

A vous de jouer maintenant pour fabriquer votre propre station météo par exemple!

Qu'avez vous pensé de cet article?