Installatiegids
Elke instelling van SEM uitgelegd: installatie, configuratie, SOC-zones, lastbeheer, laadmodi, batterijplanner, warmtepomp en veelgestelde vragen.
Solar Energy Management (SEM) is een Home Assistant-integratie die de gegevens van je zonnepanelen, net, batterij en laadpaal uitleest en slimme beslissingen neemt over hoe energie in je huis wordt verdeeld.
Deze gids is de uitgebreide aanvulling op de Snelstart. Wil je binnen vijf minuten aan de slag en de details later uitzoeken, begin dan daar. Kom hier terug als je wilt begrijpen wat elke instelling doet en waarom ze bestaat.
Voor het aanpassen van het dashboard, zie de Dashboardgids. Voor opstellingen met meerdere omvormers en meerdere laadpalen, zie Meerdere apparaten. Voor details over ontwikkeling en architectuur, zie ARCHITECTURE.md (Engels).
Inhoudsopgave
- Voorwaarden
- Installatie via HACS
- Configuratiestappen
- Controle
- Opties
- SOC-zonestrategie
- Lastbeheer
- Laadmodi voor de auto
- Laadplanner voor de batterij
- Warmtepomp en warm water
- Taalondersteuning
- Veelgestelde vragen
Als je geen Energie-dashboard hebt (#915)
Vroeger moest het Energie-dashboard van Home Assistant eerst ingericht zijn, anders weigerde SEM te installeren. Dat is niet meer zo. Als die pagina leeg is of zon of net ontbreekt, vraagt de installatie het aan je systeem zelf: SEM kijkt naar de energie-integraties die je al draait, leest hoe elk daarvan zijn eigen entiteiten noemt, en biedt Zonnevermogen, Netvermogen en Batterijvermogen vooringevuld aan, zodat jij ze kunt bevestigen of wijzigen.
Twee dingen om te weten:
- Live vermogen, geen dagtotalen. SEM stuurt op watts. Lijkt een suggestie op een totaal van vandaag, vervang hem dan.
- Eén netsensor met teken volstaat. Je hebt geen aparte entiteiten voor afname en teruglevering nodig, en je hoeft SEM niet te vertellen welke richting positief is — dat leidt het af door de waarde te volgen.
- …en heeft je meter geen sensor met teken, gebruik dan het paar. Growatt, Senec en de officiële Anker-integratie publiceren netafname en teruglevering als twee altijd-positieve sensoren, zonder gecombineerde sensor. Vul dan Netafname-vermogen en Netteruglevering-vermogen in — allebei of geen van beide — en laat Netvermogen leeg. SEM rekent teruglevering min afname, dus er valt geen richting meer te raden.
Het Energie-dashboard later alsnog inrichten kan geen kwaad; SEM blijft gebruiken wat jij gekozen hebt. Herkent SEM helemaal niets, dan is elk veld nog steeds een gewone entiteitkiezer.
Wat SEM heeft gedetecteerd — en hoe je dat corrigeert
Na de installatie toont het dashboard op tabblad Configuratie → Gedetecteerde hardware
elke laadpaal die SEM automatisch heeft gevonden, met het bewijs voor elke rol (de entiteit
en wat die is — bijv. binary_sensor/plug → verbonden), de entiteiten op dat
apparaat die niet zijn toegewezen, en bijna-treffers: integraties waarvan SEM de entiteiten
zag maar niet aan een rol kon koppelen. Een bijna-treffer betekent dat je apparaat bijna
ondersteund wordt — open dan een issue met de getoonde lijst. Verkeerde regels herstel je
met de kiezers in de secties voor laadpalen en sensorbronnen; hetzelfde rapport
zit ook in de diagnosedownload voor bugrapporten. De volledige ondersteuningsmatrix,
met een eerlijke status per merk, staat in
Ondersteunde hardware.
Sinds #915 wordt een integratie waarvoor SEM geen regel heeft getoond met haar naam in plaats van haar domein (“EG4 Web Monitor · 412 installaties”), en een bijna-treffer kan voorgestelde rollen bevatten — entiteiten van jou waarvan de namen overeenkomen met wat die integratie zegt aan te maken, gemarkeerd als onbevestigd. Zie ze als snelkoppeling om de kiezers in te vullen, niet als oordeel: SEM koppelt niets wat het niet is verteld.
Sinds 2.1 omvatten de voorstellen ook services (KEBA’s keba.set_current
heeft geen entiteit en wordt toch voorgesteld), krijgt een bijna-treffer die SEM direct kan
aansturen een knop deze laadpaal toevoegen, zegt een die dat niet kan met de hand koppelen met
de reden erbij, en wordt een auto via een transport als MQTT getoond als voertuig
in plaats van onbekende hardware (#956, #887). Zie de sectie Wat SEM heeft gedetecteerd
in de gebruikershandleiding voor de drie gevallen.
1. Voorwaarden
Home Assistant-versie
SEM vereist Home Assistant 2026.2.0 of nieuwer. Controleer je versie via Instellingen > Systeem > Over.
HACS
SEM wordt verspreid via HACS (Home Assistant Community Store). Heb je HACS nog niet geïnstalleerd, volg dan eerst de officiële instructies op https://hacs.xyz/docs/use/.
Het Energie-dashboard
De eerste keus van SEM voor zijn bronsensoren is het Energie-dashboard van HA, omdat dat al de officiële lijst met energiesensoren in je systeem is — zo werkt SEM met elk merk omvormer zonder instellingen per merk.
Het is de makkelijkste weg, geen vereiste (zie Als je geen Energie-dashboard hebt hierboven). Wil je het gebruiken, ga dan naar Instellingen > Dashboards > Energie en controleer:
- de sectie “Zonnepanelen” heeft minstens één sensor voor zonneproductie
- de secties “Netverbruik” en “Teruglevering aan het net” hebben sensoren
- (Optioneel) “Thuisbatterij-opslag” heeft sensoren voor batterij in/uit

Is het leeg of half ingevuld, dan vraagt de installatie het rechtstreeks aan je systeem en biedt de sensoren aan die SEM herkent — jij bevestigt ze en gaat verder. Het Energie-dashboard achteraf invullen blijft de moeite waard (de eigen energiehistorie van HA gebruikt het), en het overschrijft niet wat jij gekozen hebt.
Waarom het Energie-dashboard? Het Energie-dashboard van HA is al het officiële register van energiesensoren in je installatie. SEM maakt daar gebruik van, zodat je sensoren nooit handmatig hoeft te koppelen — en zodat het automatisch omgaat met de tekenconventies van verschillende omvormermerken. Fronius en SolarEdge melden de netrichting andersom dan Huawei en SMA; SEM herkent dat automatisch.
Ondersteunde hardware
Omvormers (allemaal automatisch herkend): Huawei SUN2000, SMA, Victron, Sungrow, Fronius, Enphase, Powerwall, Kostal, SolarEdge, GoodWe, Sonnen, SolaX, Growatt, en elke omvormer die sensoren op wattniveau aan HA doorgeeft.
Laadpalen: KEBA P30 (via service), Easee (via service), Zaptec (via service). Sinds 2.1 ook NRGkick, ABL eMH1 (via ABL_emh1_modbus van matfroh) en Wallbox achter de MQTT-brug, die vanzelf gevonden worden.
Verder Wallbox, go-eCharger, ChargePoint, Heidelberg, OpenWB 2.x,
OCPP-compatibele laders, Ohme, Peblar, V2C Trydan, Alfen Eve, Blue Current, OpenEVSE,
en elke laadpaal met een stuurbare number-entiteit.
Zonnevoorspellingen (optioneel): Solcast, Forecast.Solar, Open-Meteo Solar Forecast. Vereist voor slim nachtladen en de laadplanner van de batterij.
Let op bij Easee: de sensor voor laadvermogen van Easee staat in HA standaard uit. Ga naar Instellingen > Apparaten > Easee en schakel de vermogenssensor in vóór je SEM installeert. Zonder die sensor kan SEM het vermogen van de laadpaal niet uitlezen.
Let op bij GoodWe: zorg dat je Energie-dashboard met GoodWe-sensoren is ingericht voordat je SEM installeert. SEM herkent de tekenconventies van GoodWe automatisch.
Checklist
- HA 2026.2.0 of nieuwer
- HACS geïnstalleerd
- Energie-dashboard ingericht (minimaal zon- en netsensoren)
- Batterijsensoren zichtbaar in HA (optioneel)
- Integratie voor de laadpaal geïnstalleerd en vermogenssensor ingeschakeld (optioneel)
2. Installatie via HACS
- Open Home Assistant en klik op HACS in de zijbalk.
- Zoek op Solar Energy Management — SEM staat in de standaard HACS-winkel, er is geen aangepaste repository nodig.
- Klik op het resultaat en daarna rechtsonder op Downloaden.
- Ga na het downloaden naar Instellingen > Systeem > Herstarten en herstart Home Assistant. Wacht 30–60 seconden tot het weer bereikbaar is.
Na de herstart is SEM geïnstalleerd maar nog niet actief. Doorloop de configuratiestappen in de volgende stap om het te starten.
Frontendkaarten voor het dashboard
Er zijn geen HACS-frontendkaarten nodig. Elke kaart op het SEM-dashboard is óf meegeleverd met de integratie óf een standaardkaart van Home Assistant, en de grafieken worden getekend met een lokaal meegeleverde Chart.js (geen internet nodig).
Twee kaarten zijn optioneel en worden automatisch herkend — installeer ze via HACS > Frontend alleen als je de rijkere variant wilt:
| Kaart | Wat het toevoegt als het geïnstalleerd is |
|---|---|
sankey-chart |
Een rijker sankey-diagram van de energiestromen van SEM-entiteiten op het tabblad Energie (anders wordt de standaard HA-kaart energy-sankey gebruikt) |
k-flow-card |
Een geanimeerde stroomweergave die het ingebouwde systeemdiagram vervangt (zelf in te schakelen via de instelling Diagramstijl) |
Zie de Dashboardgids voor de volledige kaartenlijst en de oplossingen wanneer een kaart “Custom element doesn’t exist” toont.
3. Configuratiestappen
Is SEM geïnstalleerd, voeg het dan toe via **Instellingen > Apparaten & diensten >
- Integratie toevoegen**, zoek op Solar Energy Management en selecteer het.
De configuratie heeft drie stappen. Elke instelling kun je later wijzigen via de knop Configureren op de integratiekaart.

Stap 1: Detectie via het Energie-dashboard

SEM doorzoekt je Energie-dashboard en herkent automatisch alle ingestelde sensoren: zonneproductie, netafname/teruglevering, batterij laden/ontladen en laadpaal.
| Veld | Standaard | Beschrijving |
|---|---|---|
| Observatiemodus | Aan | Een nieuwe installatie kijkt eerst mee: SEM leest je systeem, bouwt het dashboard en publiceert de beslissingen die het zou nemen — zonder ook maar één commando naar je hardware te sturen. Bekijk die beslissingen en zet de observatiemodus uit (switch.sem_observer_mode) zodra ze overeenkomen met wat jij zou willen, zodat SEM mag ingrijpen. Laat hem permanent aan voor testopstellingen, tweede HA-installaties die een productie-installatie spiegelen, of opstellingen die alleen monitoren. |
Tip: Ontbreekt een sensor die je verwacht in het detectieoverzicht, controleer dan je Energie-dashboard (Instellingen > Dashboards > Energie) en zorg dat dat type sensor daar eerst is toegewezen.
Stap 2: Laadpaal (optioneel)

Heb je een laadpaal, dan stel je in deze stap in hoe SEM die aanstuurt. SEM herkent je laadpaal automatisch uit het entiteitenregister van HA — controleer de vooringevulde waarden en corrigeer wat niet klopt.
Stap 2 is bewust minimaal — alleen de 3 verplichte sensoren plus het ene stuurveld dat je laadpaal nodig heeft (number-entiteit OF service-aanroep). Alle instelbare waarden per laadpaal (dagdoel in kWh, doel-SOC, overschotprioriteit, laadstroom ’s nachts, batterijcapaciteit) staan na de installatie onder Configureren, met verstandige standaardwaarden totdat je ze wijzigt. Zie Laadinstellingen hieronder.
| Veld | Standaard | Beschrijving |
|---|---|---|
| Verbonden-sensor | Automatisch herkend | Binaire sensor die meldt wanneer de laadstekker in de auto zit (bijv. binary_sensor.keba_p30_plug) |
| Laden-sensor | Automatisch herkend | Binaire sensor die meldt wanneer de auto daadwerkelijk laadt |
| Laadvermogen-sensor | Automatisch herkend | Numerieke sensor (W) die het actuele laadvermogen meldt |
| Laadpaal-service | Automatisch herkend | HA-service die wordt aangeroepen om de laadstroom in te stellen (bijv. keba.set_current). Bij laadpalen met een number-entiteit is dit in plaats daarvan de number-entiteit |
| Service-entiteit-ID | Automatisch herkend | Entiteit-ID die als doel aan de service-aanroep wordt meegegeven. Wordt automatisch ingevuld als SEM het merk herkent |
| Stroomsensor | Geen | Optioneel. Numerieke sensor (A) die de werkelijke laadstroom meldt. Hiermee kan SEM controleren of commando’s ook worden uitgevoerd |
| Totale-energiesensor | Automatisch herkend | Optioneel. Oplopende kWh-teller van de totale energie die aan de auto is geleverd |
Sturing via een service (KEBA, Easee, Zaptec): SEM roept een HA-service aan,
zoals keba.set_current, om de laadstroom te wijzigen.
Sturing via een number-entiteit (Wallbox, go-eCharger, Heidelberg en de meeste andere): SEM schrijft een waarde naar een number-entiteit die de stroomlimiet voorstelt. SEM herkent automatisch of de entiteit ampère of kilowatt verwacht.
Heb je geen laadpaal, laat dan alle velden leeg en klik op Verzenden. Je kunt later een laadpaal toevoegen via Configureren zonder opnieuw te installeren. Voor meerdere laadpalen, zie Meerdere apparaten.
Stap 3: Hardware- en dashboardinstellingen

| Veld | Standaard | Beschrijving |
|---|---|---|
| Dashboard genereren | Aan | Maakt direct na de installatie het SEM-Lovelace-dashboard aan in je zijbalk. Laat dit aan, tenzij je zelf een dashboard wilt bouwen |
| Stijl systeemdiagram | SEM | Kies welke systeemdiagramkaart op het tabblad Home komt. SEM gebruikt het ingebouwde geïllustreerde diagram met SVG-animaties. K-Flow gebruikt de K-Flow-kaart van derden (moet apart via HACS worden geïnstalleerd) |
Diagramstijl: Je kunt op elk moment wisselen tussen SEM en K-Flow via Configureren, zonder opnieuw te installeren. Het dashboard wordt automatisch opnieuw gegenereerd in de gekozen stijl.
Klik op Verzenden. SEM start meteen. Het SEM-dashboard verschijnt binnen enkele seconden in je zijbalk als het genereren van het dashboard aan staat.
Elke installatie begint met een doel-pieklimiet van 5,0 kW — SEM vraagt tijdens de installatie niet meer naar het maximum van je aansluiting. Dat maximum bepaalt alleen de omvang van wat SEM aanbiedt (vooral voor de laadpaal); lastafschakeling blijft uit totdat je die op het tabblad Configuratie inschakelt. Stel de limiet daarna bij via de kaart Lastbeheer op het tabblad Besturing (sleep de schuifregelaar tot 80 kW, of helemaal naar Onbegrensd als de aansluiting geen limiet heeft die bewaakt hoeft te worden), of typ een exacte waarde in kW op het tabblad Configuratie. Zie Instellingen voor lastbeheer voor het volledige bereik, de waarschuwings-/noodtrap en de schakelaar Geen netlimiet.
Welkomstmelding bij de eerste start
Vanaf v1.7.0-beta.15 krijgt een allereerste installatie één keer een blijvende melding met een directe link naar het SEM-dashboard en een startchecklist van drie punten:
- Controleer op het tabblad Energie of de zonnepanelen meten
- Kies een laadmodus op het tabblad EV
- Stel je batterijreserve in op het tabblad Batterij
De melding verschijnt maar één keer per installatie (bijgehouden via
_welcome_notification_fired in de opties van de integratie), blijft staan na een herstart van HA en
wordt overgeslagen bij testinstallaties met observer_mode. Je kunt hem op elk moment wegklikken
in het meldingenpaneel.
4. Controle
Neem na de installatie twee minuten om te controleren of SEM je sensoren goed uitleest.
Sensorwaarden controleren
Ga naar Ontwikkelhulpmiddelen > Toestanden en zoek op sem_:

| Sensor | Verwachte waarde |
|---|---|
sensor.sem_solar_power |
Watt, nul ’s nachts, positief overdag |
sensor.sem_grid_power |
Watt, negatief = afname, positief = teruglevering |
sensor.sem_home_consumption_power |
Watt, altijd nul of positief |
sensor.sem_battery_power |
Watt, positief = laden, negatief = ontladen |
sensor.sem_battery_soc |
Procent, 0–100 (als er een batterij is) |
Toont een sensor unavailable, controleer dan of in je Energie-dashboard het
bijbehorende type sensor is toegewezen en of de integratie van je omvormer
online is.
Het dashboard controleren
Open het SEM-dashboard vanuit je zijbalk.

Het geïllustreerde systeemdiagram hoort de energiestromen te tonen tussen je zonnepanelen, omvormer, batterij, net, huis en laadpaal, met geanimeerde vonkeffecten. De zon volgt overdag haar werkelijke positie op de boog. Tik op een onderdeel om het statistiekenvenster van HA te openen. Ontbreekt een onderdeel, dan zijn de sensoren ervan niet gevonden — controleer het Energie-dashboard. Kaarten met “Custom element doesn’t exist” betekenen dat een benodigde HACS-kaart ontbreekt — zie de Dashboardgids.
Beschikbare services controleren
Ga naar Ontwikkelhulpmiddelen > Acties en zoek op solar_energy_management
om alle beschikbare SEM-services te zien. Verschijnt er niets, dan is de integratie niet
geladen — controleer Instellingen > Systeem > Logboeken (filter op
solar_energy_management).
Sensorbronnen overschrijven
SEM haalt zijn bronnen voor net-, zon- en batterijvermogen uit het Energie-dashboard van HA — dat blijft de hoofdroute, en een verkeerde koppeling daar herstellen (en SEM daarna herladen) is het eerste wat je probeert. Voor de gevallen waarin dat niet volstaat — een sensor die de omvormer niet meer voedt (bijv. stroomtangen die uitvallen bij eilandbedrijf), of je wilt SEM op een andere meter laten draaien dan het Energie-dashboard van HA gebruikt — kun je in de sectie Sensorbronnen op het tabblad ⚙ Configuratie van het dashboard per bron een vaste entiteit kiezen:
| Kiezer | Overschrijft | Leeg betekent |
|---|---|---|
| Netvermogen | de gecombineerde netvermogensensor | automatisch (Energie-dashboard) |
| Zonnevermogen | de sensor voor zonneproductie | automatisch (Energie-dashboard) |
| Batterijvermogen | de sensor voor batterijvermogen | automatisch (Energie-dashboard) |
Opmerkingen:
- Tekenconventies worden op de overschrijving herkend. Een Shelly EM hanteert niet dezelfde tekenconventie als de omvormer — de tekendetectie van SEM voor afname/teruglevering (en batterij laden/ontladen) draait op de entiteit die jij kiest, dus je hoeft de tekens niet handmatig gelijk te trekken.
- Geen stille terugval. Wordt een overschrijvende entiteit onbeschikbaar, dan blijft SEM die uitlezen en toont de configuratiekaart een waarschuwing op die regel — SEM valt nooit stilletjes terug op de sensor die jij bewust hebt vervangen. Herstel de sensor of wis de overschrijving.
- Wijzigingen worden klaargezet en vastgelegd met Toepassen, waarna de integratie één keer voor de hele reeks wordt herladen.
5. Opties
Het tabblad Configuratie van het dashboard is de belangrijkste plek om instellingen te wijzigen — open je SEM-dashboard en ga naar het tabblad ⚙ Configuratie. Alles hieronder is daar aan te passen, ingedeeld in dezelfde secties als deze gids, met:
- Klaargezette wijzigingen met Toepassen/Terugdraaien per sectie — er wordt niets opgeslagen terwijl je scrolt of als je per ongeluk tikt; gewijzigde regels worden gemarkeerd en pas vastgelegd als je op Wijzigingen toepassen drukt (of Terugdraaien om ongedaan te maken).
- ⓘ uitleg bij elke instelling — tik op het infopictogram voor de uitleg, de fabrieksstandaard en een ↺ Terug naar standaard met één tik. De schakelaar Instellingen uitleggen bovenaan opent alle uitlegteksten tegelijk.
- 📖 documentatielinks — elke sectiekop linkt rechtstreeks naar het bijbehorende hoofdstuk in deze gids.
- 🩺 Diagnose per sectie — kopieert een gerichte JSON-momentopname (configuratie + live status + recente bijbehorende logregels, inclusief je recente configuratiewijzigingen) om te delen in een issue.
Wijzigingen worden binnen één coördinatorcyclus actief (standaard 10 seconden); instellingen die entiteiten opnieuw koppelen veroorzaken bij Toepassen één keer een herlaadbeurt.
Terugvaloptie: het klassieke optiescherm van HA bestaat nog steeds onder Instellingen > Apparaten & diensten → SEM → Configureren — handig als het dashboard nog niet gegenereerd is. Het is ingedeeld in deze pagina’s:
- Laadpaal — sensoren van de laadpaal en de manier van aansturen
- Batterij & SOC-zones — batterijcapaciteit, SOC-drempels, ontlaadbescherming
- Laden & zon — dagdoelen, overschotinstellingen, nachtladen
- Tarief & geavanceerd — stroomtarieven, tariefmodus, update-interval
- Lastbeheer — pieklimiet, afschakelen van apparaten, bescherming van kritieke apparaten
- Meldingen — display van de laadpaal, pushmeldingen, soorten meldingen
- Dashboard — diagramstijl (SEM/K-Flow), dashboard opnieuw genereren
- Warmtepomp (indien ingesteld) — SG-Ready-relais-entiteiten, temperatuurdoelen
- Laadpalenbeheer — afzonderlijke laadpalen toevoegen/bewerken/verwijderen
Laadinstellingen
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Dagelijks laaddoel (kWh) — Min | 10 kWh | De gegarandeerde hoeveelheid voor de nacht: laden ’s nachts/vanaf het net vult minstens tot dit niveau aan. De standaard dekt ongeveer 50–60 km actieradius. Schakel over naar Voertuig-SOC % (v1.7.3) door een vehicle_soc_entity in te stellen voor SOC-doelen per laadpaal. |
| Zonne-maximum auto (kWh) — Max | 100 kWh | Het zonneplafond: overschot laadt tot dit niveau en stopt dan. Standaard vol (vrij laden op zon); verlaag het om overschotladen te begrenzen. Moet ≥ Min zijn. |
| Voertuig-SOC-entiteit (v1.7.3) | Geen | (Per laadpaal) Sensor die de SOC van de autobatterij meldt (bijv. sensor.tesla_battery_soc). Indien ingesteld schakelt het blok Laaddoel op de EV-kaart van kWh naar SOC %, en berekent SEM de resterende behoefte uit het SOC-verschil. Optioneel. |
| Doel-SOC auto (%) — Min | 80% | Gegarandeerde SOC (50–100%), bereikt via nacht/net. Alleen gebruikt als er een SOC-sensor van het voertuig is ingesteld. Per laadpaal in te stellen. |
| Zonne-maximum SOC auto (%) — Max | 100% | SOC-plafond voor zonneladen. Standaard 100% (vol laden op zon); zet het op bijv. 80% om zonneladen te begrenzen voor een langere levensduur van de accu, terwijl de Min via het net gegarandeerd blijft. |
| Accucapaciteit auto (kWh) | 40 kWh | De grootte van de accu van je auto (10–120 kWh). Gebruikt om een SOC-percentage om te rekenen naar resterende kWh. Per laadpaal in te stellen. Ook gebruikt voor de berekening SOC→kWh als er een SOC-sensor van het voertuig is ingesteld. |
| Zonnepoort (v1.7.3) | 1200 W | Drempel voor batterijondersteuning — de batterij helpt de auto alleen als het echte zonne-overschot ≥ deze waarde is (0–5000 W). Zet op 0 W om batterijondersteuning overal toe te staan, ook ’s nachts. Voorkomt dat de batterij ’s nachts leegloopt. |
| Minimaal zonnevermogen om te gaan laden (W) | 1000 W | Hoeveel overschot er moet zijn voordat laden op zon begint. De standaard voorkomt dat SEM de laadpaal start bij kleine, kortstondige pieken in het overschot. Verhoog het als je overschot onrustig is en de laadpaal te vaak start en stopt. |
| Max. netafname in modus Min+Zon (W) | 1380 W | In de modus Min+Zon laadt de auto op minimale stroom en vult het net het tekort aan. Deze grens beperkt hoeveel netvermogen daarvoor wordt gebruikt. Verlaag het om Min+Zon volledig op zon te houden; verhoog het als je wilt dat de laadpaal ook bij weinig zon blijft laden. |
Nachtladen en slim nachtladen zijn hier geen instellingen — sinds v1.6.3
(#277) worden beide bepaald door de Laadmodus per laadpaal
(select.sem_charger_<id>_charge_mode, op het tabblad EV). Zie
Een laaddoel voor de auto instellen hieronder.
Instellingen voor batterij-SOC-zones
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Prioriteits-SOC (%) | 30% | Grens tussen zone 1 en 2. Daaronder gaat alle zonne-energie naar de batterij en wordt de auto geblokkeerd. Verhoog het (bijv. naar 40%) als je de batterij sterker wilt beschermen. |
| Buffer-SOC (%) | 70% | Grens tussen zone 2 en 3. Daarboven mag de batterij zonne-energie aanvullen voor het laden van de auto. Verlaag het als je weinig zon hebt en wilt dat de batterijondersteuning eerder begint. |
| Autostart-SOC (%) | 90% | Grens tussen zone 3 en 4. Daarboven begint de auto te laden, ook zonder zonne-overschot. Verlaag het als je batterij zelden 90% haalt en je toch met batterijondersteuning wilt laden. |
| Ondergrens ondersteuning SOC (%) | 60% | Is batterijondersteuning eenmaal gestart, dan blijft die aan tot de SOC hierheen zakt. Dit voorkomt snel aan/uit schakelen. Verhoog het als de batterij te vaak schakelt. |
| Batterijcapaciteit (kWh) | 10 kWh | De bruikbare capaciteit van je batterij. Gebruikt voor berekeningen van SOC-doelen en de toerekening van kosten. |
| Max. ondersteuningsvermogen (W) | 4500 W | Maximaal ontlaadvermogen van de batterij dat voor het laden van de auto mag worden gebruikt. Zet het op de laagste van het opgegeven ontlaadvermogen van je batterij en het maximale ingangsvermogen van je laadpaal. |
| Ondersteuningspoort / Zonnepoort (v1.7.3) (W) | 1200 W | Drempel voor batterijondersteuning — de batterij vult het laden van de auto alleen aan als het echte zonne-overschot minstens deze waarde is (0–5000 W). Zet op 0 om batterijondersteuning overal toe te staan, ook ’s nachts. Voorkomt dat de batterij in de schemering in de auto leegloopt. |
| Netteken omdraaien | Uit | Handmatige overschrijving van de polariteit van het netvermogen (v1.7.3). SEM bepaalt bij het opstarten automatisch of positief = afname of positief = teruglevering. Zet dit alleen aan als afname en teruglevering in je systeemdiagram omgedraaid zijn. Gebruik liever de knop Netteken herstellen op het tabblad Besturing (eenvoudiger). Indien ingeschakeld wordt de automatische herkenning overgeslagen. |
| Batterijteken omdraaien | Uit | Handmatige overschrijving van de polariteit van het batterijvermogen (v1.7.5, #588). SEM bepaalt automatisch of positief = laden of positief = ontladen — op basis van het merk van je omvormer (vast bepaald voor bekende merken) en de laad-/ontlaadtellers in het Energie-dashboard. Zet dit alleen aan als laden en ontladen omgedraaid lijken (de batterij toont laden terwijl hij eigenlijk ontlaadt). Gebruik liever de knop Batterijteken herstellen onder Configuratie → Geavanceerd (eenvoudiger — die kopieert ook een kant-en-klaar rapport voor het GitHub-issue). Reset leert opnieuw en wist zowel de net- als de batterijomkering. Indien ingeschakeld wordt de automatische herkenning overgeslagen. |
Instellingen voor tarieven en prijzen
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Tariefmodus | Statisch | Hoe SEM aan stroomprijzen komt. Statisch gebruikt vaste afname-/terugleveringstarieven die jij invoert. Dynamisch leest prijzen uit een HA-sensor (bijv. Tibber, Octopus, Amber). Agenda gebruikt de agenda van HA om goedkope periodes te definiëren. |
| Afnametarief | 0,30 per kWh | Wat je betaalt voor stroom van het net (minimaal 0,00). Gebruikt voor kostenberekeningen en de break-evencontrole in de laadplanner van de batterij. Zet het op je werkelijke stroomtarief. Zet op 0 als je gratis stroom of saldering hebt. |
| Terugleveringstarief | 0,08 per kWh | Wat je ontvangt voor teruglevering aan het net (minimaal 0,00). Gebruikt in de besparingsberekeningen. Zet het op je werkelijke terugleververgoeding. Zet op 0 als je geen terugleververgoeding krijgt. |
| Dynamische prijssensor | Geen | Als de tariefmodus Dynamisch is, wijs hier een sensor aan die de actuele prijs per kWh meldt. SEM gebruikt die om de goedkoopste uren voor het nachtladen te vinden. |
| Capaciteitstarief (per kW) | 0 | Sommige contracten rekenen maandelijks voor de piekafname (je hoogste kwartiergemiddelde). Geldt dat voor jou, vul het tarief dan hier in. SEM neemt het mee in de berekening van het piekbeheer. |
Details van de tariefmodi:
- Statisch: je voert vaste afname- en terugleveringstarieven in. Kostenberekeningen gebruiken deze tarieven de hele dag. Het beste voor eenvoudige vaste tarieven.
- Dynamisch: SEM leest elke cyclus het actuele tarief uit een HA-sensor. Gebruikt bij tarieven die per uur variëren (Tibber, Octopus Energy, Amber). De gezamenlijke energieplanner gebruikt de prijscurve om elke geplande vraag — auto, batterij en uitstelbare lasten — automatisch in de goedkoopste uren te plaatsen.
- Agenda: je definieert goedkope/dure periodes via een agenda-entiteit in HA. Handig voor vaste dag-/nachttarieven zonder API voor dynamische prijzen.
Prijsclassificatie — hoe de labels “goedkoop” / “duur” bij een dynamisch tarief worden berekend
Als de tariefmodus Dynamisch is, deelt SEM elke prijsmeting in een van very_cheap / cheap / normal / expensive / very_expensive / negative in. Er zijn twee modi:
- Percentiel (standaard sinds v1.7.0-beta.3): de klassen worden berekend uit
de 24-uursprijsreeks van vandaag. Onderste 10% =
very_cheap, onderste 25% =cheap, 25–75% =normal, bovenste 25% =expensive, bovenste 10% =very_expensive. Werkt met elke valuta en elke markt — de grenzen passen zich aan het werkelijke bereik van je tarief aan. - Statisch: deelt in tegen vaste grenzen (
< 0.075 = very_cheap,< 0.15 = cheap,> 0.35 = expensive,> 0.525 = very_expensive). Afgestemd op CHF — pas het alleen aan je valuta aan als je deze modus bewust hebt gekozen via Instellingen → Configureren → Tariefinstellingen.
Tarieven met trappen / tijdsafhankelijke tarieven (#728): een contract met een handvol vaste tarieven —
Amerikaanse ToU, het Spaanse 2.0TD, het Britse Economy 7 — wordt ingedeeld naar waar de uren van elke trap
in de dag liggen, niet alleen naar de prijs van de trap. Een contract met drie tarieven
krijgt dus drie labels: de daltrap is goedkoop, de middentrap
normal, de piektrap duur — ongeacht de verdeling daartussen.
(Vóór v1.7.6-beta.3 trok een trap die minder dan ongeveer een kwart van de dag besloeg zijn buurman
mee, waardoor bij een melder alle twaalf middenuren als
expensive werden gelezen en normal nooit verscheen.) Let op: het onderscheid tussen very_cheap en
cheap — en tussen expensive en very_expensive — is alleen voor de weergave;
elke stuurroute van SEM behandelt beide leden van een paar hetzelfde.
Koude start / weinig gegevens (#359): heeft SEM in percentielmodus minder dan
4 prijspunten voor vandaag (koude start voordat je integratie voor het dynamische tarief
gevuld is, of een volkomen vlakke dag), dan geeft de classificatie veiligheidshalve normal
terug. De statische grenzen worden niet stilletjes toegepast, want dan zou elk
tarief dat niet in CHF is verkeerd worden ingedeeld (de Tibber NL-installatie van RienduPre meldde
€0,30 urenlang na een herstart als normal, totdat dit in
v1.7.0-beta.16 werd opgelost).
Wissel van modus via Instellingen → Apparaten & diensten → Solar Energy Management → Configureren → Tariefinstellingen → “Modus prijsclassificatie”.
Je eigen prijssensor gebruiken — het universele tariefcontract (#612)
De dynamische modus vereist geen ondersteunde leveranciersintegratie. De dynamische prijssensor kan elke entiteit zijn waarvan de toestand de actuele afnameprijs per kWh is — een tariefintegratie uit de community, de Spaanse PVPC-integratie uit de kern, of een template-sensor die je zelf schrijft en waarin je je contract vastlegt. SEM behandelt een door de gebruiker ingestelde entiteit als gezaghebbend (leverancier “custom”) en leest die elke cyclus uit.
Het volledige contract:
- Toestand = de actuele prijs per kWh (een gewoon getal). Dit alleen geeft al correcte kostenbewaking en (via de waargenomen prijs) terugvalopties voor de niveauclassificatie.
- Optioneel maar aanbevolen: een attribuut met de dagcurve — geef de uurprijzen van
vandaag door als
raw_today(en bij voorkeurraw_tomorrow), elk een reeks van{start, end, value}-items (de vorm van Nordpool; diverse andere vormen worden ook automatisch herkend). Met een curve gaat het hele dynamische mechanisme aan: percentiel-prijsniveaus, herkenning van goedkope vensters, de gezamenlijke energieplanner en de laadplanner van de batterij. Het attribuuttariff_classifier_pathop de prijsniveausensor toont welk pad/attribuut SEM heeft gevonden — controleer het als de classificatie niet klopt. - Minimale variant zonder curve: zet Modus prijsclassificatie op
staticen vul je eigen goedkoop-/duur-drempels in tussen je bekende vaste prijsniveaus — vaste niveaus zonder extra YAML (geen vensterplanning; gebruik in plaats daarvan de normale instelling voor het nachtvenster).
Spanje — het 2.0TD-tarief met drie periodes, klaar om te plakken
De gereguleerde Spaanse 2.0TD-structuur (P1 punta / P2 llano / P3 valle, weekenden en nationale feestdagen helemaal valle) is een vast landelijk schema, dus het hele tarief past in één template-sensor. Vul bovenaan je drie prijzen in; de dynamische modus van SEM doet de rest (live gecontroleerd: percentielclassificatie
- het nachtelijke valle-venster correct ingepland).
- Op PVPC (gereguleerde uurprijzen)? Sla de template over — installeer de kernintegratie PVPC Hourly Pricing en wijs de dynamische prijssensor daarop.
- Feestdagen: voor de ongeveer 10 nationale feestdagen per jaar die op een werkdag vallen, voeg je de
kernintegratie Workday toe
en breid je beide
valle_day-regels uit tot{% set valle_day = ... >= 5 or is_state('binary_sensor.workday_sensor', 'off') %}. Zonder dit worden feestdagen als gewone werkdagen ingedeeld (geen gevolgen voor de veiligheid).
# /config/packages/es_tariff_20td.yaml (or under `template:` in configuration.yaml)
template:
- sensor:
- name: "Electricity Price ES 2.0TD"
unique_id: es_20td_price
unit_of_measurement: "EUR/kWh"
state: >-
{% set p = {'p1': 0.182, 'p2': 0.131, 'p3': 0.092} %}
{% set valle_day = now().weekday() >= 5 %}
{% set h = now().hour %}
{% if valle_day or h < 8 %}{{ p.p3 }}
{% elif 10 <= h < 14 or 18 <= h < 22 %}{{ p.p1 }}
{% else %}{{ p.p2 }}{% endif %}
attributes:
raw_today: >-
{% set p = {'p1': 0.182, 'p2': 0.131, 'p3': 0.092} %}
{% set valle_day = now().weekday() >= 5 %}
{% set midnight = today_at() %}
{% set ns = namespace(out=[]) %}
{% for h in range(24) %}
{% if valle_day or h < 8 %}{% set v = p.p3 %}
{% elif 10 <= h < 14 or 18 <= h < 22 %}{% set v = p.p1 %}
{% else %}{% set v = p.p2 %}{% endif %}
{% set ns.out = ns.out + [{'start': (midnight + timedelta(hours=h)).isoformat(),
'end': (midnight + timedelta(hours=h + 1)).isoformat(),
'value': v}] %}
{% endfor %}
{{ ns.out }}
raw_tomorrow: >-
{% set p = {'p1': 0.182, 'p2': 0.131, 'p3': 0.092} %}
{% set tmr = today_at() + timedelta(days=1) %}
{% set valle_day = tmr.weekday() >= 5 %}
{% set ns = namespace(out=[]) %}
{% for h in range(24) %}
{% if valle_day or h < 8 %}{% set v = p.p3 %}
{% elif 10 <= h < 14 or 18 <= h < 22 %}{% set v = p.p1 %}
{% else %}{% set v = p.p2 %}{% endif %}
{% set ns.out = ns.out + [{'start': (tmr + timedelta(hours=h)).isoformat(),
'end': (tmr + timedelta(hours=h + 1)).isoformat(),
'value': v}] %}
{% endfor %}
{{ ns.out }}
Daarna: Instellingen → Configureren → Tarief → modus Dynamisch → dynamische prijssensor
= sensor.electricity_price_es_2_0td. Bij tarieven met vaste niveaus komen de
percentielklassen op de uitersten terecht — verwacht valle → very_cheap/cheap
en punta → expensive/very_expensive; dat klopt (punta IS de duurste periode van de
dag). Wat SEM bewust niet modelleert: de component voor het
gecontracteerde vermogen, meterhuur en belastingen — de kosten in SEM zijn schattingen voor beslissingen,
geen nabootsing van je factuur (zie #612).
Instellingen voor meldingen
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Display laadpaal | Uit | Toont laadstatusberichten op het ingebouwde scherm van de KEBA-laadpaal. Geldt alleen voor KEBA-laadpalen. Zet het aan als je wilt dat het display van de laadpaal laat zien wat SEM doet. |
| Pushmeldingen | Uit | Stuurt meldingen naar de HA Companion-app op je telefoon. Zet het aan om op de hoogte te blijven van belangrijke laadgebeurtenissen (zie de lijst hieronder). |
| Meldingsservice | Automatisch | Welke meldingsservice van HA wordt gebruikt. SEM herkent de HA Companion-app automatisch. Stel het handmatig in als je meldingen op een specifiek apparaat of via een andere service wilt. |
Meldingen die worden verstuurd als pushmeldingen aan staan:
- Batterij bijna vol (als de SOC boven 95% komt)
- Dagelijks energieoverzicht (verstuurd op een instelbaar tijdstip)
- Auto bijna vol (afbouwdetectie — het BMS van de auto bouwt de stroom af)
- Slim-laden-advies (als de omstandigheden gunstig zijn om te laden)
- Laadmelding op basis van de voorspelling (de zon voor morgen ziet er goed/slecht uit)
Meldingen hebben per type een afkoelperiode van 10 minuten om meldingsmoeheid te voorkomen. Flapper-onderdrukking voorkomt meldingen bij kortstondige statuswijzigingen (de status moet 60 seconden stabiel zijn voordat een melding wordt verstuurd).
Instellingen voor voorspellingen
SEM leest een zonnevoorspelling voor slim nachtladen, de batterijplanner en de adviestips. Drie integraties worden ondersteund, en SEM herkent ze automatisch in deze volgorde:
De eerst geïnstalleerde wint. Draai je er meerdere naast elkaar, kies er dan expliciet één met Bron zonnevoorspelling hieronder — de kiezer toont alleen de integraties die echt op je systeem geïnstalleerd zijn.
Het is niet mogelijk om SEM naar je eigen voorspellingssensor te laten wijzen. Deze sectie suggereerde vroeger van wel, waardoor #819 leek op een ontbrekende instelling in plaats van een ontbrekende functie. Gebruik je een voorspellings- integratie die niet een van deze drie is, open dan een issue — een benoemde integratie toevoegen is een regel data, geen herschrijving.
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Bron zonnevoorspelling | Automatisch | Welke voorspellingsintegratie SEM uitleest. Automatisch loopt Solcast → Forecast.Solar → Open-Meteo af en neemt de eerste die geïnstalleerd is. Kies er expliciet één als je er meerdere naast elkaar draait — SEM gebruikt dan die en valt alleen terug op automatische herkenning als hij niet meer geïnstalleerd is (de terugval wordt vastgelegd in de diagnose, nooit stilletjes). |
| Prijsvoorspellingsentiteit | Automatisch | (Alleen dynamische tarieven.) De sensor met de voorspelde prijzen per uur. Dit is een tariefinstelling, geen zoninstelling — hij stond hier vroeger als “Forecast entity”, waardoor #819 leek op een ontbrekende overschrijving. |
| Weerentiteit | Automatisch | Voedt de weerkaart en de demping van de voorspelling. Automatisch gegenereerde weather.forecast_*-subentiteiten worden overgeslagen (ze missen de benodigde attributen) — elke echte weather.*-entiteit heeft de voorkeur. |
Demping van de voorspelling (#168): SEM vergelijkt de voorspelling voortdurend met de werkelijke productie en past een live correctiefactor toe, zodat een optimistische voorspelling op een heiige dag niet een nachtlading overslaat die je ochtendrit nodig had. De actuele factor staat in de attributen van de voorspellingssensor.
Geavanceerde instellingen
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Update-interval (s) | 10 | Hoe vaak SEM sensoren uitleest en apparaten bijstuurt. Lagere waarden reageren sneller maar kosten meer CPU. Waarden onder 5 worden afgeraden. Verhoog naar 30 als je op zuinige hardware draait en SEM te veel CPU gebruikt. |
| Vermogensverschil (W) | 50 | Minimale vermogensverandering voordat SEM een apparaat bijstuurt. Voorkomt voortdurend kleine aanpassingen. Verhoog het als je te veel kleine aanpassingen van de laadstroom van de laadpaal ziet. |
Bedieningselementen voor gebruik in automatiseringen
| Entiteit | Doel |
|---|---|
select.sem_charger_<id>_charge_mode |
Laadintentie per laadpaal (v1.6.3, uitgebreid in 2.1) — Alleen zon / Zon + accu / Zon + goedkoopste uren / Min + zon / Altijd (max) / Uit. Vervangt de oude schakelaars night_charging, smart_night_charging, tariff_optimized en de keuzelijst ev_charging_mode. |
switch.sem_observer_mode |
Alleen-lezen-modus aan/uit zetten zonder opnieuw te installeren |
Instellingen voor het dashboard
| Instelling | Standaard | Wat het doet en wanneer je het wijzigt |
|---|---|---|
| Stijl systeemdiagram | SEM | Kies de systeemdiagramkaart op het tabblad Home. SEM gebruikt het ingebouwde geïllustreerde SVG-diagram met gedetailleerde tekeningen van onderdelen, geanimeerde stroompaden, een zonneboog die met de tijd meebeweegt en klikbare onderdelen. K-Flow gebruikt de K-Flow-HACS-kaart van derden met details per PV-string, celtemperaturen en BMS-gegevens. K-Flow moet apart via HACS worden geïnstalleerd. |
| Dashboard genereren | — | Maakt het SEM-Lovelace-dashboard opnieuw aan. Veilig om op elk moment uit te voeren — bouwt alle tabbladen opnieuw op met de huidige instellingen en taal. |
| Dashboardtitel | Solar Energy Management | Weergavenaam in de zijbalk. |
| Dashboardpad | sem-dashboard | URL-pad (kleine letters, streepjes). Wijzig het als je een naamconflict hebt. |
Het dashboard opnieuw genereren
Voer solar_energy_management.generate_dashboard uit via Ontwikkelhulpmiddelen >
Acties als je hardware wijzigt, van diagramstijl wisselt of het dashboard
opnieuw wilt opbouwen na een taalwijziging. Dit is op elk moment veilig.
6. SOC-zonestrategie
Is er een batterij, dan gebruikt SEM een model met vier zones om te bepalen hoe zonne-energie tussen de batterij en de auto wordt verdeeld. De zones worden bepaald door drie SOC-drempels die je in de opties instelt.
SOC 100% ─────────────────────────────────────────────
| Zone 4: VOLLE ONDERSTEUNING |
| Batterijondersteuning altijd aan. Auto |
| laadt ook zonder zonne-overschot. |
SOC 90% ─── battery_auto_start_soc ─────────────────
| Zone 3: ONTLAADONDERSTEUNING |
| Batterij vult zon aan voor de auto. |
| Ondersteuning loopt op van 50% bij 70% |
| SOC tot 100% bij 90% SOC. |
SOC 70% ─── battery_buffer_soc ─────────────────────
| Zone 2: ALLEEN OVERSCHOT |
| Auto krijgt alleen puur zonne-overschot. |
| Batterij ontlaadt niet voor de auto. |
SOC 30% ─── battery_priority_soc ───────────────────
| Zone 1: BATTERIJPRIORITEIT |
| Alle zon naar de batterij. Auto geblokkeerd.|
SOC 0% ─────────────────────────────────────────────
Zone 1 — Batterijprioriteit (SOC onder 30%): De batterij is laag. Alle beschikbare zonne-energie gaat naar de batterij. De auto mag niet beginnen met laden. Dit beschermt de levensduur van de batterij en zorgt dat je genoeg opgeslagen energie hebt om het huishouden de avond door te helpen.
Zone 2 — Alleen overschot (SOC 30–70%): De batterij is in goede staat. De auto laadt op puur zonne-overschot — vermogen dat anders aan het net zou worden teruggeleverd. De batterij ontlaadt in deze zone niet om het laden van de auto te ondersteunen.
Zone 3 — Ontlaadondersteuning (SOC 70–90%):
De batterij is gezond en kan wat energie missen voor de auto. De batterijondersteuning
loopt op van 50% van battery_assist_max_power bij een SOC van 70% tot 100% bij een SOC van
90%. Die geleidelijke opbouw voorkomt dat batterijvermogen wordt verspild op dagen dat de zon alleen
genoeg is.
Zone 4 — Volle ondersteuning (SOC boven 90%): De batterij is bijna vol. Volledige batterijondersteuning is actief. De auto begint te laden ook zonder zonne-overschot — een bijna volle batterij heeft weinig extra waarde en de energie is beter besteed in de auto.
Ondergrens ondersteuning: batterijondersteuning werkt alleen zolang de SOC boven
battery_buffer_soc (standaard 70%) ligt — onder de buffer is de batterij
niet beschikbaar voor de auto. (De buffer is de enige ondergrens voor ondersteuning; de
vroegere aparte instelling battery_assist_floor_soc was overbodig en is
verwijderd.)
Wanneer pas je de zonedrempels aan
| Doel | Aanpassing |
|---|---|
| De batterij sterker beschermen | Verhoog battery_priority_soc (bijv. van 30% naar 40%) |
| Eerder met de batterij de auto laden | Verlaag battery_buffer_soc (bijv. van 70% naar 60%) |
| De batterij haalt de autostartdrempel zelden | Verlaag battery_auto_start_soc (bijv. van 90% naar 80%) |
| Batterijondersteuning schakelt te vaak aan/uit | Verhoog battery_buffer_soc (bijv. van 70% naar 75%) |
| Kleine batterij en de auto moet meer voorrang krijgen | Verlaag alle drie de zonedrempels met 5–10% |
7. Lastbeheer
SEM heeft twee systemen die apparaten in je huis kunnen aansturen. Begrijpen hoe ze werken voorkomt verrassingen, zoals apparaten die onverwacht uitgaan.
Twee systemen, twee doelen
| Systeem | Doel | Wanneer het ingrijpt |
|---|---|---|
| Piekbeveiliging | Voorkomt dat je voortschrijdende kwartiernetafname je pieklimiet overschrijdt | Als de netafname de doel-pieklimiet nadert of overschrijdt |
| Overschotverdeling | Zet apparaten aan als er zonne-overschot is | Als de zonneproductie hoger is dan het verbruik in huis |
Piekbeveiliging is defensief — ze schakelt lasten af om binnen de limiet van je stroomcontract te blijven. Overschotverdeling is proactief — ze zet apparaten aan als er gratis zonnestroom is en zet ze uit als het overschot verdwijnt.
De vier stuurmodi
Elk beheerd apparaat heeft een instelling Modus op zijn regel in het tabblad Besturing:
| Modus | Zet SEM het AAN? | Zet SEM het UIT? | Het beste voor |
|---|---|---|---|
| Uit | Nooit | Nooit | Apparaten die je handmatig bedient |
| Alleen piek | Nooit | Ja, tijdens netpieken | Apparaten die normaal moeten draaien maar tijdelijk afgeschakeld mogen worden |
| Alleen zon | Ja, bij PV-overschot | Ja, als het overschot daalt of tijdens pieken | Uitstelbare lasten die alleen op zon draaien (zwembadpomp, boiler) |
| Zon + accu | Ja, bij PV-overschot + ondersteuning door de thuisbatterij | Hetzelfde | Lasten die je ook bij bewolking of ’s avonds op de batterij wilt laten doordraaien (#620) |
De standaardmodus is Alleen piek. SEM zet een apparaat nooit AAN tenzij je de modus ervan bewust op een zonnemodus zet.
Dagelijkse looptijddoelen (#620)
De 🎯-doelknop op de regel van een last (zichtbaar in de twee zonnemodi) opent de doeleditor:
Min / Max looptijd — een schuifregelaar met twee handvatten: “minstens X … tot Y”. Min is een ondergrens: de looptijd waarvoor SEM wil betalen (batterij / goedkoop net). Wordt die bereikt, dan stoppen die betaalde bronnen, maar gratis zonne-overschot laat de last doordraaien. Max is het plafond en de enige harde stop — de last draait nooit langer (blijft bewaard na een herstart). Max helemaal open = Onbegrensd. Hetzelfde principe als het bereik voor het laaddoel van de auto (#245, #688). Overlappen de handvatten, tik dan op de splitsknop (⬍) om ze te scheiden.
’s Nachts afmaken met (zichtbaar in beide zonnemodi) — wat de looptijd afmaakt als de zon weg is:
- Uit — niets; de last wacht op zon en haalt zijn doel misschien niet.
- Batterij — gebruikt de thuisbatterij tot aan de reservegrens.
- Net — vult aan vanaf het net tijdens je goedkope tariefvenster (vereist een ingesteld tarief/goedkoop venster).
Dit is as 2 — los van de Modus overdag (as 1: Alleen zon tegenover Zon + accu). Wissel je de kiezer, dan stopt ook een last die al draait op de bron die je hebt verlaten.
Stoppen als ≥ sensor — kies met de entiteitzoeker een willekeurige sensor om de run eerder te beëindigen (bijv. watertemperatuur ≥ 28 °C, vat ≥ vol). Wis hem met het ✕ van de kiezer.
De looptijdteller wordt na zonsopkomst gereset (niet om middernacht), zodat een last die ’s nachts mag draaien niet midden in de nacht wordt gereset en opnieuw leegtrekt. Er is geen geforceerde netdeadline — een gemist doel wacht op de zon van morgen, de nachtelijke batterij of het goedkope netvenster, afhankelijk van je keuze in de kiezer. Volledig model: Apparaatprioriteit.
Laadpalen blijven in deze lijst staan voor de prioriteitsvolgorde, maar tonen geen keuzelijst voor Modus meer — alle bedieningselementen voor het laaddoel van de auto staan op de kaart van de laadpaal (zie hieronder).
Een laaddoel voor de auto instellen
Alle bedieningselementen voor het laaddoel staan samen in het blok Laaddoel op de kaart van de laadpaal — één plek, per laadpaal, zonder heen en weer door configuratieschermen:
- Laden tot — de doelwaarde, met een eenheidskeuze ernaast:
- kWh (standaard): het dagdoel in kWh (
number.sem_charger_<id>_daily_ev_target). - % (SOC): het doel voor de laadtoestand van het voertuig (
number.sem_charger_<id>_target_soc), op basis van de live SOC-sensor van het voertuig. De eenheidskeuze (select.sem_charger_<id>_ev_target_type) biedt % alleen als voor die laadpaal een voertuig-SOC-entiteit is ingesteld — anders toont hij alleen kWh.
- kWh (standaard): het dagdoel in kWh (
- Zonne-maximum (
number.sem_charger_<id>_daily_ev_target_max/_target_soc_max): het Max-handvat van de bereikregelaar — laden op zonne-overschot stopt zodra dit plafond bereikt is. Standaard vol (vrij laden op zon); verlaag het om overschotladen te begrenzen. (Vervangt de vroegere schakelaar Overschot begrenzen.) - Laadmodus (
select.sem_charger_<id>_charge_mode, v1.6.3): de intentie per laadpaal die de beslissing over nachtladen en het tariefvenster bepaalt. Min + zon (de standaard), Zon + goedkoopste uren en Altijd (max) vullen ’s nachts aan tot het Min-doel; Alleen zon slaat dat over, tenzij je voor deze laadpaal een ondergrens “Minstens” instelt, waardoor het tekort een nachtelijke garantie wordt (#634/#679); Uit laat de laadpaal onbeheerd.
Deze bedieningselementen zijn vrij te combineren (Doeltype × Zonne-maximum × Laadmodus). De oude
switch.sem_charger_<id>_night_charging, ..._smart_night_charging,
..._tariff_optimized en select.sem_charger_<id>_ev_charging_mode zijn
in v1.6.3 verwijderd — hun intentie zit nu in de ene keuzelijst Laadmodus.
Bestaande instellingen van ev_target_mode worden automatisch omgezet naar ev_target_type.
De schakelaars Stuurbaar en Kritiek
| Schakelaar | Als Aan | Als Uit |
|---|---|---|
| Stuurbaar | SEM mag dit apparaat aansturen (volgens zijn modus) | SEM negeert dit apparaat volledig |
| Kritiek | Apparaat wordt nooit afgeschakeld, ook niet in noodsituaties | Apparaat mag tijdens piekmomenten worden afgeschakeld |
Snelle wegwijzer:
- Het apparaat mag nooit door SEM worden aangeraakt: zet Stuurbaar op Uit
- Het apparaat moet normaal draaien en alleen in het uiterste geval worden afgeschakeld: zet Kritiek op Aan
- Het apparaat is uitstelbaar (warm water, zwembadpomp): laat de standaard staan en zet de modus op Overschot
Prioriteit
De prioriteit bepaalt in welke volgorde apparaten worden ingeschakeld en afgeschakeld:
- Lager getal = hogere prioriteit (1 is de hoogste, 10 de laagste)
- Bij overschotverdeling: apparaten met een hogere prioriteit krijgen als eerste vermogen
- Bij piekafschakeling: apparaten met een lagere prioriteit worden het eerst afgeschakeld (apparaten met een hoge prioriteit blijven zo lang mogelijk aan)
Sleep apparaten op het tabblad Besturing van het SEM-dashboard om hun prioriteit te wijzigen.
Afhankelijkheden (Vereist)
Een apparaat kan van een ander apparaat afhankelijk zijn. Als apparaat B apparaat A “vereist”:
- schakelt SEM B niet in tenzij A al draait
- wordt B automatisch ook afgeschakeld als A wordt afgeschakeld (cascade)
- komt B weer in aanmerking om in te schakelen zodra A terugkomt
Gebruik dit voor fysieke afhankelijkheden, zoals een zwembadverwarming die vereist dat de zwembadpomp draait.
Waarom gaat mijn apparaat onverwacht uit?
Controleer in deze volgorde:
Controleer de modus van het apparaat op het tabblad Besturing. Staat die op “Overschot”, dan zet SEM het uit zodra het zonne-overschot daalt. Kies “Alleen piek” als je alleen piekbeveiliging wilt.
Controleer de status van het lastbeheer —
sensor.sem_load_management_statustoontnormal,warning,sheddingofemergency. Toont dieshedding, dan heeft de netafname de pieklimiet overschreden.Controleer je pieklimiet — vergelijk
sensor.sem_consecutive_peak_15minmet je doel-pieklimiet. Liggen die dicht bij elkaar of overschrijdt de piek de limiet, dan is piekafschakeling actief.Controleer afhankelijkheden — hangt het apparaat af van een ander apparaat dat is afgeschakeld, dan wordt het afhankelijke apparaat automatisch ook afgeschakeld.
Ongewenst afschakelen voorkomen
- Zet de modus op Uit — SEM raakt het apparaat nooit aan
- Markeer het als Kritiek — SEM schakelt het nooit af, ook niet in noodsituaties
- Verhoog de doel-pieklimiet — dan treedt piekafschakeling minder vaak op
- Wijzig het prioriteitsnummer van het apparaat (geef het een hoger nummer) — het wordt dan als laatste in plaats van als eerste afgeschakeld
8. Laadmodi voor de auto
SEM draait twee parallelle toestandsmachines — één voor laden op zon overdag en één voor laden vanaf het net ’s nachts. De twee modi werken onafhankelijk van elkaar en dragen bij zonsopkomst en zonsondergang netjes aan elkaar over.
Zonnemodus — laden overdag
Overdag kiest SEM een van drie strategieën op basis van de SOC van de batterij en het beschikbare overschot:
Alleen zon (zone 2)
De auto laadt op puur zonne-overschot. SEM past de laadstroom voortdurend aan (binnen je ingestelde min/max-bereik) aan het beschikbare overschot. Zakt het overschot onder de minimumdrempel, dan pauzeert SEM de laadpaal en wacht tot het overschot herstelt.
Scenario: 3 kW overschot, driefasige laadpaal met minimaal 6 A. SEM stelt 5 A (~3,5 kW) in. Een wolk verlaagt het overschot naar 500 W — SEM gaat naar het minimum van 6 A en pauzeert als het overschot verder daalt.
Batterijondersteuning (zone 3 en 4)
De batterij vult de zon aan om de auto meer vermogen te geven. In zone 3 is de batterij- ondersteuning evenredig — bij een SOC van 70% levert de batterij 50% van haar maximale ondersteuningsvermogen; bij een SOC van 90% levert ze 100%. In zone 4 (boven de autostart-SOC) begint de auto ook zonder zonne-overschot te laden.
Scenario: 1,5 kW zonne-overschot, SOC 85%. De batterij levert ~2,5 kW ondersteuning, waardoor de auto ~4 kW krijgt. De laadpaal draait continu in plaats van met tussenpozen.
Zon + accu (2.1)
Kies deze modus als je ’s avonds je eigen opgeslagen stroom in de auto wilt in plaats van stroom van het net. Boven de zonnepoort gedraagt hij zich als batterij- ondersteuning. Daaronder — het uur nadat de zon is verdwenen, precies wanneer een auto meestal wordt aangesloten — blijft hij laden uit de batterij, begrensd door twee dingen:
- Hoe diep: het ontladen stopt bij de hoogste van je buffer-SOC en de berekende ondergrens voor vannacht — de hoeveelheid die bij zonsopkomst nog in de batterij moet zitten zodat het huis de nacht doorkomt op basis van wat het zelf heeft gemeten te verbruiken. Nooit onder je buffer, wat de voorspelling ook zegt.
- Of het onder de poort überhaupt mag: alleen zolang het besteedbare budget voor vannacht positief is, en daarvoor is een betrouwbare voorspelling nodig dat morgen weer aanvult wat er wordt verbruikt. Geen vertrouwen, geen budget, geen avondontlading.
De modus kiezen is de toestemming; er is geen tweede schakelaar die aan moet. Zodra het nachtvenster opent, laadt de modus nog steeds nooit vanaf het net zonder een ondergrens “Minstens”, en die ondergrens wordt vanaf het net gevuld, niet uit de batterij.
Min+Zon
Een hybride modus voor bewolkte dagen. De laadpaal draait op minimale stroom (en gebruikt zo nodig een beetje netvermogen) en gebruikt alle beschikbare zon daarbovenop. Zo blijft de auto langzaam laden in plaats van te wachten op overschot dat misschien nooit komt. Zet het aan met de schakelaar “Min+PV” op het tabblad Besturing.
Gebruik Min+Zon als: het dagdoel gehaald moet worden maar de zon structureel onder de minimumdrempel voor alleen-zon blijft.
Nachtmodus — ’s nachts laden vanaf het net
Tijdens het nachtvenster (meestal 22:00–06:00, of je venster met goedkoop tarief) laadt SEM de auto vanaf het net tot het dagdoel is bereikt.
SEM plant de nachtsessie met een berekening van de laatst mogelijke starttijd:
- Bepaal de resterende benodigde energie (dagdoel min wat er vandaag al geladen is)
- Schat de benodigde tijd bij maximale stroom
- Begin zo laat dat het laden net voor het einde van het venster klaar is — zodat de tijd op volle netafname zo kort mogelijk is
Voorbeeld: het doel is 10 kWh en er is al 7 kWh op zon geladen. De resterende 3 kWh bij 7,4 kW (32 A, eenfasig) duurt ongeveer 24 minuten. Eindigt het nachtvenster om 06:00, dan begint SEM om 05:36.
Is het dagdoel al op zon bereikt, dan slaat SEM het nachtladen volledig over.
Slim nachtladen (optioneel)
Als slim nachtladen aan staat, beoordeelt SEM vóór het starten of laden vanaf het net ’s nachts echt nodig is:
- Is de zonnevoorspelling voor morgen sterk (bijv. de verwachte opbrengst dekt het gebruikelijke dagverbruik), dan kan SEM het nachtladen overslaan of beperken
- Is de batterij al goed geladen en is de virtuele SOC van de auto hoog, dan kan SEM één of meer nachten het laden overslaan
Dit bespaart geld doordat netstroom wordt vermeden als de zon de behoefte toch al dekt. Zet het aan als SEM minstens een week draait, zodat voorspelling en verbruikspatronen zijn gekalibreerd.
Herkenning van afbouwend laden
SEM houdt het laadvermogen tijdens een sessie in de gaten. Als het batterijmanagement- systeem (BMS) van een auto een volle accu nadert, verlaagt het de laadstroom in een kenmerkend trappatroon (bijvoorbeeld: van 7 kW naar 5 kW naar 3 kW in 17 minuten). SEM herkent dit patroon via lineaire regressie op stabiele metingen.
Als afbouw wordt herkend:
- toont
sensor.sem_ev_taper_trend“declining” - schat
sensor.sem_charger_<id>_taper_minutes_to_fullde resterende tijd (één per laadpaal) - wordt een pushmelding verstuurd als mobiele meldingen aan staan
Zo zie je in het dashboard wanneer de auto bijna vol is, ook zonder de werkelijke SOC van de autoaccu te kennen.
Sensor voor de laadtoestand
sensor.sem_charging_state vertelt wat SEM op dit moment doet:
| Toestand | Betekenis |
|---|---|
solar_charging_active |
Laden op zonne-overschot |
solar_super_charging |
Laden op zon + batterijondersteuning |
solar_min_pv |
Modus Min+Zon actief |
solar_idle |
Auto aangesloten maar geen overschot |
solar_waiting_battery_priority |
Batterij te laag, auto geblokkeerd |
solar_target_reached |
Dagdoel bereikt |
night_charging_active |
Nachtladen vanaf het net bezig |
night_target_reached |
Nachtdoel bereikt |
idle |
Auto niet aangesloten |
9. Laadplanner voor de batterij
De laadplanner voor de batterij beslist of de thuisbatterij ’s nachts vanaf het net wordt geladen, en zo ja, op welk tijdstip en tot welk SOC-niveau. Dit staat los van het nachtladen van de auto.
Voorwaarden
De planner vereist:
- Een integratie voor zonnevoorspelling (Solcast, Forecast.Solar of Open-Meteo Solar Forecast)
- Een omvormer die geforceerd laden van de batterij ondersteunt via een HA-service of number-entiteit
- Een ingeschakelde laadplanner voor de batterij in de opties
Hoe het werkt
Op een instelbaar dagelijks evaluatiemoment (standaard 21:00) doet de planner het volgende:
- Leest de zonnevoorspelling voor morgen en je gebruikelijke dagverbruik
- Berekent het verwachte energietekort (verbruik min verwachte zon)
- Rekent het tekort om naar een doel-SOC (hoe vol de batterij ’s ochtends moet zijn om het tekort te dekken)
- Voert een break-evencontrole uit: laadt alleen als het nachttarief (rekening houdend met het rondgaand rendement van de batterij) goedkoper is dan netstroom overdag zou kosten
Slaagt de break-evencontrole, dan geeft de planner zijn oordeel — hoeveel energie, tot welke doel-SOC, met welk vermogen — door aan de gezamenlijke energieplanner, die beslist wanneer: de batterij wordt één vraag naast de auto, de uitstelbare lasten en de comfort- banden, ingepland in de goedkoopste uren van het nachtvenster (of verspreid over het hele venster bij een statisch tarief) binnen je pieklimiet en prioriteitsvolgorde. SEM geeft daarna alleen geforceerde laadopdrachten zolang dat blok open is.
Sinds v2.0 kiest de planner niet meer zijn eigen venster (#638). Twee gevolgen: de laaduren van de batterij respecteren nu dezelfde pieklimiet en prioriteitsvolgorde als al het andere, en met
switch.sem_energy_plan_actuationuit is er helemaal geen gepland voorladen — de schakelaar is de noodstop voor de hele nacht.
Break-evenlogica
De planner laadt ’s nachts alleen als:
night_rate / battery_efficiency < day_rate
Bijvoorbeeld: is het nachttarief 0,15/kWh en het batterijrendement 90%, dan zijn de effectieve kosten om nachtstroom op te slaan en te gebruiken 0,167/kWh. Is het dagtarief 0,30/kWh, dan bespaart ’s nachts laden 0,133/kWh. Liggen de tarieven dicht bij elkaar, dan slaat de planner het laden over en laat de zon de batterij de volgende dag vullen.
Sensor voor de plannertoestand
sensor.sem_battery_scheduler_state toont:
| Toestand | Betekenis |
|---|---|
idle |
Geen planning actief, wacht op de volgende evaluatie |
evaluating |
Voert de dagelijkse analyse uit |
scheduled |
Laadplan gemaakt, wacht op de starttijd |
charging |
Geforceerd laden van de batterij bezig |
target_reached |
Batterij heeft de doel-SOC bereikt |
not_needed |
De zon van morgen volstaat, geen netlading nodig |
not_profitable |
Break-evencontrole mislukt, netladen loont niet |
Samenspel met het nachtladen van de auto
De planner stemt af met het nachtladen van de auto. Beide delen dezelfde net- aansluiting. Hebben zowel de batterij als de auto ’s nachts netstroom nodig, dan verdeelt de planner de stroom over tijdvakken om binnen je piek- limiet te blijven (indien ingesteld).
10. Warmtepomp en warm water
SEM kan een warmtepomp of warmwatersysteem aansturen via de SG-Ready-standaard,
of — voor pompen zonder relais (Nibe, Mitsubishi, Daikin, Viessmann…) — via
hun climate-entiteit (setpoint verhogen bij overschot).
Hun plek in de overschotvolgorde: sinds v1.7.5 verschijnen de warmtepomp en het warmwaterapparaat als versleepbare regels in de ENE lijst met apparaatprioriteiten op het tabblad Besturing — hun overschotprioriteit is simpelweg hun positie in de lijst (er is geen aparte schuifregelaar voor prioriteit meer). Zie Apparaatprioriteit.
Geen vermogenssensor? Wijs het veld Energiesensor warmtepomp / warm water (kWh) naar een oplopende energieteller (bijv. een kWh-totaal van Viessmann ViCare) — SEM leidt daaruit een vloeiend live vermogenssignaal af, of herkent automatisch een bijbehorende vermogenssensor op hetzelfde apparaat. Stel Nominaal vermogen (W) in zodat de overschotberekening werkt vóór de eerste live meting. Beide velden staan in de secties Warmtepomp / Warm water van het tabblad Configuratie van het dashboard.
Wat is SG-Ready?
SG-Ready (Smart Grid Ready) is een Duitse standaard voor het aansturen van warmtepompen die met twee digitale relaissignalen vier bedrijfstoestanden doorgeeft aan de interne regeling van de warmtepomp:
| SG-toestand | Relais 1 | Relais 2 | Wat de warmtepomp doet |
|---|---|---|---|
| 1 — Geblokkeerd | Aan | Uit | Verlaagt het verbruik op verzoek van de netbeheerder (EVU-blokkade) |
| 2 — Normaal | Uit | Uit | Standaardbedrijf (standaard) |
| 3 — Boost | Uit | Aan | Aanbeveling om meer te verbruiken — nu meer verwarmen |
| 4 — Geforceerd aan | Aan | Aan | Maximaal verbruik — gebruik het beschikbare vermogen |
Dit is geen 2-bitstelling. Toestand 1 is
1:0en toestand 2 is0:0— de standaard zet de EVU-blokkade alleen op relais 1, dus de toestanden lopen niet in binaire volgorde. Tot v1.7.5 toonde deze tabel een gewone telling 00/01/10/11, en dat deed de code tot #523 ook: de Boost van SEM stuurde1:0, een standaardpomp las dat als EVU-blokkade, en de pomp ging bij overschot uit in plaats van aan. Controleer je een installatie aan de hand van een oudere versie van deze gids, gebruik dan de tabel hierboven.
SEM zet toestand 3 (Boost) bij een gematigd zonne-overschot, en toestand 4 (Geforceerd aan) bij een hoog overschot. De warmtepomp reageert door harder te verwarmen en gebruikt zo zonne-overschot in plaats van het terug te leveren.
Worden de contacten omgekeerd gelezen? Stuurt SEM Boost en blokkeert je pomp, dan zijn de contacten waarschijnlijk als maakcontact-in-rust (normally-closed) bedraad in plaats van normally-open. Zet SG-Ready omkeren aan in de warmtepompsectie — dat draait beide contacten om — in plaats van opnieuw te bedraden of de twee relais-entiteiten te verwisselen.
Contactconfiguratie
Je hebt twee HA-entiteiten nodig om de SG-Ready-aansluitingen aan te sturen — meestal een Shelly of ESPHome-apparaat dat op de ingangsklemmen van de warmtepomp is aangesloten.
| Configuratieveld | Wat je instelt |
|---|---|
| SG-Ready-contact 1 | De entiteit voor de eerste SG-Ready-aansluiting |
| SG-Ready-contact 2 | De entiteit voor de tweede SG-Ready-aansluiting |
| Climate-entiteit (optioneel) | De climate.-entiteit van je warmtepomp voor setpointverhoging |
| Vermogenssensor (optioneel) | Sensor voor het stroomverbruik van de warmtepomp |
Als het contact geen schakelaar is (#801)
Een contact is meestal een switch., en SEM zet die aan en uit. Sommige pompen
bieden die niet. Een Buderus/Bosch achter EMS-ESP bijvoorbeeld heeft zijn
SG-Ready-ingangen als text.-entiteiten met een bitreeks — een switch-service
zou daar niets mee doen.
Een contact mag daarom ook een text., number., select. of de bijbehorende
input_*-helper zijn. Kies hem in hetzelfde veld; SEM vraagt dan om de twee
waarden die het moet schrijven:
| Configuratieveld | Wat je instelt |
|---|---|
| Contact N — AAN-waarde | De waarde die dat contact SLUIT |
| Contact N — UIT-waarde | De waarde die dat contact OPENT |
SEM schrijft ze letterlijk via de eigen service van de entiteit (text.set_value,
number.set_value, select.select_option). De waarden horen bij het vocabulaire van je
integratie, niet dat van SEM — ze zijn niet te raden, dus beide zijn
verplicht en de configuratie weigert een waardecontact op te slaan als er een ontbreekt.
De twee contacten houden elk hun eigen paar: bij EMS-ESP gebruiken de twee ingangen bit-
reeksen van verschillende lengte.
Al het andere blijft hetzelfde — de waarheidstabel van SG-Ready, SG-Ready omkeren voor normally-closed bedrading, en het teruglezen na een herstart waarmee SEM een boost die het had laten lopen weer overneemt, werken allemaal ook zo bij een waardecontact.
Uitgewerkt voorbeeld — EMS-ESP, waar SG-Ready op ingang 1 en 4 zit:
| Veld | Waarde |
|---|---|
| SG-Ready-contact 1 | text.ems_esp_boiler_input_1_options |
| Contact 1 — AAN-waarde | de bitreeks die ingang 1 activeert |
| Contact 1 — UIT-waarde | de bitreeks die hem deactiveert |
| SG-Ready-contact 2 | text.ems_esp_boiler_input_4_options |
| Contact 2 — AAN-/UIT-waarde | hetzelfde, voor ingang 4 |
Als de besturing via een service loopt (#801)
Sommige pompen worden helemaal niet via een entiteit aangestuurd — de integratie biedt in plaats daarvan een commandoservice. Vul de velden SG-Ready-service in en SEM roept die aan in plaats van de contacten aan te raken:
| Configuratieveld | Wat je instelt |
|---|---|
| SG-Ready-service | domain.service — bijv. ems_esp.send_command, of een eigen script. |
| SG-Ready-servicegegevens | Een JSON-object, de payload van de service |
| SG-Ready-terugleesentiteit | Optioneel: een entiteit die de huidige SG-Ready-toestand van de pomp meldt |
Elke tekstwaarde in de payload mag drie plaatshouders gebruiken, die SEM per aanroep invult:
| Plaatshouder | Wordt |
|---|---|
{state} |
het nummer van de SG-Ready-toestand, 1–4 |
{relay1} |
true / false — contact 1 in de waarheidstabel |
{relay2} |
true / false — contact 2 |
{"command": "sgready", "value": "{state}"}
Is er een terugleesentiteit ingesteld, dan controleert SEM na het schrijven of de pomp de toestand meldt die het heeft opgedragen, en logt een afwijking in plaats van aan te nemen dat het commando is aangekomen. Met dezelfde entiteit kan SEM een boost die het na een herstart had laten lopen weer overnemen.
De serviceroute en de contactroute zijn alternatieven: is er een service ingesteld, dan IS dat de aansturing, en blijven de contacten ongemoeid.
Setpointverhoging
Geef je een climate-entiteit op, dan kan SEM het verwarmingssetpoint met een instelbare waarde (standaard +2 °C) verhogen als er overschot is. Dat verwarmt het gebouw of het vat voor, en slaat zonne-energie op als thermische massa. Het setpoint gaat terug naar normaal als het overschot verdwijnt.
| Instelling | Standaard | Wat het doet |
|---|---|---|
| Normaal setpoint (°C) | 21 °C | Bedrijfstemperatuur in normale modus |
| Boost-verhoging (°C) | +2 °C | Hoeveel het setpoint in de Boost-toestand omhoog gaat |
| Max. setpoint (°C) | 55 °C | Veiligheidsgrens — SEM verhoogt het setpoint nooit boven deze waarde |
| Drempel geforceerd aan (W) | 5000 W | Overschotniveau waarbij SEM opschaalt van Boost naar Geforceerd aan |
Legionellapreventie
De planner heeft een ingebouwde legionellabeveiliging die voorrang krijgt. Heeft het warm water de temperatuur voor het doden van legionella langer dan een instelbare periode niet bereikt, dan wordt de warmtepomp op Geforceerd aan gezet, ongeacht het overschot. Dit gaat boven de normale sturing op overschot en zorgt dat aan de eisen voor de volksgezondheid wordt voldaan.
Warmwaterboiler (los van de warmtepomp)
Een losse warmwaterboiler (elektrische verwarming, warmtepompboiler
met een switch/water_heater/climate-entiteit, of elke andere
door HA te bedienen verwarming) kun je apart instellen via de sectie
tabblad Configuratie → Warm water. Anders dan de SG-Ready-route van de
warmtepomp is de warmwaterboiler een eenvoudig aan/uit-apparaat dat SEM aanstuurt.
| Configuratieveld | Wat je instelt |
|---|---|
| Stuurentiteit boiler | De switch.-, water_heater.– of climate.-entiteit die de boiler aan/uit zet |
| Temperatuursensor (optioneel) | Een sensor. die de actuele watertemperatuur in °C meldt |
| Zonnedoel | De boiler draait op overschot tot het water deze temperatuur heeft (standaard 50 °C) |
| Max. temperatuur | Veiligheidsgrens — SEM schakelt daarboven nooit in, ongeacht de modus (standaard 70 °C) |
| Legionelladoel | Doeltemperatuur voor de periodieke legionellacyclus (standaard 65 °C) |
| Minimumtemperatuur | Daaronder verwarmt SEM geforceerd uit elke bron — niet alleen zon (standaard 40 °C) |
| Prioriteit | Volgorde in de overschotverdeling (lager = eerst bediend, standaard 6) |
Als de temperatuursensor ontbreekt: SEM bedient de boiler “blind” —
het regelt aan/uit maar vertrouwt op de interne thermostaat van de boiler om
oververhitting te voorkomen. Dat is prima voor water_heater– en climate-apparaten
die hun eigen beveiliging regelen. Voor boilers met alleen een switch. wordt een
sensor sterk aanbevolen.
Als de ingestelde temperatuursensor uitvalt (meldt meer dan 5 minuten unavailable /
unknown / geen getal): SEM kiest de veilige kant — de boiler wordt niet
ingeschakeld op overschot totdat de sensor weer een echte waarde geeft. Er verschijnt een
reparatiemelding onder Instellingen → Systeem → Reparaties met de naam van de sensorentiteit, zodat
je weet welke integratie je moet nakijken.
Als de stuurentiteit van de boiler zelf onbeschikbaar wordt: verschijnt er een andere reparatiemelding, met de naam van de boilerentiteit. SEM stopt met het geven van aan/uit-commando’s totdat de entiteit herstelt (de commando’s zouden toch stilletjes niets doen, maar de reparatiemelding maakt de storing zichtbaar).
Diagnose: de 🩺 Diagnose-knop van de sectie Warm water (of de
service solar_energy_management.diagnose met section: "hot_water") geeft
een JSON-overzicht met de actuele temperatuurmeting, het
temperature_reading_path (uit welke bron de regeling leest —
separate_sensor, entity_attribute, no_source_configured, enz.),
het pad van de veiligheidsbeslissing en het aantal uren sinds de laatste legionellacyclus.
Plak het in een discussie of issue als SEM zich ooit niet gedraagt zoals verwacht.
Prioriteit ten opzichte van andere apparaten
Warmtepompen melden zich bij de overschotregeling aan zoals elk ander apparaat. Een gebruikelijke prioriteit is 3 of 4, waardoor de warmtepomp na de batterij komt (prioriteit 2) maar vóór het laden van de auto (prioriteit 5). Zo vult de zon eerst de batterij, verwarmt daarna water en laadt dan de auto.
11. Taalondersteuning
SEM ondersteunt 16 talen: Engels, Duits, Nederlands, Frans, Spaans, Italiaans, Portugees, Pools, Zweeds, Tsjechisch, Deens, Fins, Hongaars, Roemeens, Noors en vereenvoudigd Chinees.
De vertaling werkt in twee lagen:
Laag 1 — Dashboardlabels (aan de serverkant): vaste kaartlabels, astitels en sectiekoppen worden vertaald op het moment dat het dashboard wordt gegenereerd, in de servertaal die is ingesteld onder Instellingen > Algemeen. Alle gebruikers zien dezelfde labels voor de standaard HA-kaarten.
Laag 2 — Tekst in de eigen kaarten (per gebruiker, tijdens het tonen): de eigen kaarten van SEM (systeem-
diagram, titelkaarten, statuskaart van de laadpaal, periodekiezer) roepen bij elke weergave
semLocalize(key, lang) aan, met de taal uit het HA-profiel van elke gebruiker.
Gebruikers met verschillende taalvoorkeuren zien het SEM-
dashboard elk in hun eigen taal, zonder extra configuratie.
Je taal wijzigen:
- Klik op je profielpictogram linksonder in de zijbalk van HA
- Kies Taal
- Kies de taal die je wilt
- De eigen kaarten van SEM werken direct bij — het dashboard hoeft niet opnieuw te worden gegenereerd
De servertaal wijzigen (geldt voor de vaste labels van alle gebruikers):
- Ga naar Instellingen > Algemeen en wijzig de taal
- Voer
solar_energy_management.generate_dashboarduit om het dashboard opnieuw op te bouwen in de nieuwe taal
De bron voor alle vertalingen is dashboard/translations.json
(1341 sleutels in 16 talen). Wil je een vertaalcorrectie bijdragen of
een nieuwe taal toevoegen, zie dan
de Dashboardgids.
12. Veelgestelde vragen
Heb ik een batterij of laadpaal nodig om SEM te gebruiken?
Geen van beide. SEM werkt ook met alleen zon- en netsensoren en biedt dan monitoring, kostenbewaking en milieurapportage. Een batterij voegt sturing via SOC- zones en laden van de auto met batterijondersteuning toe. Een laadpaal voegt laden op zon en nachtplanning toe. Beide zijn optioneel en kunnen later worden toegevoegd via Configureren op de integratiepagina.
Mijn sensoren tonen “unavailable” na de installatie van SEM.
SEM leest bronsensoren uit het Energie-dashboard. Controleer of je omvormer
online is, of er onder Instellingen > Dashboards > Energie sensoren zijn
toegewezen en of die sensoren op dit moment waarden doorgeven, en bekijk daarna de logboeken onder
Instellingen > Systeem > Logboeken (filter op solar_energy_management). Kijk ook
op het tabblad Systeem van SEM, dat een diagnoseoverzicht van de sensoren toont.
Kan ik instellingen na de eerste installatie nog wijzigen?
Ja. Klik op Configureren op de SEM-kaart onder Instellingen > Apparaten & diensten. Alle instellingen zijn beschikbaar in de opties. Wijzigingen worden binnen één coördinatorcyclus actief (standaard 10 seconden).
SEM stuurde een commando naar een apparaat dat het niet mocht aanraken.
Zet de stuurmodus van dat apparaat op Uit via het tabblad Besturing van het SEM-
dashboard, of roep solar_energy_management.update_device_config aan met
mode: off. In de modus Uit houdt SEM het apparaat in de gaten maar stuurt het nooit aan.
Ik heb twee HA-installaties. Hoe voorkom ik dat ze elkaar in de weg zitten?
Zet de observatiemodus aan op de tweede installatie. Beide installaties kunnen
tegelijk sensoren uitlezen zonder conflict. Schakel via switch.sem_observer_mode
of het scherm Configureren — opnieuw installeren is niet nodig.
Directe sensoren voor netstroom per fase
De fasebewaking in observatiemodus kan óf een complete L1-L3-reeks directe RMS-sensoren voor de netstroom in ampère gebruiken, óf vermogen met teken per fase plus spanning. Een directe reeks heeft voorrang en moet alle drie de fasen uit één samenhangende meterfamilie bevatten. SEM weigert gemengde, onvolledige, onbeschikbare, verouderde, metingen in de verkeerde eenheid, negatieve en niet-eindige metingen in plaats van stilletjes van bron te wisselen. Het koppelen van radio, meter en veldbus blijft de verantwoordelijkheid van de hardware en de bijbehorende Home Assistant-integratie; SEM gebruikt alleen de resulterende sensorentiteiten in HA.
In observatiemodus draait SEM nog steeds elke cyclus zijn volledige beslislogica op je live
sensoren — het stuurt alleen nooit aan. Het logt elk commando dat het zou
hebben gestuurd (bijv. OBSERVER · WOULD ACTIVATE Heizband @ 800W [source=solar]), zodat
je precies kunt zien wat SEM zou doen — en kunt controleren of het klopt — voordat je
het ooit de controle over je hardware geeft.
Hoe weet SEM in welke richting mijn netvermogensensor meet?
SEM vergelijkt bij het opstarten het teken van je netsensor met de afname- en terugleveringstellers van het Energie-dashboard en corrigeert automatisch als dat nodig is. Dit werkt voor alle merken — Fronius en SolarEdge gebruiken positief = afname, terwijl Huawei en SMA positief = teruglevering gebruiken. Je hoeft niets in te stellen.
Trekt SEM mijn batterij leeg om de auto te laden?
Alleen boven 70% SOC (zone 3 en 4). Onder 70% krijgt de auto alleen puur overschot; onder 30% wordt de auto helemaal geblokkeerd. Zie SOC-zonestrategie voor de volledige logica.
Wat is slim nachtladen en moet ik het aanzetten?
Slim nachtladen beoordeelt of de netlading van vannacht nodig is. Is de zonnevoorspelling voor morgen sterk en de batterij redelijk vol, dan kan SEM de nachtlading overslaan of beperken — en zo geld besparen op netstroom. Zet het aan als SEM minstens een week draait. Het staat standaard uit omdat het een gekalibreerde voorspellingsintegratie en verbruikshistorie nodig heeft om nauwkeurige beslissingen te nemen.
Hoe lang duurt het voordat de voorspellingen van SEM nauwkeurig zijn?
Dag 1–2: ruwe schattingen, aanbevelingen voor overschotvensters onnauwkeurig. Dag 3–7: redelijke voorspellingen per uur, overschotvenster bruikbaar. Na twee weken: goed afgestemd op patronen van werkdagen en weekenden. Er is geen configuratie nodig — de voorspeller traint zichzelf automatisch op historische gegevens.
Waarom worden de dagelijkse energiewaarden bij zonsopkomst gereset en niet om middernacht?
Nachtelijke laadsessies van de auto (22:00–06:00) lopen over middernacht heen. Door bij zonsopkomst te resetten blijft de hele sessie in één dagvak, wat nauwkeuriger kosten- en energie- totalen per dag geeft.
De auto is aangesloten maar SEM laadt hem niet.
Controleer sensor.sem_charging_state. Toont die solar_waiting_battery_priority,
dan ligt de SOC van de batterij onder de prioriteitsdrempel en is de auto geblokkeerd. Toont die
solar_idle, dan is er geen zonne-overschot. Toont die night_target_reached,
dan is het dagdoel al bereikt. Toont die idle, dan herkent SEM de auto misschien
niet als aangesloten — controleer of de Verbonden-sensor die je
hebt ingesteld on meldt.
Kan ik SEM gebruiken met een tijdsafhankelijk tarief?
Ja. Zet de tariefmodus in de opties op Dynamisch en wijs SEM naar een HA-sensor die de actuele stroomprijs meldt (bijv. de integraties van Tibber of Octopus Energy). SEM gebruikt die gegevens om de goedkoopste uren te kiezen voor het nachtladen van auto en batterij.
Let op bij Tibber Pulse: sommige Tibber-accounts krijgen nooit de standaard
voorspellingssensor electricity_price van de Tibber-kernintegratie
(een probleem bij de bron — de realtime-sensor van de Pulse bevat geen prijsreeksen). Herken je
dat, installeer dan de HACS-integratie Tibber Grid Reward en zet
Dynamische tariefentiteit op de sensor.current_price daarvan — SEM leest de
reeksen today_raw/tomorrow_raw direct uit (v1.7.3-beta.10+). Controleer dit met
de actie solar_energy_management.diagnose (sectie tariff):
tariff_parsed_attribute hoort today_raw te melden.
Mijn dashboard toont witte tabbladen of “Custom element doesn’t exist”.
Sinds v1.7.5 is er geen HACS-kaart meer nodig, dus dit betekent meestal dat de eigen kaarten-
bundel van SEM niet is geladen — meestal door een verouderde browser-/service-worker-cache na een
update. Ververs hard (Ctrl+Shift+R op Windows/Linux, Cmd+Shift+R op Mac); in
de Companion-app wis je de frontend-cache. Een foutmelding “Custom element doesn’t exist”
met sem-* in de naam betekent dat de bundel ontbreekt — herstart Home
Assistant zodat SEM hem opnieuw registreert. Zie
de Dashboardgids voor de volledige kaartenlijst.
Hoe voeg ik een tweede laadpaal toe?
Klik op Configureren op de SEM-kaart en kies Laadpaal toevoegen om de laadpaalstap voor een tweede apparaat te doorlopen. SEM geeft elke laadpaal een eigen ID en houdt sessies, vermogen en kosten per laadpaal bij. Zie Meerdere apparaten voor de prioriteit bij meerdere laadpalen en de details van de overschotverdeling.
De pagina wordt vooringevuld met een laadpaal die SEM in je entiteitenregister heeft gevonden en nog niet beheert — een apparaat dat je al hebt ingesteld wordt nooit een tweede keer aangeboden, dus de suggesties gaan altijd over de nieuwe laadpaal. Is er niets gevonden, dan blijven de velden leeg; vul ze dan met de hand in.
Er is automatisch een verkeerde entiteit herkend — hoe verwijder ik die?
Maak het veld leeg en sla op. Optionele kiezers (start-/stopschakelaar, stroom-
sensor, laadmodus-keuzelijst, de phase_guard_*-sensoren, de warmtepomp-
relais, de tariefentiteiten) behandelen een leeg veld als “dit systeem heeft er
geen”, en SEM stopt met het gebruik van die sleutel. Verplichte velden kunnen niet leeg worden gemaakt —
wijs ze in plaats daarvan naar de juiste entiteit. Vóór v2.0.0-beta.4 werd een leeggemaakt
veld gelezen als “ongewijzigd” en bleef de oude waarde staan.
SEM gebruikt te veel CPU op mijn Raspberry Pi.
Verhoog het update-interval in de opties van 10 naar 30 seconden. SEM reageert dan minder snel op snelle veranderingen in de zon, maar gebruikt aanzienlijk minder CPU. Op zeer beperkte hardware is 60 seconden ook prima.
Hulp krijgen
Zet debuglogging aan door het volgende toe te voegen aan configuration.yaml:
logger:
logs:
custom_components.solar_energy_management: debug
Bekijk de logboeken onder Instellingen > Systeem > Logboeken (filter op solar_energy_management).
- Veelvoorkomende problemen: Probleemoplossing
- Problemen met het dashboard: Dashboardgids
- Meerdere omvormers en laadpalen: Meerdere apparaten
- Architectuur en ontwikkeldetails: ARCHITECTURE.md (Engels)
Mis geen nieuwe SEM-versie
Krijg een mail bij nieuwe SEM-versies, bijgewerkte Nederlandse documentatie en praktijkcijfers. Je downloadt direct ook de gratis checklist voor het einde van de saldering.
Geen spam. Afmelden kan altijd met één klik.