[LUA] Sécurisation de la pompe de filtration piscine

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

[LUA] Sécurisation de la pompe de filtration piscine

Message par stephdes »

Bonjour à tous,

Dans la continuité de la domotisation d'une piscine, je vous propose aujourd'hui un script pour sécuriser votre pompe. (je me souviens d'une vieille histoire où ma mère avait sorti l'aspirateur de la piscine après avoir fini de la nettoyer... Entraînant inévitablement la destruction de la pompe de filtration !!!)

En repensant à cette hisoire, j'ai donc écrit le script ci-dessous.

il s'agit d'un script time !

Voici le principe :

Afin d'éviter de cramer bêtement la pompe de filtration de la piscine : en cas d'anomalie de pression, ce script va éteindre la pompe et vous informer d'un dysfonctionnement par notification Domoticz.
Il pourra également vous avertir en cas de nécessité de nettoyer votre filtre.

Cela fonctionnera si :
- Votre filtre est trop encrassé
- Votre pompe aspire de l'air : vannes fermées, pompe désamorcée, niveau d'eau trop bas dans la piscine...
- Votre filtre est bon à être changé / nettoyé



Code : Tout sélectionner

--[[   
auteur : Steph D
version : 1.0
MAJ : 03/07/2017
création : 03/07/2017
Principe :
Afin d'éviter de cramer bêtement la pompe de filtration de la piscine : en cas d'anomalie de pression, ce script va éteindre la pompe et vous informer d'un dysfonctionnement.
Il pourra également vous avertir en cas de nécessité de nettoyer votre filtre.

Cela fonctionnera si :
- Votre filtre est trop encrassé
- Votre pompe aspire de l'air : vannes fermées, pompe désamorcée, niveau d'eau trop bas dans la piscine...
- Votre filtre est bon à être changé / nettoyé

]]--

--------------------------------------------
------------ Variables à éditer ------------
--------------------------------------------
local PpFilt = 'Pompe piscine'              -- nom de la pompe de filtration
local PresFilt = 'Pression filtre piscine'  -- nom du capteur de pression du filtre de la piscine
local defautpis = 'Defaut Piscine'          -- Nom du dummy de défaut filtration piscine
local nettfilt = 'Nettoyage filtre piscine' -- Nom du dummy indicateur du besoin de nettoyer votre filtre (évite également la récurrence des notifications)
val_Pmini = 0.4                             --valeur de seuil de votre pression filtre = la pression mini que vous avez dans des conditions de filtration optimales (zone verte)
val_Pnett = 1.1                             --valeur de pression mini à partir de laquelle votre filtre a besoin d'être nettoyé ou changé (zone orange)
val_Pmax = 1.4                              --valeur de pression maxi à partir de laquelle votre filtre / pompe risque d'être détériorée (zone rouge)
--------------------------------------------
----------- Fin variables à éditer ---------
--------------------------------------------

commandArray = {}

now=os.date("*t")
if now.min % 5 == 0 then -- Vérification toutes les 5 minutes
print("Contrôle pression filtre piscine")


--------------------------------------------
---------------- Fonctions -----------------
--------------------------------------------

val_Pfiltre = tonumber(otherdevices_svalues[PresFilt])

if (otherdevices[PpFilt] == 'On' and (val_Pfiltre < val_Pmini)) then
commandArray[PpFilt]='Off'
commandArray[defautpis]='On'
commandArray['SendNotification']='Piscine#Défaut filtration !'
print ("Défaut filtration piscine !")

elseif (otherdevices[PpFilt] == 'On' and (val_Pfiltre > val_Pnett) and (val_Pfiltre < val_Pmax) and otherdevices[nettfilt]) == 'Off' then
commandArray['SendNotification']='Piscine#Nettoyage filtre nécessaire !'
commandArray[nettfilt]='On'
print ("Filtre piscine à nettoyer !")

elseif (otherdevices[PpFilt] == 'On' and (val_Pfiltre > val_Pmax)) then
commandArray[PpFilt]='Off'
commandArray[defautpis]='On'
commandArray['SendNotification']='Piscine#Défaut filtration !'
print ("Défaut filtration piscine !")

end
end
return commandArray

Pour ceux qui ont des questions sur la remontée d'info de pression, j'utilise un Wemos D1 mini avec capteur de pression voir ici :
https://easydomoticz.com/forum/viewtopi ... 5&start=30

Si vous avez d'autres questions / remarques je suis à l'écoute !


Image
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par chacal1985 »

Bonjour et tout d'abord merci pour ton implication au sein du forum.
Je débute dans la domotique et possédant une piscine j'ai commencé à domotiser celle ci grâce au forum.

Actuellement j'en suis à :

Allumage de l'éclairage extérieur avec un relais ( bientôt asservi par un capteur de luminosité à base de wemos mini )
Gestion du temps de filtration en fonction de la température de l'eau grace au script trouvé sur le forum ( merci aux créateurs du script )
Puis commande de 2 volets roulant sur 5 pour le moment avec un module Fibaro


Ce qu'il me reste à faire :

Mettre un détecteur d'inondation dans le local technique qui coupe la pompe et m'averti par SMS
Mettre une caméra Xiaomi Xiaofang pour avoir une vision de la piscine
Mettre un détecteur incendie dans le local technique avec avertissement par SMS
Commander éclairage Led de la Piscine et changer la couleur.
Rajouter un débitmètre en entrée de pompe, qui arrête la pompe en cas de chute de débit, révélateur de filtre encrassé, prise d'air ou manque d'eau piscine.
Rajouter un capteur de pression sur le filtre à sable ( là, j'aurais besoin de toi ), pour arrêter la pompe en cas de pression trop importante.
Enfin le top serait de pouvoir mettre un capteur de niveau (sans fil) qui actionnerait une électrovanne qui ferait un remplissage de la piscine par le circuit de refoulement de la piscine lorsque la pompe est arrêtée. ( il m'est déjà arrivé d'oublié de fermer le robinet de remplissage de la piscine toute une nuit , du coup la piscine a débordée :o )



Pour ce qui est du capteur de pression ( sur Jeedom, il y a un plug-in Piscine, qui à l'air pas mal et qu'il serait bien d'adapter), il serait bien de pouvoir intégrer ton script à celui qui gère le temps de filtration et éventuellement pouvoir aider au nettoyage du filtre à sable.
Par exemple :

Le filtre monte en pression (ex : 0.6bars), on reçois un SMS ou une alerte sur Domoticz qui indique qu'il serait temps de nettoyer le filtre.
Ensuite avec un switch on lance une procédure de nettoyage du filtre avec des infos qui nous guide sur la procédure et avec éventuellement un timer pour le temps de backwash et de rinçage.
Et ensuite retour à la filtration auto.

( voir ça des infos plus clair: https://jeedom.com/doc_old/documentatio ... scine.html )

Pour en revenir au capteur de pression, serait il possible de m'expliquer ou éventuellement faire un petit tuto sur le branchement et le paramétrage du capteur de pression avec le wemos mini ?

Voila de quoi travailler sur le sujet.
Je peux apporter mon aide pour faire un tuto si besoin, par contre en prog, je suis nul :(
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par stephdes »

Salut Chacal,

Moi il me reste beaucoup à faire mais je n'ai pas le temps en ce moment. Pourtant j'ai tout ce qu'il faut... Je ferai le reste pendant mes vacances :

- Détecteur d'inondation local
- Mesure du PH
- Mesure du taux de chlore et pilotage de l'électrolyseur en conséquence
- Eclairage + couleur de la piscine (la télécommande est en 433Mhz mais je ne sais pas si le signal est compatible RFlink ou RFXcom)

Sinon, détection incendie c'est fait.

Le débitmètre ne te sera pas forcément utile car si ton débit chute et que tu aspires de l'air, ta pression va chuter donc arrêter ta pompe.

Ensuite il est vrai que le mieux est de placer le capteur de pression au niveau du préfiltre mais dans mon cas, si la pression varie au niveau du préfiltre c'est vraiment qu'il y aura un gros gros problème vu la taille du préfiltre... bref, en ce qui concerne le cablage et la programmation du capteur de pression c'est vraiment très simple.

Partie matos :

1 x Wemos D1 mini
1 x résistance 180 kohms (https://www.aliexpress.com/item/1LOT-10 ... 0.0.o8xRhT)
1 x capteur de pression 5v - 0 à 5 bar pour une tension de sortie de 0,5 à 4.5v (https://www.aliexpress.com/item/Hot-Sal ... 0.0.o8xRhT)

Le capteur de pression a le même pas de vis qu'un manomètre donc si ton filtre à sable est équipé de deux pas de vis manomètre (comme le mien) tu peux le rajouter. Au pire, tu remplaces le mano par le capteur. Autre possibilité, dans mon cas, je peux mettre également le capteur sur ma vanne 6 voies.

Image

Pour les branchements, les voici :

Image

Ensuite, pour la programmation j'ai utilisé ESPeasy sur le Wemos.

- Ajouter un device "analog input"
- Faire tes réglages de renvoi dur Domoticz ou autre

Dans la formule, dans un premier temps tu ne mets rien. Une fois ton montage fait et alimenté et ta pompe arrêtée du regarde la valeur que te donnes le Wemos ADC. Dans mon cas c'était 88. Ce qui veut dire qu'à pression = 0, la tension de sortie du capteur à travers la résistance mise en série représentait 88 pour l'ADC du Wemos.

(euh... Suite prochainement car je ne me souviens plus des chiffres que j'avais par la suite et je ne suis pas chez moi :lol: )

EDIT : voici la suite (je ne suis pas chez moi donc désolé si je vais une bourde de calcul)

Avec le capteur et la résistance mentionnés ci-dessus et avec une valeur ADC à vide (0 de pression) à 88 on a :

Image

La plage de fonctionnement out du capteur est de 0,5 à 4,5V pour une mesure de 0 à 72,5 PSI. Le signal du capteur est linéaire.

La mesure ADC du Wemos se fait sur 1023 points sur 1V maxi. Les résistances internes abaissent donc le voltage de 3,3 à 1V. Notre capteur lui renvoi 4,5v au maxi. On va donc, à l'aide de la résistance, abaisser la tension pour ne pas dépasser 3,3V à l'entrée du Wemos.

On voit que pour une pression nulle, le capteur renvoi 0,5v. Calculs et droite de regression après, on peut configurer dans le device du Wemos :

Formula : (%value%-88)*0.0063

Soit : la valeur relevée par l'adc moins la valeur résiduelle à 0 de pression fois le coefficient

Et la valeur est remontée en bar !
Dernière modification par stephdes le 04 juil. 2017, 15:25, modifié 3 fois.
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par chacal1985 »

Merci pour les infos.

J'ai commandé ce capteur de pression hier https://fr.aliexpress.com/item/FREE-Shi ... 0.0.u5ojAh , penses tu que c'est bon ?

Les résistances c'est bon, je viens de le faire.
Le wemos mini c'est bon aussi.

Pour le pas de vis, je pense que c'est bon, par contre, c'est dommage je n'ai pas deux pas de vis sur le filtre à sable.
Donc du coup je vais voir si je peux pas trouver un raccord pour avoir la possibilité de garder le mano à aiguille.

Pour le détécteur d'inondation tu penses partir sur quoi ? ( moi je pense au fibaro en Zwave ) ou sinon wemos avec ça :https://www.aliexpress.com/item/1set-lo ... 0.0.1dbBkD

Mesure du ph, j'ai une pompe doseuse et ensuite je fonctionne au chlore en galet.
J'aimerais bien automatisé le chlore donc il me faudrait une sonde et une pompe doseuse comme celle là je pense https://fr.aliexpress.com/item/DC-Peris ... 0.0.VjVUl3

La pompe doseuse pour le ph que j'ai dans l'idéal serait qu'elle soit connectée à domoticz ou sinon je la revend et j'en met une autre qui sera gérer par domoticz.

Pour l'éclairage de la piscine je pense que l'on doit avoir le système car j'ai également une télécommande et un boitier avec des boutons dans le local technique, par contre je ne sais pas quel est le signal.


Pour le débitmètre j'avais vu sur un forum un discours intéressant sur son utilité.
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par stephdes »

Pour le capteur, pas de problème il conviendra. Tu risques juste de perdre en précision mais bon... Il te faudra adapter la formule.

Sinon, il n'est pas rare que les vannes 6 voies aient un pas de vis pour manomètre, regarde sur la tienne. Au pire, tu peux te passer de mano.

Pour le détecteur d'inondation j'ai pris exactement le même (https://easydomoticz.com/forum/viewtopi ... 5&start=30)
J'ai juste fait des essais avec et ils se sont avérés concluants.

De mon côté, ma pompe doseuse de PH (neuve) ne marche pas encore... Mon eau ne permet pas encore de mesure fiable et je ne m'en suis pas occupé... Il s'agit de la Pool tech miniPH. La sonde que je vais mettre sur Domoticz fera doublons et ne servira qu'à alerter en cas de défaillance.

Pour l'éclairage, le bouton dans le local technique me sert uniquement à alimenter le spot ou pas. Mais uniquement la télécommande peut l'allumer et le contrôler.

Concernant le débitmètre effectivement ça a du sens. En ce qui me concerne je ne pense pas en arriver là car je juge (peut-être à tort) que mon monitoring actuel est suffisant.
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par chacal1985 »

Du coup j'ai changer le capteur de pression, j'ai pris le même que toi.

J'ai vu que aleph0 à mis des liens vers les pompes péristaltique qu'il utilise, je pense que je vais commander le même matériel, au moins je sais que cela fonctionne et vu le prix, il n'y a pas grand chose à perdre ;) .

Le capteur d'inondation, c'est possible de le brancher directement sur un port GPIO du Raspberry ?
aleph0
Messages : 328
Inscription : 27 avr. 2016, 08:06
Localisation : Hérault (34)

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par aleph0 »

A propos du débitmètre, mon retour d'expérience a été catastrophique :(

Effectivement, ça a du sens quand ça marche mais :
- Il fait rebooter la wemos régulièrement, j'ai jamais réussi à trouver le problème. Je pense à un bug espeasy dû à la fréquence relativement élevée des interruptions mais j'ai pas la compétence pour fouiller dans le firmware. Ceci dit, les reboots peuvent se gérer en soft, ça n'empèche pas de tourner
- Le modèle que j'ai utilisé n'a finalement tenu que 2 mois avant de rendre l'âme mécaniquement :(

Du coup je ne l'ai pas remplacé. Pour le moment je tourne sans et je vais installer le capteur de pression indiqué par stephdes à la place. Même si on fait moins de chose avec la pression qu'avec le débit, avec un peu de chance ça sera fiable et c'est suffisant pour assurer la sécurité de la pompe !
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par chacal1985 »

Merci aleph0 pour ton compte rendu, du coup j'ai commandé les 2, reste plus qu'a attendre.
J'ai également commandé les 2 pompes , le tuyau et les raccords.
Il me faut trouver les sondes et portes sondes, cartes OPR, crépines d'aspiration et injecteurs, et les colliers de prises en charges.
Ensuite je crois que j'aurais tout le matos :D
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par stephdes »

Je me permets de demander votre aide.

Je cherche désespérément un convertisseur de ce type :

Input : AC 12V

Output : DC 12V

Je trouve en Chine mais je n'arrive pas à trouver en France. Si quelqu'un peut m'aider sur ce sujet...

Merci d'avance !!!
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
ericd
Messages : 157
Inscription : 24 janv. 2017, 11:04
Localisation : Toulouse

Re: [Script] Sécurisation de la pompe de filtration piscine

Message par ericd »

Tout simplement avec un pont de diodes et un gros condo pour lisser le signal après le pont.

Soit tu achètes un pont tout fait soit tu te le fait avec 4 diodes.

@+

Ericd
Répondre