[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

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

Message par stephdes »

ericd a écrit :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
Merci !

Du coup j'ai trouvé ça :

http://m.ebay.co.uk/itm/272228886015?_mwBanner=1

J'espère que ça va le faire

Envoyé de mon Redmi Note 3 en utilisant Tapatalk
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

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

Message par stephdes »

J'avoue qu'en fait j'étais impatient et je n'ai pas eu envie de commander des composants en Chine et attendre 1 mois... Ou alors en France mais payer un bras de fdp

Envoyé de mon Redmi Note 3 en utilisant Tapatalk
MiniPC W10 + RFXCom 433e + RFLINK
Elec : Téléinfo
Alexa + Alhau
MQTT...
(merci easydomoticz !)
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

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

Message par stephdes »

Bon, visiblement 3w sont suffisant pour faire tourner la wemos mini avec 1 sonde de température.

Envoyé de mon Redmi Note 3 en utilisant Tapatalk
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 »

Salut,
Bon voici quelques nouvelles :

J'ai reçu pas mal de choses:

Les Wemos mini
1 écran pour Wemos
le capteur de pluie
le capteur de pression
les pompes peristaltiques
1 barométre
2 alim 5v/3000mA
1 débimètre
2 cartes d'alim pour wemos avec batterie


Bref, pas mal de matos et du coup pas mal de boulot :D .

J'ai déjà mis en place le capteur de pression et ton script, et cela fonctionne très bien, merci beaucoup.

Par contre j'ai une question :

Avec le script de gestion de filtration de la piscine, est ce que ton script va fonctionner correctement ?
Il me semble que lorsque la filtration est en auto, pompe en marche, si on arrête la pompe manuellement avec domoticz, sans passé en mode manu, la pompe ce remet en marche automatiquement.

As tu déjà tester ?



Ah pendant que j'y pense , le capteur de pluie/inondation, est ce que c'est possible de le brancher au même wemos mini que le capteur de pression ou faut il un autre wemos ?

Merci
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 »

chacal1985 a écrit :Salut,
Avec le script de gestion de filtration de la piscine, est ce que ton script va fonctionner correctement ?
Il me semble que lorsque la filtration est en auto, pompe en marche, si on arrête la pompe manuellement avec domoticz, sans passé en mode manu, la pompe ce remet en marche automatiquement.
Exact ! Avec le script de filtration, il faut faire 2 choses pour mettre la pompe en sécurité :
- Passer la filtration en manuel
- Arrêter la pompe

Modif du script sécurisation :

Code : Tout sélectionner

[...]
--------------------------------------------
------------ Variables à éditer ------------
--------------------------------------------
local PpFilt = 'Pompe piscine'              -- nom de la pompe de filtration
-- ** ligne à rajouter
ModeFilt='Mode filtration piscine'        -- nom du selecteur de mode de filtration
-- ** fin ajout 1

[...]

if (otherdevices[PpFilt] == 'On' and (val_Pfiltre < val_Pmini)) then
-- ** ligne à rajouter
commandArray[ModeFilt]='Set Level 10'
-- ** fin ajout 2
commandArray[PpFilt]='Off'
commandArray[defautpis]='On'
commandArray['SendNotification']='Piscine#Défaut filtration !'
print ("Défaut filtration piscine !")

[...]
Ou, autre méthode : Modifier le script filtration pour qu'il teste la valeur du dummy 'defaut piscine' pour ne pas rallumer la pompe dans ce cas :

Modif du scrip filtration

Code : Tout sélectionner

local dev_PpeFl   = "Filtration piscine"      -- Interrupteur de commande de la pompe
local dev_ModeFl  = "Mode filtration piscine" -- Selecteur du mode de la pompe (Manu/Auto HC/AutoHP)
-- ** ligne à rajouter
dev_DftFt='Defaut Piscine'          -- Nom du dummy de défaut filtration piscine
-- ** fin ajout 1
et remplacer la fonction ChkFiltration par celle-ci :

Code : Tout sélectionner

function ChkFiltration()
    --[[Gestion de la filtration
    Start / Stop de la pompe
    Demandes de chloration automaique --]]

    -- Mode de la filtration :
    -- Manu / Auto HC / Auto HP
    
    local PpeDuree, val_TEau, val_PpeFl, MinDuJour, PpeStart, today, PpeFait
    
    print("Script Piscine : Gestion de la filtration")

    PpeDuree=tonumber(uservariables[var_PPDuree])

    if otherdevices[dev_DftFl]=="Off" and otherdevices[dev_ModeFl] ~= "Manu" then
        val_TEau = tonumber(string.match(otherdevices_svalues[dev_TEau],"(%d+.%d*);.*"))
        val_PpeFl=otherdevices[dev_PpeFl]

        if (val_TEau >= 12) then
            -- La témpérature d'eau est >=12°C : on utilise la temporisation
            MinDuJour=60*time.hour+time.min

            PpeStart=tonumber(string.sub(uservariables[var_PPStart],1,2))*60+tonumber(string.sub(uservariables[var_PPStart],4,5))

            -- Calcul de la durée de fonctionnement de la pompe aujourd'hui
            -- Basé sur le compteur de puissance piscine
            today = os.date("%Y-%m-%d")
            PpeFait=os.capture('sqlite3 '..dbPath..' "select sum(value3) from multimeter where devicerowid='..otherdevices_idx[dev_cptFl]..' and Date(date)=\''..today..'\'"')*5/cst_PpeFl_W
            print("Déjà effectué : "..PpeFait.." minutes sur "..PpeDuree)

            if (MinDuJour >= PpeStart and PpeFait < PpeDuree and val_PpeFl == "Off") then
                print("Filtration piscine : Démarrage par timer")
                UpdateSw(dev_PpeFl,'On')
            elseif (PpeFait >= PpeDuree and val_PpeFl == "On") then
                print("Filtration piscine : Arrêt par timer")
                UpdateSw(dev_PpeFl,'Off')
            end
        else
            if gst_HorsGel then
                --[[ La température de l'eau est <12°C : on utilise la température 
                Démarrage si température d'air <= 1
                Arrêt si température d'air >= 1.5 et température eau >= 0.5
                --]]               
                val_Tair = tonumber(otherdevices_svalues[dev_TAir])
                if (val_Tair <= 1) and val_PpeFl == "Off" then
                    print("Filtration piscine : Démarrage par température")
                    UpdateSw(dev_PpeFl,'On')
                elseif (val_Tair >= 1.5) and (val_TEau>=0.5) and val_PpeFl == "On" then
                    print("Filtration piscine : Arrêt par température")
                    UpdateSw(dev_PpeFl,'Off')
                end                
            end

        end -- filtration timer/temperature 
    elseif otherdevices[dev_DftFl]=="Off"
        print("Mode manu, pas de changement")
    else
        print("Filtration en défaut, pas de changement")
    end -- end mode auto/manu
end
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

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

Message par chacal1985 »

Merci,

Du coup j'ai modifié le script de sécurisation.
chacal1985
Messages : 129
Inscription : 10 juin 2017, 11:22

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

Message par chacal1985 »

Salut,

J'ai un petit soucis, qui s'est présenté 3 fois de suite.

Lorsque démarre la filtration ( à 8h01 en mode autoHP ), elle s’arrête de suite car défaut de filtration.
En fait il me semble que le script de filtration met en marche la pompe à 8h01 et que le script de sécurisation de la pompe qui contrôle toutes les minutes la pression pose problème car à la mise en marche de la pompe à 8h01, le dernier contrôle de débit indique 0 bar, du coup la sécurisation se met en marche et la pompe s’arrête.

Avez vous déjà eu ce soucis ?

Merci
stephdes
Messages : 285
Inscription : 06 oct. 2016, 20:50

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

Message par stephdes »

chacal1985 a écrit :Salut,

J'ai un petit soucis, qui s'est présenté 3 fois de suite.

Lorsque démarre la filtration ( à 8h01 en mode autoHP ), elle s’arrête de suite car défaut de filtration.
En fait il me semble que le script de filtration met en marche la pompe à 8h01 et que le script de sécurisation de la pompe qui contrôle toutes les minutes la pression pose problème car à la mise en marche de la pompe à 8h01, le dernier contrôle de débit indique 0 bar, du coup la sécurisation se met en marche et la pompe s’arrête.

Avez vous déjà eu ce soucis ?

Merci
Oui j'ai eu aussi ce problème. En fait, je l'ai contourné en créant un Dummy commandé par la filtration. J'ai réglé la mise en marche de ce dummy après 30s et ça suffit à ne plus avoir le problème. Je ne sais pas si je suis clair mais en gros :

Marche filtration -------- 30s ---------- Dummy moteur pompe sur ON ----------- Si dummy filtration + marche filtration sur ON alors check de la pression

Ça laisse le temps au capteur d'envoyer une info de pression (si la remontée d'info est < ou égal à 30s bien sûr)
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 »

Salut,

Merci pour l'info, je vais essayer cette solution.
Mes pour l'instant ma Freebox a grillée à cause de l'orage ( pfff encore une fois ) et du coup je ne peux pas accéder à domoticz.
Répondre