[PROJET] Gestion de piscine
-
chacal1985
- Messages : 129
- Inscription : 10 juin 2017, 11:22
Re: [PROJET] Gestion de piscine
Pour les spécialistes, est ce qu'avec un Wemos LOLIN32, je peux me passer de l'ensemble Wemos mini + ADS1115 ?
Re: [PROJET] Gestion de piscine
Oui la LOLIN32 Lite par exemple. Elle possède 21 E/S analogiques. Il ne te faudra plus qu'un level shifterchacal1985 a écrit :Pour les spécialistes, est ce qu'avec un Wemos LOLIN32, je peux me passer de l'ensemble Wemos mini + ADS1115 ?
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
-
chacal1985
- Messages : 129
- Inscription : 10 juin 2017, 11:22
Re: [PROJET] Gestion de piscine
Ok, merci j'en ai un, il me faut juste voir comment on branche le level shifter avec le lolin32.
Re: [PROJET] Gestion de piscine
Voici les rules que j'ai dans la wemos :
Comme expliqué dans le forum anglais, tout ce bazar dans la gestion des pompes sert à s'assurer, électriquement, que les 2 pompes chlore et acide ne puissent jamais marcher en même temps quelques soient les bugs présent dans les scripts ou les rules. Car si les 2 produits, chlore et acide, se mélangent sous leur forme concentrée, il se produit un dégagement chlore gazeux qui est dangereux (http://www.guerredesgaz.fr/lesgaz/suffo ... ocants.htm). Il faut donc être extrêmement précautionneux à ce niveau là.
@nikous
Concernant la calibration des sondes pH et ORP, il y a 2 méthodes :
- La première expérimentale consiste à relevé les rawvalues de l'ADS1115 lorsque la sonde est plongée dans deux solutions d'étalonnage connues (bien rincer entre les 2, attendre un moment que la mesure se stabilise et prendre une moyenne des rawvalues sur 10 ou 15 dernières valeurs au minimum) puis à calculer la droite qui passe par ces 2 points, soit directement depuis espeasy >= 2.0, soit à la main pour espeasy < 2.0
- La deuxième qui consiste à calculer la formule depuis les docs de l'ADS1115 et de la carte phidget (c'est celle que j'ai employée) puis à vérifier avec une ou deux solution d'étalonnage. En faisant ça, j'ai été surpris de l'exactitude des docs !!
Code : Tout sélectionner
//Défini la durée de pré-injection
on SetPause do
TaskValueSet 9,2,%eventvalue%
endon
//Injecte du chlore pour une durée donnée après
//la durée de pré-injection définie au dessus
on InjCl do
Timerset 1,[LocalVar#pause]
TaskValueSet 9,1,%eventvalue%
endon
on Rules#Timer=1 do //When Timer1 expires, do
GPIO 4,1
Longpulse 5,0,[LocalVar#duree]
endon
//Injecte de l'acide pour une durée donnée après
//la durée de pré-injection définie au dessus
on InjAc do
Timerset 2,[LocalVar#pause]
TaskValueSet 9,1,%eventvalue%
endon
on Rules#Timer=2 do //When Timer2 expires, do
Longpulse 4,0,[LocalVar#duree]
Longpulse 5,0,[LocalVar#duree]
endon
on PpeCl_On do
GPIO 4,1
GPIO 5,0
endon
on PpeAc_On do
GPIO 4,0
GPIO 5,0
endon
on Ppe_Off do
GPIO 5,1
GPIO 4,1
endon
@nikous
Concernant la calibration des sondes pH et ORP, il y a 2 méthodes :
- La première expérimentale consiste à relevé les rawvalues de l'ADS1115 lorsque la sonde est plongée dans deux solutions d'étalonnage connues (bien rincer entre les 2, attendre un moment que la mesure se stabilise et prendre une moyenne des rawvalues sur 10 ou 15 dernières valeurs au minimum) puis à calculer la droite qui passe par ces 2 points, soit directement depuis espeasy >= 2.0, soit à la main pour espeasy < 2.0
- La deuxième qui consiste à calculer la formule depuis les docs de l'ADS1115 et de la carte phidget (c'est celle que j'ai employée) puis à vérifier avec une ou deux solution d'étalonnage. En faisant ça, j'ai été surpris de l'exactitude des docs !!
Re: [PROJET] Gestion de piscine
@stephdes
2 pistes :
- Si tu inverse les deux phidgets, ça donne quoi ?
- Côté masse vs terre : si tu essaye de mettre le 0v de ton montage à la même terre que le pool ground, ça donne quoi ?
2 pistes :
- Si tu inverse les deux phidgets, ça donne quoi ?
- Côté masse vs terre : si tu essaye de mettre le 0v de ton montage à la même terre que le pool ground, ça donne quoi ?
Re: [PROJET] Gestion de piscine
Ta pince ampèremétrique, peut tu partager la source de ton tuto ? qu'est ce que cela donne au final ?neosqualls a écrit :J'ai pris celle ci : https://www.aliexpress.com/item/THGS-YH ... 0.0.7X06py
J'ai trouvé un tuto qui explique exactement comment la connecter à l'ads1115
Meme problème pour moi pour la pompe
-
neosqualls
- Messages : 132
- Inscription : 29 janv. 2017, 13:15
- Localisation : Gironde
Re: [PROJET] Gestion de piscine
Salut,QcVictor a écrit :Ta pince ampèremétrique, peut tu partager la source de ton tuto ? qu'est ce que cela donne au final ?neosqualls a écrit :J'ai pris celle ci : https://www.aliexpress.com/item/THGS-YH ... 0.0.7X06py
J'ai trouvé un tuto qui explique exactement comment la connecter à l'ads1115
Meme problème pour moi pour la pompe
Voici le lien qui explique le montage : http://wiki.mchobby.be/index.php?title= ... NT-Arduino
La difficulté c'est que le courant renvoyé est alternatif donc il faut "capturer" les piques pour en déduire la tension. J'essaye de coder ça en python.
Re: [PROJET] Gestion de piscine
Si tu as accès à la sinusoide du courant alternatif, tu peux calculer sa valeur efficace (celle que te renverrai un multimètre, ou valeur RMS en anglais) en calculant la racine carrée de la moyenne des carré des échantillons. L'algorithme est tout simple :
Pour être représentative, la fréquence d'échantillonnage doit être au moins le double de la fréquence du signal, et si possible beaucoup plus grande que ça (style 10x) et le nombre d'échantillon doit couvrir une période au moins égale à la période du signal.
Exemple si tu échantillonne du 50Hz :
- fréquence d'échantillonnage mini 100Hz, soit une mesure tout les 10ms, mieux 500Hz, soit une mesure toutes les 2ms
- moyenne mini sur 20ms, soit N=2 minimum dans le premier cas ou N=10 minimum dans le second.
- mais comme tu ne vas remonter les valeurs à domoticz que beaucoup plus lentement que ça, tu peux prendre N qui correspond à ta fréquence de remontée, tu auras une meilleure précision
Code : Tout sélectionner
N=nombre d'échantillons sur lequel on fait la moyenne
Moy=0
début boucle d'acquisition
E=lecture échantillon
Moy=((N-1)*Moy+E^2)/N
Erms=racine(Moy) (A renvoyer à domoticz toutes les minutes, par exemple)
attente pour maîtriser la fréquence d'échantillonnage
fin boucle d'acquisistion
Exemple si tu échantillonne du 50Hz :
- fréquence d'échantillonnage mini 100Hz, soit une mesure tout les 10ms, mieux 500Hz, soit une mesure toutes les 2ms
- moyenne mini sur 20ms, soit N=2 minimum dans le premier cas ou N=10 minimum dans le second.
- mais comme tu ne vas remonter les valeurs à domoticz que beaucoup plus lentement que ça, tu peux prendre N qui correspond à ta fréquence de remontée, tu auras une meilleure précision
Re: [PROJET] Gestion de piscine
Salut Aleph !aleph0 a écrit :@stephdes
2 pistes :
- Si tu inverse les deux phidgets, ça donne quoi ?
- Côté masse vs terre : si tu essaye de mettre le 0v de ton montage à la même terre que le pool ground, ça donne quoi ?
Voici quelques news !
- J'ai inversé les 2 phidgets et le résultat est le même.
- J'ai essayé de mettre le ground du phidget ORP à la terre du pool ground : la valeur de l'ORP passe à 2225 et le pH à -6... (bizarre car pas de lien de ground entre les deux)
- J'ai mis le 0v du montage au pool ground : la wemos ne démarre pas : encore une fois étrange
- J'ai mis le phidget ORP sur un 5V et ground indépendant : alim qui alimente uniquement le phidget ORP : pas de changement : valeurs qui fluctuent
- J'ai changé de place la sonde ORP sur la tuyauterie : pas de changement...
Là, j'ai placé la sonde ORP en amont des sonde pH sur ma chambre d'analyse et malgré des valeurs qui me semblent très basses on dirait que je n'ai plus l'effet de "yoyo" (passage de +200 à -115). J'ai mis ma chloration en marche, je vais voir ce que ça donne sur les prochaines heures.
C'est une histoire de fou quand même. Du coup après avoir écarté :
- La sonde
- La carte phidget
- l'alimentation
- l'ADS1115 (j'ai juste essayé plusieurs entrées mais vu que la tension et le pH fonctionne bien...)
- le câblage (je présume car en inversant les sondes sur les phidgets et la position des swith pH / ORP j'obtiens une bonne lecture pH et un ORP qui foire)
Je me demande si la salinité de l'eau n'a pas un impact sur la lecture ou surtout si la sonde pH ne perturbe pas la sonde ORP...
Ce qui est étrange c'est que je suis visiblement le seul dans ce cas sauf QcVictor je crois qui a eu les mêmes problèmes mais il n'en parle plus...
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
-
neosqualls
- Messages : 132
- Inscription : 29 janv. 2017, 13:15
- Localisation : Gironde
Re: [PROJET] Gestion de piscine
Bonjour,aleph0 a écrit :Si tu as accès à la sinusoide du courant alternatif, tu peux calculer sa valeur efficace (celle que te renverrai un multimètre, ou valeur RMS en anglais) en calculant la racine carrée de la moyenne des carré des échantillons. L'algorithme est tout simple :
Pour être représentative, la fréquence d'échantillonnage doit être au moins le double de la fréquence du signal, et si possible beaucoup plus grande que ça (style 10x) et le nombre d'échantillon doit couvrir une période au moins égale à la période du signal.Code : Tout sélectionner
N=nombre d'échantillons sur lequel on fait la moyenne Moy=0 début boucle d'acquisition E=lecture échantillon Moy=((N-1)*Moy+E^2)/N Erms=racine(Moy) (A renvoyer à domoticz toutes les minutes, par exemple) attente pour maîtriser la fréquence d'échantillonnage fin boucle d'acquisistion
Exemple si tu échantillonne du 50Hz :
- fréquence d'échantillonnage mini 100Hz, soit une mesure tout les 10ms, mieux 500Hz, soit une mesure toutes les 2ms
- moyenne mini sur 20ms, soit N=2 minimum dans le premier cas ou N=10 minimum dans le second.
- mais comme tu ne vas remonter les valeurs à domoticz que beaucoup plus lentement que ça, tu peux prendre N qui correspond à ta fréquence de remontée, tu auras une meilleure précision
La fréquence maximum d'échantillonnage de l'ads1115 est de 860 par secondes, il retourne donc la moyenne de l'échantillon. Je vais continuer les essais, je tâtonne pour le moment.