DIY pörssisähköohjaus

zeniitti

Tulokas
Lainataanpas ketjua. Täällä Nibe loppuvuonna 2010 käyttöönotettu F1245-8 ja siirryttiin juuri pörssisähköön. Nyt asentelin valikoiden kautta estot vaan raakasti tietyille tunneille ja voimaan ma-pe. Aika jäykkä ja brutaali keino. Joten laitoinkin eilen tilaukseen 2x Shelly 1 Plus -palikkaa.

Itselläni olisi toive estää lämmitys- ja käyttöveden teko ohjelmoiduilla tunneilla. Pumppu saisi toimia "normaalisti" jos on skriptien mukaan halpaa ja jos niin ikään kallista, pitäisi rajoittaa esimerkiksi halvimmille 10 tunnille tms. Lattialämmitysvesi saa kyllä kiertää koko ajan, tuskinpa se mitään haittaa. Odotellessa tutkin manuaalia ja siinä puhutaan "SG Ready" ohjauksista. Toimisikohan ne fiksusti ja onko tuo käytössä näin vanhassa pumpussa? Pumpun firmis on uusin, mitä Nibe tarjoaa.

1685613475867.png
 

tk-

Aktiivinen jäsen
Lainataanpas ketjua. Täällä Nibe loppuvuonna 2010 käyttöönotettu F1245-8 ja siirryttiin juuri pörssisähköön. Nyt asentelin valikoiden kautta estot vaan raakasti tietyille tunneille ja voimaan ma-pe. Aika jäykkä ja brutaali keino. Joten laitoinkin eilen tilaukseen 2x Shelly 1 Plus -palikkaa.

Itselläni olisi toive estää lämmitys- ja käyttöveden teko ohjelmoiduilla tunneilla. Pumppu saisi toimia "normaalisti" jos on skriptien mukaan halpaa ja jos niin ikään kallista, pitäisi rajoittaa esimerkiksi halvimmille 10 tunnille tms. Lattialämmitysvesi saa kyllä kiertää koko ajan, tuskinpa se mitään haittaa. Odotellessa tutkin manuaalia ja siinä puhutaan "SG Ready" ohjauksista. Toimisikohan ne fiksusti ja onko tuo käytössä näin vanhassa pumpussa? Pumpun firmis on uusin, mitä Nibe tarjoaa.

katso liitettä 87040
Puhun täällä kyllästymiseen asti harrasteprojekti Pörssäristä, niin en puhu siitä sen enempää muuta kuin sen, että tarkoituksena on mahdollistaa jäljempänä kuvattu asia sillä ensi talveen mennessä.

Itsellä F1145, toki senverta uudempaa mallia, että siinä on myös tuo SPA sisäänrakennettuna. Mielestäni se ei kuitenkaan toimi riittävän hyvin, koska ei ota millään tavalla huomioon tulevaa ulkolämpötilaa.

Tutkiskelin itsekin tuota SmartGridiä aikanaan kun lähdin pohtimaan miten tuota kannattaisi ohjata. Sen haasteena on se, että tila vaihtuu molempien releiden tilojen mukaan. Eli pitää osata ohjelmoida portaat niin, että kun kallista, A auki, B kiinni. Kun hinnalla ei väliä, molemmat auki. Kun halpoja tunteja on vähemmän kun normaalitilaan tarvitaan, mutta ei tarvitse ajaa täysillä, A auki ja B kiinni. Ja kun halpoja tunteja ei ole juurikaan, niin molemmat kiinni juuri ja juuri tarvittava määrä halvimpia tunteja. Ja sitten taas se, että mikä on se tarve milloinkin millekin määrälle sallittua käyntioloa/tehostettua lämpöpyyntiä, riippuu olennaisesti myös seuraavan 12-24h lämpötilaennusteesta.

Muistaakseni tuo SG-ready mahdollistaa ylikapasiteettitilassa vain tilapäisen luksuksen käyttämisen käyttövedessä, eli sähkövastus olisi sitten aina kaverina.

Tällä hetkellä itsellä on niin, että toisella releellä estän tähän aikaan vuodesta 16 kalleinta tuntia. Toisella sitten ohjaan lämminveden säästötilaan 20h vuorokaudessa, mutta lämminvesi on normaalitilassa aina klo 18-19.

Jatkossa on tarkoitus vielä hienosäätää tuota niin, että lasketaan seuraavan päivän tarvittava lämmitystuntien määrä, arvioidaan riittääkö normaalitila vai pitääkö käyttää tehostettuja lämpökäyräasetuksia, ja sitten ohjataan tehostukset tarvittaessa päälle ja estetään loput. Tuon tavallaan voi hoitaa myös sg-readyn avulla jos käytössä on vain 2 ohjauskanavaa, mutta siinä on noita omia rajoitteitaan.
 

zeniitti

Tulokas
Puhun täällä kyllästymiseen asti harrasteprojekti Pörssäristä, niin en puhu siitä sen enempää muuta kuin sen, että tarkoituksena on mahdollistaa jäljempänä kuvattu asia sillä ensi talveen mennessä.

Itsellä F1145, toki senverta uudempaa mallia, että siinä on myös tuo SPA sisäänrakennettuna. Mielestäni se ei kuitenkaan toimi riittävän hyvin, koska ei ota millään tavalla huomioon tulevaa ulkolämpötilaa.

Tutkiskelin itsekin tuota SmartGridiä aikanaan kun lähdin pohtimaan miten tuota kannattaisi ohjata. Sen haasteena on se, että tila vaihtuu molempien releiden tilojen mukaan. Eli pitää osata ohjelmoida portaat niin, että kun kallista, A auki, B kiinni. Kun hinnalla ei väliä, molemmat auki. Kun halpoja tunteja on vähemmän kun normaalitilaan tarvitaan, mutta ei tarvitse ajaa täysillä, A auki ja B kiinni. Ja kun halpoja tunteja ei ole juurikaan, niin molemmat kiinni juuri ja juuri tarvittava määrä halvimpia tunteja. Ja sitten taas se, että mikä on se tarve milloinkin millekin määrälle sallittua käyntioloa/tehostettua lämpöpyyntiä, riippuu olennaisesti myös seuraavan 12-24h lämpötilaennusteesta.

Muistaakseni tuo SG-ready mahdollistaa ylikapasiteettitilassa vain tilapäisen luksuksen käyttämisen käyttövedessä, eli sähkövastus olisi sitten aina kaverina.

Tällä hetkellä itsellä on niin, että toisella releellä estän tähän aikaan vuodesta 16 kalleinta tuntia. Toisella sitten ohjaan lämminveden säästötilaan 20h vuorokaudessa, mutta lämminvesi on normaalitilassa aina klo 18-19.

Jatkossa on tarkoitus vielä hienosäätää tuota niin, että lasketaan seuraavan päivän tarvittava lämmitystuntien määrä, arvioidaan riittääkö normaalitila vai pitääkö käyttää tehostettuja lämpökäyräasetuksia, ja sitten ohjataan tehostukset tarvittaessa päälle ja estetään loput. Tuon tavallaan voi hoitaa myös sg-readyn avulla jos käytössä on vain 2 ohjauskanavaa, mutta siinä on noita omia rajoitteitaan.
Mä laitan sulle YV:n.
 

zeniitti

Tulokas
Noniin, projekti on hieman edennyt. Nappasin kaksi shellyä kiinni ja Niben sisältä löytyi 12V DC, ei tarvinnut erikseen virtapuolta miettiä. Kytkin shellyt AUX1 ja AUX2. Kännykkäsovelluksella releet naksuu eli yhteydet pitäisi olla kunnossa. Niben valikoista en asetellut vielä mitään ohjelmointeja. Pitää varmaankin hieman tutkia seuraavaksi shellyn ohjelmointia ja miettiä mikä palvelis meidän taloutta parhaiten.

Meillä on ollut aina käyttövedessä säätö-tila päällä. Hyvin on riittänyt, 2 aikuista ja (nyt) 2 teiniä. Mietin, että mitenköhän kannattaisi käyttöveden kanssa touhuta? Toimisiko se niin, että vaikkapa ne halvimmat 6h käyttövesi normaali ja loput 18h säästö? Kuitenkin niin, että nostaisi normaalin lämpötiloja hieman korkeammalle. Suihkut painottuu ilta-aikoihin.
 

VesA

Moderaattori
Ylläpidon jäsen
Mietin, että mitenköhän kannattaisi käyttöveden kanssa touhuta?
Minulla on niin päin että raspi komentaa 300l varaajan lämpötilasta riippumatta kuumaksi 2x vuorokaudessa pörssisähkön mukaan, eli yön halvin ja iltpäivän halvin tunti, muuten veden lämmitys on kielletty paitsi illan kylpytunteina. Meillä on iso amme, jos sen kanssa lotrataan ja varaajan mittarin kohdalla on alle 35 astetta pumppu saa oma-alotteisesti lämmittää lisää käyttövettä.
 

zeniitti

Tulokas
Minulla on niin päin että raspi komentaa 300l varaajan lämpötilasta riippumatta kuumaksi 2x vuorokaudessa pörssisähkön mukaan, eli yön halvin ja iltpäivän halvin tunti, muuten veden lämmitys on kielletty paitsi illan kylpytunteina. Meillä on iso amme, jos sen kanssa lotrataan ja varaajan mittarin kohdalla on alle 35 astetta pumppu saa oma-alotteisesti lämmittää lisää käyttövettä.
Meillä ei varmaankaan ihan älyttömästi lämmintä vettä tosiaan kulu, mutta aikahan sen näyttää. Ehkä menen samaan suuntaan, eli lämmitetään kerran tai kaksi normaaliin tilaan ja sitten muut ajat säästöllä. Normaalitilan lämpötiloja voisin vähän nostaa. Meillä on pelkkä integroitu 180l varaaja.
 

Lappanen

Vakionaama
Ihmettelin, että mitä se Jämä nyt sekoilee tuon käyttöveden teon kanssa. Teki klo 00-01 ja klo 04-05 aikana käyttövedet tavoitelämpötilaan kahdessa erässä. No sehän skippasi 3 kalliimpaa tuntia siitä välistä varsin onnistuneesti, ai että kun osaa pienistä asioista olla tyytyväinen :D

1686894480773.png
 

Lappanen

Vakionaama
Pistetään tämä vaikka tänne paremmin sopivana tuolta Pörssisähkön hinta 2023 -keskustelusta:

Vaikka kulutusvaikutus prosenteissa näyttää pahalta, ei se rahassa mikään katastrofi ole (marginaali 0,38 snt/kWh). Lämpimän käyttöveden teko ajoittunut aina klo 00-05 paikkeille ja riittää vuorokaudeksi, mutta kesällä sähkö ei ole silloin halvimmillaan vaikka halpaa onkin. Sitten taas päivällä kun sähkö usein ollut jopa negatiivisen hintaista, ei ole kuin kiinteistön pohjakulutusta. Ja illalla kun ruokaa tehdään niin sähkö taas kalliimpaa. Pyykit ja tiskit sentään pystyy ajoittamaan halvimmille tunneille, mutta siitä ei paljoa kulutusvaikutista kerry.

Nyt koitan optimoida lämpimän käyttöveden niin että osuu halvimmille tunneille, loppukuu hyvin aikaa seurailla miten onnistuu. Käytännössä nyt testin alkuun sallittu 3 halvinta tuntia ja aina kun hinta negatiivinen, starttiraja 53C ja stoppi 57C, näin käyttövettä tehdään varmasti heti kun se on sallittu. 500 litran varaajasta irtoaa lämmintä suihkuvettä vielä siihen asti kun varaajan keskiosa pysyy yli 30C ja todella harvoin tuota rajaa on hätyytelty. Ja toivottavasti toimii myös talvella kun halvat tunnit ajoittunee taas "normaalisti" aamuyön tunneille.

katso liitettä 87681

Nyt eka testipäivä takana ja hyvin näytti nappaavan vuorokauden 2. ja 3. halvimmat tunnit talteen. Halvin tunti olisi ollut sitten klo 4 alkava.

Halvimmat tunnit kesäaikaan voi olla miten sattuu vuorokaudessa, vaatii vielä seuraamista.

Yksi vaihtoehto voisi olla myös sallia 2 tai 3 peräkkäistä halvinta tuntia, mutta jos joskus sattuu käymään niin että edellisenä vuotokautena ne osuu loppuillalle ja seuraavana vuorokautena aamuyöhön, niin voi käydä niin että lämmityksen starttiraja ei ehdi tulla vastaan ja jää vedet lämmittämättä. Tietty sama voi tapahtua yksittäisten halvimpienkin tuntien kohdalla.

Mulla on kuitenkin back-up siltä varalta että käyttövesi jäähtyy liikaa, eli erillinen termostaattirele ohittaa shellyn kärkiohjauksen ja sallii käyttöveden lämmittämisen haluttuun lämpöön asti jonka jälkeen shelly saa taas ohjat käsiinsä.

Screenshot_20230726-063435.png
 

juu-zo

Aktiivinen jäsen
Tuli kanssa ostettua shelly 1 plus jos virittelisi tuohon käyttöveden lämmittämiseen jos pörssiin tulee marraskuussa siirryttyä.
Meillä on toistaiseksi ollut käytössä kausitariffi siirrossa ja tein tuossa hieman excel harjoituksia ja näyttäisi että se on muutaman euron halvempi edelleen kuin yleissiirtotariffi.
Löytyykö jollain skriptinpätkää missä shellyyn voisi määritellä kohtuu tarkasti viikonpäivät ja nuo omat tariffihinnat ja se osaisi verrata onko halvempaa lämmittää pönttöä kalliimman talviarkipäivän siirtohinnan, mutta halvan energian hintaan vai halvemman muun ajan siirtotariffin aikaan hieman kalliimman energian hintaan?
 

tk-

Aktiivinen jäsen
Tuli kanssa ostettua shelly 1 plus jos virittelisi tuohon käyttöveden lämmittämiseen jos pörssiin tulee marraskuussa siirryttyä.
Meillä on toistaiseksi ollut käytössä kausitariffi siirrossa ja tein tuossa hieman excel harjoituksia ja näyttäisi että se on muutaman euron halvempi edelleen kuin yleissiirtotariffi.
Löytyykö jollain skriptinpätkää missä shellyyn voisi määritellä kohtuu tarkasti viikonpäivät ja nuo omat tariffihinnat ja se osaisi verrata onko halvempaa lämmittää pönttöä kalliimman talviarkipäivän siirtohinnan, mutta halvan energian hintaan vai halvemman muun ajan siirtotariffin aikaan hieman kalliimman energian hintaan?
Luultavasti marraskuuhun mennessä tuo ominaisuus on jo Pörssärissä. Toistaiseksi on vain kiinteä siirtohinta ja aikatariffi, mutta tuo on työlistalla tässä jossain vaiheessa.
 

Lappanen

Vakionaama
Pistetään tämä vaikka tänne paremmin sopivana tuolta Pörssisähkön hinta 2023 -keskustelusta:



Nyt eka testipäivä takana ja hyvin näytti nappaavan vuorokauden 2. ja 3. halvimmat tunnit talteen. Halvin tunti olisi ollut sitten klo 4 alkava.

Halvimmat tunnit kesäaikaan voi olla miten sattuu vuorokaudessa, vaatii vielä seuraamista.

Yksi vaihtoehto voisi olla myös sallia 2 tai 3 peräkkäistä halvinta tuntia, mutta jos joskus sattuu käymään niin että edellisenä vuotokautena ne osuu loppuillalle ja seuraavana vuorokautena aamuyöhön, niin voi käydä niin että lämmityksen starttiraja ei ehdi tulla vastaan ja jää vedet lämmittämättä. Tietty sama voi tapahtua yksittäisten halvimpienkin tuntien kohdalla.

Mulla on kuitenkin back-up siltä varalta että käyttövesi jäähtyy liikaa, eli erillinen termostaattirele ohittaa shellyn kärkiohjauksen ja sallii käyttöveden lämmittämisen haluttuun lämpöön asti jonka jälkeen shelly saa taas ohjat käsiinsä.

katso liitettä 87698

Hyvin pelittää edelleen ja saa olla, eli 3 halvinta tuntia ja alle 0 snt/kWh sallittu käyttövedelle, muuten estetty. Kerran ehti olla 1,5 vuorokautta väliä noilla spekseillä hinnoissa ja vielä riitti suihkuun lämmintä.

Kulutusvaikutuskin mukavasti alkaa hätyytellä välityspalkkion kuittaantumista, kun ennen muutosta etumerkki oli plussalla:

Screenshot_20230817-191018.png
 

luotinen

Aktiivinen jäsen
Näiden yllä esitettyjen skriptien pohjalta askartelin tällaisen version. Mulla siis IVT:n maalämpöpumpussa kaksi ulkoista ohjausta, joista eka (id = 0) lisälämmittää ja toka (id = 1) estää lämmitystä. Alla oleva skripti lämmittää aina, jos sähkö maksaa enintään 10 c/kWh ja myös aina vuorokauden halvimmat 20 tuntia eli enintään estää 4 tuntia vuorokaudessa:

rank_ja_hinta.js
JavaScript:
let paivitystaajuus = 2 * 60000; // kaksi minuuttia
let max_price = 10; // lämmitetään aina jos hinta on alle X c/kWh; res.code = 200 jos alle
let max_rank = 20; // lämmitetään halvimmat X tuntia, res.code = 200 jos alle; 400 jos yli
let rele = 1; // mitä relettä ohjataan

Timer.set(paivitystaajuus, true, function () {
  Shelly.call("HTTP.GET", { url: "https://api.spot-hinta.fi/JustNowRank/"+max_rank+"/"+max_price },
  function (res, error_code, error_msg, ud)
  {
    if (error_code !== 0 || res === null) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois 
    }
    else if (res.code === 200) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Rele pois
    }
    else if (res.code === 400) {
      Shelly.call("Switch.Set","{id:"+rele+", on:true}", null, null); // Rele päälle
    }
    else {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
    };
  }, null);
}, null);

EDIT: Päivitetty virheensietoa käyttäjän Mikki ehdotuksen mukaisesti
EDIT 2: Korjattu kirjoitusvirhe
 
Viimeksi muokattu:

luotinen

Aktiivinen jäsen
rank_ja_hinta.js
JavaScript:
let paivitystaajuus = 2 * 60000; // kaksi minuuttia
let max_price = 10; // lämmitetään aina jos hinta on alle X c/kWh; res.code = 200 jos alle
let max_rank = 20; // lämmitetään halvimmat X tuntia, res.code = 200 jos alle; 400 jos yli
let rele = 1; // mitä relettä ohjataan

Timer.set(paivitystaajuus, true, function () {
  Shelly.call("HTTP.GET", { url: "https://api.spot-hinta.fi/JustNowRank/"+max_rank+"/"+max_price },
  function (res, error_code, error_msg, ud)
  {
    if (error_code !== 0 || res === null) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
    }
    else if (res.code === 200) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Rele pois
    }
    else if (res.code === 400) {
      Shelly.call("Switch.Set","{id:"+rele+", on:true}", null, null); // Rele päälle
    }
    else {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
    };
  }, null);
}, null);

EDIT: Päivitetty virheensietoa käyttäjän Mikki ehdotuksen mukaisesti
EDIT 2: Korjattu kirjoitusvirhe
Nyt tää turhaan kyselee samaa asiaa 30 kertaa tunnissa. Mites tää modataan niin, että ajaa skriptin vaikka aina ekan minuutin jälkeen joka tunti? En löytänyt Googlella vastausta eikä Chat GPTkään osannut kysyttäessä.
 
Viimeksi muokattu:

luotinen

Aktiivinen jäsen
Uusi versio koodista käyttäjän Mikki vinkein, tarkistaa muuttujan "paivitystaajuus" välein onko tunti vaihtunut. Kuormittaa APIa noin 30x vähemmän:

JavaScript:
let paivitystaajuus = 60000; // yksi minuutti
let max_price = 10; // lämmitetään aina, jos hinta on alle X c/kWh; res.code = 200 jos alle
let max_rank = 20; // lämmitetään halvimmat X tuntia, res.code = 200 jos alle; 400 jos yli
let rele = 1; // mitä relettä ohjataan
let cHour = -1; // juokseva tunti

Timer.set(paivitystaajuus, true, function () {
  if (cHour === new Date().getHours()) {
    // tunti ei ole vaihtunut, ei tehdä mitään
  } else {
    cHour = new Date().getHours(); // päivitetään nykyinen tunti
    Shelly.call("HTTP.GET", { url: "https://api.spot-hinta.fi/JustNowRank/"+max_rank+"/"+max_price },
    function (res, error_code, error_msg, ud)
    {
      if (error_code !== 0 || res === null) {
        Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
      }
      else if (res.code === 200) {
        Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Rele pois
      }
      else if (res.code === 400) {
        Shelly.call("Switch.Set","{id:"+rele+", on:true}", null, null); // Rele päälle
      }
      else {
        Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
      };
    }, null);
  };
}, null);
 
Viimeksi muokattu:

luotinen

Aktiivinen jäsen
EDIT: Allaoleva on väärin ja johtuu siitä, että mulla oli tietokoneella jäänyt pörssihinnat auki eiliseltä. :D => toimii siis oikein, kunhan vertailee saman päivän toimintaan.

"Rajapinta palauttaa "200" jos Rank tai hinta on riittävän alhainen. Ja "400" jos kumpikaan ehto ei täyty."

Jostakin syystä rajapinta on antanut tänään:
06:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 400 (vaikka pitäisi tulla 200, koska rank on alle 20 ja myös koska hinta on alle 10)
07:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 400 (vaikka pitäisi tulla 200, koska rank on alle 20 ja myös koska hinta on alle 10)
08:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 400 (vaikka pitäisi tulla 200, koska rank on alle 2)

Yksi tunti toimi oikein:
18:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 400

400 tuli rajapinnasta noilta neljältä tunnilta ja muilta tunneilta tuli 200

400 olisi pitänyt tulla:
09:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 200 (vaikka pitäisi tulla 400, koska rank on yli 20 ja hinta on yli 10)
11:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 200 (vaikka pitäisi tulla 400, koska rank on yli 20 ja hinta on yli 10)
12:01, https://api.spot-hinta.fi/JustNowRank/20/10 => 200 (vaikka pitäisi tulla 400, koska rank on yli 20 ja hinta on yli 10)

-Lauri
 
Viimeksi muokattu:

Mikki

Hyperaktiivi
Hmm..... Mistä hintoja olet katsonut? Esim. kello 06:00 alkaen ei kyllä hinta ollut alle 10 snt.... Eikä 07:00 myöskään....
Hintaraja on verollinen hinta rajapinnassa, mutta ei verotonkaan hinta ole ollut alle 10snt.

1705524219818.png
 

Liitteet

  • 1705524127975.png
    1705524127975.png
    5,8 KB · Katsottu: 30
Viimeksi muokattu:

tk-

Aktiivinen jäsen
Näiden yllä esitettyjen skriptien pohjalta askartelin tällaisen version. Mulla siis IVT:n maalämpöpumpussa kaksi ulkoista ohjausta, joista eka (id = 0) lisälämmittää ja toka (id = 1) estää lämmitystä. Alla oleva skripti lämmittää aina, jos sähkö maksaa enintään 10 c/kWh ja myös aina vuorokauden halvimmat 20 tuntia eli enintään estää 4 tuntia vuorokaudessa:

rank_ja_hinta.js
JavaScript:
let paivitystaajuus = 2 * 60000; // kaksi minuuttia
let max_price = 10; // lämmitetään aina jos hinta on alle X c/kWh; res.code = 200 jos alle
let max_rank = 20; // lämmitetään halvimmat X tuntia, res.code = 200 jos alle; 400 jos yli
let rele = 1; // mitä relettä ohjataan

Timer.set(paivitystaajuus, true, function () {
  Shelly.call("HTTP.GET", { url: "https://api.spot-hinta.fi/JustNowRank/"+max_rank+"/"+max_price },
  function (res, error_code, error_msg, ud)
  {
    if (error_code !== 0 || res === null) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
    }
    else if (res.code === 200) {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Rele pois
    }
    else if (res.code === 400) {
      Shelly.call("Switch.Set","{id:"+rele+", on:true}", null, null); // Rele päälle
    }
    else {
      Shelly.call("Switch.Set","{id:"+rele+", on:false}", null, null); // Virhetilanne, rele pois
    };
  }, null);
}, null);

EDIT: Päivitetty virheensietoa käyttäjän Mikki ehdotuksen mukaisesti
EDIT 2: Korjattu kirjoitusvirhe
Otsikko topicissa on toki DIY, ja ehkä siksi tämä lähestymistapa. Mutta Pörssäri on toki yksi vaihtoehto jos haluat saada helposti tuon suunnitelmasi mukaisen logiikan toimimaan. Siinä tulee myös erilainen yhteysvikasieto mukana kun laite saa ohjaustiedon koko hintatietojen ajalle kerralla.
 

luotinen

Aktiivinen jäsen
No niinpäs näyttää olevankin. Yhden päivän aineistolla toimii siis juuri niin kuin pitääkin, ks. kuvat alla.

Arvioitu vaikutus 17.1.2024 perusteella:
- siirretty n. 6 kWh
- halvempi hinta n. 15,0 c/kWh
- alkuperäinen hinta 18,6; 16,7 18,3; 16,9 -> 17,6 c/kWh keskimäärin
- etu (17,6 - 15,0 c/kWh) x 6 kWh = 15,6 c
- 0,156 c/d x 30 d/kk = 4,68 €/kk

1705525871668.jpeg

1705525882851.png


1705573247468.png
 
Viimeksi muokattu:

korsteeni

Vakionaama
Varmaan tuollaisen palvelun kannattaisi yrittää useammalla eri APIlla jos yksi ei toimi.
eikö noita voi hoidella tietokoneella niin ei tarvitse appien kanssa kännykällä touhuta
ihan viluttaa kun kohta mitään ei voi hoidella kuten ennen vaan joka asiaan pitää olla kännykkä appeineen
kun ei niiltä pieniltä ruuduilta edes saa kokonaisuutta hahmottaneen
minä niin mieleni pahoitan apeista
 

tj86430

Vakionaama
eikö noita voi hoidella tietokoneella niin ei tarvitse appien kanssa kännykällä touhuta
ihan viluttaa kun kohta mitään ei voi hoidella kuten ennen vaan joka asiaan pitää olla kännykkä appeineen
kun ei niiltä pieniltä ruuduilta edes saa kokonaisuutta hahmottaneen
minä niin mieleni pahoitan apeista
Tarkoitin, että kun sahko.tk käyttää ilmeisesti nyt yhtä (Nordpoolin) APIa (Application Programming Interface; ei appi) tietojen hakemiseen, niin sen kannattaisi siirtyä käyttämään useampaa, jotta olisi todennäköisempää että jos yksi ei toimi niin joku muu toimii. Esim. ENTSO-E API on palauttanut tämän päivän hinnat ihan nätisti.
 

tk-

Aktiivinen jäsen
"Warning: file_get_contents(http://www.nordpoolgroup.com/api/marketdata/page/35?currency=,,EUR,EUR): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in /var/www/html/sahko.tk/parse.php on line 123"
Tuollainen lukee mulla ihan sivun alareunassa. Eli olisko nordpoolin sivuilla tapahtunut pieni muutos ja nyt siksi ei enää toimi
NordPoolin sivustorajapinta uudistui, ja siksi nämä webscraping-tyyppiset parsinnat ei enää onnistu vanhalla formaatilla.

Samasta syystä hajosi hetkeksi myös se ha-lisäosa, mutta se on taidettu jo korjata.
 

Arisoft

Vakionaama
Eikös jonkun tietolähteen pitänyt lopettaa juuri toimintansa? Josko tuo käytti sitä hintojen etsimiseen?
NordPoolin sivustorajapinta uudistui, ja siksi nämä webscraping-tyyppiset parsinnat ei enää onnistu vanhalla formaatilla.

Onko nämä edes tietokannan lisenssiehtojen mukaisia? Ensto-e sekin rajoittaa tiedon jakelua lisenssillään. Vähän ihmetyttää tämä lisenssipelleily, mikä siinä on tavoitteena.
 

tk-

Aktiivinen jäsen
Eikös jonkun tietolähteen pitänyt lopettaa juuri toimintansa? Josko tuo käytti sitä hintojen etsimiseen?


Onko nämä edes tietokannan lisenssiehtojen mukaisia? Ensto-e sekin rajoittaa tiedon jakelua lisenssillään. Vähän ihmetyttää tämä lisenssipelleily, mikä siinä on tavoitteena.
Ei ole. Minkäänlainen hintatietojen uudelleenjakelu ei ole sallittua lisenssiehtojen mukaan ilman sitä tuhansia euroja maksavaa lisenssiä. Tai konejaettavuuden osalta menee jo toisellekymmenelle.

Entso-E tuo ne tarjolle todeten, että pitää noudattaa NordPoolin ehtoja. Tulkitsisin sen itse niin, että sieltä entso-e:sta omaan käyttöön hakeminen on ok, koska jos joku silloin rikkoo uudelleenjakeluehtoa, niin se on entso-e itse.

Tavoitteena tuossa lienee ihan puhdas halu/oikeus tehdä rahaa NordPoolissa, kun hintatiedot kuitenkin omistavat ja sinällään saavat tehdä niillä mitä huvittaa. Sähköyhtiöt kaikki joutuvat maksamaan lisenssiä jne. Kyllä tuossa aika iso tulonlähde on kyseiselle firmalle kyseessä.
 
Viimeksi muokattu:

Arisoft

Vakionaama
Entso-E tuo ne tarjolle todeten, että pitää noudattaa NordPoolin ehtoja.

Liekö sitten lisenssiehtojen mukaista se, että yritys hakee tiedot Entso-E:stä ja sen perusteella ohjailee asiakkaidensa laitteita toimittamatta itse hintatietoa asiakkailleen? Asiakas esim. määrittelisi pilvipalvelussa haluamansa ohjauskriteerit ja saisi sitten niiden mukaista ohjausta palvelusta laitteilleen. Miten lie tämä toteutettu näissä laitemyyjien tarjoamissa pörssiohjaus-järjestelmissä?
 

tk-

Aktiivinen jäsen
Liekö sitten lisenssiehtojen mukaista se, että yritys hakee tiedot Entso-E:stä ja sen perusteella ohjailee asiakkaidensa laitteita toimittamatta itse hintatietoa asiakkailleen? Asiakas esim. määrittelisi pilvipalvelussa haluamansa ohjauskriteerit ja saisi sitten niiden mukaista ohjausta palvelusta laitteilleen. Miten lie tämä toteutettu näissä laitemyyjien tarjoamissa pörssiohjaus-järjestelmissä?
Vajaa 5000€ vuodessa maksaa lisenssit millä hintatiedot saa hakea NordPoolista ja näyttää käyttäjälle. Konejaettavaksi niitä ei saa tehdä, mutta ohjaustiedon muodostamiseksi toki keskitetyllä palvelimella käsittääkseni silloinkin voi käyttää. Uskon/toivon, että jokainen ohjauspalvelua tarjoava yritys on tuon asian hoitanut.

Pörssärin osalta saatiin lupa ilmaisen harrastepalvelun ollessa kyseessä käyttää palvelimella Entso-E:n kautta haettuja hintatietoja kunhan loppukäyttäjä ei millään tavalla pääse niihin käsiksi. Tämän itse tulkitsen goodwill-tyyppiseksi asiaksi meitä kohtaan.

Nämä asiat saa sitten ihan kysymälläkin tuolta NordPoolista tietoon, aikanaan kun itse asiaa selvittelin niin arvostivat avoimuutta asiassa.
 

jalih

Jäsen
Pörssärin osalta saatiin lupa ilmaisen harrastepalvelun ollessa kyseessä käyttää palvelimella Entso-E:n kautta haettuja hintatietoja kunhan loppukäyttäjä ei millään tavalla pääse niihin käsiksi.
Nykykäytäntö vastaa kyllä lähinnä käytäntöä, missä lähikaupassa hinnat eivät olisi esillä ollenkaan ja kuluttaja joutuisi maksamaan lisenssimaksun tietääkseen ennakkoon mikä on kassalla ostoskorin hinta. Pitäisi jonkun toimijan rohkeasti haastaa, en usko moisen kaupankäynnin olevan edes laillista. Nord Pool voi toki veloittaa palvelimensa ja palvelunsa käytöstä sekä koostamastaan aineistosta, mutta hintatietojen sinällään kaupankäynnin läpinäkyvyys periaatteen mukaan pitäisi olla vapaasti käytettävissä.
 

tk-

Aktiivinen jäsen
Nykykäytäntö vastaa kyllä lähinnä käytäntöä, missä lähikaupassa hinnat eivät olisi esillä ollenkaan ja kuluttaja joutuisi maksamaan lisenssimaksun tietääkseen ennakkoon mikä on kassalla ostoskorin hinta. Pitäisi jonkun toimijan rohkeasti haastaa, en usko moisen kaupankäynnin olevan edes laillista. Nord Pool voi toki veloittaa palvelimensa ja palvelunsa käytöstä sekä koostamastaan aineistosta, mutta hintatietojen sinällään kaupankäynnin läpinäkyvyys periaatteen mukaan pitäisi olla vapaasti käytettävissä.
Onkin nähtävissä sekä NordPoolin omilla sivuilla että entso-e:n kautta, mutta eikö tässä nyt puhuttu hintadatan käytöstä automaatioissa?
 

jalih

Jäsen
Onkin nähtävissä sekä NordPoolin omilla sivuilla että entso-e:n kautta, mutta eikö tässä nyt puhuttu hintadatan käytöstä automaatioissa?
Miksi mielestäsi kuluttaja joka on pörssisähköasiakas ei saisi hyödyntää hintatietoja kotiautomaatioissa? Ei nyt kuitenkaan keskiajalla olla, että pitäisi käsipelillä kuormia ohjailla.
 

Arisoft

Vakionaama
Onkin nähtävissä sekä NordPoolin omilla sivuilla että entso-e:n kautta, mutta eikö tässä nyt puhuttu hintadatan käytöstä automaatioissa?

Ja näkyy yleensä myös sähkön myyjän sivullakin eli sikäli kuluttaja saa tietoa kyllä hinnasta sieltä mistä pitääkin. Mutta sen jälkeen homma meneekin sitten pelleilyksi esim. Saat kyllä katsoa palvelustamme, mitä kello on, mutta et saa laittaa herätyskelloa soimaan sen perusteella.

Entso-E on pakon sanelemana tehty palvelu, jonka käyttö loppukuluttajalle on tehty nähtävästi tahallaan turhan hankalaksi. No sentään se on, joten sitä pystyn luvallisesti käyttämään.

Kiinalaisessa Tuya järjestlemässä on myös samankaltainen rahastus. Palvelut ovat aivan liian kalliita käyttää omiiin tarkoituksiin. Mutta sieltä saa ilmaisen kokeiluversion määräajaksi. Enimmillään 6kk. Palvelun avulla on mahdollisuus hallita Tuya liitäntäisiä laitteita verkossa API:lla. Ilmaisen kokeilulisenssin voi sitten aina uusia määräajoin ja pitää sen sillä tavalla voimassa. Ei siis mitään lupausta jatkuvuudesta. Toistaiseksi olen saanut yhteyden pidettyä. Ainoa asia, minkä sieltä tarvitsen on ohjattavan laitteen salausavain, joka vaihtuu jos laitteen nettiyhteys muuttuu.
 

tk-

Aktiivinen jäsen
Miksi mielestäsi kuluttaja joka on pörssisähköasiakas ei saisi hyödyntää hintatietoja kotiautomaatioissa? Ei nyt kuitenkaan keskiajalla olla, että pitäisi käsipelillä kuormia ohjailla.
En sanonut ettei niiden pitäisi olla vapaasti saatavilla yksityisen henkilön kotiautomaatioon. Minusta tässä puhutaan kahdesta eri asiasta. Itse puhuin nykyisistä lisenssiehdoista ja niiden asettamista rajoitteista, se ei ole minun mielipide asiaan.

Esimerkiksi eteläisessä naapurissamme kantaverkkoyhtiö Elering on tehnyt asian kuluttajille (?) helpoksi. En tiedä kuka maksaa lisenssit, mutta ainakin hinnat saa sieltä helposti automaatioihin.
 

tk-

Aktiivinen jäsen
Ja näkyy yleensä myös sähkön myyjän sivullakin eli sikäli kuluttaja saa tietoa kyllä hinnasta sieltä mistä pitääkin. Mutta sen jälkeen homma meneekin sitten pelleilyksi esim. Saat kyllä katsoa palvelustamme, mitä kello on, mutta et saa laittaa herätyskelloa soimaan sen perusteella.

Entso-E on pakon sanelemana tehty palvelu, jonka käyttö loppukuluttajalle on tehty nähtävästi tahallaan turhan hankalaksi. No sentään se on, joten sitä pystyn luvallisesti käyttämään.

Kiinalaisessa Tuya järjestlemässä on myös samankaltainen rahastus. Palvelut ovat aivan liian kalliita käyttää omiiin tarkoituksiin. Mutta sieltä saa ilmaisen kokeiluversion määräajaksi. Enimmillään 6kk. Palvelun avulla on mahdollisuus hallita Tuya liitäntäisiä laitteita verkossa API:lla. Ilmaisen kokeilulisenssin voi sitten aina uusia määräajoin ja pitää sen sillä tavalla voimassa. Ei siis mitään lupausta jatkuvuudesta. Toistaiseksi olen saanut yhteyden pidettyä. Ainoa asia, minkä sieltä tarvitsen on ohjattavan laitteen salausavain, joka vaihtuu jos laitteen nettiyhteys muuttuu.
Ei tuo Entso-E ole mitenkään erityisen hankala, sinne vaan pitää itse pyytää se api-key. Dataformaatti on tähän tietojoukkoon turhan monimutkainen, mutta sinällään looginen. Varmaankin tehty isommat/lyhyempiresoluutioiset datajoukot edellä, mutta ei se iso vaiva ole ottaa huomioon koodissa, että muuttumatonta arvoa ei palauteta seuraavalle aikaleimalle, vaan vasta sitten kun arvo muuttuu.
 

puuteknikko

Vakionaama
Ei tuo Entso-E ole mitenkään erityisen hankala, sinne vaan pitää itse pyytää se api-key. Dataformaatti on tähän tietojoukkoon turhan monimutkainen, mutta sinällään looginen. Varmaankin tehty isommat/lyhyempiresoluutioiset datajoukot edellä, mutta ei se iso vaiva ole ottaa huomioon koodissa, että muuttumatonta arvoa ei palauteta seuraavalle aikaleimalle, vaan vasta sitten kun arvo muuttuu.
Lisäksi on olemassa valmiita avoimen lähdekoodin ratkaisuja, jotka hyödyntää tuota rajapintaa niin ei tarvitse kuin huolehtia siitä, että ne on ajan tasalla. Taisin itse päivittää käytössä olleen Python-moduulin vasta nyt kun rajapinta muuttui ja tarvittiin uusi versio, jossa muutokset oli huomioitu.
 
  • Tykkää
Reactions: tk-

ekomies

Pakkastalvea odotellessa...
Pienenä TMA-esimerkkinä ostin vuosi sitten Airamin älypistorasian 120 litran lämminvesivaraajalle. Lämmitys pääsääntöisesti yöaikaan klo 3-5. Varaaja kuluttaa vain n. 1000 kWh vuodessa, (nykyisin 3-henk. talous), koska VILP esilämmittää veden. Kun pörssiyöenergialle laskee 2 c/kWh hinnaksi ja halvimmalle kiinteähintaiselle 7 c/kWh hinnaksi niin 15 eur älypistorasia haukkuu hintansa alle 4 kk aikana ja lopun aikaa tekee selvää säästöä n. 30 eur/v eka vuosi ja 45 eur/v seuraava. Oisko helpoin laite ottaa käyttöön ja pääsee säästämään.
:)
 
Back
Ylös Bottom