Gå til innhold
  • Bli medlem
Støtt hjemmeautomasjon.no!

Nordpool sensor for Home Assistant


Anbefalte innlegg

Apulanta skrev (19 minutter siden):

Hei, jeg er interessert i denne ESP32 -koden, jeg planlegger å ta med Nordpol -pris for hjemmeautomatisering og justere den elektriske tilstedeværelsen via ESP32 og legge til ESP32 modbus TCP -funksjon for å hente strømprisinformasjon for å kontrollere hjemmeautomatisering. Er den ESP32 -koden publisert et sted?

Det er ikke så mye kode, men mer en konfigurasjon av esphome. Dette er en tilleggsdel av Home Assistant for å integrere esp noder. ESPHome — ESPHome

 

esphome:
  name: varmtvannstank
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: "HEIME5.ORG"
  password: !secret heime_wifi
  domain: .lan
  #use_address: 10.0.0.46

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  #ap:
  #  ssid: "Varmtvannstank Fallback Hotspot"
  #  password: "okz8anWfZKFP"

#captive_portal:

# Enable logging
logger:

# Enable Home Assistant API
api:
  reboot_timeout: 24h

ota:

globals:
  - id: state_automode
    type: bool
    restore_value: no
    initial_value: 'false'
    
  - id: heating
    type: bool
    restore_value: no
    initial_value: 'false'
    
  - id: heating_has_started
    type: bool
    restore_value: no
    initial_value: 'false'
  
  - id: low_temp
    type: bool
    restore_value: no
    initial_value: 'false'
  
  - id: seconds
    type: int
    restore_value: no
    initial_value: '0'
    
  - id: heating_time
    type: int
    restore_value: no
    initial_value: '0'

  - id: heating_totaltime
    type: int
    restore_value: no
    initial_value: '0'
    
  - id: heating_start
    type: int
    restore_value: no
    initial_value: '0'
    
  - id: last_temp
    type: float
    restore_value: no
    initial_value: '0.0'
  
  - id: last_value_from_ha
    type: int
    initial_value: '0'

switch:
  - platform: gpio
    pin: 12
    id: varmtvannstank_varme
    name: "varmtvannstank_varme"
    restore_mode: ALWAYS_OFF
    icon: "mdi:water-boiler"
    on_turn_on:
    - lambda: !lambda |-
        id(heating_time) = 0;
        id(heating_start) = id(homeassistant_time).utcnow().timestamp;
    on_turn_off:
    - sensor.template.publish:
        id: energy
        state: !lambda |-
          id(heating_totaltime) += id(heating_time);
          return id(heating_totaltime) / 1800.0;
  
  - platform: template
    name: "varmtvannstank_varmeautomatikk"
    id: automode
    icon: "mdi:water-boiler"
    lambda: |-
      return id(state_automode);
    turn_on_action:
      - globals.set:
          id: state_automode
          value: 'true'
      - globals.set:
          id: seconds
          value: '0'
    turn_off_action:
      - globals.set:
          id: state_automode
          value: 'false'

dallas:
  - pin: GPIO14
  
status_led:
  pin:
    number: GPIO13
    inverted: yes

sensor:
  - platform: dallas
    address: 0xC5000008FABF3328
    id: varmtvannstank_topp_temperatur
    name: "varmtvannstank_topp_temperatur"
    filters:
    - sliding_window_moving_average:
        window_size: 5
        send_every: 5
    on_value:
      then:
        - lambda: !lambda |-
            if(x < 45 && id(state_automode) == true)
            {
              id(varmtvannstank_varme).turn_on();
              id(low_temp) = true;
            }
            
            if(x > 46)
              id(low_temp) = false;
  
  - platform: dallas
    address: 0xFA0319A2796AD628
    id: varmtvannstank_bunn_temperatur
    name: "varmtvannstank_bunn_temperatur"
    filters:
    - sliding_window_moving_average:
        window_size: 5
        send_every: 5
    on_value:
      then:
        - lambda: !lambda |-
            if(x >= id(last_temp) + 0.35)
              id(heating_time) = id(homeassistant_time).utcnow().timestamp - id(heating_start) + 150;
            
            id(last_temp) = x;

  - platform: template
    id: energy
    name: "Energibruk varmtvann"
    unit_of_measurement: "kWh"
    icon: "mdi:power-plug"

binary_sensor:
  - platform: homeassistant
    id: pris1
    entity_id: binary_sensor.billigste_timer_1_1
    
  - platform: homeassistant
    id: pris2
    entity_id: binary_sensor.billigste_timer_1_2

  - platform: homeassistant
    id: pris3
    entity_id: binary_sensor.billigste_timer_1_3

  - platform: homeassistant
    id: pris4
    entity_id: binary_sensor.billigste_timer_1_4

  - platform: homeassistant
    id: pris5
    entity_id: binary_sensor.billigste_timer_1_5

  - platform: homeassistant
    id: pris6
    entity_id: binary_sensor.billigste_timer_1_6

interval:
  - interval: 4h
    then:
    - if:
        condition:
          - lambda: !lambda |-
              auto time_now = id(homeassistant_time).utcnow();
              
              if(time_now.timestamp - id(last_value_from_ha) > 600)
                return true;
              
              return false;
        then:
          - switch.turn_on: automode

  - interval: 1min
    then:
    - if:
        condition:
          - lambda: !lambda |-
              int t = (70.0 - (id(varmtvannstank_topp_temperatur).state*0.5 + id(varmtvannstank_bunn_temperatur).state*0.5)) * 404.30769;
              
              if(t > id(seconds))
                id(seconds) = t;

              if(id(pris6).state && id(seconds) > 5*3600)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 6");
                return true;
              }
              else if(id(pris5).state && id(seconds) > 4*3600)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 5");
                return true;
              }
              else if(id(pris4).state && id(seconds) > 3*3600)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 4");
                return true;
              }
              else if(id(pris3).state && id(seconds) > 2*3600)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 3");
                return true;
              }
              else if(id(pris2).state && id(seconds) > 3600)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 2");
                return true;
              }
              else if(id(pris1).state)
              {
                ESP_LOGD("main", "Setter i gang oppvarming for pris 1");
                return true;
              }
              else
              {
                ESP_LOGD("main", "I ventefase. Oppvarmingstid er %d sekunder. Låst på tid: %d",
                  id(seconds), id(heating_has_started));
                return false;
              }
        then:
          - if:
              condition:
                - lambda: !lambda |-
                    id(heating_has_started) = true;
                    
                    if(id(heating) == false && id(state_automode) == true)
                      return true;
                    else
                      return false;
              then:
                - lambda: !lambda 'id(heating) = true;'
                - switch.turn_on: varmtvannstank_varme
        else:
          - if:
              condition:
                - lambda: !lambda |-
                    id(heating_has_started) = false;
                    
                    if(id(heating) == true && id(state_automode) == true && id(low_temp) == false)
                      return true;
                    else
                      return false;
              then:
                - lambda: !lambda 'id(heating) = false;'
                - switch.turn_off: varmtvannstank_varme

time:
  - platform: homeassistant
    id: homeassistant_time
    timezone: "Europe/Oslo"
    on_time:
      - seconds: 0
        minutes: 0
        hours: 0
        then:
          - lambda: !lambda |-
              id(seconds) = 0;
              id(heating_totaltime) = 0;

text_sensor:
  - platform: homeassistant
    id: watchdog
    entity_id: sensor.time
    on_value:
      then:
        - lambda: !lambda |-
            auto time_now = id(homeassistant_time).utcnow();
            id(last_value_from_ha) = time_now.timestamp;

 

Lenke til kommentar
Del på andre sider

stigvi skrev (32 minutter siden):

Det er ikke så mye kode, men mer en konfigurasjon av esphome. Dette er en tilleggsdel av Home Assistant for å integrere esp noder. ESPHome — ESPHome

Hei,
Takk for raskt svar. Jeg trodde koden var en Arduino IDE -type for den ESP01 -plattformen som henter nordpoll www.nordpoolgroup.com dager pris ..

Lenke til kommentar
Del på andre sider

  • 4 uker senere...

Jeg sliter med å få v0.0.3 -koden til å spille. Har prøvd litt forskjellige endringer i sensor.py uten å komme i mål feilfritt.

Kan det være fordi jeg fremdeles er på HA v0.117.2 (core)/ python 3.7.3?

 

Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 485, in async_added_to_hass
Nov 18 15:07:48 hapi2 hass[1467]:     await self.check_stuff()
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 446, in check_stuff
Nov 18 15:07:48 hapi2 hass[1467]:     self._update(today)
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 297, in _update
Nov 18 15:07:48 hapi2 hass[1467]:     self._average = self._calc_price(data.get("Average"))
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 278, in _calc_price
Nov 18 15:07:48 hapi2 hass[1467]:     float(1 + self._vat)
Nov 18 15:07:48 hapi2 hass[1467]: TypeError: can only concatenate str (not "float") to str
 

Lenke til kommentar
Del på andre sider

LarsH skrev (På 18.11.2021 den 15.26):

Jeg sliter med å få v0.0.3 -koden til å spille. Har prøvd litt forskjellige endringer i sensor.py uten å komme i mål feilfritt.

Kan det være fordi jeg fremdeles er på HA v0.117.2 (core)/ python 3.7.3?

 

Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 485, in async_added_to_hass
Nov 18 15:07:48 hapi2 hass[1467]:     await self.check_stuff()
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 446, in check_stuff
Nov 18 15:07:48 hapi2 hass[1467]:     self._update(today)
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 297, in _update
Nov 18 15:07:48 hapi2 hass[1467]:     self._average = self._calc_price(data.get("Average"))
Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 278, in _calc_price
Nov 18 15:07:48 hapi2 hass[1467]:     float(1 + self._vat)
Nov 18 15:07:48 hapi2 hass[1467]: TypeError: can only concatenate str (not "float") to str
 

Jeg er usikker på hva som er grunnen her. Siden du selv har gjort endringer vil jeg anbefale at du tar det fresh install av nordpool componenten. Sett opp sensoren vil via gui uten noe template og enable debug logging. Hvis du fortsatt får feil åpner du en issue på github med loggen :)

Lenke til kommentar
Del på andre sider

Dette var feilmeldingen med den opprinnelige v0.0.3 -koden, som jeg hadde lastet på nytt i custom_components.

Siste forsøk var å kommentere ut alt nordpool-oppsett i  sensors.yaml, og dobbeltsjekke at det ikke var igjen noen nordpool -entiteter før en HA-restart.

Deretter: laste inn og konfigurere via "new integration". Samme feil.

Ser ut som denne svenske kameraten har vært borti noe lignende:

 

https://issueexplorer.com/issue/custom-components/nordpool/76

 

Men jeg har ikke dobbelt med "sensors:" -headers.

Skal teste enda litt til før jeg evt åpner en issue 🙂

Lenke til kommentar
Del på andre sider

Eirek skrev (På 1.10.2021 den 10.34):
  • En template sensor som inneholder en array med data om "inneværende time og fremover, med tilhørende priser". Man kan jo også tenke seg attributter eller nye sensorer som sier min, max og avg pris i samme periode - altså herfra og fremover.
  • Samme som den over, bare at man her begrenser den til å være herfra og x-antall timer fremover i tid
  • En template sensor hvor man f.eks sier "Gi meg klokkeslettet for starten på den billigste 3-timersperioden mellom f.eks kl 22 og 07:00". Tallet 3 er jo bare et eksempel med tanke på hvor mange timer man trenger bilen plugget i for å lade bilen opp til f.eks 80% ut fra gjeldende SOC.

 

Jeg tok det som en anledning til å utforske mulighetene i template. Dette er hva jeg kom frem til. Fikk ikke tid til å teste å lage sensor av dem, men all logikk du trenger bør være her. Lim den inn i template under Developer tool.

 

{% set today_price = states.sensor.nordpool_kwh_krsand_nok_3_09_025.attributes.today %}
{% set tomorrow_price = states.sensor.nordpool_kwh_krsand_nok_3_09_025.attributes.tomorrow %}

Dagens priser:
{{ today_price }}

Morgendagens priser:
{{ tomorrow_price }}

{% set current_hour =  now().hour -%}
Gjeldene time: {{ current_hour }}

Pris nå: {{ today_price[current_hour]}}

Videre priser i dag: {{ today_price[current_hour:]}}

{% set future_price = today_price[current_hour:] + tomorrow_price -%} 
Fremtidige priser: {{ future_price}}

Snitt av fremtidige priser: {{ future_price | average | round(3) }}
Min av fremtidige priser: {{ future_price | min | round(3) }}
Max av fremtidige priser: {{ future_price | max | round(3) }}

{% set inteval_start_tomorrow = 0 -%}
{% set interval_start_hour =  22 -%}

{% set interval_end_tomorrow = 1 -%}
{% set interval_end_hour = 7 -%}

{% set low_interval_length = 3 -%}

{% set all_price = today_price + tomorrow_price -%}
{% set interval_price = all_price[interval_start_hour + 24 * inteval_start_tomorrow : interval_end_hour + 24 * interval_end_tomorrow] -%}
{% set last_considered_interval_index = (interval_price | length) - low_interval_length + 1 -%}

Intervall priser: {{ interval_price }}
Snitt av intervall priser: {{ interval_price | average | round(3) }}
Min av intervall priser: {{ interval_price | min | round(3) }}
Max av intervall priser: {{ interval_price | max | round(3) }}

{% set ns = namespace(current_best_average=1000, current_best_index=-1) -%}  
{% for price in interval_price[:last_considered_interval_index] -%}
  {% set current_average =  interval_price[loop.index0:loop.index0+low_interval_length] | average -%}
  {% if current_average < ns.current_best_average -%}
    {%-set ns.current_best_average = current_average -%}
    {% set ns.current_best_index = loop.index0 -%}
  {% endif -%}
{% endfor -%}

{%- set start_index = ns.current_best_index %}
{%- set best_interval_price = interval_price[start_index:start_index+low_interval_length] %}
Beste invervall priser: {{ best_interval_price }}

{% set best_interval_start_hour =  24 * inteval_start_tomorrow + interval_start_hour + start_index -%}

Beste {{ low_interval_length }} timers intervall starter kl {{ best_interval_start_hour % 24 }} i {% if best_interval_start_hour < 24 %}dag {% else %}morgen {% endif %}og snitt-prisen er {{ best_interval_price| average | round(3) }}

 

Endret av Jolo
Bugfix
  • Thanks 2
Lenke til kommentar
Del på andre sider

Hvordan kan jeg via homeassistant definere en enhet som er true eller false basert på om den nåværende strømprisen er over eller under "average" pris, slik at jeg kan bruke dette i automasjoner? Koding er ikke min sterkeste side. Så sitter pris på om noen kan veilede meg litt her.

 

Her er hva jeg har til nå:

 

{% if states.sensor.nordpool_kwh_bergen_nok_3_10_025.attributes.current_price %} > {{ states.sensor.nordpool_kwh_bergen_nok_3_10_025.attributes.average }} 
  True
{% else %}
  False
{% endif %}
 

Lenke til kommentar
Del på andre sider

Mr. Larsen skrev (7 minutter siden):

Hvordan kan jeg via homeassistant definere en enhet som er true eller false basert på om den nåværende strømprisen er over eller under "average" pris, slik at jeg kan bruke dette i automasjoner? Koding er ikke min sterkeste side. Så sitter pris på om noen kan veilede meg litt her.

 

Her er hva jeg har til nå:

 

{% if states.sensor.nordpool_kwh_bergen_nok_3_10_025.attributes.current_price %} > {{ states.sensor.nordpool_kwh_bergen_nok_3_10_025.attributes.average }} 
  True
{% else %}
  False
{% endif %}
 



Det holder med dette:

{{ states.sensor.nordpool.attributes.current_price > states.sensor.nordpool.attributes.average }}


Men anbefaler å bruke dette:

{{ state_attr("sensor.nordpool", "current_price") > state_attr("sensor.nordpool", "average") }}

Lenke til kommentar
Del på andre sider

Hei, sprøsmål.. og jeg må vel preface med at jeg er forholdsvis ny i HA og HACS, har følgt det jeg forsto av selve installasjon av hacs og nordpool integrasjon og får ikke opp noen feilmeldinger iallefall (jeg teller det som et win).

 

Men jeg finner ikke sensor.nordpool noen plass i HA, kan dere o store orakler forklare meg hva jeg mangler for å få den opp?

 

Jeg har lagt in HACS, lagt til nordpool integrasjonen og lagt inn teksten:

nordpool:

sensor:
  - platform: nordpool

    # Should the prices include vat? Default True
    VAT: True

    # What currency the api fetches the prices in
    # this is only need if you want a sensor in a non local currecy
    currency: "EUR"

    # Helper so you can set your "low" price
    # low_price = hour_price < average * low_price_cutoff
    low_price_cutoff: 0.95

    # What power regions your are interested in.
    # Possible values: "DK1", "DK2", "FI", "LT", "LV", "Oslo", "Kr.sand", "Bergen", "Molde", "Tr.heim", "Tromsø", "SE1", "SE2", "SE3","SE4", "SYS", "EE"
    region: "Kr.sand"

    # How many decimals to use in the display of the price
    precision: 3

    # What the price should be displayed in default
    # Possible values: MWh, kWh and Wh
    # default: kWh
    price_type: kWh

    # This option allows the usage of a template to add a tariff.
    # now() always refers start of the hour of that price.
    # this way we can calculate the correct costs add that to graphs etc.
    # The price result of the additional_costs template expects this additional cost to be in kWh and not cents as a float
    # Note: if VAT is set to true, VAT will also be added to any additional_costs.
    # default {{0.0|float}}
    additional_costs: "{{0.0|float}}"

hva mangler jeg?

 

Mvh

Stian

Lenke til kommentar
Del på andre sider

@Mr. Larsen Angående VVB og styring. Jeg bruker Node red power saver: https://github.com/ottopaulsen/node-red-contrib-power-saver
Forfatteren av noden, Otto Paulsen, er også aktiv i tråden her.

 

Jeg tror ikke nødvendigvis at det å låse seg til over/under snitt alltid er det mest effektive. Med power saver definerer du hvor mange timer maks vil skru av bereder og hvor mange timer minimum du vil ha berederen på igjen etter spareperiode.

Med litt tweaking kan du være ganske sikker på at du slipper å dusje i kaldvann. I min egen flow har jeg planer om å legge til ekstrastyring som slår inn ved veldig kald bereder, høyt husforbruk osv, men inntil videre kjører jeg noden rett inn i HA.
Kjapt eksempel her:
 

[{"id":"4dc492be7fb6c7f9","type":"tab","label":"Power Saver test","disabled":false,"info":""},{"id":"8e7711194203d34f","type":"power-saver","z":"4dc492be7fb6c7f9","name":"Power Saver","maxHoursToSaveInSequence":"4","minHoursOnAfterMaxSequenceSaved":2,"minSaving":0.01,"sendCurrentValueWhenRescheduling":true,"outputIfNoSchedule":"true","scheduleOnlyFromCurrentTime":"false","x":723,"y":638.5,"wires":[["99fd6bdd6486ebbb"],["28efc1c7cb6824bd"],["1800eb630787c9ce"]]},{"id":"1149594112b31830","type":"server-state-changed","z":"4dc492be7fb6c7f9","name":"","server":"438405a.003b7fc","version":3,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"sensor.nordpool_kwh_trheim_nok_3_10_025","entityidfiltertype":"exact","outputinitially":true,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"for":0,"forType":"num","forUnits":"minutes","ignorePrevStateNull":false,"ignorePrevStateUnknown":false,"ignorePrevStateUnavailable":false,"ignoreCurrentStateUnknown":false,"ignoreCurrentStateUnavailable":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"eventData"},{"property":"topic","propertyType":"msg","value":"","valueType":"triggerId"}],"x":273.5,"y":702,"wires":[["8e7711194203d34f"]]},{"id":"1800eb630787c9ce","type":"debug","z":"4dc492be7fb6c7f9","name":"???","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1006,"y":797,"wires":[]},{"id":"99fd6bdd6486ebbb","type":"api-call-service","z":"4dc492be7fb6c7f9","name":"påVV ","server":"438405a.003b7fc","version":3,"debugenabled":false,"service_domain":"climate","service":"turn_on","entityId":"climate.varmtvann","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1027.42236328125,"y":558.7135162353516,"wires":[["29f7c34880fb7ec2"]]},{"id":"28efc1c7cb6824bd","type":"api-call-service","z":"4dc492be7fb6c7f9","name":"VVav ","server":"438405a.003b7fc","version":3,"debugenabled":false,"service_domain":"climate","service":"turn_off","entityId":"climate.varmtvann","data":"","dataType":"jsonata","mergecontext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1029.8499145507812,"y":639.0216217041016,"wires":[["9546c5f68fbb5836"]]},{"id":"29f7c34880fb7ec2","type":"debug","z":"4dc492be7fb6c7f9","name":"On","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1277.5,"y":564,"wires":[]},{"id":"9546c5f68fbb5836","type":"debug","z":"4dc492be7fb6c7f9","name":"Off","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":1260,"y":625,"wires":[]},{"id":"438405a.003b7fc","type":"server","name":"Home Assistant","version":2,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30}]

 

Endret av ThoStaKa
Adding attribution
Lenke til kommentar
Del på andre sider

StianBjelland skrev (19 timer siden):

Hei, sprøsmål.. og jeg må vel preface med at jeg er forholdsvis ny i HA og HACS, har følgt det jeg forsto av selve installasjon av hacs og nordpool integrasjon og får ikke opp noen feilmeldinger iallefall (jeg teller det som et win).

 

Men jeg finner ikke sensor.nordpool noen plass i HA, kan dere o store orakler forklare meg hva jeg mangler for å få den opp?

 

Jeg har lagt in HACS, lagt til nordpool integrasjonen og lagt inn teksten:

nordpool:

sensor:
  - platform: nordpool

    # Should the prices include vat? Default True
    VAT: True

    # What currency the api fetches the prices in
    # this is only need if you want a sensor in a non local currecy
    currency: "EUR"

    # Helper so you can set your "low" price
    # low_price = hour_price < average * low_price_cutoff
    low_price_cutoff: 0.95

    # What power regions your are interested in.
    # Possible values: "DK1", "DK2", "FI", "LT", "LV", "Oslo", "Kr.sand", "Bergen", "Molde", "Tr.heim", "Tromsø", "SE1", "SE2", "SE3","SE4", "SYS", "EE"
    region: "Kr.sand"

    # How many decimals to use in the display of the price
    precision: 3

    # What the price should be displayed in default
    # Possible values: MWh, kWh and Wh
    # default: kWh
    price_type: kWh

    # This option allows the usage of a template to add a tariff.
    # now() always refers start of the hour of that price.
    # this way we can calculate the correct costs add that to graphs etc.
    # The price result of the additional_costs template expects this additional cost to be in kWh and not cents as a float
    # Note: if VAT is set to true, VAT will also be added to any additional_costs.
    # default {{0.0|float}}
    additional_costs: "{{0.0|float}}"

hva mangler jeg?

 

Mvh

Stian



Kan ikke se at du mangler noe. Har du tatt omstart av HA?

Her, https://my.home-assistant.io/redirect/developer_states/ , kan du søke etter nordpool

Lenke til kommentar
Del på andre sider

2 hours ago, stigvi said:



Kan ikke se at du mangler noe. Har du tatt omstart av HA?

Her, https://my.home-assistant.io/redirect/developer_states/ , kan du søke etter nordpool

Hmm ser jeg nok har kopiert inn feil tekst :P 

jeg har region=NO2 som jeg fant i nordpool sin oversikt, ser jeg får feil på det når jeg kjører check config.

 

Er ikke den regionen tilgjengelig?  Jeg bor i Stavanger ser du. Finner ikke Stavanger som et valg

Endret av StianBjelland
Lenke til kommentar
Del på andre sider

StianBjelland skrev (5 minutter siden):

Hmm ser jeg nok har kopiert inn feil tekst :P 

jeg har region=NO2 som jeg fant i nordpool sin oversikt, ser jeg får feil på det når jeg kjører check config.

 

Er ikke den regionen tilgjengelig?  Jeg bor i Stavanger ser du. Finner ikke Stavanger som et valg

Du må bruke Kr.sand

Lenke til kommentar
Del på andre sider

Leker meg litt med additional costs for å ta høyde for varierende energiledd i nettleien som kommer neste år. Har basert dette på tariffeksempelet, men korrigert for min nettleverandørs priser, klokkeslett og vinterpriser. Det er noe i implementeringen av tariffleddet jeg tydeligvis ikke helt forstår. Kan noen hjelpe meg med hva som feiler her:

   additional_costs: '{% set s = {
    "hourly_fixed_cost": 0.2192,
    "winter_night": 0.2248,
    "winter_day": 0.3048,
    "summer_day": 0.3704,
    "summer_night": 0.2904,
    "cert": 0.01
}
%}
{% if now().month >= 4  %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.summer_day+s.hourly_fixed_cost+s.cert|float}}
    {% else %}
        {{s.night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% else %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.winter_day+s.hourly_fixed_cost+s.cert|float}}
    {%else%}
        {{s.winter_night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% endif %}'

 

Lenke til kommentar
Del på andre sider

|float konvertere bare det siste leddet til flyttall så prøv om det er parantes rundt hele uttrykket som mangler

 

{{(s.summer_day+s.hourly_fixed_cost+s.cert)|float}}
chrlod skrev (27 minutter siden):

Det er noe i implementeringen av tariffleddet jeg tydeligvis ikke helt forstår

Kan du være litt mer konkret?

Lenke til kommentar
Del på andre sider

On 18/11/2021 at 15:26, LarsH said:

Jeg sliter med å få v0.0.3 -koden til å spille. Har prøvd litt forskjellige endringer i sensor.py uten å komme i mål feilfritt.

Kan det være fordi jeg fremdeles er på HA v0.117.2 (core)/ python 3.7.3?

 

Nov 18 15:07:48 hapi2 hass[1467]:   File "/home/homeassistant/.homeassistant/custom_components/nordpool/sensor.py", line 485, in async_added_to_hass
.....
 

Wohoo! NP-sensoren virker nå. Mest sannsynlig noe krøll i python 3.7.3 hos meg.

Hadde allikevel planer om å opgradere, så prøvde en "stunt-test":

* Klonet SSD'en fra en Pi3B+ med Buster/ Python 3.7.3/ HA Core 0.117.2

til SSD på en Pi4B 4GB

* Oppgraderte Buster til Bullseye på Pi4B

* HA Core 0.117.2 starter ikke der. Istedet for å bruke mere tid på feilsøking, "reinstallerte" jeg HA Core som beskrevet i:

https://www.home-assistant.io/installation/raspberrypi

Unntatt noen punkter ettersom HA -omgivelsene allerede er tilstede.

(Tok selvfølgelig først backup av /home/homeassistant/.homeassistant minus databasen)

 

Nå har jeg Pi4B/ Bullseye/Python 3.9.2/ HA Core 2021.11.5 og fungerende NP-sensor.

Alle andre interface funker også (wmbusmeters via SDR, RFLink, Razberry2)

Lenke til kommentar
Del på andre sider

59 minutes ago, stigvi said:

Kan du være litt mer konkret?

 

Default ser config slik ut:

additional_costs: "{{0.0|float}}"

 

Jeg redigerte inn tariffeksempelet som vist over

 additional_costs: '{% set s = {
    "hourly_fixed_cost": 0.2192,
    "winter_night": 0.2248,
    "winter_day": 0.3048,
    "summer_day": 0.3704,
    "summer_night": 0.2904,
    "cert": 0.01
}
%}
{% if now().month >= 4  %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.summer_day+s.hourly_fixed_cost+s.cert|float}}
    {% else %}
        {{s.night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% else %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.winter_day+s.hourly_fixed_cost+s.cert|float}}
    {%else%}
        {{s.winter_night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% endif %}'

 

Men dette fungerer ikke og nordpool sensoren er "Unavailable" med denne varianten. Var det riktig å ta bort hele "{{0.0|float}}" og legge inn slik jeg har gjort? Hva er riktig måte å legge inn disse i additional costs? Antar at jeg mangler noe i starten?

 additional_costs: ???? '{% set s = {
Endret av chrlod
Lenke til kommentar
Del på andre sider

chrlod skrev (25 minutter siden):

 

Default ser config slik ut:

additional_costs: "{{0.0|float}}"

 

Jeg redigerte inn tariffeksempelet som vist over

 additional_costs: '{% set s = {
    "hourly_fixed_cost": 0.2192,
    "winter_night": 0.2248,
    "winter_day": 0.3048,
    "summer_day": 0.3704,
    "summer_night": 0.2904,
    "cert": 0.01
}
%}
{% if now().month >= 4  %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.summer_day+s.hourly_fixed_cost+s.cert|float}}
    {% else %}
        {{s.night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% else %}
    {% if now().hour >=6 and now().hour <22 %}
        {{s.winter_day+s.hourly_fixed_cost+s.cert|float}}
    {%else%}
        {{s.winter_night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% endif %}'

 

Men dette fungerer ikke og nordpool sensoren er "Unavailable" med denne varianten. Var det riktig å ta bort hele "{{0.0|float}}" og legge inn slik jeg har gjort? Hva er riktig måte å legge inn disse i additional costs? Antar at jeg mangler noe i starten?

 additional_costs: ???? '{% set s = {

Endre det til

additional_costs: >-

   {% ...........

Du trenger ikke enkelsnutt der heller

Lenke til kommentar
Del på andre sider

28 minutes ago, stigvi said:

Endre det til

additional_costs: >-

   {% ...........

Du trenger ikke enkelsnutt der heller

 

Har nå lagt inn dette:

    additional_costs: >-
      {% set s = {
          "hourly_fixed_cost": 0.2192,
          "winter_night": 0.2248,
          "winter_day": 0.3048,
          "summer_day": 0.3704,
          "summer_night": 0.2904,
          "cert": 0.01
      }
      %}
      {% if now().month >= 4  %}
          {% if now().hour >=6 and now().hour <22 %}
              {{(s.summer_day+s.hourly_fixed_cost+s.cert)|float}}
          {% else %}
              {{(s.night+s.hourly_fixed_cost+s.cert)|float}}
          {% endif %}
      {% else %}
          {% if now().hour >=6 and now().hour <22 %}
              {{(s.winter_day+s.hourly_fixed_cost+s.cert)|float}}
          {%else%}
              {{(s.winter_night+s.hourly_fixed_cost+s.cert)|float}}
          {% endif %}
      {% endif %} 

 

Nordpool sensor blir fortsatt unavailable. Har for ordens skyld sjekket at det ikke er noe annet i config.yaml som lager krøll.

Er jeg forresten OK i forhold til innrykk her?

9 minutes ago, VikingOy said:

Beklager dumt spørsmål kanskje, men @StianBjelland (eller andre); Hvor i Norpool integrasjonen er det man legger inn slike parametre/variable/settinger ?

Jeg fant ingenting i configuration.yaml  (!)

Du må kopiere dette i configuration.yaml selv:

https://github.com/custom-components/nordpool

Endret av chrlod
Lenke til kommentar
Del på andre sider

chrlod skrev (1 time siden):

Du må kopiere dette i configuration.yaml selv:

https://github.com/custom-components/nordpool

Hei, jeg har installert Nordpool Integrasjonen og opprettet custom folders etc, og alt fungerer greit.

Men jeg har ingen "nordpool" seksjon eller settinger verken i min configuration.yaml  eller i sensors.yaml i det hele tatt.

Kan jeg ganske enkelt opprette dette (manuellt) i uten at dette forstyrrer selve integrasjonen som jeg allerede har?

Lenke til kommentar
Del på andre sider

Bli med i samtalen

Du kan publisere innhold nå og registrere deg senere. Hvis du har en konto, logg inn nå for å poste med kontoen din.

Gjest
Skriv svar til emnet...

×   Du har limt inn tekst med formatering.   Lim inn uten formatering i stedet

  Du kan kun bruke opp til 75 smilefjes.

×   Lenken din har blitt bygget inn på siden automatisk.   Vis som en ordinær lenke i stedet

×   Tidligere tekst har blitt gjenopprettet.   Tøm tekstverktøy

×   Du kan ikke lime inn bilder direkte. Last opp eller legg inn bilder fra URL.

×
×
  • Opprett ny...

Viktig informasjon

Vi har plassert informasjonskapsler/cookies på din enhet for å gjøre denne siden bedre. Du kan justere dine innstillinger for informasjonskapsler, ellers vil vi anta at dette er ok for deg.