När vi samlade in alla sensorer blev det kaos i automationerna

Automationsrecept – Skapa en smart luftavfuktare

I det här Automationsreceptet visar vi designen för att skapa en smart luftavfuktare. Automationen skapar optimal luftfuktighet i ett rum med en gammal ”dum” luftavfuktare. Automationen använder dessutom en referenssensor i ett annat rum för att minska onödig körning och effektförbrukning av luftavfuktaren. (Tidigare löst med Vera så här).

Funderar du över några benämningar i automationsreceptet eller tekniska förklaringar? Kolla då in vår vår guide om smarta hem, där bryter vi ner och förklarar i detalj vad det innebär: Tips – Grunderna i smarta hem.

För att avdramatisera och förhoppningsvis motivera fler att skapa automationer så dokumenterar vi hur de flöde vi använder ser ut steg för steg, och framförallt varför det ser ut som det gör. Det kommer säkerligen komma förslag från er läsare på sätt att göra dessa bättre, och det tar vi gärna emot! För det går alltid att göra saker bättre, men man måste börja någonstans. Och här hittade vi verkligen ett guldkorn till Home Assistant via ett färdigt Blueprint.

Den här typen av inlägg med ett automationsrecept är tänkt att visa vi gjort i vårt hem. Det bör underlätta och visa hur du ska tänka för att bryter ner olika händelser till en automation. Dessa händelser kan du sedan koppla till åtgärder som i sin tur förbättrar och förenklar din vardag.

(kommande) Vi håller på att testa två stycken TVOC Sensorer från Aqara, mer om det kommer i framtiden. Men vill du se mer så kolla vår Instagram (extern länk). Som det ser ut kommer dessa att kanske ersätta Xiaomi Aqara tempsensorn i vår ”smarta luftavfuktare”, dvs om det fungerar bra.

Problem att lösa i automationsreceptet:

Vi har ett rum som ofta får högre luftfuktighet än önskat, dock inte konsekvent tack vare Pax Clima fläkten. Utan detta är ett problem vissa perioder på året, och då behöver vi komplettera med en luftavfuktare. Historiskt har vi ställt in en luftavfuktare för att hålla nere luftfuktighetsnivån. Men den kör ett mycket osmart mönster enligt oss.

Säkerligen är det fler än vi som upplever detta problem, om inte annat så brukar tvättstugor och torktiden må bra av en luftavfuktare. Och med detta automationsreceptet så kommer det även kunna lösas 🙂

  • Luftavfuktaren vi idag har startar och går tills den endera fyllt vätskebehållaren med vattnen eller att rummet är för tort. Vilket drar energi i onödan.
  • Hög luftfuktighet i ett rum ibland, vi vill kunna starta avfuktaren när det behövs och inte längre. Samtidigt vill vi att den ska kunna sköta sig automatiskt.
  • Övervaka när luftavfuktaren har fyllt sin vätskebehållare eller när den inte lyckas avfukta luften längre.

Nu skulle den enklaste lösningen vara att låta luftavfuktaren alltid stå igång, men då blir det för torr luft och den står och drar energi i onödan. Den andra lösningen är att ställa den på timer, men då körs den säkerligen oftare än vad den behöver och låter fuktig luft stå längre än vad den måste. Så för att spara på resurser och dessutom hålla nere på utnyttjad el så väljer vi att övervaka och styra den med hjälp av andra sensorer vi redan har. Allt detta utan att behöva göra någon fysisk åverkan på luftavfuktaren i sig.

Den lösning vi slutligen skapade använder sig av en referenssensor i ett annat rum för att få optimal avfuktning. Vilket gjorde att vi kunde avbryta avfuktningen om övriga rum har högre luftfuktighet.

Hur har den smarta avfuktaren fungerat?

2021-11-21 – Vi har nu kört den smarta avfuktaren sedan vi publicerade inlägget, och resultatet har varit mycket bra. Grafen nedan visar en dags körning med avfuktaren.

  • Översta gröna strecket är hur ofta avfuktaren gått. De röda bitarna är när den varit avstängd.
  • Nästa gröna streck är att vi tillåtit automationen att vara igång när den är grön. dvs hela tiden.
  • Blå strecket i grafen under visar luftfuktigheten i badrummet. Och kollar vi in den grafen så följer det fuktigheten i rummet utanför.
  • Lila strecket visar luftfuktigheten på vår referenssensor, som vi kan se så går det upp lite när vi duschar med, men inte lika mycket som i duschen.

Graf över en dag med den smarta avfuktaren.

Så resultatet är att vi nu får rätt luftfuktighet och har minskat risken att få mögel i badrummet. Samtidigt så kan vi tillåta att avfuktaren står igång utan att den försöker torka luften mer än vad övriga rum i källaren är.

Ingredienser

För att kunna skapa den här automationen så har vi valt följande komponenter. Det behöver inte vara precis samma som vi valt, utan se det mer som ett exempel på vilka egenskaper vi sökte efter. Det kommer framgå mer i själva uppbyggandet av automationen sedan varför vissa komponenter behöver den funktion vi valt.

  • Luftavfuktare – som kan starta när den får ström ( dvs den behöver bara kopplas in för att avfukta )
  • Xiaomi Aqara temperatursensor ( länk till vår genomgång av Xiaomi Aqara ), mäter luftfuktighet och temperatur. Vi valde två av dessa i automationen.
  • Strömplugg med energiåterrapportering (Vi har valt en Z-wave men en Zigbee skulle fungera. Huvudsaken är att den rapporterar energi.)
    • En vanlig strömbrytare skulle fungera med, men då tappas möjligheten att se när vätskebehållaren är full.
  • Rörligt elpris – Med ett rörligt elpris får vi även en faktor där vi kan välja att luftavfukta utifrån elpriset automatiskt med.
  • Homey eller Home Assistant är de system vi kommer använda för att utföra själva automationen. Det blev Home Assistant tack vare et BluePrint!

Under tiden vi skrev det här inlägget så började vi se tendenser på att rummet vi körde avfuktaren i hamnade långt under övriga rum i källaren, men genom att addera ännu en Xiaomi Aqara temperatursensor så löste sig även det problemet. Inte nog med det vi hittade även ett mycket välskrivet blueprint (extern länk). Du kan tänka på ”blueprints” som ett recept för home assistant. I det blueprintet vi hittade ingick beräkningar för att kunna ställa utifrån hur många gram/m3 som rapporteras. Luftavfuktaren kan i och med detta köras relativt till referens Xiaomi Aqarans rapporer med! Så utan att själv behöva skriva någon kod så fick vi en bättre och träffsäkrare lösning än vad vi själv skulle lyckats med på lång tid.

Val av tekniker

Den kontroller vi kommer presentera den här automationen för är Home Assistant och i framtiden Homey via en uppdatering i det här inlägget. Nu går det bra att använda logiken och det tillvägagångssätt i nästan alla kontrollers. Att vi väljer just Home Assistant och Homey beror på att det är de primära lösningar vi använder hemma just nu. Vi testar löpande andra kontrollers med, men dessa två har gett oss den frihet och enkelhet vi efterfrågar.

Att vi väljer just Xiaomi Aqara är på grund av de egenskaper med dynamisk frekvens för hur ofta den skickar information. Börjar luftfuktigheten snabbt gå upp, då rapporterar Aqara det och direkt kan vi agera direkt med.

Luftavfuktaren vi använder är en VÄLDIGT gammal, men den startar så fort ström kopplas in. Vilket gör att vi utan att fysiskt röra den kan starta luftavfuktning. Men i de grafer vi ser så gör den nytta och får ner luftfuktigheten till önskad nivå relativt snabbt.

Är det här nu den smartaste och mest avancerade luftavfuktaren som finns?

För att starta och stoppa luftavfuktaren så använder vi en Philio Pan11. Tyvärr hade vi stora problem att få igång energiåterrapportering via Zwave JS, så vi kunde inte skapa de larm vi tidigare hade för att se när vätskebehållaren är full. Vi kommer troligen byta till en annan enhet inom kort.

Philio Pan11-1
Philio Pan11-1

Vi har tidigare löst detta med en Vera och Z-Wave sensor här – Philio Tech – Temperatur & luftfuktighetsmätare(PAT02-1B)

Regler för automationen

Vi börjar med reglerna för Home Assistant och i framtiden så kommer regler för en variant i Homey.

För att slippa skriva YAML kod (En liten samling om Yaml) så går det att Importera blueprints, i Home Assistant. Och vi kommer faktiskt skriva den här guiden utifrån det. Detta för att nybörjare och experter även ska få upp ögonen för Blueprints (länk till Home Assistants guide om Blueprints).

Nu ska vi ge precis all cred och lite till skaparen av det här blueprintet (Extern länk till mer info om det) för Home Assistant. Den automation vi först hade i åtanke skulle möjligen ha blivit lite bättre än den gamla versionen vi hade med Vera:n. Men aldrig så här bra och med en referenssensor.

Importera ett Blueprint i Home Assistant

För de som vill skapa automationen i Home Assistant så går du till menyn Configuration / Blueprints. Där kommer du mötas av en tom sida så vida du inte har lagt till egna som vi har. När du når den här sidan är allt du behöver göra att Importera ett blueprint via knappen.

För att lägga till ett blueprint så skriver du in en länk till en färdig automation.

Den automation vi väljer att importera kommer från den här platsen:

https://my.home-assistant.io/redirect/blueprint_import/?blueprint_url=https%3A%2F%2Fcommunity.home-assistant.io%2Ft%2Fswitch-a-fan-based-on-absolute-humidity-differnece-between-two-humid-temp-sensors%2F305686 – Du bör kunna trycka på länken direkt), men tänk på att alltid kontrollera vad en blueprint gör genom att kontrollera som vi gör en bit ner i inlägget.

När du väljer att importera integrationen så kan du komma in till den här sidan, då ska du fylla i den webbadress du har till just din home assistant. Har du grundinställningarna och inte bytt till någon speciell DNS så är det http://homeassitant.local:8123 – Tryck sedan på update.
Om allt fungerade som tänkt så bör du nu mötas av en liknande bild inne i din Home Assistant, genom att trycka på Preview blueprint så kan du kontrollera den YAML kod som kommer inporteras.
Här ser du ett axplock och den matematik vi slapp beräkna för att få till den här automationen. När du sedan kontrollerat att innehållet ser ut som du önskar, då trycker du på Import Blueprint längst ner till höger.

KLART! Nu har du gjort allt de svåra för att börja automatisera din fläkt baserat på två olika Xiaomi Aqara temperatursensorer.

Skapa Automation från ett Blueprint

Nu har du troligen fått upp en blueprint som ordagrant säger ”Humidity Management based on abs. humidity (g/m3)”, vilket är något du kan byta om du vill, men då behöver du själv korrigera detta i ett tidigare steg.

Så börja med att välja ”Create Automation” under kortet Blueprint och genast bör du få upp något liknande som nedan.

Eftersom vi gjort detta som en guide så har vi valt att inte byta namnet, vilket du troligen vill göra till något bättre.

Om vi fortsätter kontrollera vad som behövs nedan så ser du att vi har rätt konstigt namnsättning på våra enheter, detta beror på att Deconz som hämtar Aqara sensorerna från Conbee stickan har fått välja namnen, sedan har vi bara döpt om aliaset i Home Assistant.

Som du ser nedan så behöver vi inte förtydliga något eftersom all information och detta gränssnitt nu skapats från det blueprint du just importerade, vilket är både imponerande och ett stort steg fram för alla som vill automatisera men inte ha någon lust att bli export på YAML och koda i Home Assistant.

Så i och med att du väljer temperatur och luftfuktighet från två olika Aqara sensorer så kommer din luftavfuktare starta och stoppas baserat på luftfuktighet i rummet, men utifrån värdet på en sensor som sitter med den normala luftfuktigheten.

Styra automationen via Home Assistant

Nu har vi sedan valt att skapa en ”Entities Card Configuration”, där har vi valt att ta in automationen vi nyss skapade och den energiplugg vi använder för att styra luftavfuktaren. Tyvärr strular strömpluggen vi valt och informationen som kommer via Z-Wave JS uppdateras inte, vilket gör att vi inte kan larma när luftfuktaren fyllt vätskebehållaren. Detta har vi tidigare gjort i Veran genom att se när den drar ~2W energi, det är så mycket energi den drog när behållaren är full.

Genom att lägga in både strömbrytaren och automationen i samma kort så kan vi välja att starta/stoppa avfuktaren utan att påverkas av automationen

Vi har sedan valt att samla den relevanta informationen tillsammans med luftfuktigheten. Detta gör att vi kan följa hur ofta automationen körs, när strömpluggen är aktiv / inaktiv. Samt att vi kan se att sensorn H38:s luftfuktighet följer H56:s luftfuktighet rätt så bra.

Den graf vi skapat här är bara för att få en dags översikt, i grafana har vi sedan information mer långsiktigt 🙂

Vinster med Automationsreceptet

  • Vi kommer nu kunna ha avfuktaren inkopplad konstant utan att luften riskerar att bli för torr.
  • Vi kan avaktivera och tvinga igång avfuktaren så länge vi önskar i samma gränssnitt som vi ser loggarna.
  • Vi kommer spara energi eftersom avfuktaren inte kommer köras till tanken är full som tidigare. Vilket inte är helt sant eftersom vi tidigare styrde den utifrån fuktigheten i samma rum.
  • Vi kan nu i automationen ställa in hur många gram/m3 över & under referenssensorn som automationen ska köras.
  • Vi fick lära oss hur kraftfullt Blueprints är för att snabbt uppnå resultat.
  • Vi på Automatiserar.se myntar nu Automationsrecept, och kommer framåt dela med oss av detaljer hur vi automatiserar hemma via det.

Automatiskt styrning med Homey

Som utlovat har vi även nu gjort en automation för att hantera detta via Homey, dock inte lika avancerad så den mäter den relativa luftfuktigheten 🙂

Väggfäste till Homey
Den Homey vi använder oss av fungerat mycket bra utan omstarter.

Vi har inkluderat samma sensorer som vi använder i Home Assistant receptet ovan, detta genom Deconz appen i Homey.

Enheter som behövs i Homey

Vi har valt att lösa detta med tre stycken enheter, två st Xiaomi Aqara temperatursensorer och en strömbrytare. Eftersom vi inte har använt en strömbrytare som rapporterar om energi så kommer vi inte lägga till någon logik som larmar oss om förbrukningen från avfuktaren hamnar på 2w, vilket är den energi vår avfuktare drar när den är full med vatten.

Är du fundersam på olika benämningar vi pratar om när så har vi försökt göra en lista med översättningar här.

Namnsättningen på enheterna vi använder i automationen är följande:

  • Aqara 1
  • Aqara 2
  • Strömbrytare

De variabler vi använder oss av i Homey för att undvika att få notiser varje gång en trigger matchar en automation är följande.

  • Avfuktaren körs – Vilket är ett Yes/No värde ( bool )
  • Max luftfuktighet – Vilket är den nivå vi vill att avfuktaren ska starta vid. (siffervärde )
  • Min luftfuktighet – Vilken är den nivå vi vill att avfuktaren ska stängas vid ( siffervärde )

Själva automationen i Homey

Nu när vi förberett och skapat förutsättningarna i Homey så kan vi börja skapa två Flows i Homey (inser att den länken börjar bli gammal). Men de flows vi väljer att skapa är ett för att starta och ett för att stoppa avfuktaren.

Vi har skapat två flöden, ett för att starta avfuktaren och ett för att stänga den.

Vi sätter variablerna till följande:

Nu heter mina variabler ”10 – xxxxx”, detta för att sortera dom lättare.
  • Avuktaren körs = NEJ
  • Max luftfuktighet = 60
  • Min luftfuktighet = 50

Att vi väljer att skapa variabler av dessa värden är för att enkelt kunna justera nivåerna under ”LOGIC” i Homey senare. För chansen är rätt liten att vi direkt prickar den nivå vi tycker är lagom.

Flow för att starta luftavfuktaren

Detta flow kommer nu få till ansvar att starta när ”Aqara 1” överstiger (Max luftfuktighet), vilket i vårt fall är 60.

Reglerna vi tillämpar:

OM: ( Aqara 1) Luftfuktigheten är mer än X ( Max Luftfuktighet )

OM: ( Aqara 2) Luftfuktigheten är mindre än ( Aqara 1 )

Logic kortet har jag sedan valt ”Aqara 2” och humidity till vänster, samt ”Aqara 1” och humidity till höger

OM: ( Luftavfuktare Körs ) är ( NO )

Med dessa regler om ovan stämmer då kommer flödet att fortsätta att starta strömbrytaren och uppdatera variabeln.

: Starta ( Strömbrytare )

: Uppdatera värdet (Luftavfuktare körs) till ( YES )

I exemplet ovan har jag på bilden valt att skicka en pushnotis till telefonen, men där ska du välja din strömbrytare till ”ON”.

*** Med dessa regler så kommer inte avfuktaren loopa och aktiveras varje gång en ny luftfuktighet övergår X%, detta kan vara bra om vi skulle ha adderat en notis med i ”” kriteriet.

Flow för att stoppa luftavfuktaren

Detta flow utvärderas varje gång ( Aqara 1) registrerar att luftfuktighet ändras.

Regler vi tillämpar:

NÄR: Luftfuktigheten ändras på ( Aqara 1)

När vår Aqara ändrar luftfuktighet då ska flödet testa (skulle gå att ställa regel även här)

OM: ( Luftavfuktare körs ) är YES

OM: (Aqara 1) är Lägre än (Aqara 2)

OM: (Aqara 1) är lägre än ( Min luftfuktighet )

Sedan är ”LOGIC” satt att ”Aqara 1” är mindre än ”Aqara 2” & Aqara 1 är lägre än ”Min luftfuktighet”

: Störmbrytare sätts till (OFF)

: Sätt Luftavfuktare körs ( NO ).

Nu valde vi som sagt att skicka en Notis till telefonen när detta uppkommer.

Med detta flow så har vi nu en avstängning som kontrollerar om Aqara 1 är lägre än Aqara 2 för att bli sant, detta innebär att så länge som Aqara 1 sensorn är högre så kommer det här flödet fortsätta köras, dvs så vi kommer fortsätta sänka luftfuktigheten tills vi kommer under referenssensorn. I steget ”NÄR” skulle vi kunnat lagt en regel som sagt att flödet får bara starta om luftfuktigheten överstiger X%, men vi valde att göra så här nu.

Nu skulle vi kunnat dela upp detta och lagt till fler regler, men på det här viset så kan vi tvinga ner luftfuktigheten lägre än den referenssensor vi har i Homey. Men det som är roligt med denna automation är att vi använder precis samma sensorer i Home Assistant samtidigt via Deconz integrationen även där. Vilket nu innebär att vi får notiser i telefonen för när avfuktaren startas stoppas utifrån Homeys regler.

Resultat: Automationsrecept – Skapa en smart luftavfuktare

Så vad är resultatet av vårt Automationsrecept? Svaret är att vi utan att skaffa någon ny utrustning kunde börja beräkna och automatisera luftavfuktaren utifrån en referensfuktighet i ett annat rum. Vilket gör att avfuktaren inte kommer gå i onödan, ser vi på bilden ovan så är de små gröna strecken är så ofta avfuktaren gått den senaste dagen.

Vad tycker du som läste igenom detta?

  • Har vi missat något?
  • Fanns det ett värde i informationen och det öppnade ögonen för något nytt för dig med?
  • Borde vi gjort på ett annat sätt?
  • Tycker du att vår idé att börja med automationsrecept är en bra idé för att sprida hur vi automatiserat något hela vägen och vad vi var ute efter att lösa?

Om inte annat så får du gärna gilla oss på sociala medier och dela inlägg från oss 🙂 Det är så vi får in många av de bra tips vi skriver om på bloggen.

Lämna en kommentar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *