script chauffage

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 <\>.
sphinxou
Messages : 231
Inscription : 03 déc. 2016, 13:37

script chauffage

Message par sphinxou »

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!!!!



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
Domoticz 4.9700/ rfxcom /sonde diy/raspberry pi3+HDD/cirusms/contact de porte diy
thier
Messages : 807
Inscription : 26 sept. 2015, 10:32
Localisation : charente

Re: script chauffage

Message par thier »

tu peux modifier if (temperature < (consigne - hysteresis) ) then
par
if (temperature < (consigne - hysteresis) and otherdevices[Chauffage SdB]=='Off' ) then
Et à mon avis la même modif (mais avec =='On') pour elseif (temperature > (consigne + hysteresis)) then car il va te dire qu'il éteint ton radiateur à chaque cycle du programme.
PI3+, Buster, Domoticz V2020.2, rflink, zwave, chauffage piloté par qubino, sondes oregon et Vil1d, boite aux lettres détection passage facteur, volets roulants qubino fibaro.
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: script chauffage

Message par vil1driver »

Salut,

Tu peux aussi voir les re émissions comme une sécurité..
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
sphinxou
Messages : 231
Inscription : 03 déc. 2016, 13:37

Re: script chauffage

Message par sphinxou »

bonsoir

désoler avec les fêtes pas le temps de répondre

merci sa marche nikel
Domoticz 4.9700/ rfxcom /sonde diy/raspberry pi3+HDD/cirusms/contact de porte diy
vwstepha
Messages : 85
Inscription : 20 nov. 2014, 15:15

Re: script chauffage

Message par vwstepha »

Salut
Je debute et je galere
Pourrais tu mettre l'integralite du script modifié?
Merci d'avance!! :mrgreen:
Rpi 2B Dz V2023.2 master ;)
Rpi 3B Dz V2023.2 slave + Rflink + USB ZWAVE+ + Rflink RTS (marche pas..} :ugeek:
Rpi 3B with RapItow 8-)
Xiaomi V2 + acc
SP3
2xVR + 3xPC DIO Chacon
5x1 voie Sonoff (4 d'origine....1 seul flashé)
sphinxou
Messages : 231
Inscription : 03 déc. 2016, 13:37

Re: script chauffage

Message par sphinxou »

bonsoir
ci joint le script modifier

Code : Tout sélectionner

-- Ce script permet de maintenir la température de salon 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) and otherdevices[radiateur]=='Off') then
            print('Allumage du chauffage salle de bains')
            commandArray[radiateur]='On'
            
	    elseif (temperature > (consigne + hysteresis) and otherdevices[radiateur]=='On') 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
Domoticz 4.9700/ rfxcom /sonde diy/raspberry pi3+HDD/cirusms/contact de porte diy
Répondre