Graf over strømforbruk i Home Assistant

I disse dager er det mye fokus på strømpriser, så hvorfor ikke lage en fin graf som viser all info i et bilde i Home Assistant? Her er min graf akkurat nå:

Screenshot fra Home Assistant for vårt hus tatt 8/1 2022

Her er fremgangsmåten for hvordan du får en tilsvarende inn i din egen Home Assistant:

  1. Installer HACS. Husk å restarte HA etterpå.
  2. Installer Nordpool-integrasjonen via HACS. NB: I øyeblikket virker ikke versjon 0.0.3 som er siste release, men om du velger “master” i stedet for, så virker det. Husk å restarte HA etterpå.
  3. Installer Apexcharts-card via HACS-frontend. Husk å restarte HA etterpå.
  4. Slå på nordpool ved å skrive “nordpool:” på en egen linje i configuration.yaml.
  5. Slå på sensorene for nordpool du trenger via følgende kode i configuration.yaml under sensor (merk at tallene under “additional_cost er mine egne tall for nettleie – her har jeg tatt energi-leddet fra nettleien og plusset på årsavgiften delt på mitt estimerte forbruk) (husk å validere configuration.yaml og restarte HA etterpå):
    - 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: "NOK"

      # 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: "Bergen"

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

      # 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
      # default {{0.0|float}}
      # Additional costs per kWh
      additional_costs: '{% set s = {
        "hourly_fixed_cost": 0.0,
        "winter_night": 0.44504,
        "winter_day": 0.44504,
        "summer_day": 0.50629,
        "summer_night": 0.506290,
        "cert": 0.01
}
%}
{% if now().month >= 5 and now().month <11 %}
    {% if now().hour >=6 and now().hour <23 %}
        {{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 <23 %}
        {{s.winter_day+s.hourly_fixed_cost+s.cert|float}}
    {%else%}
        {{s.winter_night+s.hourly_fixed_cost+s.cert|float}}
    {% endif %}
{% endif %}'
  1. Så kan du legge til kortet med selve grafen i lovelace-dashboardet ditt. Her må du endre sensor-navnene til dine egne data.
type: custom:apexcharts-card
header:
  show: true
  title: Forbruk pr. time vs strømpris inkl. nettleie
  show_states: true
  colorize_states: true
now:
  show: true
  label: Nå
graph_span: 72h
span:
  start: day
  offset: '-24h'
apex_config:
  xaxis:
    labels:
      format: dd
      show: true
  chart:
    height: 300px
    zoom:
      enabled: false
    toolbar:
      show: false
      tools:
        zoom: false
        zoomin: false
        zoomout: false
        pan: false
        reset: true
  tooltip:
    fixed:
      enabled: true
      position: topLeft
yaxis:
  - id: first
    apex_config:
      min: 0
      max: auto
      opposite: true
      forceNiceScale: true
      decimalsInFloat: 2
      labels:
        show: true
  - id: second
    apex_config:
      min: 0
      max: auto
      opposite: false
      forceNiceScale: true
      decimalsInFloat: 0
      labels:
        show: true
all_series_config:
  stroke_width: 4
series:
  - entity: sensor.nordpool_kwh_bergen_nok_34_095_025
    yaxis_id: first
    name: Pris i dag
    type: area
    curve: stepline
    extend_to_end: false
    float_precision: 3
    stroke_width: 2
    opacity: 0.09
    color: cyan
    show:
      in_header: false
      legend_value: false
    data_generator: |
      return entity.attributes.raw_today.map((p) => {
        return [new Date(p.start), p.value];
      });
  - entity: sensor.nordpool_kwh_bergen_nok_34_095_025
    yaxis_id: first
    name: Pris i morgen
    type: area
    curve: stepline
    extend_to_end: false
    float_precision: 3
    stroke_width: 2
    opacity: 0.09
    color: magenta
    show:
      in_header: false
      legend_value: false
    data_generator: |
      return entity.attributes.raw_tomorrow.map((p) => {
        return [new Date(p.start), p.value];
      });
  - entity: sensor.accumulated_consumption_current_hour_rindane_5
    yaxis_id: second
    name: Forbruk / time
    type: column
    float_precision: 2
    stroke_width: 2
    opacity: 0.2
    color: orange
    show:
      in_header: true
      legend_value: false
    group_by:
      func: max
  - entity: sensor.nordpool_kwh_bergen_nok_34_095_025
    yaxis_id: first
    name: Strømprisen nå
    type: area
    curve: stepline
    extend_to_end: false
    float_precision: 3
    stroke_width: 2
    opacity: 0.09
    color: gray
    show:
      in_header: true
      legend_value: false

Voila, så skulle det dukke opp en fin graf hos deg også. Husk at du kanskje må force-refreshe browseren før ting virker når du legger til nye ting via HACS osv.

Tags:

One Response to “Graf over strømforbruk i Home Assistant”

  1. Mikael Holst Mattsson Says:

    Tack för detta, fungerar hur bra som helst. Förutom att Apex-kortet har blivit uppgraderat, så man måste ändra:

    “extend_to_end: false” –> “extend_to: now”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s


%d bloggers like this: