Bonjour a vous amis arduineurs,
C'est avec beaucoup d'ambition que je me suis lancé il y a 3 mois dans mon projet domotique. Je suis en suisse et de formation Électricien en Radio-TV avec de très bonnes connaissances d'électronique puis un peut de programmation informatique et électronique. Comme il n'y a pas de grande ambition sans ambition... voici ce qui m'est venu à l'esprit:
Domotiser :
- Le jardin
|- Arrosage sur 3 groupes d'eau automatisé par la domotique (google calendar pour les heures)
|- Mesure de l'humidité du sol sur les 3 groupes
|- Remplissage de 5% d'eau en cas insuffisance (cuve d'eau de pluie enterrée)
|- création d'un cycle de vidange pour l'hivernage de la tuyauterie
|- Relevés de la cuve ( en % et en Litres approximatifs)
|- Automatisation du portail électrique lors de l’entré du téléphone portable dans un périmètre précis
|- Relevé du cabanon de jardin (température état porte/ fenêtre ouverte)
-Maison:
|- relevé de la température/humidité/lumière ambiante dans toutes les pièces
|- Relevé des informations du compteur d'eau
|- intégration de la pompe à chaleur via modbus/rs-485
|- Commande des stores électriques en fonction de l'éclairage souhaité
|- Commande des leds RGB Salon , escaliers, salle de bain, pergola
|- Commande de l'éclairage des panneau leds (lampes de plafond) plus ou moins chaud et intensité
|- Reprise des infos météo locales sur le web
|- Capteur de pluie pour commander la fermeture vélux et stores pergola
|- Relevé électrique si possible
|- Panifier des choses ici et la quand on le désire (merci google)
|- Détecter le courrier dans boite à lettre
|- D'autres choses vont arriver en cours de route
|- ...
Je souhaite commencer par mon jardin j'ai donc plusieurs choses à faire:
Arrosage automatique:
- nous avons installé une cuve cylindrique de récupération d'eau de pluie malheureusement elle est dépourvue de capteurs! c'est là qu'une ampoule c'est allumée dans ma tête... Et si je créait mon capteur... Suite à ceci, une foule d'idées me sont apparues:
- capteur mécanique (balancier raccordé à un potentiomètre converti ensuite par un convertisseur A/N) . idée abandonnée dans la première phase de tests mécaniques car l’enroulage-dérourage du fil était quelques peut aléatoire .
- Puis il y eu l'idée de la barrière lumineuse . Mais trop difficile à réaliser avec les convergences différentes en fonction du niveau d'eau sans parler du risque de dépôts de résidus dans le temps.
- Puis enfin la dernière solution, la vraie bonne idée, l'ultrason... Et hop mes neurones revivent... ;D . C'est avec une grande facilité que j'ai donc réalisé mon capteur ultrason muni d'un DHT11 à ses côtés (et d'un capteur 18b20 pour la température de l'eau juste au cas ou quelqu'un me poserait la question qui tue... à quel température est ton eau de pluie?!? ) .
Puis j'ai voulu aller encore plus loin car faire les mesures puis ne pas les exploiter n'a aucun sens... Après des heures et des heures et des heurs, et des heures à la recherche de la perle de la domotique gratuite ou à pas de prix, je me suis dirigé sur domoticz. L'avantage, il peut tourner sur un Raspberry Pi qui ne consomme presque rien et pour un coût modique et en plus, on bénéficie de la stabilité d'un système linux. Mais Domoticz n'est qu'un serveur pour moi il va tout gérer. Donc pas question de l'utiliser directement pour l’interfaçage car il y a plus sexy en thermes d'ergonomie . C'est là qu'intervient Imperihome! . J'aurais enfin un truc sympa... Une tablette que je vais encastrer dans le mur et qui représentera le cerveau de la maison. D'autres implémentations suivront (S.A.R.A.H. notamment).
Après plusieurs heures de mise en place de scripts et de tests, j'ai réussi à faire ce que je voulais dans ces deux softs. Puis j'ai essayé de tout faire avec mon Raspberry y compris la mesure de distance. Mais l’effort investit ne fut pas à la hauteur des espérances. J'ai vite abonné cette idée car il est impossible de faire des mesures plus ou moins précises avec avec un raspberry qui fait ce qu'il veut quand il veut (ressources partagées oblige).
Puis une autre illumination est survenue. Si raspberry ne peut faire ce qui faut quand il faut, tu dois le faire ailleurs. C'est alors que je me tourne vers Arduino. Je prépare mes armes et attaque mon codage pour mes diverses mesures et commandes. Trop cool ce petit micropros qui fait gentillement ce qu'on lui demande et en plus dans les temps ! Mais s'arrêter là n'avait pas de sens car les infos sont toujours oisives dans l'arduino ... Et là... Tout se corse...
M'enfin il fallu trouver une solution pour faire passer les infos de mes petits Arduino's éparpillés dans la maison vers mon raspberry!
Et si je trouvait une solution pour que mes infos soient disponibles dans des emplacements qu'il me suffirait de lire pour en connaitre la valeur?... Et là BAM encore une étincelle! MODBUS est ce qu'il te faut!
Puis il faut aussi un mode de transport pour ces infos... Quoi de mieux que le rs-485 qui peut aller jusqu'à 32 units sur le bus et en plus il peut s’étendre jusqu'à 1.2km?!? De quoi faire largement le tour de la maison!Trop fort, je l'adopte aussi. 8).
Me voilà avec mon concept économique en tête:
- Arduino's pour la capture de données et l'activation des actionneurs (relais , etc)
- Raspberry's (2 servers) pour manager tout ça
- Imperihome pour la GUI sur une tablette murale
- Modbus via RS485 pour la communication entre Arduino's et Raspberry's
Cependant, il y a des choses qui fonctionnent puis d'autres qui ne fonctionnent pas correctement:
- capture des distances -> OK
- capture température/humidité ambiante dans la cuve-> OK
- capture température de l'eau (c'est prévu mai c'est aussi hésitant dans mon esprit) idée en veille
- Implémentation des registres modbus sur arduinos esclaves ->OK
- Implémentation de lecture modbus sur raspberry maitres ->OK
- Mise en place du rs-485 -> semble Ok mais boiteux il y a des choses surprenantes
J'ai donc persévéré et finalement arrivé à un résultat. EUREKA ;D ;D Tout est super génial...
La réjouissance fut de courte durée... des choses surprenantes et quelque peut étranges se produisent :o . Mes arduino's redémarrent tout seuls comme des grands sans que quelqu'un le leur demandent causant ainsi des problèmes de communications qui font que mon script de lecture s’interrompt.
Je ne sais pas pourquoi... J'ai essayé plusieurs choses puis finalement tout recommencé au niveau de la communication éliminant ainsi risques d’interférences liés au process de mesures. mais rien n'y fait. cela persiste il redémarre toujours sans raison apparente. il est pourtant bien alimenté!
Tout ceci pour vous demander si quelqu'un à déjà fait ce genre de choses ou aurait des idées pour augmenter la stabilité de mes communications?
Et aussi, si vous vous lancez dans un projet domotique et que mes idées vous plaisent , nous pouvons collaborer afin d'avancer plus rapidement.