Hinta ja sulakkeet

Tämä on seitsemäs osa sarjasta joka dokumentoi EnergyHub-järjestelmän rakentamisen vanhaan rintamamiestaloon. Edellisessä osassa käytiin läpi HA:n rooli ja entiteettimalli — miten data organisoidaan niin että se pysyy hallittavana. Tässä osassa tarkastellaan kahta keskeisintä rajoitetta jotka ohjaavat kaikkia energiapäätöksiä: sähkön hintaa ja sulakerajoja.
Kaksi asiaa rajoittaa kotitalouden energiankäyttöä enemmän kuin mikään muu: kuinka paljon sähkö maksaa juuri nyt, ja kuinka paljon virtaa sulake sietää. Ne ovat luonteeltaan täysin erilaisia — hinta on taloudellinen rajoite, sulake on fyysinen rajoite. Mutta päätöksenteossa ne toimivat yhdessä ja niillä on selkeä prioriteetti: sulake voittaa aina.
Spot-hinta — mistä se tulee ja mitä se oikeasti maksaa
Pohjoismaisilla sähkömarkkinoilla spot-hinta määräytyy tunneittain Nord Pool -pörssissä. Hinta julkaistaan seuraavalle päivälle yleensä klo 13 aikoihin. EnergyHubissa Nordpool-integraatio hakee hinnat automaattisesti ja tallentaa ne HA:han.
Mutta spot-hinta ei ole se hinta jonka kuluttaja maksaa. Todellinen ostohinta on monimutkaisempi:
ostohinta = spot × 1,255 (ALV 25,5 %)
+ siirtomaksu (€/kWh)
+ marginaali (€/kWh)
EnergyHubissa tämä lasketaan kanonisessa mittauskerroksessa m_buy_price_eur_kwh-sensorissa. Node-RED käyttää tätä arvoa — ei raakaa spot-hintaa. Tämä on tärkeä ero: optimointilogiikka vertaa todellista ostohintaa kynnysarvoihin, ei pörssihintaa.
Myyntihinta on rakenteeltaan yksinkertaisempi kuin ostohinta. Se on aina spot-hinta ilman ALV:ia ja ilman siirtomaksua — nämä kuuluvat ostajan puolelle. Jotkut sähkön ostajat veloittavat pienen provision tai palvelumaksun joka vähennetään spot-hinnasta, mutta se on tyypillisesti marginaalinen. Negatiivisella spot-hinnalla myyntihinta on negatiivinen: jokaisesta verkkoon myydystä kilowattitunnista maksetaan.
Hintakynnykset ja tarveperustainen optimointi
Pelkät hintakynnykset ovat karkea ohjausmekanismi. ”Jos hinta on alle X, lataa auto” toimii yksinkertaisessa tapauksessa — mutta se ei kysele onko lataus tarpeen, onko akku jo täynnä tai onko jokin muu kuorma tärkeämpi juuri nyt.
EnergyHubissa hintakynnykset ovat osa laajempaa logiikkaa: ensin kysytään onko toimenpide tarpeellinen, sitten etsitään sille sopiva ajankohta annetun aikajakson sisällä. Lämpöpumppua ei boostata vain koska hinta on halpa — se boostataan jos käyttöveden lämpötila on laskemassa tai jos huominen ennuste lupaa kylmää. EV-lataus ei käynnisty vain koska hinta alittaa kynnyksen — se ajoitetaan kyseisen latausjakson halvimpiin hetkiin tarpeen ja lähtöajan puitteissa.
Optimointi ei ole vain ON/OFF-päätös — se on ajoitusongelma. Järjestelmä kysyy: mitä tarvitaan, milloin se viimeistään pitää tehdä, ja mikä on halvin hetki tehdä se tässä aikaikkunassa. Hintakynnykset toimivat tässä mallissa signaalina eikä absoluuttisena laukaisimena. Ne kertovat missä tilanteessa toimenpide on taloudellisesti perusteltua — mutta tarve ja ajoitus ratkaisevat lopullisen päätöksen.
EnergyHubissa on kolme hintakynnystä. Kaikki ovat säädettäviä parametreja — ei hardkoodattuja lukuja.
Negatiivinen hinta (p_negative_price, oletusarvo -0,02 EUR/kWh)
Kun spot-hinta laskee alle tämän kynnyksen, verkkoon myynti on haitallista. Jokainen myyty kilowattitunti maksaa. Tässä tilanteessa EnergyHub rajoittaa aurinkoinvertterin tehoa — ei sammuta sitä, vaan rajoittaa vientiä niin että tuotanto vastaa paremmin omaa kulutusta. Samalla muut kuormat saavat vihreän valon: jos EV tarvitsee latausta tai lämpöpumppu tarvitsee boostia, nyt on oikea hetki.
Negatiiviset hinnat olivat pitkään harvinaisuus. Nyt ne ovat arkipäivää. 25.5.2026 Etelä-Ruotsissa SE4-alueella hinta kävi yli 1 300 SEK/MWh:ssa illalla ja päivällä oltiin -160 SEK/MWh tasolla — sama alue, sama päivä, hintaero lähes 1 500 SEK/MWh. Hollannissa hinta kävi -86 EUR/MWh.
Suomessa kehitys on ollut dramaattinen. Kirjoittajan opinnäytetyötä varten kerätyn ENTSO-E-datan perusteella nolla- tai negatiivisia tunteja oli vuosina 2020–2021 vain murto-osa — 16 tuntia vuonna 2020 ja 7 tuntia vuonna 2021. Energiakriisin aikana 2022 luku pysyi matalana, 37 tuntia. Sen jälkeen muutos on ollut jyrkkä: nolla- tai negatiivisen hinnan tunteja kertyi vuonna 2023 jo 603, vuonna 2024 peräti 994 — lähes 41 vuorokautta. Vuonna 2025 tammi–syyskuun ajalta kertyi jo 614 tuntia. Kasvu selittyy uusiutuvan tuotannon — erityisesti tuulivoiman — nopealla lisääntymisellä ja siirtoyhteyksien rajoitteilla. Se on sama rakenteellinen ilmiö joka näkyy koko Pohjois-Euroopassa.
Halpa hinta (p_cheap_price, oletusarvo 0,04 EUR/kWh)
Tämän kynnyksen alapuolella sähkö on riittävän edullista että kulutuksen siirtäminen tälle hetkelle on perusteltua — vaikka tarve ei olisi akuutti. Lämpöpumppu saa boostata käyttövettä ennakolta, EV saa ladata vaikka akussa olisi vielä puolet jäljellä. Logiikka ei kuitenkaan pakota toimenpidettä: jos capability-flag on pois tai sulake on uhattuna, halpa hinta ei ohita näitä rajoitteita.
Kallis hinta (p_expensive_price, oletusarvo 0,15 EUR/kWh)
Tämän kynnyksen yläpuolella ei-kriittistä kulutusta vähennetään. Lämpöpumppu blokataan EVU-signaalilla jos käyttövesi ja huonelämpötila ovat riittävällä tasolla. EV-lataus estetään. Järjestelmä minimoi ostoa — mutta ei leikkaa lämmitystä jos talo uhkaa jäähtyä alle tavoitelämpötilan. Tarve menee talouden edelle.
Kaikki kolme kynnystä ovat parametreja — arkkitehtuurissa ei ole kovakoodattuja hintarajoja. Kynnykset ovat lähtöarvoja joita säädetään sopimuksen, siirtomaksun ja omien prioriteettien mukaan.
Sulakkeet — fyysinen rajoite
Kolmivaiheinen 25 ampeerin liittymä asettaa absoluuttisen rajan. Sulake ei neuvottele. Se ei katso sähkön hintaa. Se laukeaa kun virta ylittää rajan — ja sen jälkeen talo on pimeänä.
EnergyHubissa vaihevirrat mitataan erikseen jokaiselta vaiheelta. L1, L2 ja L3 voivat olla hyvin erilaiset. Tässä talossa EV lataa L1-vaiheella — ja se näkyy suoraan: kun EV lataa, L1 on 16–24 ampeeria kun L2 ja L3 ovat 1–2 ampeeria.
Päätöksenteossa käytetään maksimivaihevirran periaatetta: sulakeriski on siinä vaiheessa joka on eniten kuormitettuna. Ei kokonaisvirran keskiarvossa — siinä vaiheessa joka laukeaa ensin.
Kotitalouksissa käytettävä gG-sulake sallii hetkellisiä ylityksiä — lyhyt virtapiikki ei laukaise sitä välittömästi. Mutta jatkuva ylikuormitus johtaa väistämättä laukaisuun, ja sen ajoitus riippuu ylityksen suuruudesta. EnergyHub ei odota sulakkeen fysiikkaa — se reagoi ennakoivasti.
Safety Guardian valvoo vaihevirrat 10 sekunnin välein. Kun maksimivaihevirta ylittää 90 % sulakerajasta — 22,5 ampeeria — Guardian laukaisee peak_protection-moodin välittömästi. Paluu normaaliin tapahtuu vasta kun virta laskee alle 75 % — 18,75 ampeeria. Hystereesi estää moodin flippaamisen edestakaisin.
25.5.2026 tämä tapahtui oikeasti. Klo 14:05 L1-vaihe nousi 23,8 ampeerin. Guardian laukesi. EV-lataus estettiin. Klo 14:20 virta laski 16,2 ampeerin, järjestelmä palasi normaaliin. Koko tapahtuma kestää 15 minuuttia ja se hoitui automaattisesti.
Miten hinta ja sulake toimivat yhdessä
Sulake voittaa aina. Tämä ei ole optimointipäätös — se on fyysinen rajoite joka ei jousta.
Käytännössä tämä tarkoittaa että Priority Resolver tarkistaa sulaketilanteen ennen hintapäätöksiä. Jos peak_protection on aktiivinen, hintaoptimointia ei tehdä lainkaan — riippumatta siitä onko sähkö halpaa tai kallista.
Normaalitilanteessa hinta ja sulakkeet toimivat yhdessä näin:
Onko sulake uhattuna?
Kyllä → peak_protection, pudota kuormat, älä optimoi
Ei →
Onko capability sallittu?
Ei → älä tee toimintoa riippumatta hinnasta
Kyllä →
Onko hinta negatiivinen?
Kyllä → rajoita PV-vientiä, käytä ylijäämä itse
Onko hinta halpa?
Kyllä → lataa EV, boostaa lämpöpumppu
Onko hinta kallis?
Kyllä → blokkaa lämpöpumppu, estä EV-lataus
Muuten →
Onko aurinkoylijäämää?
Kyllä → ohjaa ylijäämä omaan kulutukseen
Ei → jätä laitteet normaalitilaan
Tämä järjestys on tärkeä. Sulake on ensimmäinen tarkistus — ei hinta. Hintaoptimointia tehdään vain kun sulake ei ole uhattuna.
Aurinkoinvertterin tehonrajoitus negatiivisilla hinnoilla
Negatiivisilla hinnoilla aurinkoinvertterin tehonrajoitus on yksi keskeisimmistä toimenpiteistä. Tässä Sungrow SG15RT -invertterissä rajoitus tapahtuu Modbus TCP -yhteydellä — rekisterit 5006 ja 5007 — mutta sama periaate toimii muidenkin valmistajien inverttereillä. Fronius, SMA, ABB, Huawei SUN2000 ja GoodWe tukevat kaikki tehonrajoitusta omilla rajapinnoillaan, ja SunSpec-standardia tukevat laitteet käyttävät yhtenäistä rekisterikarttaa.
Rajoitus ei tarkoita invertterin sammuttamista. Se tarkoittaa että tuotantoa rajoitetaan niin että vienti verkkoon minimoidaan mutta oma kulutus katetaan edelleen aurinkosähköllä.
25.5.2026 tehdyssä testissä rajoituksen aikana MPPT-jännite nousi 501 voltista 558 volttiin. Tämä osoittaa että invertteri siirsi paneelien toimintapisteen pois maksimitehopisteestä — se tuotti vähemmän tarkoituksella. Rajoitettu teho oli 3,86 kW kun ilman rajoitusta se olisi ollut noin 12 kW. Rajoitettua tuotantopotentiaalia oli noin 8 kilowattia — mutta tuo 8 kilowattia olisi mennyt verkkoon negatiivisella hinnalla. Energia ei kadonnut — sitä ei yksinkertaisesti tuotettu.
Hintakynnykset ovat parametreja — ei totuuksia
Yksi tärkeä periaate EnergyHubissa on se että hintakynnykset ovat säädettäviä parametreja. Mikä on ”halpa” riippuu siirtosopimuksesta, laitteen tehontarpeesta ja omasta kulutusprofiilista.
Jos sähkösopimus muuttuu tai siirtomaksu nousee, p_electricity_transfer-parametri päivitetään — ja kaikki laskenta päivittyy automaattisesti. Jos haluaa olla aggressiivisempi halvan sähkön hyödyntämisessä, p_cheap_price-kynnystä nostetaan. Jos sulake on tiukempi tai haluaa enemmän turvamarginaalia, p_fuse_limit_a-arvoa lasketaan.
Logiikka ei muutu — parametrit muuttuvat.
Sulakepriorisointi kolmivaiheisessa liittymässä
Kolmivaiheinen liittymä tuo mukanaan yhden mielenkiintoisen haasteen: kuormat eivät jakaudu tasaisesti vaiheille. EV lataa yhdellä vaiheella, lämpöpumppu käyttää kolmea, kiuas yhtä tai kolmea.
Tässä talossa L1-vaihe on selvästi kuormitetuin — EV, osa valaistuksesta ja osa pistorasioista. Sulakeriski on L1:ssä, ei kokonaisvirrassa. EnergyHub valvoo jokaista vaihetta erikseen ja reagoi siihen vaiheeseen joka on lähimpänä rajaa.
Tulevaisuudessa tähän liittyy myös tehomaksu. Jos siirtotariffeihin tulee tehomaksukomponentti — kuten monissa maissa on jo käytössä — maksimivirran minimointi muuttuu suoraan taloudelliseksi hyödyksi eikä pelkästään sulakesuojaukseksi.
Seuraavaksi: Osa 8 — MQTT. Miten viestintäkerros rakentuu, miksi retain-viestit ovat tärkeitä ja miten MQTT-rakenne tukee koko järjestelmän vikasietoisuutta.
Tekninen toteutus: Nordpool-integraatio, hintaparametrit ja sulakevalvonta on kuvattu ohjeessa HA:n valmistelu integraatiokerrokseksi.