602 lines
39 KiB
Plaintext
Executable File
602 lines
39 KiB
Plaintext
Executable File
-- http://easydomoticz.com/forum/viewtopic.php?f=17&t=2869&hilit=vmc
|
|
|
|
require "scripts/lua/fonctions2"
|
|
|
|
commandArray = {}
|
|
|
|
--recupere les minutes
|
|
time=os.time()
|
|
minutes=tonumber(os.date('%M',time))
|
|
--jour=tonumber(os.date('%w',time))
|
|
heures=tonumber(os.date('%H',time))
|
|
|
|
if minutes%10 == 6 then
|
|
|
|
INTERVAL_MESURE = 2 -- Nombre d'intervals de mesure entre deux cycles d'analyse de l'humidité (en nombre de cycles = nombre de minutes)
|
|
SEUIL_DECLENCHEMENT_VMC = 2 -- Augmentation en % au-delà de laquelle on déclenche la GV de la VMC
|
|
NbCycles_Max_GV_VMC = 5 -- Nombre de cycles maximum durant lequel la GV de la VMC peut rester ON
|
|
-- à partir du moment où il n'y a plus d'augmentation de l'humidité entre deux mesures
|
|
Anticipation_Arret= 1 -- l'arrêt de la grande vitesse se fera à l'humidité avant déclenchement de la GV plus cette valeur
|
|
-- ce qui permet d'anticiper l'arrêt de la grande vitesse avant d'atteindre la valeur initiale
|
|
|
|
NOM_INTERRUPTEUR_PILOTAGE_VMC = 'VMC'
|
|
NOM_INTERRUPTEUR_OnOff_VMC = 'VMC-OnOff'
|
|
NOM_INTERRUPTEUR_GV_VMC = 'VMC-GV'
|
|
NOM_CAPTEUR_HUMIDITE1 = 'TemperatureSDB'
|
|
NOM_CAPTEUR_HUMIDITE2 = 'TemperatureCuisine'
|
|
NOM_INTERRUPTEUR_DEBUG = 'Debug'
|
|
NOM_INTERRUPTEUR_TEST = 'Test-GV-SDB'
|
|
--NOM_CAPTEUR_VIRTUEL_HYGRO_MOYENNE= 'Hygro_Maison_Moyenne'
|
|
VALEUR_TEST_HUMIDITE1 = 'VMC_TST_HUM_SDB1' -- valeur de test pour l'umidité positionné dans les variables domoticz
|
|
VALEUR_TEST_HUMIDITE2 = 'VMC_TST_HUM_SDB2' -- valeur de test pour l'umidité positionné dans les variables domoticz
|
|
|
|
-- ---------------------------------------------------------------------
|
|
-- Récupération de paramètres de Domoticz passés par les interrupteurs
|
|
-- ---------------------------------------------------------------------
|
|
if(otherdevices[NOM_INTERRUPTEUR_DEBUG]=='On') then -- Si le mode debug est activé dans Domoticz (inter debug sur on)
|
|
MODE_DEBUGG= true
|
|
else
|
|
MODE_DEBUGG= false
|
|
end
|
|
|
|
if(otherdevices[NOM_INTERRUPTEUR_TEST]=='On') then -- Si le mode test est activé dans Domoticz (inter Test sur on)
|
|
MODE_TEST=true
|
|
else
|
|
MODE_TEST=false
|
|
end
|
|
|
|
-- MODE_TEST=true
|
|
|
|
if MODE_DEBUGG== true then
|
|
print(' ')
|
|
print('>>>>>>>>>>>>>> Script de controle de la VMC v1.0 <<<<<<<<<<<<<<<<<<<<<')
|
|
end
|
|
|
|
-- ----------------------------------------------------------------------------------
|
|
-- --Récupération de toutes les variables Domoticz servant au script et remise à 0 --
|
|
-- ----------------------------------------------------------------------------------
|
|
VMC_VAR_Compteur_Cycles = tonumber(uservariables['VMC_VAR_Compteur_Cycles']) -- compteur de cycles
|
|
VMC_VAR_Histo_Hum1_SDB1 = tonumber(uservariables['VMC_VAR_Histo_Hum1_SDB1']) -- mesure la plus récente SDB1
|
|
VMC_VAR_Histo_Hum1_SDB2 = tonumber(uservariables['VMC_VAR_Histo_Hum1_SDB2']) -- mesure la plus récente SDB2
|
|
VMC_VAR_Histo_Hum2_SDB1 = tonumber(uservariables['VMC_VAR_Histo_Hum2_SDB1']) -- mesure la plus ancienne SDB1
|
|
VMC_VAR_Histo_Hum2_SDB2 = tonumber(uservariables['VMC_VAR_Histo_Hum2_SDB2']) -- mesure la plus ancienne SDB2
|
|
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB1 = tonumber(uservariables['VMC_VAR_Cible_Hum_GV_Off_SDB1']) -- Cible à atteindre pour arrêter la deshumidification SDB1 lorsqu'elle est active
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB2 = tonumber(uservariables['VMC_VAR_Cible_Hum_GV_Off_SDB2']) -- Cible à atteindre pour arrêter la deshumidification SDB2 lorsqu'elle est active
|
|
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = tonumber(uservariables['VMC_VAR_TimerSecuriteArret_SDB1']) -- Nb de cycles restants avant l'arrête automatique de sécurité de la SDB1
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = tonumber(uservariables['VMC_VAR_TimerSecuriteArret_SDB2']) -- Nb de cycles restants avant l'arrête automatique de sécurité de la SDB2
|
|
|
|
VMC_VAR_Deshumidification_On_SDB1 = tonumber(uservariables['VMC_VAR_Deshumidification_On_SDB1']) -- Vaut 1 si la deshumidification est en cours dans la SDB1, 0 sinon
|
|
VMC_VAR_Deshumidification_On_SDB2 = tonumber(uservariables['VMC_VAR_Deshumidification_On_SDB2']) -- Vaut 1 si la deshumidification est en cours dans la SDB2, 0 sinon
|
|
|
|
Cible_Humidite_SDB1 = 0 -- Variable servant à calculer la cible d'humidité lorsuqe la déshumidification s'active pour la SDB1
|
|
Cible_Humidite_SDB2 = 0 -- Variable servant à calculer la cible d'humidité lorsuqe la déshumidification s'active pour la SDB2
|
|
|
|
Humidite_Actuelle_EXT = tonumber(otherdevices_humidity["BarometreLaGacilly"])
|
|
Temperature_Actuelle_EXt = tonumber(otherdevices_temperature["BarometreLaGacilly"])
|
|
|
|
-- ********************************************************************
|
|
-- SI L'UTILISATEUR A ACTIVé LA VMC DE MANIERE MANUELLE ON N'EXECUTE --
|
|
-- PAS LE SCRIPT ET ON POSITIONNE LA VMC A LA BONNNE VALEUR
|
|
-- ********************************************************************
|
|
Etat_Pilotage_VMC = tonumber(otherdevices_svalues[NOM_INTERRUPTEUR_PILOTAGE_VMC]) -- récupération de l'état de l'inter 4 positions de pilotage de la VMC
|
|
print('Etat_Pilotage_VMC='..tostring(Etat_Pilotage_VMC))
|
|
|
|
if Etat_Pilotage_VMC < 30 then -- Si inter sur mode différent d'automatique (qui vaut 30)
|
|
if Etat_Pilotage_VMC == 0 then -- Si inter sur VMC Off
|
|
print('VMC arretee manuellement via l interrupteur. Sortie du script')
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'Off'
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'Off'
|
|
end
|
|
if Etat_Pilotage_VMC == 10 then -- Si inter sur VMC petite vitesse
|
|
print('VMC positionnee en marche / petite vitesse via l interrupteur. Sortie du script')
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'Off'
|
|
end
|
|
if Etat_Pilotage_VMC == 20 then -- si inter sur VMC grande vitesse
|
|
print('VMC positionnee en marche / grande vitesse via l interrupteur. Sortie du script')
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'On'
|
|
end
|
|
|
|
print('NOM_CAPTEUR_HUMIDITE1 '..tostring(tonumber(otherdevices_humidity[NOM_CAPTEUR_HUMIDITE1])))
|
|
|
|
-- On n'est plus en mode automatique donc on sort du script après l'avoir remis à 0 (réinitialisation de toutes les variables)
|
|
commandArray['Variable:VMC_VAR_Compteur_Cycles'] = '0'
|
|
commandArray['Variable:VMC_VAR_Histo_Hum2_SDB1'] = tostring(math.floor(tonumber(otherdevices_humidity[NOM_CAPTEUR_HUMIDITE1])))
|
|
commandArray['Variable:VMC_VAR_Histo_Hum1_SDB1'] = tostring(math.floor(tonumber(otherdevices_humidity[NOM_CAPTEUR_HUMIDITE1])))
|
|
commandArray['Variable:VMC_VAR_Cible_Hum_GV_Off_SDB1'] = '0'
|
|
commandArray['Variable:VMC_VAR_TimerSecuriteArret_SDB1'] = '0'
|
|
commandArray['Variable:VMC_VAR_Deshumidification_On_SDB1'] = '0'
|
|
commandArray['Variable:VMC_VAR_Histo_Hum2_SDB2'] = tostring(math.floor(tonumber(otherdevices_humidity[NOM_CAPTEUR_HUMIDITE2])))
|
|
commandArray['Variable:VMC_VAR_Histo_Hum1_SDB2'] = tostring(math.floor(tonumber(otherdevices_humidity[NOM_CAPTEUR_HUMIDITE2])))
|
|
commandArray['Variable:VMC_VAR_Cible_Hum_GV_Off_SDB2'] = '0'
|
|
commandArray['Variable:VMC_VAR_TimerSecuriteArret_SDB2'] = '0'
|
|
commandArray['Variable:VMC_VAR_Deshumidification_On_SDB2'] = '0'
|
|
return commandArray
|
|
end
|
|
|
|
print('mode automatique')
|
|
|
|
-- **************************************
|
|
-- Recuperation des valeurs d'humidite
|
|
-- **************************************
|
|
if (MODE_TEST) then
|
|
-- Si on est en mode test, on prends les valeurs fixées dans les variables DOMOTICZ
|
|
Humidite_Actuelle_SDB1 = tonumber(uservariables['VMC_TST_HUM_SDB1'])
|
|
Humidite_Actuelle_SDB2 = tonumber(uservariables['VMC_TST_HUM_SDB2'])
|
|
Hygro_Moyenne_Maison = tonumber(uservariables['VMC_TST_HUM_MOYENNE_MAISON'])
|
|
else
|
|
-- Si on est en mode normal, on prends les valeurs remontées par les capteurs
|
|
Humidite_Actuelle_SDB1 = otherdevices_humidity[NOM_CAPTEUR_HUMIDITE1]
|
|
Humidite_Actuelle_SDB2 = otherdevices_humidity[NOM_CAPTEUR_HUMIDITE2]
|
|
Humidite_Actuelle_CELLIER = otherdevices_humidity["TemperatureCellier"]
|
|
|
|
Hygro_Moyenne_Maison = math.max(Humidite_Actuelle_SDB1, Humidite_Actuelle_CELLIER) -- otherdevices_humidity[NOM_CAPTEUR_VIRTUEL_HYGRO_MOYENNE]
|
|
end
|
|
|
|
print('Hygro_Moyenne_Maison='..tostring(Hygro_Moyenne_Maison))
|
|
|
|
-- L'humidité maximum acceptable dans la salle de bain est le maximum de la valeur moyenne humidité
|
|
-- en cours dans la maison et de la valeur fixées
|
|
-- Cette humidité max permet de maintenir la VMC en petite vitesse même si l'humidité de la salle de
|
|
-- bain est redescendue après un pic
|
|
Maximum_Humidite_Acceptable_SDB = math.max(tonumber(uservariables['Hygro_Max_SDB']), Hygro_Moyenne_Maison)
|
|
|
|
-- ******************************************************************************
|
|
-- Sortie du script si les valeurs d'humidité récupérées ne sont pas exploitables
|
|
-- *******************************************************************************
|
|
if (Humidite_Actuelle_SDB1 == 0 or Humidite_Actuelle_SDB1 == nil) then
|
|
print('Pas de signal du capteur ' .. NOM_CAPTEUR_HUMIDITE1 .. '. Sortie du script')
|
|
return commandArray
|
|
end
|
|
if (Humidite_Actuelle_SDB2 == 0 or Humidite_Actuelle_SDB2 == nil) then
|
|
print('Pas de signal du capteur ' .. NOM_CAPTEUR_HUMIDITE2 .. '. Sortie du script')
|
|
return commandArray
|
|
end
|
|
if (Hygro_Moyenne_Maison== 0 or Hygro_Moyenne_Maison== nil) then
|
|
print('Pas de signal du capteur virtuel d humidite moyenne de la maison, Sortie du script')
|
|
return commandArray
|
|
end
|
|
|
|
print('Les capteurs sont ok ')
|
|
|
|
-- ************************************************************************************
|
|
-- Le script est executé toutes les minutes, on augmente la valeur du compteur de cycle
|
|
-- ************************************************************************************
|
|
VMC_VAR_Compteur_Cycles = VMC_VAR_Compteur_Cycles + 1
|
|
|
|
-- ***************************************************************************************************
|
|
-- On commence par traiter l'humidité globale de la maison pour savoir si la VMC doit être activée ou non
|
|
-- ***************************************************************************************************
|
|
local humidite_ext = humiditeAbsolue(Temperature_Actuelle_EXt, Humidite_Actuelle_EXT)
|
|
local humidite_sdb = humiditeAbsolue(tonumber(otherdevices_temperature["TemperatureSDB"]),
|
|
tonumber(otherdevices_humidity["TemperatureSDB"]))
|
|
|
|
|
|
if humidite_ext > humidite_sdb then
|
|
print("L'humidité extérieure est trop élevée. Arret VMC")
|
|
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'Off'
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'Off'
|
|
return commandArray
|
|
else
|
|
if Hygro_Moyenne_Maison > uservariables['Hygro_Max_Maison'] then
|
|
Hygro_Max_Depassee = 1 -- L'humidité de la maison est trop importante on active la VMC
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
else -- L'humidité de la maison est correcte
|
|
Hygro_Max_Depassee = 0
|
|
if VMC_VAR_Deshumidification_On_SDB1 == 0 and VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
if Humidite_Actuelle_SDB1 <= Maximum_Humidite_Acceptable_SDB and
|
|
Humidite_Actuelle_SDB2 <= Maximum_Humidite_Acceptable_SDB
|
|
then
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'Off' -- on arrête la VMC si aucune des salles de bains n'est utilisée et que l'humidité des salles de bain est acceptable
|
|
else
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On' -- on allume la VMC si aucune des salles de bains n'est utilisée mais que l'humidité des salles de bain n'est pas acceptable
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('***************')
|
|
print('ETAT ACTUEL : ')
|
|
print('***************')
|
|
if Hygro_Moyenne_Maison <= uservariables['Hygro_Max_Maison']
|
|
and VMC_VAR_Deshumidification_On_SDB1 ==0
|
|
and VMC_VAR_Deshumidification_On_SDB2 == 0
|
|
then
|
|
if Humidite_Actuelle_SDB1 <= Maximum_Humidite_Acceptable_SDB and Humidite_Actuelle_SDB2 <= Maximum_Humidite_Acceptable_SDB then
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max) et aucune salle de bain en cours d utilisation, desactivation de la vmc')
|
|
else
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max), aucune salle de bain en cours d utilisation mais humidite SDB toujours trop elevee, VMC laissee active en petite vitesse')
|
|
end
|
|
else
|
|
if VMC_VAR_Deshumidification_On_SDB1 ==0 and VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
print('[Hygro Maison] - Hygrometrie incorrect (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max), maintien de la VMC meme si aucune salle de bain en cours d utilisation')
|
|
end
|
|
end
|
|
if VMC_VAR_Deshumidification_On_SDB1 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Deshumidification OFF - actuelle : ' .. Humidite_Actuelle_SDB1 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB1 .. '% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB1 .. '%')
|
|
else
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Deshumidification ON - actuelle : ' .. Humidite_Actuelle_SDB1 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB1 ..'% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB1 .. '% / Cible arret : ' .. VMC_VAR_Cible_Hum_GV_Off_SDB1 .. '% / arret de securite dans ' .. VMC_VAR_TimerSecuriteArret_SDB1 .. ' cycle(s)')
|
|
end
|
|
if VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Deshumidification OFF - actuelle : ' .. Humidite_Actuelle_SDB2 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB2 .. '% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB2 .. '%')
|
|
else
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Deshumidification ON - actuelle : ' .. Humidite_Actuelle_SDB2 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB2 ..'% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB2 .. '% / Cible arret : ' .. VMC_VAR_Cible_Hum_GV_Off_SDB2 .. '% / arret de securite dans ' .. VMC_VAR_TimerSecuriteArret_SDB2 .. ' cycle(s)')
|
|
end
|
|
end
|
|
|
|
if (VMC_VAR_Compteur_Cycles >= INTERVAL_MESURE) then
|
|
-- *************************************************************************************
|
|
-- Si le nombre de cycles a atteint l'interval de mesure fixé on commence l'analyse pour
|
|
-- identifier les besoins d'activation ou désactivation de la grande vitesse de la VMC
|
|
-- *************************************************************************************
|
|
VMC_VAR_Compteur_Cycles = 0 -- remise à 0 du compteur de cycle
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print(' ')
|
|
print('***************')
|
|
print('ANALYSE : ')
|
|
print('***************')
|
|
print('Nombre de cycles atteint (' .. VMC_VAR_Compteur_Cycles .. '/' .. INTERVAL_MESURE .. '), realisation des tests pour adapter la vitesse VMC')
|
|
end
|
|
|
|
-- ***************************************************************************
|
|
-- Initialisation des historiques s'ils ne contiennent aucune information. On
|
|
-- positionne alors dans les deux historiques les valeurs d'hulidité actuelles
|
|
-- ***************************************************************************
|
|
if (VMC_VAR_Histo_Hum1_SDB1 == 0) then
|
|
-- Initialisation des valeurs historiques
|
|
VMC_VAR_Histo_Hum1_SDB1 = Humidite_Actuelle_SDB1
|
|
VMC_VAR_Histo_Hum2_SDB1 = Humidite_Actuelle_SDB1
|
|
end
|
|
if (VMC_VAR_Histo_Hum1_SDB2 == 0) then
|
|
-- Initialisation des valeurs historiques
|
|
VMC_VAR_Histo_Hum1_SDB2 = Humidite_Actuelle_SDB2
|
|
VMC_VAR_Histo_Hum2_SDB2 = Humidite_Actuelle_SDB2
|
|
end
|
|
|
|
-- ********************************************************************
|
|
-- Calcul des écarts maximum d'humidité constatés dans chacune des SDB
|
|
-- ********************************************************************
|
|
Ecart_Max_Humidite_SDB1 = Humidite_Actuelle_SDB1 - math.min(VMC_VAR_Histo_Hum2_SDB1, VMC_VAR_Histo_Hum1_SDB1)
|
|
Ecart_Max_Humidite_SDB2 = Humidite_Actuelle_SDB2 - math.min(VMC_VAR_Histo_Hum2_SDB2, VMC_VAR_Histo_Hum1_SDB2)
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Ecart max d humidite constate sur les dernieres periodes : ' .. Ecart_Max_Humidite_SDB1)
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Ecart max d humidite constate sur les dernieres periodes : ' .. Ecart_Max_Humidite_SDB2)
|
|
end
|
|
|
|
-- ********************************************************************************************************
|
|
-- Identification de la cible humidité à atteindre si la grande vitesse de la VMC est activée. Il s'agira
|
|
-- de redescendre à la plus basse des valeurs d'humidité de l'historique + un % défini dans "Anticipation_Arret"
|
|
-- ********************************************************************************************************
|
|
Cible_Humidite_SDB1 = math.min(VMC_VAR_Histo_Hum2_SDB1, VMC_VAR_Histo_Hum1_SDB1) + Anticipation_Arret
|
|
Cible_Humidite_SDB2 = math.min(VMC_VAR_Histo_Hum2_SDB2, VMC_VAR_Histo_Hum1_SDB2) + Anticipation_Arret
|
|
|
|
-- *****************************************************************************
|
|
-- Sauvegarde dans l'historique des mesures précédentes et de la mesure actuelle
|
|
-- *****************************************************************************
|
|
VMC_VAR_Histo_Hum2_SDB1 = VMC_VAR_Histo_Hum1_SDB1 -- L'historique le plus ancien reçoit l'historique plus récent de l'humidité
|
|
VMC_VAR_Histo_Hum2_SDB2 = VMC_VAR_Histo_Hum1_SDB2
|
|
VMC_VAR_Histo_Hum1_SDB1 = Humidite_Actuelle_SDB1 -- L'historique plus récent reçoit la valeur actuelle d'humidité
|
|
VMC_VAR_Histo_Hum1_SDB2 = Humidite_Actuelle_SDB2
|
|
|
|
-- ********************************************************************************************************
|
|
-- Remise à 0 des indicateurs précisant s'il y a eu un déclenchement de la GV pour une des SDB lors
|
|
-- de l'execution du script en cours. Pour l'instant aucune mise en route n'a été décidée/effectuée
|
|
-- ********************************************************************************************************
|
|
Declenchement_SDB1 = 0
|
|
Declenchement_SDB2 = 0
|
|
|
|
-- *****************************************************************************
|
|
-- Si le ventilateur est off alors qu'un des deux programmes est en route, on
|
|
-- force l'arrêt des programmes de déshumidification (arrêt manuel extérieur)
|
|
-- *****************************************************************************
|
|
if (otherdevices[NOM_INTERRUPTEUR_GV_VMC]=='Off')
|
|
and (VMC_VAR_Deshumidification_On_SDB1 == 1 or VMC_VAR_Deshumidification_On_SDB2 ==1)
|
|
then
|
|
VMC_VAR_Deshumidification_On_SDB1 = 0
|
|
VMC_VAR_Deshumidification_On_SDB2 = 0
|
|
end
|
|
|
|
-- *****************************************************************************************
|
|
-- Si la VMC n'est pas en grande vitesse ou si une des deux SDB n'est pas en grande vitesse
|
|
-- on identifie s'il est nécessaire de mettre en route la marche forcée pour une des SDBs
|
|
-- *****************************************************************************************
|
|
if otherdevices[NOM_INTERRUPTEUR_GV_VMC]=='Off'
|
|
or VMC_VAR_Deshumidification_On_SDB1 == 0
|
|
or VMC_VAR_Deshumidification_On_SDB2 == 0
|
|
then
|
|
|
|
-- **************************************************************************
|
|
-- Identification du besoin éventuel de déclenchement de la VMC pour la SDB1
|
|
-- Besoin identifié si humidité > au seuil de déclenchement et que le programme
|
|
-- de déshumidification n'est pas déjà activé pour cette SDB
|
|
-- **************************************************************************
|
|
if Ecart_Max_Humidite_SDB1 >= SEUIL_DECLENCHEMENT_VMC and VMC_VAR_Deshumidification_On_SDB1 == 0 then
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'On'
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
VMC_VAR_Deshumidification_On_SDB1 = 1
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB1 = Cible_Humidite_SDB1
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = NbCycles_Max_GV_VMC
|
|
Declenchement_SDB1 = 1
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Augmentation soudaine de l humidite. Activation de la VMC en grande vitesse. Ecart d humidite observe: ' .. Ecart_Max_Humidite_SDB1)
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Cible a atteindre pour l extinction du ventilateur : ' ..VMC_VAR_Cible_Hum_GV_Off_SDB1)
|
|
end
|
|
|
|
else
|
|
if MODE_DEBUGG== true and Ecart_Max_Humidite_SDB2 >= SEUIL_DECLENCHEMENT_VMC and VMC_VAR_Deshumidification_On_SDB1 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Ecart non significatif, pas de mise en route du programme de deshumidification')
|
|
end
|
|
end
|
|
|
|
-- **************************************************************************
|
|
-- Identification du besoin éventuel de déclenchement de la VMC pour la SDB2
|
|
-- Besoin identifié si humidité > au seuil de déclenchement et que le programme
|
|
-- de déshumidification n'est pas déjà activé pour cette SDB
|
|
-- **************************************************************************
|
|
if Ecart_Max_Humidite_SDB2 >= SEUIL_DECLENCHEMENT_VMC and VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'On'
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
VMC_VAR_Deshumidification_On_SDB2 = 1
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB2 = Cible_Humidite_SDB2
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = NbCycles_Max_GV_VMC
|
|
Declenchement_SDB2 = 1
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Augmentation soudaine de l humidite. Activation de la VMC en grande vitesse. Ecart d humidite observe: ' .. Ecart_Max_Humidite_SDB2)
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Cible a atteindre pour l extinction du ventilateur : ' ..VMC_VAR_Cible_Hum_GV_Off_SDB2)
|
|
end
|
|
else
|
|
if MODE_DEBUGG== true and Ecart_Max_Humidite_SDB1 >= SEUIL_DECLENCHEMENT_VMC and VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Ecart non significatif, pas de mise en route du programme de deshumidification')
|
|
end
|
|
end
|
|
end
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if Ecart_Max_Humidite_SDB1 < SEUIL_DECLENCHEMENT_VMC
|
|
and Ecart_Max_Humidite_SDB2 < SEUIL_DECLENCHEMENT_VMC
|
|
then
|
|
if MODE_DEBUGG== true then
|
|
print('Ecarts non significatif sur les deux SDB, pas de mise en route du programme de deshumidification')
|
|
end
|
|
end
|
|
|
|
-- *****************************************************************************************
|
|
-- Si la VMC est en grande vitesse après l'analyse du besoin effectuée ci-dessus
|
|
-- *****************************************************************************************
|
|
if (otherdevices[NOM_INTERRUPTEUR_GV_VMC]=='On') or VMC_VAR_Deshumidification_On_SDB1 == 1 or VMC_VAR_Deshumidification_On_SDB2 == 1 then
|
|
if (VMC_VAR_TimerSecuriteArret_SDB1 > 0) then -- Si le déshumidification est en courspour la SDB1 on diminue
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = VMC_VAR_TimerSecuriteArret_SDB1 - 1 -- la valeur du timer de sécurité pour l'arrêt automatique
|
|
end
|
|
if (VMC_VAR_TimerSecuriteArret_SDB2 > 0) then -- Si le déshumidification est en courspour la SDB2 on diminue
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = VMC_VAR_TimerSecuriteArret_SDB2 - 1 -- la valeur du timer de sécurité pour l'arrêt automatique
|
|
end
|
|
end
|
|
|
|
-- *****************************************************************************************
|
|
-- Si la VMC est en grande vitesse pour la SDB1 et que l'humidité continue d'augmenter
|
|
-- *****************************************************************************************
|
|
if (VMC_VAR_Deshumidification_On_SDB1 == 1) then
|
|
if (Ecart_Max_Humidite_SDB1 >= SEUIL_DECLENCHEMENT_VMC and Declenchement_SDB1 == 0) then
|
|
-- S'il y a encore un écart d'humidité constaté sur la dernière période (augmentation humidité toujours en cours) et qu'il n'y a pas
|
|
-- eu de déclenchement dans ce cycle, on considère qu'on n'a pas encore atteint l'humidité max et on remet à 0 la VMC_VAR_TimerSecuriteArret_SDB1
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = NbCycles_Max_GV_VMC
|
|
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - L humidite est toujours en augmentation, remise a 0 de la Securite Arret. Ecart constate sur la derniere periode : ' .. Ecart_Max_Humidite_SDB1)
|
|
end
|
|
|
|
end
|
|
end
|
|
|
|
-- *****************************************************************************************
|
|
-- Si la VMC est en grande vitesse pour la SDB2 et que l'humidité continue d'augmenter
|
|
-- *****************************************************************************************
|
|
if (VMC_VAR_Deshumidification_On_SDB2 == 1) then
|
|
if (Ecart_Max_Humidite_SDB2 >= SEUIL_DECLENCHEMENT_VMC and Declenchement_SDB2 == 0) then
|
|
-- S'il y a encore un écart d'humidité constaté sur la dernière période (augmentation humidité toujours en cours) et qu'il n'y a pas
|
|
-- eu de déclenchement dans ce cycle, on considère qu'on n'a pas encore atteint l'humidité max et on remet à 0 la VMC_VAR_TimerSecuriteArret_SDB2
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = NbCycles_Max_GV_VMC
|
|
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - L humidite est toujours en augmentation, remise a 0 de la Securite Arret. Ecart constate sur la derniere periode : ' .. Ecart_Max_Humidite_SDB2)
|
|
end
|
|
end
|
|
end
|
|
|
|
-- *************************************************************************************************************
|
|
-- Analyse pour identifier si la grande vitesse peut être arrêtée si elle a été activée auparavant.
|
|
-- Si les Timers de sécurité sont atteints ou que l'humidité est redescendu pour les deux SDB on
|
|
-- arrête la grande vitesse et on regarde si on peut arrêter complètement la VMC (si l'humidité globale est Ok)
|
|
-- *************************************************************************************************************
|
|
if (VMC_VAR_TimerSecuriteArret_SDB1 == 0 or Humidite_Actuelle_SDB1 <= VMC_VAR_Cible_Hum_GV_Off_SDB1) and (VMC_VAR_TimerSecuriteArret_SDB2 == 0 or Humidite_Actuelle_SDB2 <= VMC_VAR_Cible_Hum_GV_Off_SDB2) then
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'Off'
|
|
if Hygro_Max_Depassee == 0 then -- Si l'humidité maximum globale de la maison n'est pas atteinte
|
|
if Humidite_Actuelle_SDB1<= uservariables['Hygro_Max_SDB'] and Humidite_Actuelle_SDB2<= uservariables['Hygro_Max_SDB'] then -- Si l'humidité des deux SDB est inférieure à l'humidité maximum acceptable dans une SDB
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'Off' -- on arrête complètement la VMC
|
|
if MODE_DEBUGG== true then
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max) et aucune salle de bain en cours d utilisation, desactivation de la vmc')
|
|
end
|
|
else
|
|
-- sinon (hygro maison Ok, mais humidité d'une des deux SDB dépasse la valeur maximum acceptable), on active la VMC en petite vitesse
|
|
commandArray[NOM_INTERRUPTEUR_OnOff_VMC] = 'On'
|
|
if MODE_DEBUGG== true then
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max), aucune salle de bain en cours d utilisation mais humidite SDB toujours trop elevee, VMC laissee active en petite vitesse')
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
-- *************************************************************************************************************
|
|
-- Analyse pour identifier s'il faut arrêter la grande vitesse suite à atteinte du timer de sécurité sur la SDB1
|
|
-- *************************************************************************************************************
|
|
if (VMC_VAR_TimerSecuriteArret_SDB1 == 0 and Humidite_Actuelle_SDB1 > VMC_VAR_Cible_Hum_GV_Off_SDB1 and VMC_VAR_Deshumidification_On_SDB1 == 1) then
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - L humidite n est pas redescendue a sa valeur initiale (avant activation de la grande vitesse) mais le TimeOut de securite pour l arret est atteint. Arret de la grande vitesse de la VMC pour ' .. NOM_CAPTEUR_HUMIDITE1)
|
|
end
|
|
-- Si on a atteint le timer de sécurité on réinitialise l'historique avec la valeur d'hulidité actuelle ainsi que les variables de la SDB1
|
|
VMC_VAR_Histo_Hum2_SDB1 = VMC_VAR_Histo_Hum1_SDB1
|
|
VMC_VAR_Deshumidification_On_SDB1 = 0
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB1 = 0
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = 0
|
|
VMC_VAR_Deshumidification_On_SDB1 = 0
|
|
end
|
|
|
|
-- *************************************************************************************************************
|
|
-- Analyse pour identifier s'il faut arrêter la grande vitesse suite à retour à au taux d'humidité initial sur la SDB1
|
|
-- *************************************************************************************************************
|
|
if (VMC_VAR_TimerSecuriteArret_SDB1 > 0 and Humidite_Actuelle_SDB1 <= VMC_VAR_Cible_Hum_GV_Off_SDB1 and VMC_VAR_Deshumidification_On_SDB1 == 1) then
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - L humidite est redescendue a une valeur proche de sa valeur initiale ('.. VMC_VAR_Cible_Hum_GV_Off_SDB1 ..'%). Arret de la grande vitesse de la VMC pour ' .. NOM_CAPTEUR_HUMIDITE1)
|
|
end
|
|
-- On réinitialise l'historique avec la valeur d'hulidité actuelle ainsi que les variables de la SDB1
|
|
VMC_VAR_Histo_Hum2_SDB1 = VMC_VAR_Histo_Hum1_SDB1
|
|
VMC_VAR_Deshumidification_On_SDB1 = 0
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB1 = 0
|
|
VMC_VAR_TimerSecuriteArret_SDB1 = 0
|
|
VMC_VAR_Deshumidification_On_SDB1 = 0
|
|
end
|
|
|
|
|
|
-- *************************************************************************************************************
|
|
-- Analyse pour identifier s'il faut arrêter la grande vitesse suite à atteinte du timer de sécurité sur la SDB2
|
|
-- *************************************************************************************************************
|
|
if (VMC_VAR_TimerSecuriteArret_SDB2 == 0 and Humidite_Actuelle_SDB2 > VMC_VAR_Cible_Hum_GV_Off_SDB2 and VMC_VAR_Deshumidification_On_SDB2 == 1) then
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - L humidite n est pas redescendue a sa valeur initiale (avant activation de la grande vitesse) mais le TimeOut de securite pour l arret est atteint. Arret de la grande vitesse de la VMC pour ' .. NOM_CAPTEUR_HUMIDITE2)
|
|
end
|
|
-- Si on a atteint le timer de sécurité on réinitialise l'historique avec la valeur d'hulidité actuelle ainsi que les variables de la SDB2
|
|
VMC_VAR_Deshumidification_On_SDB2 = 0
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB2 = 0
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = 0
|
|
VMC_VAR_Deshumidification_On_SDB2 = 0
|
|
VMC_VAR_Histo_Hum2_SDB2 = VMC_VAR_Histo_Hum1_SDB2
|
|
end
|
|
|
|
-- *************************************************************************************************************
|
|
-- Analyse pour identifier s'il faut arrêter la grande vitesse suite à retour à au taux d'humidité initial sur la SDB2
|
|
-- *************************************************************************************************************
|
|
if (VMC_VAR_TimerSecuriteArret_SDB2 > 0 and Humidite_Actuelle_SDB2 <= VMC_VAR_Cible_Hum_GV_Off_SDB2 and VMC_VAR_Deshumidification_On_SDB2 == 1) then
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - L humidite est redescendue a une valeur proche de sa valeur initiale ('.. VMC_VAR_Cible_Hum_GV_Off_SDB2 ..'%). Arret de la grande vitesse de la VMC pour ' .. NOM_CAPTEUR_HUMIDITE2)
|
|
end
|
|
-- On réinitialise l'historique avec la valeur d'hulidité actuelle ainsi que les variables de la SDB2
|
|
VMC_VAR_Deshumidification_On_SDB2 = 0
|
|
VMC_VAR_Cible_Hum_GV_Off_SDB2 = 0
|
|
VMC_VAR_TimerSecuriteArret_SDB2 = 0
|
|
VMC_VAR_Deshumidification_On_SDB2 = 0
|
|
VMC_VAR_Histo_Hum2_SDB2 = VMC_VAR_Histo_Hum1_SDB2
|
|
end
|
|
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
if (Humidite_Actuelle_SDB1 > VMC_VAR_Cible_Hum_GV_Off_SDB1 and VMC_VAR_TimerSecuriteArret_SDB1 > 0 and Declenchement_SDB1 == 0) then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Deshumidification toujours en cours, humidite actuelle = ' .. Humidite_Actuelle_SDB1.. '% ,cible = ' .. VMC_VAR_Cible_Hum_GV_Off_SDB1 .. '% ,TimerSecurite= ' .. VMC_VAR_TimerSecuriteArret_SDB1)
|
|
end
|
|
if (Humidite_Actuelle_SDB2 > VMC_VAR_Cible_Hum_GV_Off_SDB2 and VMC_VAR_TimerSecuriteArret_SDB2 > 0 and Declenchement_SDB2 == 0) then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Deshumidification toujours en cours, humidite actuelle = ' .. Humidite_Actuelle_SDB2.. '% ,cible = ' .. VMC_VAR_Cible_Hum_GV_Off_SDB2 .. '% ,TimerSecurite= ' .. VMC_VAR_TimerSecuriteArret_SDB2)
|
|
end
|
|
end
|
|
else
|
|
-- -----------------------------------
|
|
-- Affichage des infos en mode debug
|
|
-- -----------------------------------
|
|
if MODE_DEBUGG== true then
|
|
print('Nombre de cycles avant la realisation des tests d adaptation de la vitesse VMC non atteint (' .. VMC_VAR_Compteur_Cycles .. '/' .. INTERVAL_MESURE .. ')')
|
|
end
|
|
end
|
|
|
|
-- *******************************************************
|
|
-- Si la VMC est arrêtée on arrête aussi la grande vitesse
|
|
-- *******************************************************
|
|
if commandArray[NOM_INTERRUPTEUR_OnOff_VMC] == 'Off' then
|
|
commandArray[NOM_INTERRUPTEUR_GV_VMC] = 'Off'
|
|
end
|
|
|
|
if MODE_DEBUGG== true then
|
|
print(' ')
|
|
print('***************')
|
|
print('ETAT EN SORTIE : ')
|
|
print('***************')
|
|
|
|
if VMC_VAR_Deshumidification_On_SDB1 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Deshumidification OFF - actuelle : ' .. Humidite_Actuelle_SDB1 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB1 .. '% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB1 .. '%')
|
|
else
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE1 .. '] - Deshumidification ON - actuelle : ' .. Humidite_Actuelle_SDB1 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB1 ..'% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB1 .. '% / Cible arret : ' .. VMC_VAR_Cible_Hum_GV_Off_SDB1 .. '% / arret de securite dans ' .. VMC_VAR_TimerSecuriteArret_SDB1 .. ' cycle(s)')
|
|
end
|
|
|
|
if VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Deshumidification OFF - actuelle : ' .. Humidite_Actuelle_SDB2 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB2 .. '% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB2 .. '%')
|
|
else
|
|
print('[' .. NOM_CAPTEUR_HUMIDITE2 .. '] - Deshumidification ON - actuelle : ' .. Humidite_Actuelle_SDB2 .. '% / Precedente : ' .. VMC_VAR_Histo_Hum1_SDB2 ..'% / Cycle -2 : ' .. VMC_VAR_Histo_Hum2_SDB2 .. '% / Cible arret : ' .. VMC_VAR_Cible_Hum_GV_Off_SDB2 .. '% / arret de securite dans ' .. VMC_VAR_TimerSecuriteArret_SDB2 .. ' cycle(s)')
|
|
end
|
|
|
|
if Hygro_Moyenne_Maison <= uservariables['Hygro_Max_Maison'] and VMC_VAR_Deshumidification_On_SDB1 ==0 and VMC_VAR_Deshumidification_On_SDB2 == 0 then
|
|
if Humidite_Actuelle_SDB1 <= Maximum_Humidite_Acceptable_SDB and Humidite_Actuelle_SDB2 <= Maximum_Humidite_Acceptable_SDB then
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max) et aucune salle de bain en cours d utilisation, VMC desactivee')
|
|
else
|
|
print('[Hygro Maison] - Hygrometrie correcte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max), aucune salle de bain en cours d utilisation mais humidite SDB toujours trop elevee, VMC laissee active en petite vitesse')
|
|
end
|
|
else
|
|
if Hygro_Moyenne_Maison > uservariables['Hygro_Max_Maison'] then
|
|
print('[Hygro Maison] - Hygrometrie incorrecte (' .. Hygro_Moyenne_Maison .. '% vs ' .. uservariables['Hygro_Max_Maison'] ..'% max), VMC activee')
|
|
end
|
|
end
|
|
end
|
|
|
|
-- Sauvegarde des variables
|
|
commandArray['Variable:VMC_VAR_Compteur_Cycles'] = tostring(VMC_VAR_Compteur_Cycles)
|
|
commandArray['Variable:VMC_VAR_Histo_Hum2_SDB1'] = tostring(math.floor(tonumber(VMC_VAR_Histo_Hum2_SDB1)))
|
|
commandArray['Variable:VMC_VAR_Histo_Hum1_SDB1'] = tostring(math.floor(tonumber(VMC_VAR_Histo_Hum1_SDB1)))
|
|
commandArray['Variable:VMC_VAR_Cible_Hum_GV_Off_SDB1'] = tostring(VMC_VAR_Cible_Hum_GV_Off_SDB1)
|
|
commandArray['Variable:VMC_VAR_TimerSecuriteArret_SDB1'] = tostring(VMC_VAR_TimerSecuriteArret_SDB1)
|
|
commandArray['Variable:VMC_VAR_Deshumidification_On_SDB1'] = tostring(VMC_VAR_Deshumidification_On_SDB1)
|
|
|
|
commandArray['Variable:VMC_VAR_Histo_Hum2_SDB2'] = tostring(math.floor(tonumber(VMC_VAR_Histo_Hum2_SDB2)))
|
|
commandArray['Variable:VMC_VAR_Histo_Hum1_SDB2'] = tostring(math.floor(tonumber(VMC_VAR_Histo_Hum1_SDB2)))
|
|
commandArray['Variable:VMC_VAR_Cible_Hum_GV_Off_SDB2'] = tostring(VMC_VAR_Cible_Hum_GV_Off_SDB2)
|
|
commandArray['Variable:VMC_VAR_TimerSecuriteArret_SDB2'] = tostring(VMC_VAR_TimerSecuriteArret_SDB2)
|
|
commandArray['Variable:VMC_VAR_Deshumidification_On_SDB2'] = tostring(VMC_VAR_Deshumidification_On_SDB2)
|
|
|
|
end
|
|
return commandArray
|