Arduino Forum

International => Français => Réalisations et Projets Finis => Topic started by: Loulou74 on Dec 19, 2018, 06:06 pm

Title: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Dec 19, 2018, 06:06 pm
Bonjour à tous,

Nouveau sur ce forum, je vous présente la solution que j'ai développé pour l'automatisation et la domotisation de ma piscine.

Mon projet tourne sur un Controllino MAXI (Arduino Mega2560 + shield Ethernet).

Ce qu'il fait:

- mesure et régulation PID du pH et du Redox avec prise en compte de la température de l'eau pour les mesures
- valeurs de calibrage stockées en mémoire EEPROM
- gestion de la filtration et module RTC pour gestion du temps et des plages horaires
- serveur web, affiche une petite page web qui résume l'état du système quand on s'y connecte via son adresse IP
- intégration dans mon système domotique (Jeedom) via MQTT pour la remontée d'infos (historique des mesures, alarmes diverses, etc) mais aussi pour du pilotage manuel du système via Jeedom (calibrage des sondes, syncro de l'horloge RTC, mise en route manuelle de pompes, etc)

Le code et le détail (en anglais) sont ici: https://github.com/Loic74650/PoolMaster (https://github.com/Loic74650/PoolMaster)



(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=286607)

(https://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=300915)

(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=286609)


(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=286611)


(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=286613)
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: vincent84 on Dec 20, 2018, 02:56 pm
Pas mal cette petite boite Controlino ! mais peut être un peu chère.
Mais beau projet (j'ai un peu le meme avec une DUE + ecran TFT mais je n'ai pas encore implémenté l'ethernet).

Vincent
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Dec 20, 2018, 03:46 pm
Oui ça fait un certain budget, mais bon si tu achètes un Mega2560 + la carte relais + le RTC + le shield Ethernet + le boitier DIN pour faire tenir le tout + les frais de port, voire les droits de douane + le temps que tu passes à assembler le tout, tu obtiens un truc pas très industriel pour pas beaucoup moins cher!  :smiley-wink:
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Jan 23, 2019, 12:49 am
Mise à jour du projet avec photo du boitier complet

(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=291374)

(http://forum.arduino.cc/index.php?action=dlattach;topic=586092.0;attach=291722)

Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Lolotoulouse on Feb 11, 2019, 03:37 pm
Bonjour Loulou74, bravo pour ta réalisation,

Je suis 100% novice en ardouino.

J'ai commandé un   ESP-12E WeMos D1 WiFi ainsi que l'amplificateur de signal, une sonde et un Y BNC( pour peut être me reprendre sur la sonde existante) dans le but de réaliser une sonde Ph pour la piscine à intégrer a jeedom.

J'aurai aimé savoir si ton code peut s'adapter pour transmettre les infos en wifi ?

Sur une seule carte D1, est il possible de connecter aussi une sonde de temperature à plonger dans l'eau et récupérer l'info dans jeedom. Si oui quelle sonde me conseilles tu ?

Pour résumer je souhaite un arduino en wifi qui envoi pH et temperature de l'eau et qui ne commande rien.

Merci de ton aide
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Feb 11, 2019, 07:14 pm
Bonjour Lolotoulouse

Malheureusement je n'ai pas d'expérience avec les Wemos mais je pense que les modifs à effectuer sont probablement légères.
A ta place je commencerais par chercher un exemple Wemos de communication de données de mesure (température ou humidité) par le WiFi et je piocherais ensuite dans le code de PoolMaster ce dont j'ai besoin

A+
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Mar 13, 2019, 03:42 pm
Bonjour
Je réalise un projet relativement similaire mais avec un electrolyseur au sel et quelques autres trucs de mon cru.
Bref, En étudiant votre code, j'ai découvert plein de choses interressantes :
 - les watchdog pour rebooter en cas de blocage
 - les softtimer

par contre, je n'ai pas trouvé ou se situais la compensation de la température pour les lectures ORP. Est-ce que cela corresponds au 20 mv de "marge" posé sur la consigne ?
Est-ce que cette compensation est reellement nécessaire ?

A+
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Mar 13, 2019, 04:32 pm
Bonjour TheLapin,

Je n'ai pas vu à ce jour de source d'info sur la correction en température de la mesure Orp.

J'avais mis en place une correction en température pour la mesure du pH mais je l'ai enlevé après avoir ajouté la calibration multi-points. Je la rajouterai peut-être à l'avenir mais si tu traces sous Excel la courbe tu verras que le gain est limité. En particulier, on veut être assez précis lorsque la piscine est utilisée et dans mon cas elle est régulée en température donc l'intérêt est faible.

Quand aux "20 mv de marge" sur la consigne de l'Orp, je ne vois pas de quoi tu parles. Peux-tu détailler stp? Ma valeur de 750mV par défaut serait-elle un peu trop haute?
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Mar 13, 2019, 05:45 pm
Pour les 20mv, je crois que j'ai confondu avec un autre projet  :o  : il permet d'arrêter l'électrolyseur lorsque la valeur a atteint le point de consigne +/- 20 mv.

Et si on regarde bien, la solution de calibrage varie d'environ 20 mv entre 15° et 30° donc on peux admettre  que la température influe assez peu sur cette plage de mesure.

Allez, je m'y remet...
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Mar 25, 2019, 02:08 pm
Bonjour à tous,

Mise à jour du projet avec en particulier:



Le code et le détail (en anglais) sont ici: https://github.com/Loic74650/PoolMaster (https://github.com/Loic74650/PoolMaster)

A+
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 02, 2019, 06:12 pm
je suis fan  :)  :)  :)

Tu as les références du capteur de pression ?

Pour la température, j'ai l'impression qu'elle est donnée depuis l'extérieur via requête JSON : j'ai bon ?
pourquoi ne pas avoir collé un second capteur 1-wire ?

Note : je ne suis pas sure que allumer le moteur 10 minutes par heure en cas de gel (température <2.0) soit une bonne chose pour le moteur.



Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 02, 2019, 07:14 pm
je suis fan  :)  :)  :)

Tu as les références du capteur de pression ?

Pour la température, j'ai l'impression qu'elle est donnée depuis l'extérieur via requête JSON : j'ai bon ?
pourquoi ne pas avoir collé un second capteur 1-wire ?

Note : je ne suis pas sure que allumer le moteur 10 minutes par heure en cas de gel (température <2.0) soit une bonne chose pour le moteur.
Cool, mon premier fan  :D

J'ai rajouté la ref du capteur de pression dans la liste hardware sur Github.

Pour la temp. ext. ce n'est pas exactement une requête JSON mais plutôt un système extérieur (Jeedom dans mon cas) qui publie la température ext. sur un topic de Mosquitto. PoolMaster y est abonné et reçoit donc l'info. J'ai fait cela car mon local technique est mal placé pour ajouter une sonde 1-wire mais la modif est simple si besoin.

Enfin, pour l'allumage moteur toutes les 10 minutes par heure en cas de gel tu as raison. Tartiflette (du projet Domogarden) m'a déjà fait la remarque et conseillé d'allumer la pompe tant que la pompe est <-2deg. Tu confirmes? Je suis preneur de tout retour d'expérience pour améliorer ce projet
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 02, 2019, 07:45 pm
je confirme que c'est ce que font la plupart des boitier hors gel (un peu comme la consigne de pression)

Il y a une temperature de déclanchement + une marge pour l'extinction pour éviter les yoyo

en gros
si Temperature air < 2.0 deg -> Allumage de la pompe
si Temperature air > 4.0 deg -> extinction pompe

Par contre, je ne connais pas les "bonnes" valeurs a mettre.
2 et 4 me paraissent pas mal, voir un peu moins


Je suis fan car le code est "très propre" avec plein de bonnes idées.

De mon coté, c'est un peu plus compliqué car je veux pouvoir tout régler via l'afficheur LCD.
A cela, j'ajoute que je realise moi même les interfaces Arduino/ORP et PH. (60€ pour 4 ampli op, c'est abusé !)

Dans la partie Amélioration, j'ai prévu de faire un mode "Nettoyage de filtre assisté pour madame" qui affiche la position des vannes et allume/éteint la pompe quand il faut (j'ai vu un capteur de turbidité...)

Par contre, j'ai encore du mal a voir comment calculer le temps de filtration, surtout au début de saison: il faut filtrer le jour et en plusieurs fois.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 02, 2019, 07:55 pm
J'ai retrouvé l'autre projet de supervision de la piscine a base d'arduino aussi

http://clement.storck.me/blog/2014/08/controle-et-supervision-de-la-piscine/

Il y a quelques truc a étudier la bas.

Autres questions :
 - tu as une chambre d'analyse
 - un pool terre ?
 - si oui, le pool terre est-il relié a la masse des sonde PH/ORP ?
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 02, 2019, 09:12 pm
OK pour le filtrage continu en fonction de la température ext. avec hystérésis. Je vais réfléchir à l'implémenter.

De mon coté, c'est un peu plus compliqué car je veux pouvoir tout régler via l'afficheur LCD.
A cela, j'ajoute que je realise moi même les interfaces Arduino/ORP et PH. (60€ pour 4 ampli op, c'est abusé !)
J'avais réfléchi à implémenter tout via le LCD mais je me laisse plutôt l'option via la page web (faut que me perfectionne en HTML avant cela...) car PoolMaster est assez orienté "connecté" donc je pars du principe qu'il sera toujours connecté au réseau.

Pour l'ampli ORP/pH je suis intéressé de voir les perfs que tu obtiendras.

Filtration: pourquoi faut-il filtrer en plusieurs fois?

J'ai retrouvé l'autre projet de supervision de la piscine a base d'arduino aussi

http://clement.storck.me/blog/2014/08/controle-et-supervision-de-la-piscine/

Il y a quelques truc a étudier la bas.

Autres questions :
 - tu as une chambre d'analyse
 - un pool terre ?
 - si oui, le pool terre est-il relié a la masse des sonde PH/ORP ?
Je connais ce blog, il est bien.
Oui j'ai une chambre d'analyse achetée sur le site où j'ai acheté les pompes péristaltiques (cf. liste hardware, c'est du super matos). J'ai également un pool terre branché à la masse de mon réseau électrique et également à la masse des sondes. Pas très académique mais cela a grandement stabilisé les mesures. Pour l'instant je n'utilise plus les isolateurs galvaniques décrits dans mon schéma, je dois les retester pour voir si cela apporte un plus
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 03, 2019, 03:39 pm
Pour les interfaces PH/ORP, j'ai réalisé le PCB sur EasyEDA a partir des shema, trouvé sur DFRobot que j'ai adapté pour remplacer mes composant CMS par des composants standards.

Il faut 1 double ampli op (TL032 - 0.66€) et un inverseur de polarité (TL7660 - 1.51€), un connecteur BNC (~1.5€) et quelques composant passif (resistances, condensateur, connecteur, etc...)
donc, je pense que les 2 interfaces devraient sortir a moins de 10 € les deux (je peux en plus mutualiser l'invserseur pour les 2 sondes).

Mais pas de raison que ça ne fonctionne pas.

Par contre, c'est pas dangereux le PoolTerre relié a la terre de l'habitation ?
Je croyais que c'était interdit
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 03, 2019, 03:44 pm
Par contre, c'est pas dangereux le PoolTerre relié a la terre de l'habitation ?
Je croyais que c'était interdit
Hmm, je n'en ai pas la moindre idée. D'où tiens-tu cette info? J'ai suivi les instructions du vendeur de pool terre ici: http://electrolyseur.fr/pool-terre.html

Je suis preneur de plus d'infos!
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 03, 2019, 04:56 pm
https://www.mypiscine.com/pool-terre-pour-piscine/130-pool-terre-aquaterre-pour-piscine-o-50-mm-3700466702124.html

Nous vous rappelons qu'il est strictement interdit (selon la norme NFP-15100) de raccorder le Pool Terre sur la Terre du réseau domestique de la maison. La Pool Terre doit être raccordé à un piquet de terre indépendant (prévoir un piquet galva de 1 m de long) planté dans le jardin, dans une zone bien exposée à la pluie.

mais je n'ai rien trouvé dans la norme justement a propos de cela
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 03, 2019, 04:58 pm
Hmm, à creuser. Je vais déjà demander à mon électricien
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 03, 2019, 08:31 pm
Réponse de mon électricien:

Quote
Effectivement les terres « piscine » doivent être interconnectées entre elles,
Et les terres « domestique » et « piscine » séparées.

En effet, les équipements « piscine » dans les volumes 0, 1 et 2 doivent être alimentés en :

-   Vol 0 :           IPx8       TBTS 12v et classe II
-   Vol 1              IPx5       TBTS 12v et classe II
-   Vol 2              IPx5       DR 30mA ou TBTS 12v et classe II

Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 03, 2019, 08:34 pm
Je suis tombé sur cet article très intéressant (https://activite-piscine.com/decryptage/les-phenomenes-de-corrosion-en-piscine-2/) de quelqu'un qui semble serieux

En résumé : si la cathode de l'electrolyseur est relié a la terre, il y a un risque "électrique" mais l'électrolyse est de tout façon en TBT donc peu de risque pour l'humain, juste une degradation plus rapide de la cellule.

En fait, il indique qu'il faut un poolTerre et que l'on peut le relier a la terre de l'habitation ou mettre un piquet spécifique (conseillé).
L'avantage de mettre un piquet spécifique, c'est que l'on ne va pas perturber les appareils de la piscine avec les nombreux courants de fuite de la maison et que l'on aura une meilleur terre (résistance faible)

Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 03, 2019, 11:06 pm
Merci je vais lire cet article et séparer mes terres!

Pour info j'ai modifié le comportement de la filtration hors-gel et elle s'allume maintenant si Temp. Air<-2deg et s'arrête si Temp. Air>+2deg
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 04, 2019, 12:14 pm
j'aurais plutôt mis :
Demarrage si Temp Air <0° voir Temp Air <+1°
Arret si Temp Air > 3°

pourquoi aller jusqu'a -2 sachant que l'eau gel a 0°
 
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 04, 2019, 12:59 pm
Mon raisonnement est le suivant: Il y a peu de chances pour que l'eau gèle à une temp. ext. de 0°, encore moins celle des canalisations (la partie critique) qui sont souvent enterrées ou dans le local technique. De plus il faut beaucoup de transfert d'énergie pour geler une masse d'eau de plusieurs m3, donc je me suis dit que -2° étaient raisonnables. En cherchant sur le net j'ai vu que d'autres utilisaient également une valeur négative
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 04, 2019, 04:23 pm
C'est pas faux
Je pense que la temperature est a adapter selon l'endroit
Chez moi, mon local n'est pas protégé du froid et cet hiver, la température est tombé en dessous de 0 sur le matin (donc après la plage de filtration) soit vers -1 ou -2.
Ca a suffit pour geler le filtre a sable qui a fini en surpression au moment de l'allumage de la pompe...

Heureusement, pas de casse.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on Apr 05, 2019, 06:16 pm
Pour info, j'ai commencé les simulations sur mon interface PH.

Pour l'instant, je suis assez confiant car :

 - les interfaces chinoise bas de gamme me font peur pour la sonde : pour gérer l'offset, ils envoient un courant non négligeable dans la sonde PH, qui n'est absolument pas faite pour ça

 - en utilisant des AOP rail to rail, je peux gérer un offset à 2,5v sur une amplitude de 5v.

Donc, en théorie, je vais être plus précis que les interfaces sondes PH actuellement vendu qui ont une amplitude de seulement 3v (sans doute car elle doivent être compatible 3.3v)

(bon, après, je vais pouvoir détecter avec une précision de 0.013 ph/bits au lieu de 0.022ph/bits. Je ne sais pas si ce sera très pertinent car c'est au dela de la précision des sondes.
Mais bon, c'est pour le fun !!!)

Je vais m'attaquer au proto !!!!
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: cseb on Apr 16, 2019, 11:05 pm
Bonjour,

J'essaye d'adapter le code pour un wemos mega, pour pouvoir disposer du Wifi (esp8266 en AT firmware) et d'une carte bon marché.

Le wemos se connecte bien au wifi, le mqtt fonctionne, mais le serveur web ne fonctionne pas.
Il est bien en écoute mais plante quand on le sollicite :
"
[WiFiEsp] New client 0
New client ?
New client
GET / HTTP/1.1
Acc[WiFiEsp] TIMEOUT: 249
"
Je me demande si cela n'est pas dû au lancement des tasks ?

Je peux mettre a disposition le source si vous le souhaitez.

Merci pour votre aide.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 17, 2019, 03:04 pm
Bonjour Cseb,

Je n'ai pas d'expérience avec les Wemos.
Essaie peut-être de ne lancer que le serveur web (pas la connexion ethernet client mqtt) pour voir si cela fonctionne.
Sur les tasks je en vois pas trop pourquoi elles seraient problématiques, ce sont juste des timers.

Tu peux me partager le code, je jetterai un oeil
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: cseb on Apr 17, 2019, 04:14 pm
Bonjour le wemos Mega est en fait un clone de l'arduino mega couplé à un Esp8266 via le serial3.
Cela permet d'utiliser l'esp8266 comme un shield WiFi.

Il y a très peu de modification apporté au code source.

J'insère le code des que possible.
Merci
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 17, 2019, 06:58 pm
Bonjour le wemos Mega est en fait un clone de l'arduino mega couplé à un Esp8266 via le serial3.
Cela permet d'utiliser l'esp8266 comme un shield WiFi.

Il y a très peu de modification apporté au code source.

J'insère le code des que possible.
Merci
Je me demande si l'ESP est capable d'avoir deux connections (server + client) simultanées: https://forum.arduino.cc/index.php?topic=422864.0
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: cseb on Apr 19, 2019, 02:48 pm
Je vais tester cela merci,

Entre temps j'ai reçu mes interfaces ORP et ma sonde ds18B20 et j'ai une autre question :
Comment se fait la calibration du ph?

D'avance merci
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 19, 2019, 03:16 pm
Salut,

Pour la calib du pH, regarde la fonction MQTT suivante:

{"PhCalib":[4.02,3.8,9.0,9.11]} -> multi-point linear regression calibration (minimum 1 point-couple, 6 max.) in the form [ProbeReading_0, BufferRating_0, xx, xx, ProbeReading_n, BufferRating_n]

Donc il faut au minimum une solution tampon ("buffer") calibrée, deux ou plus sont conseillées pour plus de précision de calibrage.
Tu mesures chaque solution tampon et tu notes les valeurs mesurées + les valeurs nominales et tu envoies le tout via MQTT au système.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 27, 2019, 06:34 pm
Bonjour, Super travail et merci pour ton partage.

Actuellement j'utilise domogarden pour ma piscine qui fonctionne a merveille, mais ton projet me correspond mieux puisque tout est accessible depuis internet et j'utilise moi même jeedom.

Cependant lors de l'installation je bloque sur la configuration de MQTT. Je rempli l'adress ip que je desir, un login et un mdp, mais en fait je ne sais pas si c'est ça qu'il faut faire. Peut m'indiquer comment faire pour lancer MQTT ou un lien ?

Merci,
Alex
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 27, 2019, 09:02 pm
Merci Alex, ça fait toujours plaisir.

Pour la config MQTT, tu dois avoir un broker MQTT (j'utilise Mosquitto) d'installé et l'avoir testé, par ex. via Jeedom (j'utilise le plugin jMQTT) ou bien un client lambda (j'utilise MQTT.fx). Une fois que tu es certain du bon fonctionnement du broker et des credentials (IP, login et mdp), ce sont ceux que tu dois utiliser dans le code de PoolMaster.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 28, 2019, 11:16 am
Super, j'ai jeedom qui communique avec maintenant. Me reste plus qu'a comprendre ou envoyer les api et créer les virtuels.
Merci.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 28, 2019, 03:30 pm
Super, j'ai jeedom qui communique avec maintenant. Me reste plus qu'a comprendre ou envoyer les api et créer les virtuels.
Merci.
Good!
Si Jeedom communique, tu peux maintenant créer un objet PISCINE dans le plugin jMQTT, tu l'inscris au topic "Home/Pool/#" et tu le mets en mode inclusion. A la prochaine réception d'infos au format JSON de la part de PoolMaster, il va alors créer une commande associée. Tu coches la case PARSE JSON et il va la décomposer en commandes individuelles que tu pourras rassembler dans un virtuel par exemple.

Petite subtilité pour décomposer les infos binaires imbriquées dans les variables IO et IO2, regarde la capture d'écran des paramètres Jeedom sur mon GIT

Pour envoyer des commandes à PoolMaster, tu crées des commandes dans ton objet PISCINE du plugin jMQTT de Jeedom, tu choisis le topic "Charmoisy/Pool/API" et tu mets la commande en valeur, par exemple "{"FiltPump":1}" pour allumer la filtration et "{"FiltPump":0}" pour l'éteindre
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: zaienj on Apr 28, 2019, 04:45 pm
Bonjour a toi loulou je voulais connaître ton système de domotique et super projet
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 28, 2019, 04:52 pm
Merci du coup de main, je suis un peu perdu quand meme. :)
J'ai bien deux lignes qui se sont créé.
Home/Pool/err et Home/Pool/status . Mais quand je clique sur PARSE JSON il ne décompose aucune ligne.
J'ai peut être mal compris une consigne. Par contre les API fonctionnent bien en mettant comme topic Home/Pool/API .
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 28, 2019, 07:08 pm
Bonjour a toi loulou je voulais connaître ton système de domotique et super projet
Merci Zaienj, mon système domotique s'organise autour de:

- des "nodes" filaires de type Arduino ethernet (comme le projet PoolMaster)
- des "nodes" radio (protocole LoraWan) pour les besoins distants et parfois autonomes (sur batterie)
- un broker MQTT (Mosquitto) qui relie les nodes entre eux et permet de les piloter, s'y connecter, etc.
- Jeedom (et un peu de NodeRed) pour le dashboard, historisation des données, appli mobile, etc.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 28, 2019, 07:17 pm
Merci du coup de main, je suis un peu perdu quand meme. :)
J'ai bien deux lignes qui se sont créé.
Home/Pool/err et Home/Pool/status . Mais quand je clique sur PARSE JSON il ne décompose aucune ligne.
J'ai peut être mal compris une consigne. Par contre les API fonctionnent bien en mettant comme topic Home/Pool/API .
PoolMaster publie trois types d'infos sur trois topics:

1/ le statut de connection au broker MQTT sur "Home/Pool/status"
2/ les messages d'erreur sur "Home/Pool/err"
3/ le plus important, les données mesurées toutes les 30secs sur "Home/Pool". Ces données ont la forme d'un message au format JSON imbriqué du style "{"Tmp":818,"pH":321,"PSI":56,"Orp":583,"FilUpT":8995,"PhUpT":0,"ChlUpT":0,"IO":11,"IO2":0}" et c'est ce message qu'il faut parser, pas les autres

On dirait que tu ne reçois pas ce dernier. Es-tu certain que ta sonde de temp. d'eau DS18B20 fonctionne?

Pour débuger, lance le moniteur série (9600 bauds) de l'IDE Arduino pendant l'exécution du programme afin de voir ce qui est publié, et envoie moi ce qui est affiché si nécessaire.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 29, 2019, 06:31 pm
En fait rien n'etait branché dessus, je voulais que tout sois au point avant de tout brancher.
Donc j'ai tout branché a pars l'ecran lcd, mais c'est pas mieux...

sendile
Printed some characters to LCD Screen2: 81
Printed some characters to LCD Screen2: 81
Stored config version: 107. Loading settings from eeprom
107, 0, 0
8, 12, 20, 20, 59
1800, 1800
3600000, 7200000, 0, 0
7.40, 730.00, 0.50, 0.25, 10.00, 27.00, 3.00, 4.23, -2.28, -1268.78, 2718.63, 1.00, 0.00
1330000.00, 0.00, 0.00, 2857.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40
FreeRam: 3646 - Qeued messages: 1
published: Home/Pool/status - online
[memCheck]: 3885b
Payload: {"Tmp":0,"pH":0,"PSI":40,"Orp":0,"FilUpT":0,"PhUpT":0,"ChlUpT":0,"IO":24,"IO2":0} - Payload size: 94
Json parseObject() success -
Payload: {"Tmp":0,"pH":0,"PSI":40,"Orp":0,"FilUpT":0,"PhUpT":0,"ChlUpT":0,"IO":24,"IO2":0} - Payload size: 94
Printed some characters to LCD Screen1: 80
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
sending XML file
2060-07-20 17:18:12 - Error getting temperature from DS18b20_0
Ph: 18.87 - Orp: 0.00 - 2718.63mV
PSI: 3.54 - 3.54Bar
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
2060-07-20 17:18:14 - Error getting temperature from DS18b20_0
Ph: 18.87 - Orp: 0.00 - 2718.63mV
PSI: 2.30 - 2.92Bar
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
Printed some characters to LCD Screen2: 80
Trying to print too many characters to LCD Screen1: 84
sending XML file
2060-07-20 17:18:17 - Error getting temperature from DS18b20_0
Ph: 18.09 - Orp: 0.00 - 2718.63mV
PSI: 29.00 - 11.61Bar
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 29, 2019, 07:25 pm
Petite question. J'ai vu que la sonde ds18b20 est branché sur la borne 20 donc sur quels bornes le rtc module est branché ? Car moi j'utiliser les bornes 20 (sda)et 21(scl) pour le cablage.
Merci
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 29, 2019, 09:24 pm
En fait rien n'etait branché dessus, je voulais que tout sois au point avant de tout brancher.
Donc j'ai tout branché a pars l'ecran lcd, mais c'est pas mieux...

sendile
Printed some characters to LCD Screen2: 81
.
.
.

PSI: 29.00 - 11.61Bar
Bon à première vue je ne vois pas ce qui cloche, il rentre bien dans la fonction PublishDataCallback() et publie les données de mesure. Avant de rajouter plus de fonctions debug dans le code, vérifie bien dans ton code que la variable "PoolTopic" est bien égale à "Home/Pool" et que ton objet jMQTT dans Jeedom a bien souscrit au topic "Home/Pool/#"

Alternativement, utilise le client MQTT.fx, souscrit au topic # et regarde si et sur quel topic les données de mesure sont publiées.

Enfin, tu as un souci avec la sonde de température, as-tu bien renseigné son adresse unique (variables "DS18b20_0" et "sDS18b20_0") dans le code
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 29, 2019, 09:30 pm
Petite question. J'ai vu que la sonde ds18b20 est branché sur la borne 20 donc sur quels bornes le rtc module est branché ? Car moi j'utiliser les bornes 20 (sda)et 21(scl) pour le cablage.
Merci
Mon hardware est un CONTROLLINO, donc pas un Arduino 2560. Il faut donc que tu revoies les affectations de la sonde de temp, du RTC, voire des relais et autre. Si tu veux bien fais moi un retour sur tes affectations finales et je l'intègrerai dans le code pour ceux qui ont un Arduino 2560

[edit] en regardant mon code actuel je vois que j'avais déjà réaffecté la sonde de temp à la pin 6 car je suis en train de tester un périphérique I2C et donc j'avais besoin de la pin 20
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on Apr 30, 2019, 06:37 am
Bon à première vue je ne vois pas ce qui cloche, il rentre bien dans la fonction PublishDataCallback() et publie les données de mesure. Avant de rajouter plus de fonctions debug dans le code, vérifie bien dans ton code que la variable "PoolTopic" est bien égale à "Home/Pool" et que ton objet jMQTT dans Jeedom a bien souscrit au topic "Home/Pool/#"

Alternativement, utilise le client MQTT.fx, souscrit au topic # et regarde si et sur quel topic les données de mesure sont publiées.

Enfin, tu as un souci avec la sonde de température, as-tu bien renseigné son adresse unique (variables "DS18b20_0" et "sDS18b20_0") dans le code
Encore merci pour ton aide,
Mon objet jMQTT est bien souscrit au topic "Home/Pool/#" et dans le code j'ai la variable PoolTopic = "Home/Pool" . Je vais la modifier pour PoolTopic = "Home/Pool/#" .

Pour ma sonde je pense que c'est un problème physique est non logiciel. Je réessayerai le code et la sonde se soir ou demain.

Pour les pins adressé voila ce que j'ai fait .
 
//Data wire is connected to input digital pin 20 on the Arduino
#define ONE_WIRE_BUS_A 20

  #define FILTRATION_PUMP 38
  #define PH_PUMP         36
  #define CHL_PUMP        42
 
  //Digital input pins connected to Acid and Chl tank level reed switches
  #define CHL_LEVEL       28
  #define PH_LEVEL        30
 
  //Analog input pins connected to Phidgets 1130_0 pH/ORP Adapters.
  //Galvanic isolation circuitry between Adapters and Arduino required!
  #define ORP_MEASURE     A9
  #define PH_MEASURE      A8
 
  //Analog input pin connected to pressure sensor
  #define PSI_MEASURE     A7


Il me manque juste le rtc module je ne sais pas ou le brancher.

Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Apr 30, 2019, 08:39 am
Du coup tu branches la sonde sur la pin 6:

#define ONE_WIRE_BUS_A 6

Et le RTC sur les pins 20 et 21 du bus I2C

Pour les topics il ne faut pas ajouter la "wildcard" # dans le code, juste dans les clients qui souscrivent au topic (Jeedom et MQTT.fx par ex.).
Si tu ne veux pas essayer MQTT.fx, essaye de faire souscrire Jeedom au topic "#" pour voir tout ce qui passe par le broker Mosquitto (via le log temps réel de Jeedom par ex.)
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 04, 2019, 09:49 am
Bonjour Loulou74, j'ai pris mon temps pour essayer d'avancé, voila ce que j'ai fait.

J'ai installé MQTT.fx, la il ma trouvé 3 topics : Home/Pool/API , Home/Pool/status et Home/Pool/Err .
Je retrouve les mêmes sur JMQTT .
Ce qui est bizzare c'est que sur JMQTT ou MQTT.fx le status est offline alors que depuis le moniteur série de l'arduino le status est online.
Quand je regarde les logs sur jeedom et ça tourne en boucle.

[2019-05-04 09:48:05][DEBUG] : daemon starts, pid is 26980
[2019-05-04 09:48:05][INFO] : Connect to mosquitto: Host=localhost, Port=1883, Id=jeedom
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending CONNECT
[2019-05-04 09:48:05][INFO] : Equipment Home: subscribes to "Home/#" with Qos=1
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending SUBSCRIBE (Mid: 1, Topic: Home/#, QoS: 1, Options: 0x00)
[2019-05-04 09:48:05][INFO] : Subscribes to the API topic "jeedom/api"
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending SUBSCRIBE (Mid: 2, Topic: jeedom/api, QoS: 1, Options: 0x00)
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received CONNACK (0)
[2019-05-04 09:48:05][DEBUG] : mosquitto: connection response is Connection Accepted.
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending PUBLISH (d0, q1, r1, m3, 'jeedom/status', ... (6 bytes))
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received SUBACK
[2019-05-04 09:48:05][DEBUG] : mosquitto: topic subscription accepted, mid=1
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received PUBLISH (d0, q1, r1, m1, 'Home/Pool/status', ... (7 bytes))
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending PUBACK (m1, rc0)
[2019-05-04 09:48:05][DEBUG] : Payload offline for topic Home/Pool/status
[2019-05-04 09:48:05][INFO] : -> Home|Poolstatus offline
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received PUBLISH (d0, q1, r1, m2, 'Home/Pool/Err', ... (32 bytes))
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending PUBACK (m2, rc0)
[2019-05-04 09:48:05][DEBUG] : Payload Trying to print 83 chars to LCD1 for topic Home/Pool/Err
[2019-05-04 09:48:05][INFO] : -> Home|PoolErr Trying to print 83 chars to LCD1
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received PUBLISH (d0, q1, r1, m3, 'Home/Pool/API', ... (10 bytes))
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom sending PUBACK (m3, rc0)
[2019-05-04 09:48:05][DEBUG] : Payload {"Mode":0} for topic Home/Pool/API
[2019-05-04 09:48:05][INFO] : -> Home|PoolAPI {"Mode":0}
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received SUBACK
[2019-05-04 09:48:05][DEBUG] : mosquitto: topic subscription accepted, mid=2
[2019-05-04 09:48:05][DEBUG] : mosquitto: Client jeedom received PUBACK (Mid: 3, RC:0)
[2019-05-04 09:48:06][DEBUG] : mosquitto: disconnectedunexpectedly
[2019-05-04 09:48:06][WARNING] : exception thrown by MQTT client: The connection was lost.
[2019-05-04 09:48:06][INFO] : relance le démon dans 15s
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 04, 2019, 09:56 am
Et pour ce qui est de la sonde j'ai toujours la meme erreur : Error getting temperature from DS18b20_0
Alors j'ai changé de pin, j'ai changé de sonde, j'ai vérifier son fonctionnement en installant un code simple pour pouvoir la lire. Je ne comprends pas d'ou viens le problème.

Merci Loulou74 du coup de main pour résoudre mes problemes, mais je vais abandonné car trop de soucis.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on May 05, 2019, 11:11 pm
Et pour ce qui est de la sonde j'ai toujours la meme erreur : Error getting temperature from DS18b20_0
Alors j'ai changé de pin, j'ai changé de sonde, j'ai vérifier son fonctionnement en installant un code simple pour pouvoir la lire. Je ne comprends pas d'ou viens le problème.

Merci Loulou74 du coup de main pour résoudre mes problemes, mais je vais abandonné car trop de soucis.

Dommage mais je comprends.
J'ai pas encore testé mon code sur la config Arduino Mega 2560 donc je ne suis pas surpris qu'il y aie quelques bugs à résoudre.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: TheLapin on May 07, 2019, 05:15 pm
Et pour ce qui est de la sonde j'ai toujours la meme erreur : Error getting temperature from DS18b20_0
Alors j'ai changé de pin, j'ai changé de sonde, j'ai vérifier son fonctionnement en installant un code simple pour pouvoir la lire. Je ne comprends pas d'ou viens le problème.

Merci Loulou74 du coup de main pour résoudre mes problemes, mais je vais abandonné car trop de soucis.

une question toute bête mais je la pose quand même : tu as bien changé l'adresse de la sonde DS18b20 ?
(ligne 277)

DeviceAddress DS18b20_0 = { 0x28, 0x92, 0x25, 0x41, 0x0A, 0x00, 0x00, 0xEE };
Chaque sonde a sa propre adresse qui permet d'avoir plusieurs sondes sur le même pin

Autre question : il y a bien la résistance de 4.7k de tirage sur le pin de data
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 07, 2019, 06:16 pm
une question toute bête mais je la pose quand même : tu as bien changé l'adresse de la sonde DS18b20 ?
(ligne 277)

DeviceAddress DS18b20_0 = { 0x28, 0x92, 0x25, 0x41, 0x0A, 0x00, 0x00, 0xEE };
Chaque sonde a sa propre adresse qui permet d'avoir plusieurs sondes sur le même pin

Autre question : il y a bien la résistance de 4.7k de tirage sur le pin de data
C'est peut être pas bête du tout comme question. Non je n'ai pas changé l'adresse de la sonde, je peux mettre quoi comme adresse car sur ma sonde je n'ai rien d'ecrit.

Oui il y a bien la résistance de 4.7kohms .

Apres ma sonde fonctionne bien avec d'autres codes, mais il n'y a pas d'adresse a mettre.   
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on May 07, 2019, 08:48 pm
C'est peut être pas bête du tout comme question. Non je n'ai pas changé l'adresse de la sonde, je peux mettre quoi comme adresse car sur ma sonde je n'ai rien d'ecrit.

Oui il y a bien la résistance de 4.7kohms .

Apres ma sonde fonctionne bien avec d'autres codes, mais il n'y a pas d'adresse a mettre.   
Merci Lapin.
@Alexkids11: il est bien écrit dans la doc (section "compatibility") et dans le code qu'il faut mettre l'adresse MAC de ta sonde. C'est important car si par la suite tu voulais ajouter une seconde sonde, par ex. pour la temp. ext., et bien sans la bonne adresse par sonde, tu ne saurais pas discriminer laquelle a retourné quelle temp. (à part si elles sont sur des pins différents).

Il y a pléthore de sketchs sur le net pour trouver l'adresse de ta sonde, par ex. ici: http://henrysbench.capnfatz.com/henrys-bench/arduino-temperature-measurements/ds18b20-arduino-user-manual-introduction-and-contents/ds18b20-user-manual-part-2-getting-the-device-address/
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 08, 2019, 07:04 am
Pour moi je pensais que c'etait une adresse a choisir comme pour l'adresse mac du shield ethernet, donc je ne m'etais pas posé la question.

Mais effectivement j'ai fais le boulé et maintenant j'ai bien la valeur de la sonde.

Me reste plus qu'a résoudre la communication, du coup ça me fait penser que j'ai du passer a coté d'un truc logique pour vous. Mais pas pour moi :).
Encore merci pour votre patience.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on May 10, 2019, 05:24 pm
@Alexkids11: j'ai ajouté (version 3.0.2) un peu de code debug autour de la fonction MQTTClient.Publish()
Si tu as encore le courage tu peux essayer cette nouvelle version et me donner ce que le port série de dit
A+
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 11, 2019, 02:39 pm
J'ai télécharger le nouveau fichier et en le configurant j'ai laissé MqttServerClientID = "ArduinoPool2"; .
Je l'avait modifier sur l'ancienne version. Donc avant de téléversé la nouvelle version je modifie la configuration de JMQQT en remettant ArduinoPool2.
Je relance le demon et la il me trouve une nouvelle entrée que je peux parsé, avec toute les valeurs.
J'ai tout d'accessible.

Je téléverse la nouvelle version, je n'ai plus les info sur JMQQT. j'ai l'entrée Poolstatus offline.
Je remet MqttServerClientID = "Jeedom"  , uniquement dans l'arduino et la ça me remet Poolstatus online avec toutes les infos accessibles.
Bref ça fonctionne avec la nouvelle et l'ancienne version en laissant le MqttServerClientID différent de la configuration de JMQQT.


Petite question : sur la nouvelle version ou peut on configuer les pins de l'écran lcd ? Je n'ai pas trouvé .

En tout cas, encore merci.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on May 11, 2019, 05:51 pm
Un truc important en MQTT est de ne pas avoir plusieurs clients qui se connectent au broker MQTT (Mosquitto) avec le même ID. Ton Arduino ET Jeedom sont deux clients distincts donc ils ne doivent pas avoir le même ID.
Donc tu laisses MqttServerClientID = "ArduinoPool2" (ou un autre nom quelconque) dans ton Arduino et tu mets autre chose dans jMQTT.

Pour les pins du lcd, j'ai changé le code car j'utilise maintenant un LCD qui communique via le port I2C.
Si ton LCD n'est pas I2C, change la ligne 192:

Code: [Select]
LiquidCrystal_I2C lcd(0x27,20,4);  // set the I2C LCD address to 0x27 for a 20 chars and 4 lines display

par l'ancien code:

Code: [Select]
//pin definitions, may vary in your setup
const int rs = 9, en = 10, d4 = 11, d5 = 12, d6 = 13, d7 = 42;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Alexkids11 on May 12, 2019, 11:29 am
Merci pour cette éclaircissement, tout s'explique, depuis le début j'avais tout faux.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Sylvaindu13 on Jun 01, 2019, 11:34 pm
Bonjour à tous,
Avant tout, merci à toi Loulou74 pour ce super projet.

J'avais longtemps hésité par faute de connaissances dans le domaine de la domotique pour monitorer ma piscine avec mon smartphone ou PC.
Mais à la découverte de ton projet je me suis vite motivé et c'est chose presque faite...

J'ai donc réuni  tous les composants nécessaires à la réalisation de la gestion de ma piscine.
Cependant, étant novice en Domotique j'ai beaucoup de mal à faire communiquer tout ce petit monde.
En parcourant les différents posts j'ai donc installé Mosquitto broker sur mon PC (sous W10) + MQTT.fx malheureusement par manque d'expérience et d'informations je n'arrive pas a communiquer avec MQTT.fx en ayant préalablement renseigné le  MQTT broker profile settings avec le login, password et IP .

Pour info, il n' y a que le shield ethernet sur le Mega2560 pour tester la communication sur mon PC et ma carte Ethernet W5100 est bien reconnue par mon routeur.
J'installerai plus tard le module RTC , capteur de T° etc...

Il y aurait il un tuto qui pourrait m'aider de A à Z ou bien pourrait on dire ce que j'ai oublié d'installer ou faire ou bien suis-je entrain de faire fausse route tout simplement.

Par avance, merci pour toutes les informations que vous pourrez m'apporter.
voici ci-après un extrait du log du moniteur série.

22:43:00.300 -> Stored config version: 108. Loading settings from eeprom
22:43:00.304 -> 108, 0, 0
22:43:00.304 -> 8, 12, 20, 20, 59
22:43:00.328 -> 1800, 1800
22:43:00.328 -> 3600000, 7200000, 0, 0
22:43:00.363 -> 7.40, 730.00, 0.50, 0.25, 10.00, 27.00, 3.00, 4.23, -2.28, -1000.00, 2500.00, 1.00, 0.00
22:43:00.467 -> 1330000.00, 0.00, 0.00, 2857.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40
22:43:03.102 -> Failed to connect to the MQTT broker
22:43:03.135 -> [memCheck]: 3947b
22:43:04.101 -> Failed to connect to the MQTT broker
22:43:04.135 -> Failed to connect to the MQTT broker
22:43:06.511 -> 2063-03-16 17:18:13 - Error getting temperature from DS18b20_0
22:43:06.579 -> Ph: 7.27 - Orp: 2.12 - 378.79mV
22:43:06.613 -> PSI: 15.43 - 15.43Bar
22:43:08.922 -> 2063-03-16 17:18:16 - Error getting temperature from DS18b20_0
22:43:08.990 -> Ph: 5.80 - Orp: 1.68 - 601.17mV
22:43:09.025 -> PSI: 11.34 - 13.38Bar
22:43:10.745 -> Trying to print too many characters to LCD Screen1: 83
22:43:11.332 -> 2063-03-16 17:18:18 - Error getting temperature from DS18b20_0
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Jun 02, 2019, 08:31 pm
Bonjour Sylvaindu13,

On dirait que ton souci vient plus de ta config broker MQTT que de PoolMaster.
Avant tout je suis étonné que tu l'aies installé sur un PC Win10. Ton PC tourne en continu? Perso je l'aurais plutôt installé sur un Raspberry Pi ou une VM sur un NAS. Ensuite, MQTT.fx sur le PC, ok, car tu l'utilises rarement, et pour du debug principalement. Il y a foultitude de tutos sur Mosquitto. Donc je commencerais par la.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Sylvaindu13 on Jun 03, 2019, 10:06 pm
Bonjour Loulou74
Merci beaucoup pour ta réponse.
Effectivement, c'était juste un problème d'IP.
il fallait que je mette l'adresse du PC sur lequel était installé le broker MQTT,  ça fonctionne maintenant.
Sinon, oui je compte investir dans un NAS ultérieurement.
C'était seulement un test pour que je comprenne comment ça fonctionne. Ensuite je souhaiterai monitorer le tout avec mon smartphone, je pense utiliser BLINK ou un autre ...
Honnêtement je ne sais pas quoi utiliser car je n'ai pas encore bien compris à quel moment on calibre les sondes ORP et PH et quel client utiliser pour le faire.

Bonne soirée.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Jun 04, 2019, 10:22 am
Bonjour Sylvaindu13,

Dans l'ordre je ferais:

1- installe PoolMaster
2- installe Mosquitto sur ton réseau local, par exemple sur un Raspberry Pi. Éventuellement installe y aussi NodeRed (pour Blynk). Assure toi que PoolMaster est connecté à Mosquitto
3- une fois que tu as des mesures qui remontent (à la fois sur l'écran LCD et sur Mosquitto), tu peux envoyer des commandes de calibrage MQTT à PoolMaster via Mosquitto (via MQTT.fx, NodeRed, Blynk, Jeedom...tu as le choix). On verra à ce moment quoi envoyer et comment. Tu verras c'est assez simple.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 26, 2019, 07:27 pm
Bonjour a tous
Je viens de téléverser le projet pour la 1er fois sur mega2650 mais j'ai un soucis de lecture sur le LCD 4x16. Il n'y a pas de retour a la ligne. Voici mon code modifié:

//LCD init.
//pin definitions, may vary in your setup
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
bool LCDToggle = true;

Je voulais joindre une photo mais je ne sais pas comment faire.
Merci.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 26, 2019, 09:15 pm
Bonjour Maccaire,

Le code est fait pour un LCD 4x20 et non pas 4x16.

A noter aussi que j'ai changé en cours de route de type de LCD, il faut maintenant un LC de type I2C plutôt que avec data bits parallèles

Loic
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 27, 2019, 01:37 pm
Merci de votre réponse Loic
Je commande sur amazone et je relance le televersement modifie en bus I2C.
Pour les swichts et les leds, Je ne comprends pas le cablage.
//Front panel push button switch
  #define PUSH_BUTTON_PIN  40   //Connect a button switch from this pin to ground
  #define GREEN_LED_PIN    54  //Digital output pin to switch ON/OFF Green LED of push button
  #define RED_LED_PIN      56  //Digital output pin to switch ON/OFF Red LED of push button
  Encore besoin de vos conseils.
Merci
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 27, 2019, 05:32 pm
Merci de votre réponse Loic
Je commande sur amazone et je relance le televersement modifie en bus I2C.
Pour les swichts et les leds, Je ne comprends pas le cablage.
//Front panel push button switch
  #define PUSH_BUTTON_PIN  40   //Connect a button switch from this pin to ground
  #define GREEN_LED_PIN    54  //Digital output pin to switch ON/OFF Green LED of push button
  #define RED_LED_PIN      56  //Digital output pin to switch ON/OFF Red LED of push button
  Encore besoin de vos conseils.
Merci
Pour le switch et les LEDs tu devras peut-être choisir d'autres pins libres sur le mega2560 (je n'utilise pas cette plateforme) mais l'idée est d'utiliser une entrée digitale pour le bouton et deux sorties digitales pour les LEDs.

Ensuite le bouton que j'ai référencé (Adafruit) ne contient pas de LED verte donc tu peux ignorer le câblage de la LED verte ou bien en câbler une indépendante du bouton.

Mon bouton comporte en revanche une LED rouge qu'il faut relier entre le GND et une sortie digitale de libre (RED_LED_PIN). Attention de vérifier si tu dois utiliser une résistance entre la LED et la sortie digitale, en fonction de ta plateforme (dans mon cas oui) 
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 29, 2019, 07:28 pm
Bonsoir Loulou74
J'avance doucement dans mon projet, comme j'avais sous la main un module PH4502C je l'ai mis a la place du phidget sur la pin A7 mais le ph est complètement faux du genre 8.86 au lieu de 7.69 relevé sur mon ph metre.
J'ai code qui marche bien avec cette sonde:
Si c'est possible de le transcrire pour PoolMaster, je suis nul dans ce domaine.
Un autre soucis le module ne ce met pas a l'heure et je n'ai pas vu de doc.
Pour rappel je suis sur mega2560.
Merci
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 29, 2019, 08:44 pm
Bonsoir Maccaire,

Je ne connais pas le module PH4502C mais partons du principe qu'il fonctionne correctement. Une valeur de pH de 8,86 au lieu de 7,69 n'est pas si mal du tout, il faut probablement juste la calibrer. Pour ce faire il faut au moins une solution de référence, deux ou trois c'est encore mieux. Il faut également avoir la communication MQTT en place.

Donc tu mesures ta première solution, tu notes la valeur (par ex. 4.02) ainsi que la valeur nominale de la solution (par ex. 3.80). Si tu as une seconde solution tu fais pareil (imaginons que cette seconde mesure donne 9.0 pour une valeur nominale de 9.11) et tu envoies la commande suivante via MQTT:

{"PhCalib":[4.02,3.8,9.0,9.11]}

Ou

{"PhCalib":[4.02,3.8]}

si tu n'as qu'une solution de référence.

Explication en anglais: multi-point linear regression calibration (minimum 1 point-couple, 6 max.) in the form [ProbeReading_0, BufferRating_0, xx, xx, ProbeReading_n, BufferRating_n]



Pour l'heure c'est pareil: API MQTT! Tu utilises la fonction suivante:

{"Date":[1,1,1,18,13,32,0]}      -> set date/time of RTC module in the following format: (Day of the month, Day of the week, Month, Year, Hour, Minute, Seconds), in this example: Monday 1st January 2018 - 13h32mn00secs

Bon bricolage
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 08:22 am
Merci Loulou74 de m'assister dans mon install, je n'arrive pas a utiliser mqtt correctement, j'ai bien creer le brocker  mosquitto sur un raspberry qui me sert pour domoticz mais je ne comprend pas ce que je dois mettre sur le fichier  pour :MqttServerLogin et MqttServerPwd car  dans l'install de mosquitto je n'ai rien rentrer.
 
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 08:42 am
Merci Loulou74 de m'assister dans mon install, je n'arrive pas a utiliser mqtt correctement, j'ai bien creer le brocker  mosquitto sur un raspberry qui me sert pour domoticz mais je ne comprend pas ce que je dois mettre sur le fichier  pour :MqttServerLogin et MqttServerPwd car  dans l'install de mosquitto je n'ai rien rentrer.
 
Pas de souci, tant que je peux...
Ton install de broker Mosquitto ne requiert donc probablement pas de login et mdp.

Dans ce cas essaie avec:

const char* MqttServerLogin = nullptr;
const char* MqttServerPwd = nullptr;

ou

const char* MqttServerLogin = "";
const char* MqttServerPwd = "";


Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 09:26 am
Ok c'est en bonne voie, mais je ne recoit que les topics : Home /Pool Status et Home /Pool  mais pas Api alors comment je peu envoyer des commandes pour étalonnage et la pendule.
Un defauts affichage {"Tmp":-12700,"pH":823,"PSI":978,"Orp":216,"FilUpT":0,"PhUpT":0,"ChlUpT":0,"IO":24,"IO2":32} pas le point pour le ph 8.23?
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 09:42 am
Good, ça progresse ;)

C'est normal que tu ne reçoives rien sur le topic Home/API, PoolMaster n'y publie rien... Par contre il y a souscrit, donc si toi tu publies une commande sur le broker sur le topic Home/API, PoolMaster le recevra :)

Pour l'affichage c'est pas un défaut, c'est normal, relis la description du projet (https://github.com/Loic74650/PoolMaster). Si tu ne parles pas anglais, Google est ton ami:

PoolMaster en Francais (https://translate.googleusercontent.com/translate_c?depth=1&hl=fr&rurl=translate.google.com&sl=en&sp=nmt4&tl=fr&u=https://github.com/Loic74650/PoolMaster&xid=17259,1500001,15700021,15700186,15700190,15700256,15700259,15700262,15700265&usg=ALkJrhiTL6z-mf5wNW6HfzmWeJbdMK0zvA)

Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 09:50 am
Ok j'ai trouver pour API, il fallait ajouter pour publish, heure ok il me reste étalonnage ph.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 10:36 am
Ok j'ai trouver pour API, il fallait ajouter pour publish.
Que veux-tu dire?

Sinon j'ai remarqué dans tes valeurs que tu n'as pas encore de sonde de température d'eau ou alors que son adresse unique n'est pas correctement renseignée dans le code.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 10:50 am
Grosse catastrophe , j'ai deplacer mon installation fils volants de la cuisine au sous-sol pour faire l'étallonage de la sonde et plus rien ne marche, la carte éhernet clignote normalement l'afficheur alligne 2 rangées de carrés blancs et le terminale m'envoie cela:
10:49:09.459 -> Stored config version: 110. Loading settings from eeprom
10:49:09.495 -> 110, 0, 0
10:49:09.530 -> 8, 12, 20, 20, 59
10:49:09.530 -> 1800, 1800
10:49:09.564 -> 3000000, 3600000, 0, 0
10:49:09.564 -> 7.40, 730.00, 0.50, 0.00, 12.10, 27.00, 3.00, 4.16, -2.10, -1189.00, 2564.00, 1.00, 0.00
10:49:09.668 -> 2000000.00, 0.00, 0.00, 20000.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40
J'ai re téléverser mais pareil .
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 10:54 am
Grosse catastrophe , j'ai deplacer mon installation fils volants de la cuisine au sous-sol pour faire l'étallonage de la sonde et plus rien ne marche, la carte éhernet clignote normalement l'afficheur alligne 2 rangées de carrés blancs et le terminale m'envoie cela:
10:49:09.459 -> Stored config version: 110. Loading settings from eeprom
10:49:09.495 -> 110, 0, 0
10:49:09.530 -> 8, 12, 20, 20, 59
10:49:09.530 -> 1800, 1800
10:49:09.564 -> 3000000, 3600000, 0, 0
10:49:09.564 -> 7.40, 730.00, 0.50, 0.00, 12.10, 27.00, 3.00, 4.16, -2.10, -1189.00, 2564.00, 1.00, 0.00
10:49:09.668 -> 2000000.00, 0.00, 0.00, 20000.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.40
J'ai re téléverser mais pareil .
Ces lignes sont normales, il affiche les valeurs de la config stockée en EEPROM au démarrage du programme.
S'il n'affiche rien de plus, c'est sans doute qu'il est bloqué au démarrage, par exemple en essayant de se connecter au broker MQTT. As-tu rebranché le réseau?
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 12:21 pm
oui j'ai rebranché le cable ethernet,je n'ai pas de soude i2c je n'ai qu'une sonde 3 fils étanche et une sonde dht11
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 12:56 pm
La sonde de température dont je parle est une DS18B20 de ce type (https://fr.aliexpress.com/item/32580791476.html?src=google&albslr=205618556&src=google&albch=shopping&acnt=494-037-6276&isdl=y&slnk=&plac=&mtctp=&albbt=Google_7_shopping&aff_platform=google&aff_short_key=UneMJZVf&&albagn=888888&albcp=1706977641&albag=66909914152&trgt=800756788226&crea=fr32580791476&netw=u&device=c&gclid=CjwKCAjwkqPrBRA3EiwAKdtwkz_beD8bOjx8jDaY3T95lE2vA9DlJZjt6SckfDAmQvPAf1cRI25fuxoCrkkQAvD_BwE&gclsrc=aw.ds)
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 02:45 pm
Ok commandez chez ali mais pas express. Je vais commencer a installer dans le boitier car en fils volants j'ai beaucoup de reset intempestif et l'horloge ne garde pas heure, rien ne s'incrit sur la sd elle est toujours vierge. Je vous tiens au courant aprés le week end.
Bon week end a vous.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Aug 30, 2019, 03:04 pm
Encore une question
Le bouton poussoir sert a changer la page de l'écran mais les 2 autres boutons a quoi servent ils, sont ils poussoir ou inter.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 04:07 pm
rien ne s'incrit sur la sd elle est toujours vierge. Je vous tiens au courant aprés le week end.
Et pour cause, ce projet n'écrit rien sur une carte SD
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Aug 30, 2019, 04:13 pm
Encore une question
Le bouton poussoir sert a changer la page de l'écran mais les 2 autres boutons a quoi servent ils, sont ils poussoir ou inter.
Le bouton poussoir sert a changer la page de l'écran (appui court) ainsi qu'à reseter les erreurs (appui long).
Il n'y a pas d'autre bouton dans ce projet...
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Sep 01, 2019, 05:39 pm
Bonsoir Loulou74
J'ai mis la bete dans la boite mais j'ai un soucis avec l'affichage du ph il m'indique des valeurs loufoque du genre 18.7 sonde branchée ou pas c'est pareil . J'ai voulu envoyé une commande a la pompe ph {"PhPump": 1} mais cela ne marche pas non plus j'ai essayé les sortie digitale 29, 30, sans succés.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Sep 01, 2019, 06:04 pm
Bonsoir Maccaire

Est-ce que ça fonctionnait mieux avant que tu mettes en boîte? Si oui revérifier câblage, etc.
De mauvaises mesures peuvent avoir beaucoup d'origines comme une mauvaise alimentation, des courants de fuite (utilises tu l'isolateur galvanique comme recommandé?), module pH ou sonde défectueux...
 
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: maccaire on Sep 01, 2019, 06:33 pm
J'avais toujours des problemes de micro coupure donc je pensais que si je refusait le cablage plus propre  tout serait solutionné mais ce n'est pas le cas. Mon gros soucis en premier l'horloge qui ne garde pas l'heure, le relais qui n'est pas actionner par les sorties digital (en 5 volt direct il marche)ma sonde qui ne reponds plus (pas mis isolation galvanique) et pour terminer  la sonde temperature qui ne remonte pas sur la pin 6 (c'est bien A6 ?)
J'ai commande une autre sonde temperature et une ph pour tester chez amazone comme cela je peu renvoyer facilement.
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Sep 01, 2019, 09:15 pm
J'avais toujours des problemes de micro coupure donc je pensais que si je refusait le cablage plus propre  tout serait solutionné mais ce n'est pas le cas. Mon gros soucis en premier l'horloge qui ne garde pas l'heure, le relais qui n'est pas actionner par les sorties digital (en 5 volt direct il marche)ma sonde qui ne reponds plus (pas mis isolation galvanique) et pour terminer  la sonde temperature qui ne remonte pas sur la pin 6 (c'est bien A6 ?)
J'ai commande une autre sonde temperature et une ph pour tester chez amazone comme cela je peu renvoyer facilement.
Je pense que tu devrais prendre les problèmes un par un en commençant par tes micro-coupures.
Charge des sketchs exemples simples en commençant par BLINK puis un sketch exemple de l'horloge par exemple. Une fois que tu as réglé ces problèmes (qui sont indépendants de PoolMaster), tu peux repasser à PoolMaster.

Pour la sonde de température, j'utilise la pin 6 de ma plateforme (qui n'est pas un Arduino Mega).
Et non, la pin 6 de la board n'est pas A6, regarde le pinout ici (https://core-electronics.com.au/tutorials/compare-arduino-boards.html).

Donc choisis une entrée digitale de libre (il faut surtout vérifier par rapport aux pins que les shields Relay et Ethernet utilisent), change sa valeur dans le code et vérifie que ta sonde est branchée correctement (https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-circuitpython/hardware) (il faut une résistance de 4,7k entre le +5V et le fil jaune des données)
Title: Re: PoolMaster: gestion et domotisation de ma piscine
Post by: Loulou74 on Sep 11, 2019, 08:03 pm
Hello,

Je viens de publier une màj (https://github.com/Loic74650/PoolMaster), j'y ai ajouté la régulation de la température de l'eau de la piscine.
Comment ça marche:

Ma chaudière modulante a deux circuits d'eau, un pour le chauffage de la maison et un pour la piscine qui est par défaut en standby. Un contact en entrée de la chaudière permet d'activer le circuit piscine et d'allumer son circulateur afin d'amener l'eau chaude (à une température constante) à l'échangeur. PoolMaster ouvre/ferme ce contact en fonction du besoin de chauffe et de la consigne de température souhaitée (ajustable via l'API MQTT)