Table des matières:

Étalonnage du pluviomètre Arduino : 7 étapes
Étalonnage du pluviomètre Arduino : 7 étapes

Vidéo: Étalonnage du pluviomètre Arduino : 7 étapes

Vidéo: Étalonnage du pluviomètre Arduino : 7 étapes
Vidéo: TUTORIEL #9: pH-mètre Arduino -DIY || Arduino IDE. 2024, Novembre
Anonim
Étalonnage du pluviomètre Arduino
Étalonnage du pluviomètre Arduino

Introduction:

Dans ce Instructable, nous «construisons» un pluviomètre avec Arduino et le calibrons pour signaler les précipitations quotidiennes et horaires. Le collecteur de pluie que j'utilise est un pluviomètre réutilisé du type à seau basculant. Il provenait d'une station météo personnelle endommagée. Cependant, il existe de nombreux excellents Instructables sur la façon d'en créer un à partir de zéro.

Ce Instructable fait partie d'une station météo que je fais et est une documentation de mon processus d'apprentissage déguisé en tutoriel:)

Caractéristiques du pluviomètre:

  • les mesures des précipitations quotidiennes et horaires sont en pouces pour un téléchargement facile vers Weather Underground.
  • le code anti-rebond pour le commutateur magnétique n'est pas inclus pour garder le code simple.
  • étant plus un tutoriel, le produit fini est plus un prototype de prototype.

Étape 1: un peu de théorie

Un peu de théorie
Un peu de théorie

Les précipitations sont signalées/mesurées en millimètres ou en pouces qui ont la dimension de la longueur. Cela indique à quelle hauteur chaque partie de la zone de pluie a reçu la pluie, si l'eau de pluie ne s'était pas dissipée et évacuée. Ainsi, une pluviométrie de 1,63 mm signifierait que si j'avais un réservoir plat et nivelé de n'importe quelle forme, l'eau de pluie collectée aurait une hauteur de 1,63 mm à partir du fond du réservoir.

Tous les pluviomètres ont une zone de captage des précipitations et une mesure de la quantité de précipitations. Le bassin versant est la région sur laquelle la pluie est collectée. L'objet de mesure serait une sorte de mesure de volume pour un liquide.

Ainsi, les précipitations en mm ou en pouces seraient

hauteur de pluie = volume de pluie collectée / bassin versant

Dans mon collecteur de pluie, la longueur et la largeur étaient respectivement de 11 cm sur 5 cm, ce qui donne une zone de captage de 55 cm2. Ainsi, une collecte de 9 millilitres de pluie signifierait 9 cc/55 cm² = 0,16363… cm = 1,6363… mm = 0,064 pouces.

Dans le pluviomètre à seau basculant, le seau bascule 4 fois pour 9 ml (ou 0,064… pouces de pluie) et donc un seul embout correspond à (9/4) ml = 2,25 ml (ou 0,0161… pouces). Si nous prenons des lectures horaires (24 lectures par jour avant les réinitialisations), garder une précision de trois chiffres significatifs est assez décent.

Ainsi, à chaque basculement/basculement du godet, le code y accède en 1 séquence on-off-on ou en un clic. Oui, nous avons signalé 0,0161 pouces de pluie. Pour répéter, du point de vue Arduino

un clic = 0,0161 pouces de pluie

Note 1: Je préfère le système international d'unités, mais Weather Underground préfère les unités impériales/américaines et donc cette conversion en pouces.

Note 2: Si les calculs ne sont pas votre tasse de thé, rendez-vous sur Volume of Rainfall qui fournit une aide parfaite pour de telles questions.

Étape 2: Pièces pour ce projet

Pièces pour ce projet
Pièces pour ce projet
Pièces pour ce projet
Pièces pour ce projet
Pièces pour ce projet
Pièces pour ce projet

La plupart des pièces traînaient et une liste juste (pour la formalité) est

  1. Arduino Uno (ou tout autre compatible)
  2. Pluviomètre de l'ancienne station météorologique endommagée.
  3. Planche à pain.
  4. RJ11 pour connecter mon pluviomètre à la maquette.
  5. Résistance de 10K ou plus pour agir comme une résistance de rappel. J'ai utilisé 15K.
  6. 2 morceaux de câbles de raccordement mâle-femelle
  7. 2 fils de liaison mâle-mâle.
  8. Cable USB; A mâle à B mâle

Outils:

Seringue (une capacité de 12 ml a été utilisée)

Étape 3: Le collecteur de pluie

Le collecteur de pluie
Le collecteur de pluie
Le collecteur de pluie
Le collecteur de pluie

Les photos de mon collecteur de pluie devraient clarifier les choses pour beaucoup. Quoi qu'il en soit, la pluie qui tombe sur son bassin versant est canalisée vers l'un des deux bennes basculantes qu'il contient. Les deux seaux basculants sont connectés comme une balançoire et lorsque le poids de l'eau de pluie (0,0161 pouces de pluie pour le mien) fait basculer un seau vers le bas, il se vide et les autres seaux montent et se positionnent pour collecter la prochaine eau de pluie. Le mouvement de basculement déplace un aimant sur un « interrupteur magnétique » et le circuit est connecté électriquement.

Étape 4: Circuit

Circuit
Circuit

Pour faire le circuit

  1. Connectez la broche numérique #2 d'Arduino à une extrémité de la résistance.
  2. Connectez l'autre extrémité de la résistance à la broche de terre (GND).
  3. Connectez une extrémité de la prise RJ11 à la broche numérique #2 d'Arduino.
  4. Connectez l'autre extrémité de la prise RJ11 à la broche +5V d'Arduino (5V).
  5. Branchez le pluviomètre au RJ11.

Le circuit est complet. Les cavaliers et la maquette facilitent les connexions.

Pour terminer le projet, connectez l'Arduino au PC à l'aide du câble USB et chargez le croquis fourni ci-dessous.

Étape 5: Le code

Le sketch RainGauge.ino (intégré à la fin de cette étape) est bien commenté et je ne signalerai donc que trois sections.

Une partie compte le nombre de bennes basculantes.

if(bucketPositionA==false && digitalRead(RainPin) == HIGH){

… … }

Une autre partie vérifie l'heure et calcule la quantité de pluie

if(now.minute()==0 && first == true){

hourlyRain = dailyRain - dailyRain_till_LastHour; …… ……

et une autre partie efface la pluie pour la journée, à minuit.

if(maintenant.heure() == 0){

Pluie quotidienne = 0; …..

Étape 6: Étalonnage et test

Déconnectez le collecteur de pluie du reste du circuit et effectuez les étapes suivantes.

  1. Remplissez la seringue avec de l'eau. Je remplis le mien avec 10 ml.
  2. Gardez le collecteur de pluie sur une surface plane et versez l'eau de la seringue petit à petit.
  3. Je compte les seaux basculants. Quatre embouts me suffisaient, et drainaient 9 ml de la seringue. D'après les calculs (voir la section théorie), j'ai obtenu une quantité de 0,0161 pouce de pluie par pourboire.
  4. J'inclus cette information dans mon code au début.

const double bucketAmount = 0,0161;

C'est tout. Pour plus de précision, on peut inclure plus de chiffres comme 0,01610595. Bien sûr, vos chiffres calculés devraient varier si votre collecteur de pluie n'est pas identique au mien.

À des fins de test

  1. Connectez le Rain Collector à la prise RJ11.
  2. Connectez l'Arduino au PC à l'aide du câble USB.
  3. Ouvrez le moniteur série.
  4. Versez les quantités d'eau précédemment mesurées et observez la sortie à la fin de l'heure.
  5. Ne versez pas d'eau mais attendez l'heure suivante pour terminer. La pluie horaire doit être nulle dans ce cas.
  6. Gardez le PC avec le circuit connecté sous tension pendant la nuit et voyez si la pluie quotidienne et la pluie horaire sont remises à zéro à minuit. Pour cette étape, on peut également changer l'horloge du PC à une valeur appropriée (pour regarder les sorties sur le moniteur série en direct).

Étape 7: réflexions après coup et remerciements

La résolution des lectures de précipitations dans mon cas est de 0,0161 pouces et ne peut pas être plus précise. Les circonstances pratiques peuvent réduire davantage la précision. Les mesures météorologiques n'ont pas la précision de la mécanique quantique.

Une partie du code a été empruntée à Instructable de Lazy Old Geek.

Conseillé: