J’ai un nouveau mini projet à vous présenter aujourd’hui.
Vous vous souvenez peu être que l’année dernière j’ai bricolé un système qui permet d’arroser mon jardin automatiquement et surtout intelligemment et de façon totalement autonome (pas besoin de prise de courant ou de l’eau courante)
Je n’ai pas détaillé encore l’intégralité de ce montage mais un des principe de ce système est que je récupère l’eau de pluie dans une cuve et d’arroser le jardin avec. Pour commander le tout j’utilise un Arduino nano usb à 5€. Dans la version initiale j’avais un simple capteur de niveau bas qui permettait de signaler quand le niveau était bas dans la cuve et ainsi ne pas arroser si la cuve est vide pour ne pas endommager la pompe.
Matériel :
- RF transmiter : 433Mhz WL RF Transmitter (1€)
- ATTINY85-20PU Pour ATMEL DIP-8 Tiny85-20PU (6€ les 5 soit 1.20€ pièce)
- Boite De Connexion Raccordement Etanche Plastique Electronique 100x60x25mm (1.15€)
- 8 Pin Socket Solder Prototype Circuit Adaptor PCB Attiny85 (2.20€ les 10, soit 0.22€/pièce)
- Boîtier Bloc Support Coupleur Box pour 3 AA (1€)
Soit un total inférieur à de 5€ !
Version initiale du capteur :
La première version de ce capteur était calqué sur le montage que l’on trouve sur ce super site: bateaux.trucs.free.fr. Deux simples fils plongés au fond de la cuve permettent de signaler un niveau bas atteint. Le montage était simplissime avec deux fils qui partent de l’Arduino et qui arrivent au fond de ma cuve.
Un des problème de ce montage est le phénomène de l’électrolyse qui à pour effet un oxydation de l’anode (le +). Pour retarder cet effet une solution est de n’alimenter ce circuit qu’au moment ou l’un veux l’information.
Pour cela au lieu de relier un des fils au + de l’Arduino il suffit de le relier à une des sorties et de passer cette sortie à l’était haut (HIGH) au moment de la lecture et de la repasser à l’état bas à la fin de la lecture. Ainsi le reste du temps il n’y a pas de tension entre l’anode et la cathode, pas de courant circulant et donc par de phénomène électrolyse.
Nouvelle version du capteur « sans fil » :
La première version de ce capteur ne me satisfait pas tout à fait. Un des principal inconvénient étant les fils entre l’arduino et la cuve que je souhaite supprimer. Ensuite j’aimerai savoir plus précisément le niveau d’eau de ma cuve.
Mon nouveau projet à donc pour but de créer non pas un capteur mais quatre capteurs de niveaux et ainsi pouvoir déterminer le niveau de ma cuve sur quatre position: 0/4 (vide) ; 1/4, 2/4, 3/4, 4/4, (pleine).
Au lieu d’envoyer l’information en filaire à l’arduino on « passera par les airs » avec un émetteur 433Mhz, le tout piloté par un Attiny85 qui en plus d’avoir 6 entrées / sorties et une très faible consommation électrique ce qui permettra de pouvoir l’alimenter avec 3 piles 1.5V et d’avoir un capteur totalement wireless (sans fils 🙂 ).
Mon système d’arrosage est commandé par mon serveur domoticz via un émetteur RFXCOM, je souhaites pouvoir afficher dans domoticz le niveau d’eau de ma cuve pour utiliser cette information pour déclencher ou non l’arrosage.
Toujours en me basant sur le montage du site bateaux.trucs.free.fr mais cette fois si sur le montage ne nécessitant pas de résistance [voir ici] (du coup c’est encore plus simple), je vais ajouter 3 capteurs supplémentaires. J’utilise ensuite la librairie x10rf [voir les sources ici] pour transmettre la valeur de niveau a domoticz (0,1, 2, 3, 4).
Schémas des connexions :
Code :
Le code est disponible ici : tank_water_level_low_power.ino
Dans Domoticz :
Si tout fonctionne correctement vous devriez vous apparaître dans domoticz un nouveau dispositif de type RFXMeter :
Ajoutez ce dispositif et déclarez le en compteur avec une unité « / 4 »
Cela va apparaître ensuite dans domoticz comme cela :
Voila votre niveau est affiché dans Domoticz !
Quelques photos :
Je vous conseille de recouvrir d’étain le bout des fils de cuivre qui seront plongés dans l’eau.
Cet article vous intéresse laissez un commentaire ça fait toujours plaisir 🙂
Ping : Capteur humidité du Sol pour moins de 5€ | Domotic and stupid geek stuff
Bonjour,
Comment avez-vous fixé les « capteurs » dans le récupérateur d’eau ?
Cordialement,
Bonjour K,
réponse un peu tardive de ma part désolé,
l’ensembles des 4 fils sont maintenu ensemble dans la même gaine. La gaine est passé par un trou tout en haut de la cuve et lesté par un poids accroché un bout. Le tout tien bien droit le long de la cuve comme on peu le voir sur la photo ici :
Bonjour
j’ai effectué un montage que je développe au fil de l’eau sur mon site http://karlytau.raidghost.com.
Moi c’est un problème de niveau de cuve de fuel.
Plus proche de mon besoin mais le problème reste le même.
Un module arduino avec son shield RJ45 pour supporter du CPL et une sonde à Ultrasons étanche « JSN-SR04T ».
Le tout alimente un site web visible sur mon site avec à la base du Google charts amélioré.
voila le tout est assez complexe mais on y arrive et c’est fiable.
4 mesures par jour avec différentes températures relevées.
Cordialement
Super le site ! Je vais regarder ça en détail !
Pour le capteur c’est bien celui la ? https://goo.gl/zrkIYc
Car ça m’intéresse !
Le problème de mon montage est la conductivité de l’eau qui diminue fortement lorsqu’il pleut.. Du coup il me faut ajouter une pincé de sel et ca repart mais c’est pas terrible comme solution ! 🙂
merci pour ton partage !
bonjour
oui c’est cela
va sur mon site n’hesite pas a cliquer sur mes annonces et le cas échéant on communique par mail.
il est etanche ne pas l’immerger pour autant.
et j’ai sur mon site le sinfo de la cuve
cdt
Bonjour Manu, as-tu un email afin d’échanger sur ton article de blog ? Je souhaite installer une pompe à mon récupérateur d’eau de pluie pour ensuite automatiser l’arrosage de mon potager mais tu ne parles pas de pompe dans tes articles. Merci pour ton aide.
Bonjour pberghof,
Tu peux déjà jetter un oeil ici :http://domotique.web2diz.net/?p=416
La pompe est une petite pompe 12v elle est dans la liste des courses 🙂
Je serai aissi heureux d’echanger sur nos projets.
A+. Manu
Bonjour,
Essayer de rajouter quelques clous dans l’eau, la rouille devrais augmenter la conductivité
Super ! je n’utilise plus ce capteur a cause de la conductivité mais c’est une super idée à tester…
Merci !
Bonjour,
Déjà pour commencer chouette tuto merci à toi, hors je me retrouve bloqué. Lorsque je vérifie le code pour la compilation j’ai une erreur:
Arduino : 1.8.2 (Windows Store 1.8.2.0) (Windows 10), Carte : « ATtiny25/45/85, ATtiny85, Internal 8 MHz »
In file included from C:\Users\*******\Desktop\Arduino\sketch_apr01a\sketch_apr01a.ino:16:0:
C:\Users\*******\Documents\Arduino\libraries\x10rf-master/x10rf.h:21:21: fatal error: Energia.h: No such file or directory
#include
^
compilation terminated.
exit status 1
Erreur de compilation pour la carte ATtiny25/45/85
As tu rencontré ce problème ? Ou est ce que quelqu’un peut m’éclairer 😡
Merci, Yo.
#include Energia.h
avec les balises ça foire lol
Bonjour super idée, je prévois de monter avec communication avec Jeedom, je supposes que cela ne devrai pas poser de problème…
a++
Bonjour, tout d’abord merci pour ce(s) tuto(s) ,
une question quelle fréquence doit t’on choisir lors de la programmation du ATTINY, 1Mhz, 8MHz?
Merci de votre retour
Bonjour,
et sinon pourquoi pas utiliser un petit ESP8266 qui fait wifi, couplé à la sonde ultrason JSN-SR04T citée précédemment, le tout monté sur une simple batterie 18650 pour l’autonomie et faire du deep sleep qui se réveille 4 fois par jour ?
cdlt.
—> Dodutils : bonjour, où trouver un tuto qui détaille bien la solution ESP8266 ?
karlytau.fr
bonjour Mon site
j’explique pas mal de chose sur l’ESP8266
cordialement
Bonjour,
Je voulais essayer votre projet qui me paraissait bien pratique, mais ma compilation s’arrête avec :
/Users/Tkd/Documents/Arduino/tank_water_level_low_power/tank_water_level_low_power.ino:16:19: fatal error: x10rf.h: No such file or directory
#include
^
compilation terminated.
exit status 1
Erreur de compilation pour la carte Arduino/Genuino Uno
J’avoue ne pas comprendre pourquoi (je débute) x10rf.h n’est pas reconnu, alors que les fichiers se trouvent dans le repertoire Arduino/tank_water_level_low_power/
Si vous aviez 5 petites minutes pour m’éclairer,
Cordialement,
Résolu mon post-précédent : remplacer x10rf.h par X10RF.h dans le .ino (comme quoi).
Par contre, nouvelle erreur: tank_water_level_low_power:138: error: ‘WDTCR’ was not declared in this scope
WDTCR |= (1<<WDCE) | (1<<WDE);
Des idées ?
bonjour
Allez voir sur karlytau.fr tout est expliqué et verifier.
Karl
Bonsoir, le site cité est sympa, mais je n’ai pas trouvé ma réponse…
passe plutot par une sonde ultra son etanche c’est moins compliqué et plus fiable.
Bonjour
J’essaie de fairece capteur en suivant ton tuto.
Je coince sur les librairies
X10RF.h
et surtout sur wiring.h
je ne parviens pas a trouver les fichiers correspondants.
Peux tu les mettre a disposition.
Merci
Bonjour a tous.
Je me lance dans ce genre de projet
Avez vous des retours d’expérience sur la durée de vie sur batterie des esp8266 et attint85
Merci
Bonjour
Bravo pour votre tuto j’ai essayé de le reproduire et lors de la compilation du fichier ino il m’indique erreur incompatible avec ATtiny pourriez vous m’aider. Merci
Bonjour,
Je n’en sais rien j’ai pas travaillé avec cela.
je ne suis pas sur que cela soit du arduino pur !!!!
sinon vous avez pris quel code???
cdt
Ping : Capteur niveau de cuve sans fil – JSN-SR04T | Domotic and stupid geek stuff
Bonjour à tous, pour ceux que ça intéresse un montage plus performant et stable à base d’un capteur étanche jsn-sr04t ici : https://domotique.web2diz.net/capteur-niveau-de-cuve-sans-fil-jsn-sr04t/
Testé tout l’été dernier sans soucis…
Bonne confinement à tous !
Alors ça c’est marrant parce que je suis justement en train de poser le mien à l’instant même dans le puisard, je viens de terminer la découpe du support dans une chute de montant qui me restait quand j’ai fait l’ossature isolation et faire le trou dedans pour le capteur et déposer l’ESP et la batterie (qu’il faudra mettre dans une petite boite bien étanche à l’humidité -)
Bonjour,
Purée l’info Manu ….
ca fait que 4 ans que j’ai expos le truc sur mon site
http://karlytau.fr
il y a les graph et les scripte…
ya plus qu’a pomper
😉
c’est pas plutot une pub cachée pour https://domotique.web2diz.net.
on y est déjà
cordialement
Oui je sais bien puisqu’on en avait parlé ici 🙂
Je n’avais pas eu le temps ni l’énergie d’expliquer comment faire ni même partagé le code lua et ardruino pour tout transférer dans domoticz sans fil… Sauf erreur je pense que tu passe par un bord connecté sur ton réseau wifi ?
J’ai encore quelques trucs que je souhaites partager ici comme comment calculer le bon niveau d’arrosage en fonction de la pluie a venir, passée, de la température max de la journée etc… (bon la ce sera pus du shell 🙂 …
Ping : Capteur niveau de cuve sans fil par pression – Serie 26Y | Domotic and stupid geek stuff
Ping : Arrosage Autonome et Automatique #1 Liste des courses | Domotic and stupid geek stuff
Bonjour et merci pour le tuto,
Après avoir cherché sur le net des télécommandes DIY avec comme composants les mêmes que pour l’emetteur de cet article et sans avoir trouvé ce que je voulais, je suis en cours de réalisation de ce montage afin de faire un émetteur 4 canaux (BP à la place des 4 fils de niveaux et récepteur RFXCOM + DOMOTICZ qui fera des action différente suivant le BP choisi).
J’ai téléchargé la librairie x10rf.zip et je l’ai importée dans l’IDE Arduino (1.8.13) avec croquis … inclure une bibli zip.
J’ai téléchargé le .ino que j’ai placé dans un répertoire lambda (le .ino est le seul dans ce répertoire.
Quand je clique sur l’icone vérif de l’IDE, j’ai tout un tas d’erreurs.
La première étant :
x10rf.h:25:19: error: expected ‘)’ before ‘tx_pin’
x10rf(uint8_t tx_pin, uint8_t led_pin, uint8_t rf_repeats);
puis beaucoup d’autre du genre ‘uint8_t’ pas déclarée :
x10rf.h:27:19: error: ‘uint8_t’ has not been declared
void RFXmeter(uint8_t rfxm_address, uint8_t rfxm_packet_type, long rfxm_value);
ou même : x10rf.cpp:25:10: error: ‘_tx_pin’ was not declared in this scope
Je débute avec l’arduino et le C et je ne suis pas capable d’analyser le pb tout seul, j’ai l’impression qu’il doit manquer un fichier quelque-part.
Merci pour votre éclairage.