Station météo alternative

Encore une station météo, oui mais d’un autre genre !

J’ai déjà publié, voir un article précédent, une sonde qui mesure la qualité de l’air.

La station décrite ici comporte des ajouts et des modifications.

Ajout de fonctionnalités :

  • Mesure température, humidité et pression atmosphérique (module BME280).
  • Mesure de la quantité de pluie.

Modifications par rapport au projet précédent :

  •   Mesure réelle de la tension batterie.
  •   Boîtier compacte qui englobe tous les éléments.
  •   Modifications du schéma électronique.

Rappel des objectifs :

  •   Minimiser la consommation électrique.
  •   Réduire au stricte minimum la liaison Wifi. (30s toutes les 30mn).
  •   Environnement étanche.
  •   Recharge automatique de la batterie.

La réelle particularité réside dans la sonde qui mesure la quantité de pluie. Elle est basée sur une mesure capacitive.

Le principe de mesure de niveau capacitif se base sur la variation de capacité d’un condensateur.

Le montage est composé d’un tube métallique et d’une tige métallique isolée placée au centre du tube.

La tige et la paroi du tube forment un condensateur, dont la capacité dépend de la quantité d’eau dans le tube : Le tube vide a une capacité plus faible, avec de l’eau la capacité augmente.

Un dispositif électronique mesure cette augmentation de capacité et génère une tension proportionnelle à la hauteur d’eau.

Rq : La tige étant isolée aucun courant ne traverse l’eau.

Evaluation des grandeurs en présence.

La surface de réception de l’entonnoir est approximativement de 28 cm2. Celle du tube est d’environ 9 cm2. Le ratio de surface est environ de 3. Ainsi un centimètre d’eau sur l’entonnoir remplira le tube de 3cm. Cette multiplication permet d’obtenir une meilleure précision de mesure. Dans le cas de notre montage la capacité mesurée est d’environ 100pF.

Etalonnage :

Une fois le montage terminé on procédera à l’étalonnage avec un verre mesureur. On procédera cm par cm au niveau de l’entonnoir. On ajustera R8 et R13 pour calibrer la valeur mini et maxi. (cf. schéma suivant)

Schéma du montage de l’indicateur de niveau d’eau analogique 

Ce schéma est inspiré du site http://njhurst.com/electronics/watersensor/

L’indicateur de niveau d’eau analogique utilise des pièces couramment disponibles. La sortie est une tension proportionnelle au niveau de l’eau.

Le monostable est un 555. La largeur des impulsions du 555 est proportionnelle au niveau de l’eau. R7 et C5 forment un filtre passe-bas pour lisser la valeur DC du train d’impulsions.

Le décalage de tension à la sortie de 555 est supprimé dans l’étage différentiel formé par un quadruple amplificateur LM324.

La station étant alimentée par du 5V un convertisseur de tension a été ajouté pour produire du 12V. Ceci afin de garantir un fonctionnement optimal de l’indicateur de niveau.  La tension de sortie est ajustée pour fournir au maximum 3,7V à l’entrée de la platine de pilotage.

Schéma du pilotage des équipements

Le dispositif est piloté par un contrôleur ESP8266 Wemos D1 mini.

Prise en charge des niveaux batterie et eau :

L’entrée A0 supporte jusqu’à 3,3V. Elle est utilisée alternativement pour mesurer les tensions.

Pour la batterie par activation du port GPIO2 (D4).

Pour le niveau d’eau par activation du port GPIO14 (D5). L’activation de ce port met sous tension la platine de mesure capacitive. Ceci afin de limiter la consommation de courant.

La mesure de la qualité de l’air se fait en mettant sous tension le module SDS011 par le GPIO15 (D8). L’entrée GPIO12 (D6) lit les données en série.

En même temps le module BME280 est également mis sous tension. La communication se fait par les GPIO4 et GPIO5  (D1,D2) afin de récupérer la température, le taux d’humidité et la pression atmosphérique.

Enfin l’électrovanne qui va purger le tube en fin de journée est activé par le GPIO13 (D7)

Le contrôleur est programmé avec EspEasy par le code ci-dessous.

on System#Boot do
gpio,15,1
gpio,13,1
gpio,2,0
gpio,14,1
timerSet,1,20
let,1,0
endon
On System#Wake do
gpio,15,1
gpio,13,1
gpio,2,0
gpio,14,1
timerSet,1,20
let,1,0
endon
on Wifi#Disconnected do
if [VAR#2]=0
let,2,1
let,3,180
endif
endon
on Wifi#Connected do
// notify 1,system_is_started
let,2,0
let,3,1800
endon
On SDS011#PM10 do
SendToHTTP 192.168.1.231,8082,/json.htm?type=command&param=udevice&idx=76&nvalue=0&svalue=%rssi%
SendToHTTP 192.168.1.231,8082,/json.htm?type=command&param=udevice&idx=63&nvalue=0&svalue=[SDS011#PM10]
SendToHTTP 192.168.1.231,8082,/json.htm?type=command&param=udevice&idx=62&nvalue=0&svalue=[SDS011#PM25]
endon
On Rules#Timer=1 do // Battery level
let,1,[TENS#A0]
let,1,[VAR#1]*0.004
SendToHTTP 192.168.1.231,8082,/json.htm?type=command&param=udevice&idx=60&nvalue=0&svalue=%v1%
gpio,2,1 // switch off battery voltage capture
gpio,14,0 // switch on water level capture
timerSet,2,10
endon
On Rules#Timer=2 do // water level
let,1,[TENS#A0]
let,1,[VAR#1]-60
if %v1%<0
let,1,0
else
let,1,[VAR#1]*0.0625
endif
SendToHTTP 192.168.1.231,8082,/json.htm?type=command&param=udevice&idx=68&nvalue=0&svalue=%v1%
gpio,14,1 // switch off water level capture
timerSet,3,5
endon
On Rules#Timer=3 do // purge water
if %syshour%=23 // 23h
if %sysmin%>=30 // >30mn
notify 1,ecoulement
gpio,15,0 // switch off SDS
gpio,13,0 // switch on drain valve
timerSet,4,240
else
timerSet,4,5
endif
else
timerSet,4,5
endif
endon
On Rules#Timer=4 do // its time to sleep
gpio,13,1 // switch off drain valve
deepsleep,%v3%
endon

Résultat au niveau du serveur Domoticz

Liste des matériels

 

Affichage par le serveur Domoticz

Schéma du montage des composants dans un tube en PVC.

La sonde capacitive, même si elle n’est pas complexe, mérite de l’attention car sa finition et son réglage devront être soignées.

Les platines électroniques ainsi que la sonde SDS011 sont montées sur un support afin de faciliter leur mise en place dans le tube PVC.

Vue éclatée des composants

Conclusion :

Ce montage, comme le précédent, ne représente pas de difficulté particulière pour les personnes ayant des connaissances dans les logiciels Domoticz et ESPEasy.

Il permet de mesurer efficacement

La présence de particules fines,

La pression atmosphérique,

Le taux d’humidité,

La température,

La hauteur de pluie,

Et cela près de chez soi.

Le projet apporte également des idées sur le plan technique :

Pilotage d’une charge par relais Reed, par transistor PNP ou MOSFET. L’utilisation des GPIO2 et GPIO15. L’utilisation du port A0 par multiplexage. La programmation (Rule) du contrôleur ESP8266.

Tags : esp8266, arduino, espeasy, SDS011, domoticz, converter, capacity, solar, BME280

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.