Home Assistant Nordpool + ESPHome näyttö (D1 Mini)
Tässä projektissa tehdään pieni ESPHome-näyttö Wemos D1 Minille, joka näyttää vuorotellen:
-
sisälämpötilan ja ulkolämpötilan
-
tämän hetken sähkön hinnan Home Assistantista
-
onko tunti halpa vai ei
Näyttö toimii hyvin esimerkiksi työpajassa, eteisessä tai teknisessä tilassa.
Projektissa käytetään:
-
Wemos D1 Mini / ESP8266
-
SSD1306 128x64 OLED näyttö (I2C)
-
Dallas lämpötila-anturit
-
ESPHome
-
Home Assistant
-
Nordpool
Näyttö vaihtaa sivua automaattisesti 5 sekunnin välein.
Tarvittavat osat
-
Wemos D1 Mini (ESP8266)
-
SSD1306 0.96" OLED näyttö
-
1–2 kpl Dallas lämpötila-antureita
-
4.7k vastus Dallas-antureille
-
muutama hyppylanka
Kytkentä
OLED näyttö (SSD1306)
VCC → 3.3V
GND → GND
SCL → D1
SDA → D2
Dallas lämpötila-anturi
DATA → D4
VCC → 3.3V
GND → GND
DATA ja 3.3V väliin 4.7k pull-up vastus.
Home Assistant asetukset
Jotta sähkön hinta näkyy näytöllä, Home Assistantissa pitää olla:
Nordpool käytössä sekä sensori sähkön hinnalle.
Esimerkissä käytetään näitä entiteettejä:
sensor.nordpool_kwh_fi_eur_3_10_0255
binary_sensor.protoboksi_low_cost
binary_sensor.protoboksi_high_cost
Jos nimet ovat erilaiset, vaihda ne ESPHome-koodiin.
ESPHome koodi
esphome:
name: lampoanturi
friendly_name: lampoanturi
esp8266:
board: d1_mini
logger:
api:
encryption:
key: "encryption key"
ota:
- platform: esphome
password: "salasanasi"
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
ap:
ssid: "Lampoanturi Fallback Hotspot"
password: "salasanasi"
captive_portal:
i2c:
sda: D2
scl: D1
scan: true
one_wire:
- platform: gpio
pin: D4
sensor:
- platform: dallas_temp
id: lampotila
address: 0xcc943a5709646128
name: "Lämpötila"
- platform: dallas_temp
id: ulko_lampotila
address: 0xb1300a5309646128
name: "Ulko Lämpötila"
- platform: homeassistant
id: sahkon_hinta
entity_id: sensor.nordpool_kwh_fi_eur_3_10_0255
internal: true
binary_sensor:
- platform: homeassistant
id: high_cost
entity_id: binary_sensor.protoboksi_high_cost
internal: true
- platform: homeassistant
id: low_cost
entity_id: binary_sensor.protoboksi_low_cost
internal: true
font:
- file: "gfonts://Roboto"
id: font_iso
size: 14
glyphs: " !\"%()+=,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzäöåÄÖÅ"
- file: "gfonts://Roboto"
id: font_big
size: 28
glyphs: " !\"%()+=,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzäöåÄÖÅ"
- file: "gfonts://Roboto"
id: font_mid
size: 18
glyphs: " !\"%()+=,-_.:°0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzäöåÄÖÅ"
display:
- platform: ssd1306_i2c
id: oled_naytto
model: "SSD1306 128x64"
address: 0x3C
pages:
- id: sivu1
lambda: |-
it.printf(0, 0, id(font_iso), "ProtoBoksi");
if (id(lampotila).has_state()) {
it.printf(0, 20, id(font_mid), "Sisä: %.1f C", id(lampotila).state);
} else {
it.printf(0, 20, id(font_mid), "Sisä: --.- C");
}
if (id(ulko_lampotila).has_state()) {
it.printf(0, 42, id(font_mid), "Ulko: %.1f C", id(ulko_lampotila).state);
} else {
it.printf(0, 42, id(font_mid), "Ulko: --.- C");
}
- id: sivu2
lambda: |-
it.printf(0, 0, id(font_iso), "Sähkö");
if (id(sahkon_hinta).has_state()) {
it.printf(0, 20, id(font_mid), "Hinta: %.2f", id(sahkon_hinta).state);
} else {
it.printf(0, 20, id(font_mid), "Hinta: --.--");
}
it.printf(0, 42, id(font_mid), "Low: %s", id(low_cost).state ? "ON" : "OFF");
interval:
- interval: 5s
then:
- display.page.show_next: oled_naytto
- component.update: oled_naytto
Home Assistant automaatio
Kun Nordpool-planner kertoo että sähkö on halpaa, varaaja voidaan käynnistää.
Automaatio – päälle
alias: Varaaja päälle halvan sähkön aikana
trigger:
- platform: state
entity_id: binary_sensor.protoboksi_low_cost
to: "on"
action:
- service: switch.turn_on
target:
entity_id: switch.lamminvesivaraaja
mode: single
Automaatio – pois
alias: Varaaja pois kalliin sähkön aikana
trigger:
- platform: state
entity_id: binary_sensor.protoboksi_high_cost
to: "on"
action:
- service: switch.turn_off
target:
entity_id: switch.lamminvesivaraaja
mode: single
Oikea toteutus lämminvesivaraajalle
Jos tämän haluaa oikeaan käyttöön, suositeltava ratkaisu on esimerkiksi:
-
Shelly tai muu älyrele
-
ohjaus varaajan kontaktoriin
-
asennus sähköasentajan toimesta
Mitä seuraavaksi?
Samaa Nordpool-tietoa voi käyttää myös esimerkiksi:
-
sähköauton lataukseen
-
akuston lataukseen
-
lämmityksen optimointiin