
Oma sääasema ESP32-kortilla kertoo parvekkeen tai pihan lämpötilan, kosteuden ja ilmanpaineen omalta mittauspaikalta, ei kymmenen kilometrin päässä olevalta viralliselta asemalta. ESP32-sääasema sopii hyvin ensimmäiseksi oikeaksi ulkoprojektiksi Arduinon perusteet jo osaavalle harrastajalle tai sähkö- ja automaatioalan opiskelijalle, joka haluaa kokeilla anturidatan keräämistä langattomasti. Osat maksavat yleensä 30-70 €, ja toimiva perusversio valmistuu viikonlopussa.
Hankalinta on saada lukemat luotettaviksi ja laite kestämään Suomen talven. Koodi on helpompi osa. Tässä artikkelissa käydään läpi komponenttien valinta, virransyöttö, anturin sijoittaminen ja virheet, jotka pilaavat mittaukset.
Miksi ESP32 sopii sääasemaan
Espressifin ESP32:ssa on valmiina Wi-Fi ja Bluetooth, riittävästi laskentatehoa ja syväunitila, jossa piiri kuluttaa virtaa hyvin vähän. Kehityskortti maksaa 5-15 € myyjästä ja mallista riippuen. Alkuperäinen Arduino Uno maksaa 20-30 €, eikä siinä ole langatonta yhteyttä lainkaan.
Jos mietit vielä alustaa, artikkeli Arduino vai Raspberry Pi ensimmäiseen elektroniikkaprojektiin käy läpi erot. Sääasemaan Raspberry Pi 5 on liian järeä ja virtasyöppö, ellei sama laite tee muutakin. ESP32:n voi ohjelmoida Arduino IDE:llä, MicroPythonilla tai ESPHomella, joka on suosittu Home Assistantin käyttäjien keskuudessa.
Anturit ja muut komponentit ESP32-sääasemaan
Kolme anturia toistuu harrastajien projekteissa. DHT22 on halpa (4-10 €) ja mittaa lämpötilaa ja kosteutta, mutta se on hidas, ja sen kosteuslukema alkaa usein ryömiä vuoden tai kahden kosteassa ulkoilmassa. BME280 on Boschin anturi, joka mittaa lämpötilan, kosteuden ja ilmanpaineen ja liitetään I2C-väylään. Moduuli maksaa 3-10 €. Kun lämpötila pitää saada tarkasti talvipakkasilla, käytetään usein vesitiivistä DS18B20-anturia metallikuoressa.
Perusversion ostoslista näyttää tältä:
- ESP32-kehityskortti, 5-15 €
- BME280-moduuli, 3-10 €
- Li-ion-kenno 18650 ja pidike, 8-20 €
- pieni aurinkopaneeli (6 V, 1-2 W) ja latausmoduuli, 8-20 €
- IP65-kotelo ja kaapeliläpiviennit, 8-20 €
Hinnat ovat suuntaa antavia ja vaihtelevat myyjän ja kampanjoiden mukaan. Suomessa on vähän fyysisiä komponenttikauppoja, joten osat tilataan usein kotimaisista tai eurooppalaisista verkkokaupoista. Kaukoidästä tilattaessa toimitus kestää 2-6 viikkoa, ja arvonlisävero lisätään hintaan. Aitouskin kannattaa varmistaa, mistä lisää alempana. Artikkeli komponenttikauppa vai yleinen elektroniikkaliike harrastajalle auttaa valitsemaan oikeanlaisen kaupan.
Kytkentä ja ohjelmointi askel askeleelta
Ammattilainen kokoaa koko kytkennän ensin koekytkentälevylle sisätiloissa ja antaa sen pyöriä pari päivää ennen kuin juottaa mitään.
1. Kytke anturi. BME280 liitetään neljällä hyppylangalla: 3,3 V, GND, SDA ja SCL. ESP32:n logiikka toimii 3,3 voltin jännitteellä, joten 5 voltin anturimoduulia ei kannata kytkeä suoraan sen tuloihin ilman tasonmuunninta.
2. Etsi anturi väylältä. I2C-skannerilla nähdään, vastaako anturi osoitteesta 0x76 vai 0x77. Osoite riippuu moduulin kytkennästä.
3. Lue arvot ja lähetä ne. Mittaukset voi lähettää MQTT:llä kotipalvelimelle, Home Assistantiin tai pilvipalveluun.
4. Ota syväuni käyttöön. ESP32 herää esimerkiksi 10 minuutin välein, mittaa, lähettää tuloksen ja palaa uneen. Ilman tätä akku tyhjenee vuorokaudessa tai kahdessa.
5. Tarkista Wi-Fin kantama. Ennen kotelointia kannattaa varmistaa, että signaali riittää lopulliselle paikalle. Lasitettu parveke ja betoniseinät heikentävät yhteyttä yllättävän paljon.
Virransyöttö ja akun kesto pakkasella
Parvekkeella voi käyttää valmista, CE-merkittyä USB-laturia, jos pistorasia on lähellä. Ulos ei kuitenkaan vedetä omatekoista 230 V johdotusta. Kiinteät sähköasennukset, kuten uusi ulkopistorasia, kuuluvat sähköturvallisuuslain mukaan sähköalan ammattilaiselle. Itse rakennettava osa pysyy pienjännitteisenä.
Akkukäytössä kehityskortin valinta ratkaisee paljon. Tavallisessa kortissa on USB-sarjamuunnin ja jännitteensäädin, jotka voivat kuluttaa syväunessa useita milliampeereja. Pelkkä ESP32-moduuli kuluttaa syväunessa kymmeniä mikroampeereja. Jos mittaus tehdään 10 minuutin välein, 2500 mAh:n kenno kestää tavallisen kortin kanssa noin pari viikkoa ja hyvin optimoidun kytkennän kanssa useita kuukausia. Käytännössä kesto jää laskettua lyhyemmäksi.
Pakkanen tuo kaksi rajoitusta. Li-ion-akun kapasiteetti putoaa kovassa pakkasessa selvästi, eikä tavallista Li-ion-kennoa saa ladata alle 0 asteen lämpötilassa. Aurinkopaneelilla ladattava asema tarvitsee siksi latauspiirin, joka estää latauksen kylmässä, tai talveksi sisälle viedyn akun. Vaurioitunutta, pullistunutta tai kolhiintunutta kennoa ei ladata lainkaan, eikä sen napoja saa oikosulkea. Kapasiteetista ja purkuvirroista kerrotaan tarkemmin artikkelissa akut ja akkupankit – kapasiteetti ja teho.
Myytti: kalliimpi anturi antaa oikeamman lämpötilan
Moni vaihtaa DHT22:n kalliimpaan anturiin, kun lukemat näyttävät aurinkoisena päivänä 8 astetta liikaa. Vika ei ole anturissa vaan sijoituksessa. Aurinkoon tai lämpimän seinän viereen asetettu anturi mittaa oman kotelonsa lämpötilaa, oli anturi minkä hintainen tahansa.
Virallisissa mittauksissa lämpömittari on varjossa, tuuletetussa säteilysuojassa noin 1,5-2 metrin korkeudella. Harrastaja voi tehdä säteilysuojan päällekkäin pinotuista valkoisista muovilautasista, joiden välistä ilma pääsee kulkemaan. Parvekkeella paras paikka on pohjois- tai varjopuolella, irti seinästä ja kaukana ilmanvaihtoventtiilistä. Kerrostalon parvekkeella lukema on talvella usein 1-3 astetta pihan lukemaa korkeampi rakennuksen lämpövuodon takia. Siitä ei pääse kokonaan eroon, mutta vaikutus kannattaa tietää.
Yleisimmät virheet sääaseman rakentamisessa
Anturi on samassa kotelossa ESP32:n kanssa. Wi-Fi-lähetys lämmittää piiriä, ja jatkuvasti päällä oleva kortti voi nostaa lukemaa useita asteita. Anturi kannattaa sijoittaa 10-20 cm:n kaapelin päähän omaan säteilysuojaansa.
Edullinen BME280 onkin BMP280. Kaukoidästä tilatuissa moduuleissa tätä tapahtuu usein. BMP280 ei mittaa kosteutta lainkaan. Piirin tunnisterekisteristä asian näkee: BME280 palauttaa arvon 0x60, BMP280 arvon 0x58.
Kotelo on täysin umpinainen. Tiivis kotelo kerää kondenssivettä, joka syövyttää piirilevyn ja liitokset yhden talven aikana. Pohjaan porataan pieni tuuletus- ja vedenpoistoreikä. Piirilevyn voi suojata suojalakalla, mutta anturin kalvoa ei saa lakata.
Lisäksi juotokset tehdään hyvin tuuletetussa tilassa juoksutesavujen vuoksi, ja kädet pestään lyijypitoisen tinan käsittelyn jälkeen.
Laajennukset: sademittari ja tuulimittari
Kun perusmittaukset toimivat, asemaan voi lisätä keinukuppisademittarin. Sen reed-kytkin antaa pulssin jokaisesta kupin kääntymisestä, ja ESP32 osaa herätä pulssista syväunesta. Kuppituulimittari toimii samalla periaatteella. Valmiita varaosamittareita myydään sääasemien lisätarvikkeina, ja niitä kannattaa etsiä, ennen kuin alkaa tulostaa omaa versiota 3D-tulostimella.
Makerspacessa, kuten Helsingin Oodin Kaupunkiverstaassa, tai hacklab-yhdistyksessä Tampereella tai Oulussa voi lainata juotosasemaa, kysyä neuvoa kokeneemmilta ja tulostaa kotelon osia.
UKK
Kestääkö ESP32 Suomen talven ulkona?
Useimpien ESP32-moduulien käyttölämpötila-alue ulottuu noin -40 asteeseen, mutta tarkka arvo kannattaa tarkistaa käytetyn moduulin datalehdestä. Kylmässä hankaluuksia aiheuttavat yleensä akku ja kondenssivesi, eivät piirit.
Voiko DHT22-anturia käyttää ulkona?
Voi, mutta kosteuslukema ryömii usein 1-2 vuodessa, ja anturi on hidas. BME280 tai SHT-sarjan anturi pysyy yleensä paremmin kalibroituna, ja DS18B20 sopii pelkkään lämpötilan mittaukseen.
Toimiiko sääasema ilman Wi-Fiä?
Toimii. Mittaukset voi tallentaa microSD-kortille tai lähettää LoRa-radiolla, jonka kantama on kilometrejä. LoRa sopii mökille tai pihan perälle, jonne Wi-Fi ei ulotu.
Näin pääset alkuun
Aloita ESP32-kortista, BME280-anturista ja USB-virrasta. Tarkista, että lukemat täsmäävät sisällä luotettavan lämpömittarin kanssa. Siirrä asema sitten ulos varjoisaan säteilysuojaan ja seuraa lukemia viikon ajan. Kun mittaukset ovat luotettavia, lisää akku, syväuni ja aurinkopaneeli. Tässä järjestyksessä vian paikantaminen on helpointa, eikä hyvä anturi korvaa huonoa sijoituspaikkaa.