script chauffage
Publié : 30 déc. 2016, 22:00
bonsoir
j'ai ce script je tente de le modifier mais je ne trouve pas.
le script fonctionne très bien mais quand mon chauffage s'allume dans les logs de l'interrupteur du radiateur il passe à on à chaque émission de le sonde de température.
comment faire pour que si le radiateur est déjà à on il ne fait rien??
merci pour votre aide!!!!
j'ai ce script je tente de le modifier mais je ne trouve pas.
le script fonctionne très bien mais quand mon chauffage s'allume dans les logs de l'interrupteur du radiateur il passe à on à chaque émission de le sonde de température.
comment faire pour que si le radiateur est déjà à on il ne fait rien??
merci pour votre aide!!!!
Code : Tout sélectionner
-- Alexandre DUBOIS - 2014
-- Ce script permet de maintenir la température de SDB entre 19°C et 21°C quand l'interrupteur
-- virtuel 'Thermostat SDB' est activé.
--------------------------------
------ Variables à éditer ------
--------------------------------
local consigne = tonumber(otherdevices_svalues['thermostat sdb']) --Température de consigne
local hysteresis = 0.5 --Valeur seuil pour éviter que le relai ne cesse de commuter dans les 2 sens
local sonde = 'salle de bains' --Nom de la sonde de température
local thermostat = 'Planning chauffage SdB' --Nom de l'interrupteur virtuel du thermostat
local radiateur = 'Chauffage SdB' --Nom du radiateur à allumer/éteindre
--------------------------------
-- Fin des variables à éditer --
--------------------------------
commandArray = {}
--La sonde Oregon 'Salon' emet toutes les 40 secondes. Ce sera approximativement la fréquence
-- d'exécution de ce script.
if (devicechanged[sonde]) then
local temperature = devicechanged[string.format('%s_Temperature', sonde)] --Temperature relevée dans le salon
--On n'agit que si le "Thermostat" est actif
if (otherdevices[thermostat]=='On') then
print('-- Gestion du thermostat salle de bains --')
if (temperature < (consigne - hysteresis) ) then
print('Allumage du chauffage salle de bains')
commandArray[radiateur]='On'
elseif (temperature > (consigne + hysteresis)) then
print('Extinction du chauffage salle de bains')
commandArray[radiateur]='Off'
end
end
end
if (devicechanged[thermostat]=='Off') then
commandArray[radiateur]='Off'
end
return commandArray