Hivernage actif piscine, comment faites vous?

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
suisk1ptitmotard
Messages : 42
Inscription : 02 juin 2017, 12:59
Localisation : Essonne 91

Hivernage actif piscine, comment faites vous?

Message par suisk1ptitmotard »

Bonjour,

C'est mon 1er hiver avec notre piscine, j'utilise ce topic que j'ai adapté à mes horaires pour la gestion de la filtration.

Topic officiel : viewtopic.php?t=6567

N'ayant pas réussi à modifier la fonction filtration forcé en fonction du vent, j'ai fait un deuxième script spécialement pour l'hivernage qui utilise la température extérieur avec le plugins Visual Crossing pour obtenir la température extérieur.

Comment faites vous pour gérer l’hivernage actif? :arrow:

:?:

Code : Tout sélectionner

commandArray = {}

local horsgel = 'Filtration Hors Gel'
local autotest = 'Filtration AutomatiqueTEST' 
local scriptName = 'Filtration Hors Gel'
local pompeman = 'Pompe Piscine Manuel' -- Nom exact dans Domoticz
local sensorwu = 'THB' -- Nom exact dans Domoticz
local time = os.time()
local Heure = tonumber(os.date('%H', time))
local minute = tonumber(os.date('%M', time))

-- Fonction pour forcer la filtration
local function filtration_force()
    if otherdevices[pompeman] == 'Off' then
        commandArray[autotest] = 'Off'
        commandArray[pompeman] = 'On'
        print(scriptName .. " : Filtration activée car température trop basse (" .. otherdevices_temperature[sensorwu] .. " °C).")
    end
end

-- Vérification des changements de température
if devicechanged[sensorwu .. '_Temperature'] then
    local temperature = tonumber(otherdevices_temperature[sensorwu]) -- Récupération de la température en tant que nombre

    -- Vérification de la demande surveillance
    if otherdevices[horsgel] == 'Off' then
        print("Pas de surveillance piscine")
         return commandArray
    end

    if temperature <= -1 then
        filtration_force() -- Active la pompe si la température est trop basse
    elseif temperature > 0 and otherdevices[pompeman] == 'On' then
        commandArray[pompeman] = 'Off'
        commandArray[autotest] = 'On'
        print(scriptName .. " : Filtration désactivée car température suffisante (" .. temperature .. " °C).")
    end
end

return commandArray
Dernière modification par Keros le 20 nov. 2024, 21:12, modifié 1 fois.
Raison : Ajout des balises pour le code. Merci de lire la section Bien utiliser le forum
RPi2 Arduino digicode 12 Capteurs Sirénes Relais TeleInfo ESP8266 ds180b1 bme280 Alim Ininterruptible HPamplificateur
DomoticzV2024.7 Nginx Ramlog Openvpn Fail2ban Iptable MiniDlna Ssmtp Samba Telebot openbeken
Répondre