Hybridisähkösopimus – kiinteän sähkösopimuksen ja pörssisähkön hyvät puolet

Hybridisähkösopimus – kiinteän sähkösopimuksen ja pörssisähkön hyvät puolet

Useilla sähköyhtiöillä on jo jonkin aikaa ollut tarjolla hybridisähkösopimuksia. Tällaisia sopimuksia mainostetaan kiinteän sähkösopimuksen ja pörssisähkön yhdistetyillä hyödyillä. Hybridisopimuksen hinta muodostuu perusmaksusta, kiinteästä energiamaksusta ja niin sanotusta hintajoustosta.

Kiinteä osuus tasaa hinnan vaihtelua verrattuna puhtaaseen pörssisopimukseen ja hintajouston avulla on mahdollista vaikuttaa sähkölaskun suuruuteen painottamalla omaa sähkön kulutusta halvimmille tunneille ja vähentämällä kulutusta kalleimpina tunteina.

Hintajousto lasketaan kuukauden toteutuneen keskikustannuksen ja pörssikeskihinnan erotuksena. Jos sopimuksen kiinteä energiamaksu on esimerkiksi 8.95 c/kWh, kuukauden pörssikeskihinta 15 c/kWh ja toteutunut keskikustannus 14 c/kWh, maksaa energia: 8.95 c/kWh + (14 c/kWh – 15 c/kWh) = 7.95 c/kWh.

Edellä lasketusta esimerkistä selviää että hintajousto on negatiivinen (vähännys energian hinnasta), jos toteutunut keskikustannus on pienempi kuin kuukauden pörssikeskihinta. Näiden tietojen seuraamiseksi Home Assistantiin tehdään omat sensorit.

Kuukauden pörssikeskihinta haetaan RESTful -sensorin avulla Nordpoolista. Hieman monimutkaisen näköinen sääntö laskee kuukauden päiväkeskihinnat yhteen ja jakaa luvun päivien määrällä. Seuraavan päivän hinta huomioidaan heti kun se on saatavilla.

  - platform: rest
    resource: https://www.nordpoolgroup.com/api/marketdata/page/36?currency=,,EUR,EUR&entityName=FI
    name: Kuukauden pörssikeskihinta
    unit_of_measurement: c/kWh
    scan_interval: 600
    value_template: >
      {% if (value_json["data"]["Rows"][1]["Columns"][0]["Value"]|replace(",", ".")|float(0) == 0) and ((now()+timedelta(1)).strftime('%-d') == '1') %}
        {% set column = 1 %}
      {% else %}
        {% set column = 0 %}
      {% endif %}
      {% if value_json["data"]["Rows"][0]["Columns"][column]["Value"]|replace(",", ".")|float(0) != 0 %} {% set jakaja = 1 %} {% endif %}
      {% if value_json["data"]["Rows"][1]["Columns"][column]["Value"]|replace(",", ".")|float(0) != 0 %} {% set jakaja = 2 %} {% endif %}
      ...
      {% if value_json["data"]["Rows"][30]["Columns"][column]["Value"]|replace(",", ".")|float(0) != 0 %} {% set jakaja = 31 %} {% endif %}
      {% if value_json is defined %}
        {{ ((
          value_json["data"]["Rows"][0]["Columns"][column]["Value"]|replace(",", ".")|float(0) +
          value_json["data"]["Rows"][1]["Columns"][column]["Value"]|replace(",", ".")|float(0) +
          ...
          value_json["data"]["Rows"][30]["Columns"][column]["Value"]|replace(",", ".")|float(0))
          * 1.24 / 10 / jakaja)| round(2)
        }}
      {% else %}
        {{ states.this.state|float(0) }}
      {% endif %}

Toteutunutta keskikustannusta varten täytyy ensin laskea tuntikustannus (tunnin kulutus x pörssihinta) ja tehdä tätä kustannusta ja kulutusta yhteen laskevat ja kuukausittain nollautuvat Utility -mittarit. Toteutunut keskikustannus saadaan jakamalla kustannus kulutuksella. Hintajousto saadaan edellisen esimerkin tapaan toteutuneen keskikustannuksen ja pörssikeskihinnan erotuksena.

template:
  - trigger:
    - platform: time_pattern
      minutes: 0
    sensor:
      - name: Pörssikustannus
        state: '{{states(''sensor.sahkon_tuntikulutus'')|float(0)*states(''sensor.porssihinta'')|float(0)}}'
        unit_of_measurement: Eur

  - trigger:
    - platform: time_pattern
      minutes: 0
    sensor:
      - name: Toteutunut keskikustannus
        unit_of_measurement: c/kWh
        state: '{{((states(''sensor.sahkon_kuukausikustannus'')|float(0) / states(''sensor.sahkon_kuukausikulutus'')|float(0))*100)|round(2)}}'

sensor:
  - platform: template
    sensors:
      kulutusvaikutus:
        unit_of_measurement: c/kWh
        value_template: '{{(states(''sensor.toteutunut_keskikustannus'')|float(0) - states(''sensor.kuukauden_porssikeskihinta'')|float(0))|round(2)}}'
Sähkön hinta
Sähkön hinta

Kuukauden pörssikeskihintaa tai toteutunutta keskikustannusta voidaan pitää rajana hinnalle, jota voidaan hyödyntää kodin sähkölaitteiden automaatioissa. Mikäli sähköä käytetään pörssikeskihintaa halvempina tunteina enemmän kuin kalliimpina tunteina, saadaan sähkön hinnasta alennusta. Mikäli sähköä käytetään toteutunutta keskikustannusta halvempina tunteina, saatava hyöty kasvaa.

Alla esimerkkiautomaatiot sähkölämmitykselle, jossa käytetään apuna kahta lämpötila- ja hintarajaa. Kaikkein halvimman hinnan aikana lämmitys on koko ajan päällä. Hieman kalliimmalla hinnalla lämpötilan annetaan laskea ylempään rajaan ennen lämmityksen aloittamista. Vieläkin kalliimmalla hinnalla sisälämpötilan annetaan laskea alempaan rajaan saakka. Lämmitystä jatketaan kunnes lämpötilaraja ylitetään hieman.

- id: '1'
  alias: Lämmitys pois päältä
  trigger:
  - platform: time_pattern
    minutes: '0'
  condition:
  - condition: template
    value_template: >
      {%if (float(states('sensor.nordpool'),0)*100)>(float(states('sensor.kuukauden_porssikeskihinta'),0)*2) %}
        {{states('sensor.olohuone_lampotila')|float(0)>(states('input_number.minimilampotila_2')|float(0)+0.1)}}
      {%elif (float(states('sensor.nordpool'),0)*100)>(float(states('sensor.kuukauden_porssikeskihinta'),0)*0.8) %}
        {{states('sensor.olohuone_lampotila')|float(0)>(states('input_number.minimilampotila_1')|float(0)+0.1)}}
      {%else%}
        {{false}}
      {%endif%}
  action:
  - service: switch.turn_off
    data: {}
    target:
      entity_id: switch.lämmitys

- id: '2'
  alias: Lämmitys päälle
  description: ''
  trigger:
  - platform: time_pattern
    minutes: '0'
  condition:
  - condition: template
    value_template: >
      {%if (float(states('sensor.nordpool'),0)*100)>(float(states('sensor.kuukauden_porssikeskihinta'),0)*2) %}
        {{states('sensor.olohuone_lampotila')|float(0)<states('input_number.minimilampotila_2')|float(0)}}
      {%elif (float(states('sensor.nordpool'),0)*100)>(float(states('sensor.kuukauden_porssikeskihinta'),0)*0.8) %}
        {{states('sensor.olohuone_lampotila')|float(0)<states('input_number.minimilampotila_1')|float(0)}}
      {%else%}
        {{false}}
      {%endif%}
  action:
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.lämmitys

8 thoughts on “Hybridisähkösopimus – kiinteän sähkösopimuksen ja pörssisähkön hyvät puolet

  1. Laskiessasi kuukauden keskihintaa, mitä tämä laskee: ”* 1.24 / 10 / jakaja)”
    Entä olisiko mahdollista, että jakaisit koko koodin tälle sensorille? 🙂

    1. Tuo kaava lisää Nordpoolin sivulta haettavaan summaan ALV:n, muuttaa Eur/MWh -> c/kWh ja jakaa sen päivien määrällä, jotta summasta saadaan keskiarvo. Sensori löytyy koko komeudessaan täältä. Joku koodaustaitoinen osaisi tuon varmaan tehdä nätimmin 🙂

  2. Hei,
    Onko sensor.porssihinta esim nordpoolin tunneittain vaihtuva hintasensori, vai joku helper?

  3. Kiitos! Tälläisestä olinkin haaveillut, mutta omat taidot eivät riittäneet toteuttaa tyhjästä.

    1. Kiva että tästä kirjoituksesta oli jotain iloa. Disclaimerina vielä että ihan kaikkia asioita ei ole kirjoitettu täysin auki, mutta idea selvinnee.

  4. Kiitos Kimmo, tämä on todellä hyvä lähtöpiste omallekin kulutusseurannalle.
    Mistä lasket sähkön tuntikulutuksen (sensor.sahkon_tuntikulutus)?

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *