Welcome to Smart Home Forum by FIBARO
Dear Guest,
as you can notice parts of Smart Home Forum by FIBARO is not available for you. You have to register in order to view all content and post in our community. Don't worry! Registration is a simple free process that requires minimal information for you to sign up. Become a part of of Smart Home Forum by FIBARO by creating an account.
As a member you can:
- Start new topics and reply to others
- Follow topics and users to get email updates
- Get your own profile page and make new friends
- Send personal messages
- ... and learn a lot about our system!
Regards,
Smart Home Forum by FIBARO Team
Search the Community
Showing results for tags 'humidity control'.
-
Hello, im looking for a HC3 Script which switch a Bathroom Fan on/off with dependency relative humindity. I found a HC2 Script from kapitano1 (https://forum.siio.de/t/lua-taupunktlueftung-im-keller/5206) My Lua skill is very low, so i tried to change the code to hc3 and add my ids. The script will run correctly when humidInAbs - humidOutAbs > 1 but the switch off fan code is not correct. And sorry for my english, but it is not my native language; i tried my best. Can anyone correct it please? Debug: 28.08.2020] [12:44:00] [DEBUG] [SCENE218]: - 28.08.2020 12:44:00 AußenTemp 21.59°C rel. Feuchtigkeit 57.0% [28.08.2020] [12:44:00] [DEBUG] [SCENE218]: - 28.08.2020 12:44:00 absolute Luftfeuchtigkeit Außen 10.969697021231g/m³ [28.08.2020] [12:44:00] [DEBUG] [SCENE218]: - 28.08.2020 12:44:00 InnenTemp 25.4°C rel. Feuchtigkeit 51.0% [28.08.2020] [12:44:00] [DEBUG] [SCENE218]: - 28.08.2020 12:44:00 absolute Luftfeuchtigkeit Innen 12.211619119493g/m³ [28.08.2020] [12:49:00] [ERROR] [SCENE218]: Declaration: { conditions = { { type = "date", property = "cron", operator = "match", value = {"*", "*", "*", "*", "*", "*"}, isTrigger = true } }, operator = "all" } Action: local date = os.date("%d.%m.%Y %H:%M:%S", os.time()) local EXP = tonumber("2.71828182845904523536028747135266249775724709369995") local pressure = fibaro.getValue(425, "value") -- Luftdruck local tempOut = fibaro.getValue(422, "value") -- Außentemperatur local humidOut = fibaro.getValue(424, "value") -- Feuchtigkeit local tempIn = fibaro.getValue(120, "value") --Temp local humidIn = fibaro.getValue(122, "value") -- Luftfeuchtigkeit local timeout_min = 5 -- Wartezeit local I1 = tonumber(tempOut) -- Temperatur (in °C) local I2 = tonumber(humidOut) -- Relative Luftfeuchtigkeit (in %) local I3 = tonumber(pressure) -- Aktueller Luftdruck (in Millibar) local I4 = tonumber(tempIn) -- Temperatur (in °C) local I5 = tonumber(humidIn) -- Relative Luftfeuchtigkeit (in %) local humidOutAbs local humidInAbs local run = 0 function actionToHigh() -- Aktionen bei Erkennung zu hoher Luftfeuchtigkeit fibaro.call(148, "turnOn") end function actionToLow() -- Aktionen bei Erkennung zu niedriger Luftfeuchtigkeit fibaro.call(148, "turnOff") end -- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- Werte Draußen -- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ function Voutside() --print(" - " ..date .. " AußenTemp " ..tempOut .. "°C rel. Feuchtigkeit " ..humidOut.. "%") humidOutAbs = 0.622 * I2/100 * (1.01325 * 10^(5.426651 - 2005.1 / (I1 + 273.15) + 0.00013869 * ((I1 + 273.15) * (I1 + 273.15) - 293700) / (I1 + 273.15) * (10^(0.000000000011965 * ((I1 + 273.15) * (I1 + 273.15) - 293700) * ((I1 + 273.15) * (I1 + 273.15) - 293700)) - 1) - 0.0044 * 10^((-0.0057148 * (374.11 - I1)^1.25))) + (((I1 + 273.15) / 647.3) - 0.422) * (0.577 - ((I1 + 273.15) / 647.3)) * EXP^(0.000000000011965 * ((I1 + 273.15) * (I1 + 273.15) - 293700) * ((I1 + 273.15) * (I1 + 273.15) - 293700)) * 0.00980665) / (I3/1000 - I2/100 * (1.01325 * 10^(5.426651 - 2005.1 / (I1 + 273.15) + 0.00013869 * ((I1 + 273.15) * (I1 + 273.15) - 293700) / (I1 + 273.15) * (10^(0.000000000011965 * ((I1 + 273.15) * (I1 + 273.15) - 293700) * ((I1 + 273.15) * (I1 + 273.15) - 293700)) - 1) - 0.0044 * 10^((-0.0057148 * (374.11 - I1)^1.25))) + (((I1 + 273.15) / 647.3) - 0.422) * (0.577 - ((I1 + 273.15) / 647.3)) * EXP^(0.000000000011965 * ((I1 + 273.15) * (I1 + 273.15) - 293700) * ((I1 + 273.15) * (I1 + 273.15) - 293700)) * 0.00980665)) * I3/1000 * 100000000 / ((I1 + 273.15) * 287.1) --print(" - " ..date .. " absolute Luftfeuchtigkeit Außen " ..humidOutAbs.. "g/m³") end function Vinside() -- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -- Werte Drinnen -- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ --print(" - " ..date .. " InnenTemp " ..tempIn .. "°C rel. Feuchtigkeit " ..humidIn.. "%") humidInAbs = 0.622 * I5/100 * (1.01325 * 10^(5.426651 - 2005.1 / (I4 + 273.15) + 0.00013869 * ((I4 + 273.15) * (I4 + 273.15) - 293700) / (I4 + 273.15) * (10^(0.000000000011965 * ((I4 + 273.15) * (I4 + 273.15) - 293700) * ((I4 + 273.15) * (I4 + 273.15) - 293700)) - 1) - 0.0044 * 10^((-0.0057148 * (374.11 - I4)^1.25))) + (((I4 + 273.15) / 647.3) - 0.422) * (0.577 - ((I4 + 273.15) / 647.3)) * EXP^(0.000000000011965 * ((I4 + 273.15) * (I4 + 273.15) - 293700) * ((I4 + 273.15) * (I4 + 273.15) - 293700)) * 0.00980665) / (I3/1000 - I5/100 * (1.01325 * 10^(5.426651 - 2005.1 / (I4 + 273.15) + 0.00013869 * ((I4 + 273.15) * (I4 + 273.15) - 293700) / (I4 + 273.15) * (10^(0.000000000011965 * ((I4 + 273.15) * (I4 + 273.15) - 293700) * ((I4 + 273.15) * (I4 + 273.15) - 293700)) - 1) - 0.0044 * 10^((-0.0057148 * (374.11 - I4)^1.25))) + (((I4 + 273.15) / 647.3) - 0.422) * (0.577 - ((I4 + 273.15) / 647.3)) * EXP^(0.000000000011965 * ((I4 + 273.15) * (I4 + 273.15) - 293700) * ((I4 + 273.15) * (I4 + 273.15) - 293700)) * 0.00980665)) * I3/1000 * 100000000 / ((I4 + 273.15) * 287.1) --print(" - " ..date .. " absolute Luftfeuchtigkeit Innen " ..humidInAbs.. "g/m³") -- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ end Voutside() Vinside() --if (humidInAbs > humidOutAbs) then if (humidInAbs - humidOutAbs) > 1 then print(" - " ..date .. " Bad 1.OG lüften!") actionToHigh() print(" - " ..date .. " AußenTemp " ..tempOut .. "°C rel. Feuchtigkeit " ..humidOut.. "%") print(" - " ..date .. " absolute Luftfeuchtigkeit Außen " ..humidOutAbs.. "g/m³") print(" - " ..date .. " InnenTemp " ..tempIn .. "°C rel. Feuchtigkeit " ..humidIn.. "%") print(" - " ..date .. " absolute Luftfeuchtigkeit Innen " ..humidInAbs.. "g/m³") fibaro.sleep(timeout_min*60*1000) else actionToLow() print(" - " ..date .. " Bad 1.OG nicht lüften") run = 0 end
- 62 replies
-
- hc3
- bathroom ventilation
-
(and 1 more)
Tagged with:
-
Hi all Fibaro developers and fanatics, I can do quit a bit with LUA scene's and other Fibaro hardware tricks but I'm still struggling with a (very) simple solution for controlling the Humidity in my bathroom. I've seen quit some solutions that are working by triggers like door open/closed, lights on/off, comparing the humidity with the values of Netatmo and so on. What I'm looking for is a solution like: A scene that is responsive to the humidity changes in my bathroom and not depends on humidity elsewhere in the house or outside. I have one humidity sensor (AEON MS-6) in my bathroom. I want a scene that checks the humidity, let's say every 2 minutes, and checks if there is an increase or decrease of, let's say 5%, and turns the ventilation On or Off. Can someone give me a hint / example of such a code? Thanks in advance! TRicky