Fibaro älypistokkeet ja automatisointia

Olen pohdiskellut keinoja, millä saisin..

  • tietoa virrankulutuksesta per laite/laiteryhmä
  • notifikaation kun laite käynnistetty ja pysähtynyt.

Virrankulutuksen seurantaan on olemassa ihan omia erillisiä järjestelmiä, joissa mm. osassa sensorit liitetään sähköasennuksena verkkoon ja sulaketauluun kiinni. Osa näistä järjestelmistä on tehty aidosti myös automaatiomielessä, jolloin järjestelmä osaa jutella muiden kodin automaatiojärjestelmien kanssa sulavasti yhteen. Oman kodin automaatiot hoidetaan SmartThingsia käyttäen ja tästä syystä omissa suunnitelmissa yhteensopivuus ST:n kanssa pitää aina ensiksi huomioida. Toiseksi tärkeimpänä asiana pohdin yleensä sitä, että onko hankittava tuote tai järjestelmä käyttöönoton työmäärältään ja kustannuksiltaan sellainen, että se on ensinnäkään järkevää hankkia.

Tällä kertaa halusin aloittaa mahdollisimman minimaalisesti ja kevyillä kustannuksilla, sekä selvittää voiko virrankulutusta seurata simppelisti SmartThingsia käyttäen, mutta lisäksi myös tavoitellen jonkin tason automatisointimahdollisuuksia. Yksinkertaisin tapa aloittaa virrankulutuksen seuranta on hankkia SmartThings-yhteensopiva älypistoke, joka kykenee mittaamaan virrankulutusta, sekä kytkemään itsensä tarvittaessa pois ja päälle.

Pitkällisen tutkiskelun tuloksena päädyin melko laajasta kandidaattiryhmästä Fibaron z-wave -älypistokkeisiin, koska näiden pistokkeiden ominaisuudet, sekä hinta olivat lähimpänä omia vaatimuksia. Pistokkeet maksavat (v.2020) halvimmillaan 49€/kpl. Omani kävin hakemassa em. hintaan Gigantista. Ostin samalla kaksi kappaletta, koska halusin tehdä testausta nimenomaan kodin astianpesukoneen ja pyykinpesukoneen osalta.

Fibaro -älypistoke FGWPF-102 (huom. pistoketyyppi pitää olla ”F” Suomikäytössä)

Fibaron älypistoke toimii z-wave verkossa (uudempi z-wave plus) ja on virallisesti ST-yhteensopiva. Nämä pistokkeet ovat fyysiseltä kooltaan todella pieniä, eli myöskin pistorasiassa kiinni ollessaan suhteellisen matalia. Minulla on jo ennestään ollut käytössä Telldusin z-wave -pistokkeita, jotka ovat kooltaan huomattavasti isompia ja vaikeampia piilottaa jos sellainen tarve olisi. Telldusit eivät valitettavasti kykene mittaamaan virrankulutusta, mutta niitä voidaan toki kytkeä päälle ja pois automatisoinnin kautta. Uusien Fibaron pistokkeiden hankinnan myötä pääsen seuraamaan virrankulutusta, mutta lisäksi myös parantamaan z-wave -verkon kantavuutta, sillä pistorasiakiinnitteiset z-wave -pistokkeet toimivat verkon toistimina. Näin ollen pistokkeiden ympärille olevat paristokäyttöiset z-wave -sensorit saavat verkossa uuden emon, johon kiinnittyä ja joiden kautta välittää viestiä eteenpäin ST-hubille.

Fibaron pistokkeissa on muihin kilpailijoihinsa verrattuna hyvä maksimi tehonkesto. Pistoke sietää jatkuvan 2500W tehon, jonka pitäisi riittää useamman yksittäisen kodin laitteen tarpeisiin. Laiteryhmät sitten toki oma lukunsa, joissa tehonkesto voi olla heittämällä enemmän. Pistokkeen ulkokehässä on led-valo, joka värillään kertoo virrankulutuksen tasosta välillä 0W – 3000W. Äkilliset 2500W virrankulutukset näkyvät pistokkeessa violetin värisenä, kun taas matalampi kulutus indikoidaan sinisen, vihreän ja keltaisen sävyissä.

Paketti auki ja paritus

Pienen paketin sisältä paljastuu heti aluksi itse pistoke muovitelineessään. Muovin alle on jemmattu pakolliset ohjeet, joista löytyy ohjeistus lähestulkoon kaikilla muilla kielillä paitsi suomeksi. Eipä kuitenkaan syytä masennukseen, sillä englannin kieltä osaavana ohjeistuksesta saa selvää.

Mikäli Fibaron sensorit ovat ennestään tuttuja, toimii ST-parittaminen pistokkeen osalta ihan samalla kaavalla kuin aiemminkin. Pistoke kiinnitetään pistorasiaan ja led-kehään syttyy valo. Pistokkeessa on vain yksi nk. B-nappi, jota painamalla pistokkeen sähkösyötön saa päälle ja pois päältä. Pairing-moden saa päälle painamalla kolme kertaa nopeasti tätä nappia. Ennen tätä avataan kuitenkin ST-app ja laitetaan hubi etsimään uusia laitteita.

ST-appissa (uusi versio, ei classic) valitse päänäkymän oikeasta ylälaidasta plus-merkki (+). Tämän jälkeen valitse ”Device” ja sitten näytön oikeasta yläkulmasta ”Scan”. Hub lähtee etsimään automaattisesti uusia laitteita, mutta omassa installaatiossani haluan etsinnän tapahtuvan nopeammin, joten valitsen erikseen hubin jonka kautta laitteita etsin. Etsintäprosessi käynnistyy ja nyt Fibaro-pistokkeen B-nappia pitää painaa nopeasti kolme kertaa. Pistoke ei kerro millään tavalla paritus-tilaan siirtymisestä. Tästä syystä on vain luotettava, että kolme pikaista painallusta tuli tehtyä oikein ja oikeassa tahdissa.,

Pienen odottelun jälkeen pistoke löytyy ja sille määritellään haluttu nimi. Lopuksi applikaation yläreunassa olevalla nuolella voi palata taakse päin ja laite tallentuu ST:n laitelistaan.

Pistoke astianpesukoneelle

Kun pistoke on käyttövalmis, on aika siirtää se oikeaan pistorasiaan ja kytkeä haluttu laite kiinni. Ensimmäinen pistoke meneekin astianpesukoneelle. Kun pistoke on kytkettynä, niin päätän heti kokeilla toimiiko hallinta ST-applikaation kautta. Ilokseni voin todeta, että sähkönsyöttö katkeaa ja menee päälle kun painan applikaatiosta oikeaa painiketta. Tosin astianpesukoneessa, eikä pyykinpesukoneessakaan ole kovin usein tarvetta kytkeä virtoja kokonaan pois. Oikeastaan päin vastoin tuntuu hieman epämukavalta, että voisin applikaation kautta esim. vahingossa kytkeä käynnissä olevan pesukoneen pois päältä.

Ohjeisiin tarkemmin tutustuttuani huomasin onnekseni, että Fibarossa tätä skenaariota on jo pohdittu. Fibaron asetuksista voi määrittää laitteen toimivan siten, että se ei ota vastaan on-off -komentoja niin applikaation, kuin fyysisen B-painikkeenkaan kautta. Tämä on hyvä tietää, sillä muuten olisin tehnyt webCoREen pistonin, joka estää laitteen kytkeytymisen pois päältä.

Ennen kuin pääsen tekemään yleisiä automaatiosääntöjä webCoREen, täytyy astianpesukonetta käyttää ainakin yhden kerran, jotta saan selvyyden normaalin pesuohjelman eri vaiheiden virrankulutusmääristä. Ajatuksena on rakentaa sellainen webCoRE-piston, jossa tietyn virrankulutusmäärän ylittäminen ja alittaminen merkitsee pesuohjelman käynnistämistä tai päättymistä. Eipä muuta kuin tiskit koneeseen ja ohjelma käyntiin. Homma starttaa pistokkeen osalta vaalealla valolla, mutta käy pesuohjelman ensimmäisen kymmenen minuutin aikana värin perusteella myös 2500W paikkeilla. Katsotaanpa lokia tarkemmin.

Siirryn ST:n IDE:n livelogiin tarkastelemaan tietoja virrankulutuksesta. Silloin kun astianpesukone ei ole käynnissä, kuluttaa laite hieman vaihdellen 0.0W – 0.3W virtaa. Astianpesukone on siis hyvin minimalistinen piilosyöppö, mutta syöppö kuitenkin. En oikein tiedä mihin laite virtaa täydellisessä off-tilassa tarvitsee. Voisiko se liittyä esim. mahdollisten vesivuotojen tunnistamiseen, voisiko pumppu ryhtyä poistamaan automaattisesti koneesta vettä jos ottopuoli pettää..en tiedä?

Kun laitteeseen kytketään virta etupaneelin nappia painamalla (laite ei käynnistä vielä pesua), nousee kulutus 2.8W:n. Kun pesuohjelma on valittu ja pesuohjelma käynnistetään, nousee virrankulutus keskiarvoltaan n.10W – 60W välille. Ensimmäisen 10min aikana pesukone tekee hetkellisesti toimenpiteen, jossa kulutus käväisi parhaimmillaan 3000W:ssa, mutta oudosti vain 0,9sekunnin ajan. Voi olla, että pesukone otti hetkellisesti 3000W, mutta loki merkitsee sen alle sekunnin kestoisena mahdollisesti sen takia, että Fibaron asetuksissa 3000W ylityksen hälytysraja on kytketty päälle. Asetuksen ollessa päällä, 3000W ylitys vilauttaa violettia valoa pistokkeessa piikin merkiksi. Jos asetus olisi pois päältä, niin voisin kuvitella, että lokissa näkyvä lukema ei olisi tasan 3000W, vaan silloin lokiin piirtyisi todellinen wattimäärä ja kestokin saattaisi olla sekunteina eri luokkaa.

Pesuohjelman lokiin jäänyt wattimäärä kuitenkin kertoo, että ensimmäisen 10min ja viimeisen 10min aikana noin minuutin ajan pesukone tarvitsee virtaa 1800W – 2300W välillä (ml. käynti 3000W:ssa). Tämä vaihteluväli 1800W – 2300W on vielä älypistokkeen keston rajoissa, mutta mikäli tarve olisi yli 2500W:lle hieman pidemmän aikaa, ei pistoke tulisi todennäköisesti kestämään käytössä kovin pitkään.

Kuvassa off-tilan (10:01:16), virtojen päälle kytkemisen (10:04:23), sekä pesuohjelman käynnistämisen (10:04:45) kulutusmäärät.
Kuvassa pesuohjelman päättymisen (11:10:13) virrankulutus ja siirtyminen off-tilaan (11:10:14)

Ensimmäisen ajon tuottaman lokin perusteella minulla oli nyt tiedossa pesun eri vaiheiden virrankulutusmäärät. Tietojen perusteella pystyin nyt nakertelemaan astianpesukoneelle webCoRE-pistonin notifikaatioita varten.

Pistonin teko

Astianpesukone-pistonissa tavoitteet ovat melko simppelit.

Jos (IF) wattimäärä kasvaa tietyn rajan yli ja (AND) jos (IF) astianpesukoneen vesihana on auki, niin (THEN) muuttuja saa arvon ”true”. Samalla hetkellä lähetetään (DO) push-notifikaatio ”Astianpesukone päällä” ja (AND) lisäksi, kytketään (DO) virtual switch päälle. Virtual switch on SmartThingsiin luotu virtuaalinen laite, jonka käyttötarkoitus on lähettää ActionTiles-infonäytölle kuvakkeen muodossa tieto kun laite on päällä tai pois päältä. Mitään muuta virkaa virtuaalisella kytkimellä ei tässä pistonissa ole.

Jos (IF) muuttuja on ”true” ja (AND) jos (IF) wattimäärä pysyy alle 1W yhden minuutin ajan, lähetetään (DO) push-notifikaatio ”Astianpesukone valmis”. Tämän lisäksi virtuaalinen kytkin sammutetaan (DO), ja muuttuja muutetaan ”false” tilaan.

Pistonissa on kaksi erillistä IF-kokonaisuutta siitä syystä, että astianpesukoneen käyttäjä voi käynnistää koneen ennen vesihanan kääntämistä auki, tai kääntää ensiksi vesihanan auki ja vasta sitten astianpesukoneen päälle. Riippumatta käyttötavasta, molemmista generoidaan samat ilmoitukset.

Pistonin voi kopioida ylhäällä näkyvällä koodilla webCoREssa itselleen, ja muuttaa sensorit ja kytkimet omaan caseen sopiviksi. Olen tätä pistonia nyt viikon verran ajanut ja toimii kyllä moitteettomasti. Tämän lisäksi tein toisen pistonin, jonka tarkoitus on muistuttaa astianpesukoneen vesihanan sulkemisesta 15min pesun päättymisen jälkeen.

Jos (IF) astianpesukoneen virtuaalinen kytkin (edellisessä pistonissa käytetty) menee pois päältä ja jos (IF) astianpesukoneen vesihana on edelleen auki, niin (THEN) odotetaan 30min (WAIT), jonka jälkeen lähetetään (DO) push-notifikaatio ja google home -announcement. Jos vesihana käydään sulkemassa heti tuon 30min aikana, ei em. ilmoitusta lähetetä. Pistonia on mahdollista jatkaa muistutusten osalta esim. niin, että ensimmäisen notifikaation jälkeen mikäli hanaa ei suljeta, niin 15min kuluttua lähetetään toinen notifikaatio. Itse lähden liikenteeseen yhdellä muistutuksella ja uskon, että se meidän perheen käytössä on täysin riittävä. Tähän pistoniin en webCoRE-koodia jaa, kun piston sisältää dynamic user -tiedon. Jos pistonin haluaa itselleen käyttöön, niin alla olevasta kuvasta rohkeasti vain kopioimaan.

Kun totesin, että astianpesukoneen pistoke ja sitä varten tehdyt pistonit toimivat, paritin toisen pistokkeen SmartThingsiin ja kytkin sen pyykinpesukoneen pistorasiaan. Kuvio pistoneiden suhteen on käytännössä ihan sama kuin astianpesukoneen kanssa, mutta kun kyseessä on eri laite, on myös virrankulutuksen malli hieman erilainen. Pyykinpesukoneen nk. ”tyhjäkäyntikulutus” ja ”työkulutus” ei ole samaa luokkaa astianpesukoneen kanssa, joten tässäkin piti tehdä yksi koeajo, jotta lokista voitiin löytää pesuohjelman käynnistyksen ja päättymisen raja-arvot. Arvot saatiin selville ja loppu olikin sitten pistoneiden kopiointia ja W-arvojen muuttamista.

Virrankulutus

Virrankulutuksen seurannan osalta on aikomus lähteä melko kevyesti liikenteeseen, eli seuraan kulutusta aluksi vain ST-applikaation kautta. Applikaatio listaa hetkellisen kulutuksen, mutta mittaa myös kulutusta koko käyttöajalta. webCoRE-pistonissa käytettävät arvot voivat siis olla sen hetkistä kulutusta mittaava ”power”, ja kokonaiskulutusta mittaava ”energy”. Energy-arvoa käyttäen voisi olla mahdollista rakentaa laitekohtaista raportointia esim. ActionTilesiin. Toisaalta jos päätän hankkia Fibaron pistokkeita enemmänkin, niin raportointia varten voisi pykätä vaikkapa tietokannan, josta sitten tietoja voisi käyttää huomattavasti monipuolisemmin ja täysin ST/ActionTiles-riippumattomasti. Tämä ratkaisu vaatii toki tietokannan ja masiinan, joka olisi 24/7 päällä. Jatkuvasti päällä oleva masiina minulta kyllä jo löytyisikin.

Lisää pistokkeita..

Kyllä se siihen todennäköisesti tulee nyt menemään, että tarvitsen lisää pistokkeita. Ihan kaikkialle näitä ei tietenkään ole järkevää eikä edes mahdollista kylvää, mutta aion hankkia muutaman pistokkeen ja kytkeä niitä sellaisten laiteryhmien eteen, joiden oletan vievän virtaa nk. standby-tilassa. Jos löydän kodista sellaisia laiteryhmiä tai laitteita, joita on järkevää kytkeä säästö- ja turvallisuussyitä automaattisesti pois päältä kun kotona ei ole ketään, niin näin ajattelin toimia. Pikaisen laskutoimituksen perusteella tarvitsen ehkä n. 6 kappaletta pistokkeita, jotta saan isoimmat laiteryhmät seurantaan ja hallintaan.

Voisin myös alkuun testata astianpesukoneen ja pyykinpesukoneen sähkönsyötön sulkemista silloin kun kukaan ei ole kotona. Mitään kovin ihmeellistä säästöä sähkönkulutukseen näistä ei tule, mutta jonkinlainen kuitenkin. Lisäksi voi sitten pohtia, että tuleeko kodista turvallisempi kytkemällä näistä kahdesta härvelistä virrat pois…ehkä..

Myöhemmin yritän perehtyä myös raportointitapoihin virrankulutuksen seurantaa ajatellen. Tämä tietenkin avaa sellaisen Pandoran lippaan raportoinnin osalta, että en tiedä milloin tämä kannattaa aloittaa. Olen nyt kuitenkin hyvin tyytyväinen siihen mitä älypistokkeiden avulla saan aikaiseksi. Koti tuntuu taas hieman älykkäämmältä kuin aiemmin.

Vieritä ylös