Arduino Mega - Capteur d'eau
Ce guide montre comment utiliser un capteur d'eau avec l'Arduino Mega. Un capteur d'eau peut vous indiquer s'il y a une fuite d'eau, mesurer les précipitations, voir si un réservoir déborde, ou vérifier le niveau d'eau. Voici ce que nous allons apprendre :
- Comment connecter un capteur d'eau à Arduino Mega
- Comment programmer Arduino Mega pour lire la valeur du capteur d'eau
- Comment détecter les fuites d'eau, la pluie ou le débordement de réservoir avec Arduino Mega
- Comment mesurer le niveau d'eau avec Arduino Mega
- Comment calibrer le capteur d'eau avec Arduino Mega

Matériel requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Capteurs DIYables (30 capteurs/écrans) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du capteur de niveau d'eau
Brochage du capteur de niveau d'eau
Le capteur de niveau d'eau a trois broches :
- Broche S (Signal) : Elle envoie un signal analogique. Connectez-la à une entrée analogique de votre Arduino Mega.
- Broche + (VCC) : Elle alimente le capteur. Utilisez 3,3V à 5V.
- Broche - (GND) : Connexion à la masse.

※ Note:
La sortie de la broche de signal du capteur change selon la tension que vous appliquez à sa broche VCC.
Comment fonctionne le capteur de niveau d'eau
Quand il y a plus d'eau autour du capteur, la tension sur la broche de signal augmente.
Regardons cela de plus près.
Le capteur a dix fils de cuivre que vous pouvez voir. Il a cinq fils d'alimentation et cinq fils de capteur. Les fils sont placés côte à côte, avec un fil de capteur entre chaque deux fils d'alimentation. Normalement les fils ne se touchent pas, mais si le capteur est mis dans l'eau, l'eau connecte les fils.
Les lignes métalliques sur le circuit imprimé agissent comme une résistance ajustable, comme un potentiomètre, et leur résistance change avec le niveau d'eau.
- La résistance change pour montrer à quelle distance le haut du capteur se trouve de la surface de l'eau.
- La résistance diminue quand le niveau d'eau monte.
- Quand le capteur est plus profondément dans l'eau, il conduit mieux l'électricité, donc la résistance est plus faible.
- Quand le capteur est moins profondément dans l'eau, il conduit moins bien l'électricité, donc la résistance est plus élevée.
- Le capteur donne une tension de sortie qui dépend de la résistance.
Nous pouvons déterminer le niveau d'eau en mesurant la tension.
Schéma de câblage
Alimentez le capteur en connectant son VCC au 5V de l'Arduino Mega et son GND au GND de l'Arduino.
Mais ce n'est pas une bonne idée d'alimenter le capteur tout le temps dans un environnement humide, car il peut se corroder rapidement et raccourcir sa durée de vie. Pour éviter cela, nous recommandons d'alimenter le capteur seulement quand vous avez besoin de lire ses données. Vous pouvez faire cela en connectant la broche VCC du capteur à une broche numérique de l'Arduino Mega. Réglez la broche sur HIGH pour lire le capteur, puis réglez-la sur LOW quand vous avez terminé.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Code Arduino Mega - Lecture de la valeur du capteur d'eau
Étapes rapides
Suivez ces étapes une par une :
- Connectez le capteur d'eau à l'Arduino Mega comme montré dans le schéma.
- Connectez l'Arduino Mega à votre ordinateur avec un câble USB.
- Ouvrez l'IDE Arduino sur votre ordinateur.
- Choisissez la carte Arduino Mega et le bon port COM.
- Copiez le code donné et ouvrez-le dans l'IDE Arduino.
- Cliquez sur le bouton Upload pour envoyer le code à l'Arduino Mega.
- Plongez lentement le capteur dans l'eau (utilisez un verre d'eau).
- Vérifiez le résultat dans le Moniteur Série. Il affiche 0 quand le capteur ne touche rien.
※ Note:
Ne mettez pas le capteur complètement sous l'eau. Seules les parties exposées du circuit imprimé peuvent toucher l'eau. Veuillez l'installer avec précaution.
Comment détecter une fuite d'eau
Pour vérifier s'il y a une fuite d'eau, de la pluie ou si le réservoir déborde, nous comparons simplement la lecture à une limite fixe. Nous définissons cette limite lors de la configuration dans ce guide.
Code Arduino Mega - Détection de fuite d'eau
Comment mesurer le niveau d'eau
Pour diviser le niveau d'eau le plus élevé en plusieurs étapes et vérifier à quelle étape vous êtes, utilisez la méthode montrée dans le code ci-dessous. Rappelez-vous, le niveau d'eau le plus élevé correspond à la hauteur du capteur. Ce code divise la hauteur maximale en 4 étapes.
※ Note:
- La valeur minimale du capteur (SENSOR_MIN) et la valeur maximale du capteur (SENSOR_MAX) sont définies lors de la calibration.
- La méthode de mappage montrée ci-dessus peut ne pas être exacte, mais elle fonctionne bien dans de nombreux cas. Pour être plus précis, mesurez les valeurs de seuil pour chaque niveau comme expliqué dans la section calibration.
Calibration du capteur de niveau d'eau
La façon dont le capteur montre les résultats dépend du niveau d'eau et de la capacité de l'eau à conduire l'électricité. L'eau pure ne conduit pas l'électricité. Mais l'eau avec des minéraux ou d'autres substances conduit l'électricité. Plus l'eau est conductrice, plus le capteur est sensible. De plus, la lecture change quand vous utilisez différentes tensions sur la broche VCC du capteur.
Pour obtenir des lectures précises du capteur d'eau, configurez-le pour le type exact d'eau que vous allez mesurer.
Avant de définir une limite pour une action, obtenez d'abord la vraie lecture du capteur en le testant.
Comment faire le test
- Regardez l'image pour lire la valeur du capteur.
- Mettez le capteur dans l'eau jusqu'au niveau que vous voulez.
- Notez le nombre affiché dans le Moniteur Série.
- Utilisez ce nombre comme limite pour déclencher une action.
Ce test peut nécessiter quelques essais pour bien le faire.
Le test peut aussi nous aider à découvrir :
- La plus petite lecture du capteur quand le capteur est hors de l'eau.
- La plus grande lecture du capteur quand il est complètement dans l'eau.
- Une limite pour détecter les fuites d'eau.
- Les limites pour chaque niveau sur votre échelle.