(résolu)Thermostat sur Domoticz

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 <\>.
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Thermostat sur Domoticz

Message par vil1driver »

Salut,

Ta sonde ne doit pas relever l'humidité.
Temp_only = température seulement
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
Cedric59
Messages : 33
Inscription : 15 mars 2020, 18:58

Re: Thermostat sur Domoticz

Message par Cedric59 »

Salut vil1driver c'est déjà le cas

2020-03-25 07:14:01.413 Status: LUA: temp_only:23.10;36.00;0

ou je em trompe ?
Débutant sur domoticz
Débutant dans la prog....
Raspberry Pi 3, Fibaro door, ESP8266-01 + carte relais x2, contrôleur Z-wave, sonde de température DHT11
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Thermostat sur Domoticz

Message par vil1driver »

Pour toi ceci est une température ?
23.10;36.00;0
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
Cedric59
Messages : 33
Inscription : 15 mars 2020, 18:58

Re: Thermostat sur Domoticz

Message par Cedric59 »

@vil1driver vue comme cela tu as raison mais dans le code c'est déjà indiqué temp_only

Code : Tout sélectionner

local temp_only = 'Température chambre Lihore' 
local thermostat_setpoint = 'Test thermostat'
local heating_unit = 'Ventilateur Chauffage Lihore'


local hysteresis = 0.5

commandArray = {}

if devicechanged[temp_only] then
--for deviceName,deviceValue in pairs(otherdevices) do
    --if (deviceName== thermostat_setpoint) then
		print('temp_only:'..otherdevices[temp_only])
		print('thermostat_setpoint:'..otherdevices[thermostat_setpoint])
        if tonumber(deviceValue) < tonumber(otherdevices[temp_only]-hysteresis) then
            if (otherdevices[heating_unit] == "On") then
                --commandArray['SendNotification']='Heating is off'
                commandArray[heating_unit]='Off'
                print("Heating is Off")
            end
        elseif tonumber(deviceValue) > tonumber(otherdevices[temp_only]+hysteresis) then
            if (otherdevices[heating_unit] == "Off") then
                commandArray[heating_unit]='On'
                --commandArray['SendNotification']='Heating is on'
                print("Heating is On")
            end
        end
    --end
end

return commandArray
Débutant sur domoticz
Débutant dans la prog....
Raspberry Pi 3, Fibaro door, ESP8266-01 + carte relais x2, contrôleur Z-wave, sonde de température DHT11
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Thermostat sur Domoticz

Message par vil1driver »

ça signifie que tu dois fournir une température uniquement une température, pas un truc avec humidité incluse.
essai comme ceci, ça devrait aller

Code : Tout sélectionner

local temp = 'Température chambre Lihore' 
local thermostat_setpoint = 'Test thermostat'
local heating_unit = 'Ventilateur Chauffage Lihore'


local hysteresis = 0.5

commandArray = {}

if devicechanged[temp] then
		print('temp:'..otherdevices_temperature[temp])
		print('thermostat_setpoint:'..otherdevices_svalues[thermostat_setpoint])
        if tonumber(otherdevices_svalues[thermostat_setpoint]) < tonumber(otherdevices_temperature[temp]-hysteresis) then
            if (otherdevices[heating_unit] == "On") then
                commandArray[heating_unit]='Off'
                print("Heating is Off")
            end
        elseif tonumber(otherdevices_svalues[thermostat_setpoint]) > tonumber(otherdevices_temperature[temp]+hysteresis) then
            if (otherdevices[heating_unit] == "Off") then
                commandArray[heating_unit]='On'
                print("Heating is On")
            end
        end
end

return commandArray
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
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: Thermostat sur Domoticz

Message par denis_brasseur »

Cedric59 a écrit : 25 mars 2020, 13:05 @vil1driver vue comme cela tu as raison mais dans le code c'est déjà indiqué temp_only

Code : Tout sélectionner

local temp_only = 'Température chambre Lihore'
Ce n'est pas parce que la variable s'appelle temp_only qu'elle ne va remonter que la température, mais bien quelle ne doit remonter que la température.
D’où l’intérêt d'afficher les valeurs de la sonde pour comprendre l'erreur.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
Cedric59
Messages : 33
Inscription : 15 mars 2020, 18:58

Re: Thermostat sur Domoticz

Message par Cedric59 »

Super vil1driver ça fonctionne.

tu sais m'expliquer pourquoi avec temp sa à fonctionné contrairement à temp_only

Un merci aussi à Denis pour son aide.

Un merci à vous deux pour votre patience :D
Débutant sur domoticz
Débutant dans la prog....
Raspberry Pi 3, Fibaro door, ESP8266-01 + carte relais x2, contrôleur Z-wave, sonde de température DHT11
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Thermostat sur Domoticz

Message par vil1driver »

J'ai modifié temp_only en temp pour être en cohérence avec le reste du code.
Code dans lequel j'ai fait en sorte de n'extraire que la température de ton device.
J'ai également modifié la façon d'obtenir la consigne.
Je te laisse le soin de faire les comparaisons
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
Cedric59
Messages : 33
Inscription : 15 mars 2020, 18:58

Re: Thermostat sur Domoticz

Message par Cedric59 »

Merci
Débutant sur domoticz
Débutant dans la prog....
Raspberry Pi 3, Fibaro door, ESP8266-01 + carte relais x2, contrôleur Z-wave, sonde de température DHT11
Répondre