Je continue dans mes investigations d'automates à base de RaspberryPi pour gérer mes bacs.
J'ai développé une appli qui me permet de consulter depuis mon smartphone la température de l'eau, de l'air du bac et de la décant ainsi que les niveaux d'eau de la décant, de l'osmolation et de la réserve d'eau osmosée et de m'envoyer une alarme par email si les seuils que j'ai défini sont hors limites.
Niveau coût, on s'en tire pour moins de 100€, sachant que le Raspberry peut aussi servir à autre chose ...
Voici un tuto si certains sont intéressés.
Besoin
* Surveiller certains paramètres de l'aquarium : températures, niveaux d'eau et déclancher une alerte email si problème
Matériel
* 1 RasberryPi connecté au réseau local pour accès internet via smartphone
* 1 carte miniSD de 16Go (8Go mini pour le système)
* 1 à 4 sonde(s) de température étanche de type DS18B20
* 1 à 4 capteur(s) de niveau de type NF FLSW2
* 1 boitier pour le RaspberryPi
* 1 alim 5v USB pour le RaspberryPi + cable micro-usb
coût en VPC France (Amazon, Gotronics, ...)
= 80€ (1 sonde & flotteur) à 120€ (4 sondes & flotteurs)
* 1 résistance de 4.7K pour le(s) sonde(s) de température
* 1 à 4 résistances de 10K pour les flotteurs
* 1 connecteur 2x20pin pour les branchements vers le Raspberry (en option mais bien pratique)
* 2x1 à 2x4 fiches M/F 2pin et 3pin pour connecter les sondes et les flotteurs (en option mais bien pratique)
* 1 cable RJ45 (ou wifi car le Raspberry3 intègre désormais le wifi)
* n mètres de cable 2 conducteurs (flotteur) et 3 conducteurs (sonde)
coût en VPC France (Amazon, Gotronics, ...)
= 10€ (1 sonde & flotteur) à 20€ (4 sondes & flotteurs)
* supports imprimés pour les flotteurs à fixer sur des aimants
= gratuit, j'ai une imprimante 3D
Logiciel
Développé en langage NodeJS en quelques dizaine d'heures.
Je suis partisan de l'open-source, donc je partage mon code avec la communauté
aquariophile.
= gratuit
Repo github: https://github.com/ylemarie/aquasurvey
Paramètres
Les paramètres sont configurables online (écran ci-dessous) ou offline dans un fichier txt au
format JSON.
* T° eau mini : c'est la T° en dessous de laquelle une alarme sera remontée
* T° eau maxi : c'est la T° au dessus de laquelle une alarme sera remontée
* T° air mini : c'est la T° en dessous de laquelle une alarme sera remontée
* T° air maxi : c'est la T° au dessus de laquelle une alarme sera remontée
* Sonde T° eau bac : adresse de la sonde
* Sonde T°eau decant: adresse de la sonde
* Sonde T°air bac : adresse de la sonde
* Sonde T°air decant : adresse de la sonde
* GPIO decant Min : n° du port du flotteur niveau bas decant
* GPIO decant Max : n° du port du flotteur niveau haut decant
* GPIO osmolation : n° du port du flotteur niveau osmolation* GPIO osmosee : n° du port du flotteur niveau osmosee
* EMAIL dest : l'adresse mail du receveur des alarmes
* SMTP server : gmail (pas testé avec autre chose)
* Send period : le temps entre 2 mails d'alertes en minutes
* SMTP user : login du serveur SMTP
* SMTP password : mot de passe du serveur SMTP
* Check : périodicité du contrôle des paramètres en secondes
* HTTP port : n° du port http sur lequel tourne l'appli web
* Debug : mode debug
* Log : mode log
![Image](http://i64.tinypic.com/xpwz5y.png)
Fonctionnement email
* L'appli va checker toutes les n secondes les paramètres de T° et de niveaux, si les
paramètres sont en dehors des seuils définis, elle enverra un mail, et ce toutes les n minutes.
![Image](http://i66.tinypic.com/106c0ba.png)
Fonctionnement appli web
* L'application affiche en temps réél une page web accessible depuis un smartphone via par
exemple http://mabox.amoi.fr:8987 .
* En cliquant en haut à droite on accède à la page des paramètres.
![Image](http://i64.tinypic.com/2hpsq6g.png)
![Image](http://i66.tinypic.com/2nqxy7s.png)
Installation
Il faut installer un OS sur votre Raspberry, moi j'ai choisi une Raspbian mais ça devrait focntionner sous d'autres distrib.
https://www.raspberrypi.org/downloads/
Une fois l'OS installé, le plus compliqué c'est de réussir à faire lire les sondes de température au RaspberryPi, une fois que ça fonctionne côté hardware, le reste c'est juste un peu de soudure et de temps à passer.
Je vous conseille de commencer par suivre les instructions de ce site : http://www.framboise314.fr/mesure-de-te ... pberry-pi/
Donc toutes les sondes sont en série, on utilise 1 seule réistance de 4.7K pour l'ensemble et on relie le + de la sonde au +3V, le - à la masse et le data au GPIO 04.
Pour les capteurs de niveau, c'est pas beaucoup plus compliqué, sauf qu'il faut une resistance de 10K par flotteur. Un des fils va directement à la masse et l'autre vous intercalez la resistance de 10K avec le +3v et rejoignez l'autre fil du flotteur.
http://www.framboise314.fr/une-mesure-d ... pberry-pi/
![Image](http://i65.tinypic.com/2v8sc1u.png)
Pour déployer l'application :
* sudo apt-get install git nodejs npm
* cd /home/pi
* git clone https://github.com/ylemarie/aquasurvey
* npm install jsonfile underscore express http socket.io ds18x20 dateformat onoff nodemailer
* cd aquasurvey
* sudo node app.js
Pour que cela se lance tout seul au boot, ajoutez dans /etc/rc.local :
* cd /home/pi/aquasurvey
* sudo node app.js
Bon montage.
Yann
PS: j'ai fait les copies d'écrans sans les sondes de T°, ceci explique le 0°C ...