Script LUA chauffage problème
Publié : 22 mars 2017, 11:26
Bonjour tout le monde
Voila je suis débutant dans ce domaine, j'ai suivie les tutos et autres mais je sèche.
J'ai domoticz installé sur un raspberry, une sonde de température ds18b20 qui est reconnu dans domoticz, et deux radiateurs branchés avec les modules chacon branché sur le fil pilote avec diode de redressement.
Je tente de faire à partir du navigateur internet et donc de l'interface domoticz d'utiliser un script bien connu afin de maintenir la température voulu dans la pièce.
Voila le script:
--------------------------------
------ Variables à éditer ------
--------------------------------
local consigne = 18 --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 = 'sejour' --Nom de la sonde de température
local thermostat = 'Thermostat' --Nom de l'interrupteur virtuel du thermostat
local radiateur = 'essai_radiateur' --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 sejour
--On n'agit que si le "Thermostat" est actif
if (otherdevices[thermostat]=='On') then
print('-- Gestion du thermostat pour le salon --')
if (temperature < (consigne - hysteresis) ) then
print('Allumage du chauffage dans le salon')
commandArray[radiateur]='Off'
elseif (temperature > (consigne + hysteresis)) then
print('Extinction du chauffage dans le salon')
commandArray[radiateur]='On'
end
end
end
return commandArray
Dans le log j'ai cette erreur : Error: EventSystem: in news: [string "-- Ce script permet de maintenir la températ..."]:19: attempt to index global 'devicechanged' (a nil value)
J'ai essayé aussi de copier ce fichier sur le raspberry dans le dossier pi@raspberrypi:~/domoticz/scripts/lua avec le nom script_device_Thermostat.lua mais rien ne se passe.
Je vous remercie d'avance pour votre aide les amis
Voila je suis débutant dans ce domaine, j'ai suivie les tutos et autres mais je sèche.
J'ai domoticz installé sur un raspberry, une sonde de température ds18b20 qui est reconnu dans domoticz, et deux radiateurs branchés avec les modules chacon branché sur le fil pilote avec diode de redressement.
Je tente de faire à partir du navigateur internet et donc de l'interface domoticz d'utiliser un script bien connu afin de maintenir la température voulu dans la pièce.
Voila le script:
--------------------------------
------ Variables à éditer ------
--------------------------------
local consigne = 18 --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 = 'sejour' --Nom de la sonde de température
local thermostat = 'Thermostat' --Nom de l'interrupteur virtuel du thermostat
local radiateur = 'essai_radiateur' --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 sejour
--On n'agit que si le "Thermostat" est actif
if (otherdevices[thermostat]=='On') then
print('-- Gestion du thermostat pour le salon --')
if (temperature < (consigne - hysteresis) ) then
print('Allumage du chauffage dans le salon')
commandArray[radiateur]='Off'
elseif (temperature > (consigne + hysteresis)) then
print('Extinction du chauffage dans le salon')
commandArray[radiateur]='On'
end
end
end
return commandArray
Dans le log j'ai cette erreur : Error: EventSystem: in news: [string "-- Ce script permet de maintenir la températ..."]:19: attempt to index global 'devicechanged' (a nil value)
J'ai essayé aussi de copier ce fichier sur le raspberry dans le dossier pi@raspberrypi:~/domoticz/scripts/lua avec le nom script_device_Thermostat.lua mais rien ne se passe.
Je vous remercie d'avance pour votre aide les amis