Alerteur de pluie

## But du Projet

Le but de ce projet est de créer un capteur qui détecte s'il commence à pleuvoir afin d'alerter l'usager et qu'il puisse notamment aller chercher son linge dehors.

## Présentation du projet

Pour détecter une averse nous mettrons un capteur dehors qui déclenchera une émission au contact d'une goutte d'eau de pluie. Cette émission sera reçue par un dispositif à l'intérieur sur lequel une LED et un buzzer se mettront en route, afin d'alerter l'utilisateur. La partie avec une LED et un buzzer sera équipée d'un bouton afin d'arrêter le processus d'alerte et la partie émettrice avec le capteur en aura aussi un afin de la mettre en route ou non.

## Montage électrique

Voici le schéma des branchements électriques pour la partie émetteur et pour la partie récepteur.

## Cahier des charges

Le capteur de présence d'eau alimenté par un Arduino provoquera une chute de tension au contact d'une goutte, qui sera lue par l'Arduino.

L'Arduino fournira une tension à un émetteur, si il y a une chute de tension et si le système est en position on, cet émetteur émettra une onde.

Un récepteur recevra cette onde et délivrera un courant qui sera lue par un second Arduino.

A la détection de ce courant, cet Arduino fournira une tension numérique de 5V qui commandera l'allumage d'une LED et d'un buzzer si son système est sur on.

## Capteurs nécessaires

La mesure de la présence de pluie sera effectuée par un hygromètre qui détecte la présence d'eau. L'hygromètre choisie (hygromètre 2431) a une sensibilité pour une goutte de pluie. Le capteur est composé de deux bornes conductrices qui forment les lignes qu'ont peu voir mais sont séparés par un isolant, lorsqu'une goutte d'eau tombe dessus le courant peut passer plus facilement ce qui fait chuter la résistance et donc la tension aux bornes du capteur. (Source image)

Pour la transmission entre la partie émettrice et réceptrice nous avons deux modules radio, un émetteur et un récepteur. Ce récepteur est alimenté par 3,3V et non pas 5V car il y a moins de bruits.

## Transducteurs nécessaires

L'émetteur est un transducteur: il reçoit un courant électrique qu'il transforme en signal radio (onde électromagnétique).

La LED est également un transducteur (courant électrique en onde électromagnétique). Celle pour alerter est alimentée par l'Arduino et est en série avec une résistance de 400 ohms afin d'obtenir un courant entre 0 et 20 milliampères (1).

Le Buzzer est également un transducteur (courant électrique en onde mécanique), et est aussi alimenté par l'Arduino, dont les caractéristiques sont celles du modèle sus-nommés dans le lien EB2210A-38C-12V (2).

## Besoins électriques

Les deux Arduino doivent être alimentés, par câble USB relié à un ordinateur.

Le capteur et l'émetteur radio, ainsi que la LED de contrôle et la LED d'état sont alimentés par l'Arduino extérieur (sortie 5V pour l'émetteur et le capteur, pins pour les LEDs​) tandis que le récepteur radio, la LED d'alarme, la LED d'état, la LED de contrôle et le buzzer eux sont alimentés par l'Arduino intérieur (sortie 3.3V pour le récepteur, pins pour les autres).

## Arduino

L'Arduino UNO possède plusieurs entrées et sorties numériques et des entrées analogiques.

Pour l'Arduino extérieur, la sortie PWN 10 commande l'émetteur et la sortie PWN 8 la LED de contrôle. La LED d'état associée qui indique si le système est sur on ou off est alimentée par la sortie PWN 4. La tension dans le circuit du bouton est lu par l'entrée PWN 2 et celle du circuit du capteur de pluie par l'entrée analogique A5.

Pour l'Arduino intérieur, la sortie PWN 13 commande la LED d'alarme, la PWN 12 le buzzer et la PWN 4 la LED d'état. Le courant dans le circuit du bouton est lu par l'entrée PWN 2, et celui du recepteur par l'entrée analogique A5.

## Programme Arduino

Programme pour l'émetteur (lien de téléchargement ino ou odt) :

Dans les deux programmes il y a en fait deux processus en parallèle, celui du bouton et celui de l'émetteur/récepteur.

Nous allons d'abord commencer à expliquer celui du bouton, dans la boucle setup la ligne attachInterrupt permet de dire à Arduino de regarder en permanence la pin 2 et quand il détecte un changement d’exécuter la fonction on. Cette fonction va d'abord regarder si la tension lue est de zéro volt, ce qui correspond au fait que le bouton soit pressé, auquel cas elle inverse l'état de on vers off ou de off vers on. Cette vérification est là car la fonction s'exécute deux fois quand le bouton est pressé et que la tension passe de 3,3V/5V à 0V puis quand on le relâche et qu'elle passe de 0V à 3,3V/5V, cela permet de n'avoir qu'un seul inversement. Puis la fonction va tout simplement allumer la LED d'état si état vaut 1 ce qui correspond au mode on, et l'éteindre si état vaut 0.

Maintenant passons au processus émetteur, le programme commence par vérifier si le système est sur on ou off. Si on est sur off, il coupe la transmission radio et la LED de contrôle. Sur on il va ensuite regarder si le capteur de pluie est mouillé ou pas, s'il est il y a transmission et allumage de la LED de contrôle sinon les deux sont éteint.

Programme pour le récepteur (lien de téléchargement ino ou odt) :

    Et pour finir le processus du récepteur, il s'exécute uniquement si le système est sur on, puis on fixe une variable à 0 qui correspond au fait de savoir si le système a reçu ou pas un signal venant de l'émetteur, 0 correspond à "je n'ai pas reçu de signal" et 1 correspond à "j'ai reçu un signal". Puis on lit la tension de la sortie analogique du récepteur, et si elle est en-dessous d'une valeur seuil qui correspond à la réception d'un signal il change la variable sel en 1. Puis nous avons une boucle qui s’exécute quand nous sommes sur on et qu'on a reçu un signal, elle va faire clignoter la LED d'alarme et faire biper le buzzer. Elle vérifie ces deux conditions car nous voulons que les alarmes se déclenchent pour toujours une fois qu'on a reçu un signal, sel est là pour ça et aussi que les deux s'arrêtent si l'utilisateur passe le système sur off, état est là pour ça.

## Tests

Test du processus du bouton, la LED d'état de contrôle répond bien et le bouton a un fonctionnement parfait il a bien une tension de 3,3V/5V quand il n'est pas pressé puis de 0V quand il est appuyé. Pour l'émetteur nous avons :

système sur off + pas de pluie : pas d'émission

système sur off + pluie : pas d'émission

système sur on + pas de pluie : pas d'émission

système sur on + pluie : émission

Nous avons aussi fait plusieurs tests sur le module radio, nous avons pu remarquer d'abord qu'une tension d'alimentation de 3,3V permet d'avoir moins de bruits parasites. Ainsi que pour que le récepteur se mettent dans le bon fonctionnement il doit recevoir un premier signal de l'émetteur. Nous avons aussi vu que ce récepteur a un bon fonctionnement dans les 5 premières secondes réception d'un signal puis le signal commence à être bruité.

Nous avons aussi voulu ajouter un MOFSET qui servait à couper ou non l'alimentation des modules (une pin contrôle la "gate" et permet l'alimentation en permettant le passage du courant de "source" à "drain"), Mais son introduction dans les circuits faisait descendre les tensions que recevaient nos modules, ce qui les rendaient inopérants comme pour l'émetteur radio, ou moins sensibles comme pour le capteur de pluie qui en sortie ne délivrait​ plus qu'une tension de 1,75V à sec au lieu de 5V.

## Mesures

L'hygromètre à sec a une tension de 5V, lorsque l'on verse une goutte la tension chute a 2,8V, mesure faite grâce à Latis-Pro.

Le récepteur radio a une tension de 2,3V quand il ne reçoit pas de signal et elle chute à 0V quand il en reçoit un, mesure faite à l'oscilloscope.

Le buzzer dégage un son suffisant pour une tension entre 3V et 5V, en-dessous le son est très peu audible et n'aurait pas l'effet alerteur souhaité.

## Problèmes rencontrés

Le fonctionnement du récepteur n'a pas été celui attendu(3). Après plusieurs mesures grâce à Latis-Pro,nous nous sommes aperçu qu'il dégage une tension de 0V seulement pendant une demi-seconde après le début de l'émission par l'émetteur puis retourne à 2,3V alors que l'émetteur transmet toujours. Après une recherche documentaire plus approfondi nous nous sommes aperçu qu'il fallait ajouter des antennes (4) et ce problème fut résolu. Comme dis dans la partie test quand le récepteur est allumé au début il a une tension à 0V au lieu de 2,3V, il doit recevoir un premier signal pour avoir un bon fonctionnement ensuite ce qui nous force donc à procéder à une initialisation. Aussi nous nous sommes aperçus que lors de la réception d'un signal au début nous avons bien une tension à 0V pendant 5 secondes puis des pics à 2,3V vont commencer à apparaître et cela va empirer avec le temps tant qu'il y a réception du signal mais s'il n'y a plus de signal après on a bien une tension à 2,3V constante.

Comme relater dans nos tests nous avons aussi voulu ajouter un contrôle des alimentations mais malheureusement le MOFSET perturbait nos circuits pour une raison que nous n'avons pas eu le temps de trouver alors que son comportement idéal devrait être celui d'un fil.

## Améliorations

Dans les améliorations que nous avions imaginés il y avait le contrôle de l'alimentation afin notamment de ne pas consommer de courant quand les systèmes sont sur off. Nous voulons aussi rendre l'alimentation de nos arduinos autonomes d'un ordinateur pour l'alimentation électrique pour des raisons de praticité surtout pour la partie extérieur. Enfin pour finaliser le tout enfermer nos montages dans des boîtes, pour la partie extérieur surtout afin de protéger les circuits de la pluie et pour la partie intérieur pour des raisons d'esthétique.

## Conclusions

Nous avons réalisé nos ambitions initiales qui étaient de faire une alarme pour la présence de pluie avec juste un interrupteur pour arrêter cette alarme. Nous avons amélioré le projet en rajoutant un mode on et off sur le récepteur et l'émetteur. La LED et le buzzer se déclenche bien quand les deux systèmes sont sur on et que le capteur de pluie détecte la présence d'eau.