Script de contrôle Thermostat / Radiateur : Consigne KO
Publié : 08 déc. 2023, 14:43
Bonjour,
J'essaye de faire un script pour remplacer ma box Wiser (la croix blanche) dans le contrôle du chauffage. Pas de problème particulier d'algorythme mais plus sur l'utilisation d'une variable (peut-être). J'arrive à contrôler manuellement (via les widgets) mon activateur de radiateur :
Opération 1 : On
Opération 2 : Fixation Température courante
Opération 3 : Fixation Température de consigne.
J'essaye donc de scripter ça (très simplement pour l'instant) et je m'aperçois que je n'arrive pas à modifier la valeur de la consigne de mon radiateur ...
Quand je regarde les logs, j'obtiens généralement ça :
' RETOUR MODIF DE LA TEMPERATURE
2023-12-08 14:22:55.867 Status: LUA: Device based event fired on 'W-The1-Temp', value '19.4'
2023-12-08 14:22:55.867 Status: LUA: Th : Température consigne : 21.00°C
2023-12-08 14:22:55.867 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:22:55.867 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:22:55.867 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:22:55.867 Status: LUA: TH - HOT : Il faudrait couper le radiateur
2023-12-08 14:22:55.867 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:22:55.867 Status: LUA: Rad 2 : Température actuelle : 18.90°C
2023-12-08 14:22:55.867 Status: LUA: Device based event fired on 'W-The1-Temp_Temperature', value '19.39999961853'
2023-12-08 14:22:55.868 Status: LUA: Th : Température consigne : 21.00°C
2023-12-08 14:22:55.868 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:22:55.868 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:22:55.868 Status: LUA: Rad : Température actuelle : 18.90°C
' RETOUR MODIF DE LA VALEUR DE CONSIGNE
2023-12-08 14:32:01.401 Status: LUA: Device based event fired on 'W-The1-Control_Utility', value '22.5'
2023-12-08 14:32:01.401 Status: LUA: Th : Température consigne : 22.50°C
2023-12-08 14:32:01.401 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:32:01.401 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:32:01.401 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:32:01.402 Status: LUA: Device based event fired on 'W-The1-Control', value '22.50'
2023-12-08 14:32:01.402 Status: LUA: Th : Température consigne : 22.50°C
2023-12-08 14:32:01.402 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:32:01.402 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:32:01.402 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:32:01.402 Status: LUA: TH - COLD : Il faudrait allumer le radiateur
2023-12-08 14:32:01.402 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:32:01.402 Status: LUA: Rad 2 : Température actuelle : 18.90°C
2023-12-08 14:32:01.405 Status: EventSystem: Script event triggered: Script OnDevice
Je me dis que l'affichage n'est pas bon car le CommandArray n'est pas encore passé ...
' RETOUR MODIF 2 DE LA VALEUR DE CONSIGNE
2023-12-08 14:34:37.644 Status: LUA: Device based event fired on 'W-The1-Control_Utility', value '23.5'
2023-12-08 14:34:37.644 Status: LUA: Th : Température consigne : 23.50°C
2023-12-08 14:34:37.644 Status: LUA: Th : Température actuelle : 19.6°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:34:37.644 Status: LUA: Device based event fired on 'W-The1-Control', value '23.50'
2023-12-08 14:34:37.644 Status: LUA: Th : Température consigne : 23.50°C
2023-12-08 14:34:37.644 Status: LUA: Th : Température actuelle : 19.6°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:34:37.644 Status: LUA: TH - COLD : Il faudrait allumer le radiateur
2023-12-08 14:34:37.644 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad 2 : Température actuelle : 18.90°C
Toujours 19,5° => pas pris en compte ...
Le script se termine par return commandArray => je suppose que ça doit passer les commandes
Est-ce que quelq'un aurait une idée du pourquoi et du comment pour passer cette valeur de consigne ?
Merci,
Yvan
J'essaye de faire un script pour remplacer ma box Wiser (la croix blanche) dans le contrôle du chauffage. Pas de problème particulier d'algorythme mais plus sur l'utilisation d'une variable (peut-être). J'arrive à contrôler manuellement (via les widgets) mon activateur de radiateur :
Opération 1 : On
Opération 2 : Fixation Température courante
Opération 3 : Fixation Température de consigne.
J'essaye donc de scripter ça (très simplement pour l'instant) et je m'aperçois que je n'arrive pas à modifier la valeur de la consigne de mon radiateur ...
Code : Tout sélectionner
print ("Th : Température consigne : "..otherdevices['W-The1-Control'].."°C");
print ("Th : Température actuelle : "..otherdevices['W-The1-Temp'].."°C");
print ("Rad : Température consigne : "..otherdevices['W-Rad1-ConsigneSet'].."°C");
print ("Rad : Température actuelle : "..otherdevices['W-Rad1-TempSet'].."°C");
-- Si changement de consigne
if (deviceName=='W-The1-Control' or deviceName=='W-The1-Temp') then
-- Commun : Allumer + Mode sans fil pilote
commandArray['W-Rad1-OnOff'] = "On";
commandArray['W-Rad1-FilPilote'] = "Normal";
-- Passer la Température
commandArray['W-Rad1-TempSet'] = otherdevices['W-The1-Temp'];
-- Passer la consigne
commandArray['W-Rad1-ConsigneSet'] = deviceValue;
if(tonumber(otherdevices['W-The1-Temp']) < tonumber(deviceValue)) then
print ("TH - COLD : Il faudrait allumer le radiateur");
else
print ("TH - HOT : Il faudrait couper le radiateur");' RETOUR MODIF DE LA TEMPERATURE
2023-12-08 14:22:55.867 Status: LUA: Device based event fired on 'W-The1-Temp', value '19.4'
2023-12-08 14:22:55.867 Status: LUA: Th : Température consigne : 21.00°C
2023-12-08 14:22:55.867 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:22:55.867 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:22:55.867 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:22:55.867 Status: LUA: TH - HOT : Il faudrait couper le radiateur
2023-12-08 14:22:55.867 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:22:55.867 Status: LUA: Rad 2 : Température actuelle : 18.90°C
2023-12-08 14:22:55.867 Status: LUA: Device based event fired on 'W-The1-Temp_Temperature', value '19.39999961853'
2023-12-08 14:22:55.868 Status: LUA: Th : Température consigne : 21.00°C
2023-12-08 14:22:55.868 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:22:55.868 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:22:55.868 Status: LUA: Rad : Température actuelle : 18.90°C
' RETOUR MODIF DE LA VALEUR DE CONSIGNE
2023-12-08 14:32:01.401 Status: LUA: Device based event fired on 'W-The1-Control_Utility', value '22.5'
2023-12-08 14:32:01.401 Status: LUA: Th : Température consigne : 22.50°C
2023-12-08 14:32:01.401 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:32:01.401 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:32:01.401 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:32:01.402 Status: LUA: Device based event fired on 'W-The1-Control', value '22.50'
2023-12-08 14:32:01.402 Status: LUA: Th : Température consigne : 22.50°C
2023-12-08 14:32:01.402 Status: LUA: Th : Température actuelle : 19.4°C
2023-12-08 14:32:01.402 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:32:01.402 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:32:01.402 Status: LUA: TH - COLD : Il faudrait allumer le radiateur
2023-12-08 14:32:01.402 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:32:01.402 Status: LUA: Rad 2 : Température actuelle : 18.90°C
2023-12-08 14:32:01.405 Status: EventSystem: Script event triggered: Script OnDevice
Je me dis que l'affichage n'est pas bon car le CommandArray n'est pas encore passé ...
' RETOUR MODIF 2 DE LA VALEUR DE CONSIGNE
2023-12-08 14:34:37.644 Status: LUA: Device based event fired on 'W-The1-Control_Utility', value '23.5'
2023-12-08 14:34:37.644 Status: LUA: Th : Température consigne : 23.50°C
2023-12-08 14:34:37.644 Status: LUA: Th : Température actuelle : 19.6°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:34:37.644 Status: LUA: Device based event fired on 'W-The1-Control', value '23.50'
2023-12-08 14:34:37.644 Status: LUA: Th : Température consigne : 23.50°C
2023-12-08 14:34:37.644 Status: LUA: Th : Température actuelle : 19.6°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad : Température actuelle : 18.90°C
2023-12-08 14:34:37.644 Status: LUA: TH - COLD : Il faudrait allumer le radiateur
2023-12-08 14:34:37.644 Status: LUA: Rad 2 : Température consigne : 19.50°C
2023-12-08 14:34:37.644 Status: LUA: Rad 2 : Température actuelle : 18.90°C
Toujours 19,5° => pas pris en compte ...
Le script se termine par return commandArray => je suppose que ça doit passer les commandes
Est-ce que quelq'un aurait une idée du pourquoi et du comment pour passer cette valeur de consigne ?
Merci,
Yvan