Kiva nähdä että Pörssärin kehittäjät ovat aktiivisia tällä foorumilla ja suhtautuvat asiaan sillä tavalla, että keskusteluista voi jättää "tämä ohjaushärveli on parempi kuin tuo ohjaushärveli" sävyt pois.
Olen itse toteuttanut openHAB:n päälle tällaisen harrasteproggiksen
Openhab Spot Price Optimizer modules help you to optimize energy consumption to the cheapest hours of the day. - masipila/openhab-spot-price-optimizer
github.com
Ja tässä statistiikkaa mitä olen saanut aikaan sähkölaskulla
Pari viikkoa vajaa 6 kuukautta takana vuoden sopimuksesta (7,98 snt/kWh). Soppari otettu 19.10. ja siitä hetkestä: Oma spot-keskiarvo (sis. marginaali): 11,338265 snt/kWh Oma spot-keskiarvo (ei marginaalia): 10,938265 snt/kWh Spot keskiarvo: 8,84 snt/kWh Kulutusvaikutus %: +23,77 %...
bbs.io-tech.fi
Minua kiinnostelisi tehdä yhteistyötä talon lämmitystä optimoivan algoritmin kehittämisessä - siten että yhdessä fiilistellyt konseptit voi toteuttaa sekä Pörssäriin että tuohon omaan tunkkiini, koska se ei ole keneltäkään pois että konseptuaalisesti hyvä algoritmi olisi useammassa eri vaihtoehdossa toteutettuna.
Tässä alkuun omia ajatuksia siitä, mitä olen puolentoista vuoden aikana oppinut oman talomme sielunelämästä.
Oman talomme lämmitystarve on aikalailla lineaarinen suhteessa ulkolämpötilaan. Lasken lämmitystarpeen näiden pisteiden avulla:
- sääennusteen keskilämpötila -25, lämmitystunteja 24
- sääennusteen keskilämpötila +10, lämmitystunteja 2 (nämä 2 tuntia ovat käyttöveden lämmitystä varten)
Lisäksi taloa lämpenee erityisesti näin keväisin huomattavan paljon ison Eteläsuuntaisen 4x4 metrin ikkunan vuoksi. Meillä ei ole aurinkopaneeleita, mutta minulla on ollut nyt pari kuukautta forecast.solar:n tuotantoennusteeseen perustuva kompensaatiovirveli, jonka perusteella lämmitystunteja vähennetään jos huomisesta on tulossa kovin aurinkoinen.
Lisäksi minulla on kompensaatio toiseen suuntaan, eli jos ulkolämpötila sääennusteen perusteella on putoamassa vuorokauden jälkimmäisellä puoliskolla kovasti, niin sitten lämmitystä lisätään (etupeltoon), jotta sisälämpötila pysyy tasaisempana.
Olen kokeillut muutamaa eri lähestymistapaa tuon lämmitysoptimiointialgoritmin suhteen, mutta en ole vielä keksinyt Täydellistä Algoritmia tähän monitavoiteongelmaan, jossa on kolme eri optimointitavoitetta:
1) Lämmityksen ajoittaminen halvoille tunneille
2) Sisälämpötilan seilaamisen pitäminen tolkun rajoissa
3) Maalämpöpumpun kompressorin käynnistyskertojen minimointi
Kylmällä kelillä, kun lämmitystarve on suuri, niin tällä wikisivulla kuvattu algoritmi toimii varsin lähellä optimia:
Openhab Spot Price Optimizer modules help you to optimize energy consumption to the cheapest hours of the day. - masipila/openhab-spot-price-optimizer
github.com
Tässä siis EI metsästetä vuorokauden halvimpia tunteja ja sallita niitä, vaan päinvastoin. Eli algoritmi etsii päivän kalleimmat piikit ja blokkaa ne, mutta samalla pitää huolen että blokattujen piikkien väliin taataan konfiguroitavissa oleva määrä lämmitysaikaa (eli nämä blokattavat kalliit piikit eivät voi olla täysin peräjälkeen koska silloin talo jäähtyy liikaa).
Kuten mainittu, tämä algorimti toimii meidän talomme kohdalla pääsääntöisesti oikein hyvin silloin kun lämmitystuntien määrä on kohtalaisen suuri ja kun päivän hinnat ovat normaalin kaksikyttyräisen muotoisia.
However, tämä algoritmi voi tuottaa tosi hassuja tuloksia silloin, kun lämmitystarpeen määrä laskee. Silloin voi käydä näin (pidempi taustoitus yllä linkatulla wikisivulla).
Tämän ilmiön vuoksi omat ohjaussääntöni toimivatkin siten, että jos lämmitystarve on 7h tai vähemmän, niin silloin ei käytetä tätä "peak period blocker" -algoritmia, vaan etsitään vuorokauden halpoja yhtäjaksoisia pätkiä ja sallitaan ne.
Tämän pitkän jorinan kautta sitten Pörssäriin. Pörssärin lämmitysalgoritmi ilmeistesti toimii siten, että
- vuorokausi voidaan jakaa haluttuun määrään osia, esim. 3 x 8h tai 4 x 6h tai mitä tahansa muuta.
- Ja sitten jokaisen periodin kohdalle lasketaan kyseisen periodin keskilämpötilan perusteella tarvittava määrä lämmitystunteja.
- Ja poimitaan sitten halvimmat yksittäiset tunnit ja sallitaan ne.
Jos tätä peilaa noihin ihan postaukseni alussa mainittuun kolmeen optimointitavoitteeseen, niin tämä optimoi kaikista parhaiten tasaista sisälämpötilaa, mutta voisin kuvitella että tämä saattaa johtaa ei-optimaaliseen tulokseen kahden muun optimointitavoitteen suhteen. Eli voi olla, että keskellä päivää lämmitetään kalliimmilla tunneilla "liikaa", tai siis tätä lämmitystä olisi voinut siirtää joko vähän aikaisemmaksi tai myöhemmäksi siten että lämmitys olisi ollut yöpainotteisempaa ja päivällä lämmitetään vain juuri sen verran että lämpötila ei vajoa liikaa. Ja toisekseen, tämä voi johtaa siihen, että erityisesti on-off pumppujen kohdalla tulee ylimääräisiä kompressorin käynnistymisiä (tai siis ylimääräisiä as in että saavutettu hintahyöty ei ole niin suuri, että kannattaa pätkäkäyttää kompuraa edestakaisin).
Olen viime aikoina huurustellut kaksivaiheista optimointialgoritmia, joka tekisi ensin tuon peak period blocker -konseptin mukaisen optimoinnin, mutta sen jälkeen tarkastelisi että kannattaisiko lopputulosta "liuuttaa" joko vasemmalle tai oikealle sen mukaan, millaisia hintoja sieltä löytyy ympäristöstä.
Mutta millaisia kokemuksia ja ajatuksia teillä muilla on?
Cheers,
Markus