[Script] Gestion du temps de filtration d'une piscine
Re: [Script] Gestion du temps de filtration d'une piscine
Update de mon script pour l'an prochain.
J'ai constaté cet été beaucoup d'arrêts redémarrages de ma pompe de filtration lié à ma lecture temps réel. J'ai découvert depuis peu qu'on peut actualiser depuis un script LUA les variables personnalisées de Domoticz.
J'ai donc profité de cette aubaine pour adapter mon script et n'actualiser la température que toutes les heures. Ainsi lors de variations de températures rapides je n'aurais je l'espère plus ces effets rebonds.
Mon script est modifié en conséquence. Pour cela, j'ai tout expliqué et actualisé sur le premier post.
J'ai également fait l'acquisition de pompes doseuses Ph et Chlore et pour éviter de balancer du chlore et de l'acide quand il y a du monde dans la piscine, je vais scripter l'injection a des heures ou il n'y a personne dedans.
J'ai constaté cet été beaucoup d'arrêts redémarrages de ma pompe de filtration lié à ma lecture temps réel. J'ai découvert depuis peu qu'on peut actualiser depuis un script LUA les variables personnalisées de Domoticz.
J'ai donc profité de cette aubaine pour adapter mon script et n'actualiser la température que toutes les heures. Ainsi lors de variations de températures rapides je n'aurais je l'espère plus ces effets rebonds.
Mon script est modifié en conséquence. Pour cela, j'ai tout expliqué et actualisé sur le premier post.
J'ai également fait l'acquisition de pompes doseuses Ph et Chlore et pour éviter de balancer du chlore et de l'acide quand il y a du monde dans la piscine, je vais scripter l'injection a des heures ou il n'y a personne dedans.
Re: [Script] Gestion du temps de filtration d'une piscine
Salut Olivier,
je suis vraiment débutant en Script.
Je viens de télécharger ton script et de me poser dessus quelques heures
.
Tu dit dans ton premier post : "Voici la liste qu'il vous faudra personnaliser en fonction de votre usage : "
Peux tu me dire à quel endroit il faut les modifier STP.
Merci d'avance. Clément
je suis vraiment débutant en Script.
Je viens de télécharger ton script et de me poser dessus quelques heures
Tu dit dans ton premier post : "Voici la liste qu'il vous faudra personnaliser en fonction de votre usage : "
Peux tu me dire à quel endroit il faut les modifier STP.
Merci d'avance. Clément
-
denis_brasseur
- Messages : 898
- Inscription : 24 déc. 2018, 17:05
- Localisation : (26)
Re: [Script] Gestion du temps de filtration d'une piscine
Il te faut modifier ces variables dans le script script_time_gst_piscine.lua, lignes 33 à 39, pour mettre les noms de tes interrupteurs et sonde.
Prends le temps de lire le post dans son intégralité, si tu viens de te poser dessus quelques heures
Prends le temps de lire le post dans son intégralité, si tu viens de te poser dessus quelques heures
Code : Tout sélectionner
-- Variables à personnaliser attention penser également à créer la variable utilisateur (temppiscine) dans domoticz
-- comme expliqué dans mon topic
local pompe = 'Pompe Piscine' -- Nom de l'interrupteur de la pompe de piscine
local piscine = 'Piscine' -- Nom de la sonde de température de l'eau de la piscine
local anemometre = 0 -- Mettre à 1 si vous voulez utiliser la fonction démarrage de filtration en cas de vent élevé.
local vent = 'Vent / Ressenti' -- Nom du capteur de vent à personnaliser si vous avez mis anemometre à 1
local vent_vmax = 20 -- Vitesse du vent pour déclencher la filtration
local auto = 'Filtration Automatique' -- Nom de l'inter virtuel qui permet de passer en mode manuel
local traitement = 'Traitement' -- Nom de l'interrupteur des pompes doseuses de traitement (en cours de réflexion : sera intégré sur la V4Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Re: [Script] Gestion du temps de filtration d'une piscine
Effectivement, comme l'indique Denis, il faut personnaliser ce qui est indiqué en citation selon les noms des différents éléments de ton Domoticz. 
Re: [Script] Gestion du temps de filtration d'une piscine
Je te remercie pour ta réponse. J'ai vais essayer ça. Et je te rassure j'ai bien lu post entièrement et plusieurs foisdenis_brasseur a écrit : 03 avr. 2020, 17:10 Il te faut modifier ces variables dans le script script_time_gst_piscine.lua, lignes 33 à 39, pour mettre les noms de tes interrupteurs et sonde.
Prends le temps de lire le post dans son intégralité, si tu viens de te poser dessus quelques heures![]()
Code : Tout sélectionner
-- Variables à personnaliser attention penser également à créer la variable utilisateur (temppiscine) dans domoticz -- comme expliqué dans mon topic local pompe = 'Pompe Piscine' -- Nom de l'interrupteur de la pompe de piscine local piscine = 'Piscine' -- Nom de la sonde de température de l'eau de la piscine local anemometre = 0 -- Mettre à 1 si vous voulez utiliser la fonction démarrage de filtration en cas de vent élevé. local vent = 'Vent / Ressenti' -- Nom du capteur de vent à personnaliser si vous avez mis anemometre à 1 local vent_vmax = 20 -- Vitesse du vent pour déclencher la filtration local auto = 'Filtration Automatique' -- Nom de l'inter virtuel qui permet de passer en mode manuel local traitement = 'Traitement' -- Nom de l'interrupteur des pompes doseuses de traitement (en cours de réflexion : sera intégré sur la V4
Re: [Script] Gestion du temps de filtration d'une piscine
Merciolivier81 a écrit : 03 avr. 2020, 18:55 Effectivement, comme l'indique Denis, il faut personnaliser ce qui est indiqué en citation selon les noms des différents éléments de ton Domoticz.![]()
Re: [Script] Gestion du temps de filtration d'une piscine
Bonsoir @olivier81
Tout d'abord merci pour ton scrypt , il correspond exactement à ce que je recherchai
Ayant un chlorinateur un peu fatigué ( il a bientôt 20 ans
) , je dois lui faire faire des pauses de 30 min toutes les 4h ... j'ai donc ré-adapté les cycles de filtration en conséquence)
Concernant la creation de la variable utilisateur " temppiscine" , étant totalement novice sur le sujet , peux tu me dire ce que je dois mettre dans le champs "Valeur de la variable" au moment de la création de cette variable ?
Encore merci pour ton super boulot
Olivier
Tout d'abord merci pour ton scrypt , il correspond exactement à ce que je recherchai
Ayant un chlorinateur un peu fatigué ( il a bientôt 20 ans
Concernant la creation de la variable utilisateur " temppiscine" , étant totalement novice sur le sujet , peux tu me dire ce que je dois mettre dans le champs "Valeur de la variable" au moment de la création de cette variable ?
Encore merci pour ton super boulot
Olivier
Pi3b+ SSD
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais
-
denis_brasseur
- Messages : 898
- Inscription : 24 déc. 2018, 17:05
- Localisation : (26)
Re: [Script] Gestion du temps de filtration d'une piscine
Tu indique une valeur approchée de la température de ta piscine, 10 ou 15, la variable sera réactualisée avec le scriptlavinch31 a écrit : 05 avr. 2020, 23:32
Concernant la creation de la variable utilisateur " temppiscine" , étant totalement novice sur le sujet , peux tu me dire ce que je dois mettre dans le champs "Valeur de la variable" au moment de la création de cette variable ?
Olivier
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Re: [Script] Gestion du temps de filtration d'une piscine
Ok merci @denis_brasseur
maintenant quand je regarde les log j'obtiens l'erreur suivante :
cela correspond à cette ligne :
voici mes variables dans le script :
local pompe = 'Pompe Piscine'
local piscine = 'Piscine'
local anemometre = 0
local vent = 'Vent / Ressenti'
local vent_vmax = 20
local auto = 'Filtration Piscine Automatique'
local traitement = 'Traitement'
je n'ai pas touché au code sur la partie variable utilisateur (hormis la filtration forcée que j'ai commenté à cause de la santé de mon chlorinateur)
maintenant quand je regarde les log j'obtiens l'erreur suivante :
Code : Tout sélectionner
attempt to concatenate a nil value (global 'Temp_piscine')Code : Tout sélectionner
print("Démarrage pompe : Température de l'eau : " .. Temp_piscine .. " °C") local pompe = 'Pompe Piscine'
local piscine = 'Piscine'
local anemometre = 0
local vent = 'Vent / Ressenti'
local vent_vmax = 20
local auto = 'Filtration Piscine Automatique'
local traitement = 'Traitement'
je n'ai pas touché au code sur la partie variable utilisateur (hormis la filtration forcée que j'ai commenté à cause de la santé de mon chlorinateur)
Code : Tout sélectionner
-- Toutes les heures on actualise la variable utilisateur (temppiscine)
if minute==00 then
commandArray['Variable:temppiscine'] = Temp_piscine
end
-- Conversion température piscine depuis la variable en nombre
Temp_piscine_H = tonumber(uservariables['temppiscine'])
-- Conversion températeure piscine temps réel en nombre
Temp_piscine = tonumber(Temp_piscine)
-- Conditions d'appel aux fonctions de filtration
if (Temp_piscine_H >=0 and Temp_piscine_H <= 10) then
filtration_2H()
elseif (Temp_piscine_H > 10 and Temp_piscine_H <= 12) then
filtration_4H()
elseif (Temp_piscine_H > 12 and Temp_piscine_H <= 16) then
filtration_6H()
elseif (Temp_piscine_H > 16 and Temp_piscine_H < 24) then
filtration_8H()
elseif (Temp_piscine_H >= 24 and Temp_piscine_H < 27) then
filtration_12H()
elseif (Temp_piscine_H >= 27) then
filtration_20H()
--else
--filtration_force()Pi3b+ SSD
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais
Re: [Script] Gestion du temps de filtration d'une piscine
Après avoir passé l'après-midi sur le code , je pense avoir un élément de réponse ...
le soucis viendrait de la ligne ( 188)
Pour tester j'ai modifié comme suit ( j'ai aussi viré l'humidité car pas de capteur présent):
Avec cette modification j'ai bien la variable utilisateur temppiscine qui se met à jour ( if minute == 00)
le soucis viendrait de la ligne ( 188)
Code : Tout sélectionner
Temp_piscine, Humidite_piscine = otherdevices_svalues[piscine]:match("([^;]+);([^;]+)")Code : Tout sélectionner
Temp_piscine = otherdevices_svalues[piscine]Pi3b+ SSD
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais
Zigbee Conbee II + Philips hue +Variateurs +smart buttons
Station meteo Netatmo
Plusieurs ESP8266 sous ESPEASY + DS18B20 + BMP280 +Relais