Met en SMA omvormer zijn de opties om je teruglevering terug te regelen beperkt. Naast de universele mogelijkheden kun je via de web interface de teruglevering beperken tot alleen je eigen verbruik. Maar als groene nerd wil je dit natuurlijk kunnen automatiseren, zodat bij negatieve energieprijzen automatisch de teruglevering wordt gestopt. Gelukkig ondersteunt SMA modbus en kun je via die route je de teruglevering van je zonnepanelen stoppen. Op deze pagina beschrijven we hoe je dat doet met Home Assistant.
Geschikt voor
Succesvol getest met
Met dank aan
Universele methoden om je omvormer uit te schakelen
In dit artikel focussen we ons op de manieren om specifiek een Huawei omvormer te laten stoppen met het produceren van zonne-energie. Er zijn ook nog een aantal universele methoden die je kunt toepassen om je omvormer uit te schakelen. Meer over deze universele methoden lees je in het dossier zonnepanelen uitzetten.
De teruglevering limiteren of stoppen via web
De Sunny Home Manager 2.0 (SHM 2.0) functioneert als het centrale controle- en beheersysteem voor intelligent energiemanagement binnen het SMA ecosysteem. Voor gebruikers die beschikken over een SHM 2.0, biedt dit systeem doorgaans de meest eenvoudige methode om op negatieve energieprijzen te reageren. De bijbehorende energiemeter op het netaansluitpunt is hierbij cruciaal, omdat de SHM 2.0 real-time data over de energiestroom van en naar het net nodig heeft om de omvormer(s) nauwkeurig aan te sturen.
Hoewel de productie van zonnestroom via het Sunny Portal niet volledig gestopt kan worden, biedt SHM 2.0 wel de mogelijkheid om de teruglevering naar het net op 0 kW (of 0%) in te stellen. In deze configuratie blijven de zonnepanelen stroom produceren voor direct eigen verbruik binnen de woning (en dus ook voor het laden van eventueel aanwezige thuisbatterijen). Er vindt echter geen export van stroom naar het elektriciteitsnet plaats.
- Log in op het Sunny Portal.
- Navigeer naar ‘Configuratie’.
- Ga naar ‘Installatie-eigenschappen’.
- Selecteer het tabblad ‘Parameters’.
- Scroll naar beneden tot de sectie ‘Bewerking van de teruglevering van werkelijk vermogen’.
- Klik op ‘Bewerken’.
- Stel de teruglevering in op 0 kW of 0%.
- Klik onderaan de pagina op ‘Opslaan’ om de wijziging door te voeren.
Vergeet niet deze instelling weer ongedaan te maken (bijvoorbeeld terugzetten naar 100% of de standaardwaarde) zodra de energieprijzen weer positief zijn, om te voorkomen dat potentiële opbrengsten uit teruglevering worden misgelopen.
De teruglevering slim stoppen of beperken via modbus en Home Assistant
Maar we zijn niet voor een gat te vangen. Wanneer je beschikt over installateursrechten, zijn er meer opties beschikbaar om de teruglevering te beperken of te stoppen. Met een installateursaccount kun je namelijk bij een ‘zero-export’ en ‘vermogensbegrenzing’ functie.
Modbus-registers en exacte instellingen kunnen verschillen per SMA omvormermodel en firmwareversie. Deze instructies zijn gebaseerd op gedeelde gebruikerservaringen en dienen als leidraad.
(Optioneel) Landnorm controleren: Een gebruiker meldde dat bij vreemde waarden op Modbus-register 41255
, het controleren en eventueel aanpassen van de “Landnorm” (bijvoorbeeld naar [NL]
) kan helpen. Deze instelling is vaak te vinden onder “Netbewaking”.
Benodigdheden:
- Een SMA omvormer die Modbus TCP ondersteunt.
- Installateursrechten voor je SMA omvormer (om Modbus in te schakelen en instellingen te wijzigen).
- Een werkende Home Assistant installatie.
Stap 1: SMA omvormer configureren
- Inloggen op de omvormer: Log in op de webinterface van je SMA omvormer met installateursrechten.
- Modbus TCP inschakelen: Zoek de Modbus-instellingen (vaak onder “Apparaatparameters” -> “Modbus”). Schakel de Modbus TCP-server in. De standaardpoort is
502
. - Externe aansturing activeren:
- Navigeer naar de instellingen voor vermogensregeling (“Installatie- en apparaatbesturing” -> “Configuratie werkvermogen” of “System and device control” -> “Grid connection point”).
- Stel de parameter “Bedrijfsmodus voorinstelling actief vermogen” (of een vergelijkbare benaming zoals “Operating mode of active power limitation”) in op “Externe voorinstelling” (External) of “External active power setpoint”. Dit staat de omvormer toe om sturing van een extern systeem zoals Home Assistant te accepteren.

Stap 2: Home Assistant Modbus integratie configureren
De Modbus-integratie is een kernintegratie in Home Assistant. Je voegt deze toe en configureert deze doorgaans via het configuration.yaml
bestand van Home Assistant.
- Open je
configuration.yaml
bestand. Dit bestand bevindt zich in de hoofdconfiguratiemap van je Home Assistant installatie. Je kunt dit bewerken via de “File editor” add-on in Home Assistant. - Voeg de Modbus-configuratie toe. Kopieer en plak de onderstaande YAML-code in je
configuration.yaml
bestand. Als je al eenmodbus:
sectie hebt, voeg dan een nieuw item (beginnend met- type: tcp
) toe onder die sectie. - Pas het IP-adres (
host
) aan naar het IP-adres van jouw SMA omvormer.
YAML
modbus:
- type: tcp
host: 192.168.xxx.xxx # VERVANG DIT MET HET IP-ADRES VAN JE SMA OMVORMER
port: 502
name: "sma_modbus_hub" # Je kunt hier een eigen naam kiezen
delay: 5
message_wait_milliseconds: 600
timeout: 5
sensors:
# Sensor om het actuele vermogen uit te lezen
- name: "SMA Actueel Vermogen"
unique_id: sma_actueel_vermogen
unit_of_measurement: W
slave: 3 # Standaard Unit ID voor SMA omvormers
address: 30775 # Register voor actueel vermogen (kan per model verschillen, zie de SMA documentatie)
input_type: input
data_type: int32
device_class: power
state_class: measurement
# Sensor om de huidige ingestelde limiet uit te lezen
- name: "SMA Huidige Limiet Watt"
unique_id: sma_huidige_limiet_watt
unit_of_measurement: W
slave: 3
address: 31405 # Register voor uitlezen ingestelde limiet in Watt
input_type: input
data_type: int32
device_class: power
state_class: measurement
# Sensor voor het uitlezen van de procentuele limiet (Holding Register)
# Dit is ook het register waar we later naar schrijven
- name: "SMA Ingestelde limiet procent"
unique_id: sma_ingestelde_limiet_procent
unit_of_measurement: "%"
slave: 3
address: 41255 # Holding register voor vermogenslimiet in %
input_type: holding
data_type: int16 # Let op: data_type kan int16 of uint16 zijn afhankelijk van omvormer
scale: 0.01 # Waarde 5000 wordt 50.00%
precision: 0 # Of 2 voor decimalen indien gewenst
state_class: measurement
# Voeg hier eventueel andere sensoren toe die je wilt uitlezen (temp, isolatieweerstand etc.)
Code language: PHP (php)
Uitleg van de configuratie:
host
: Het IP-adres van je SMA omvormer.port
: De Modbus TCP poort, standaard502
.name
: Een zelfgekozen naam voor deze Modbus hub.slave: 3
: De Unit ID (of Slave ID) van de SMA omvormer. Dit is doorgaans3
voor directe communicatie met SMA omvormers.address
: Het Modbus-registeradres. De adressen30775
(actueel vermogen),31405
(uitlezen limiet in Watt) en41255
(instellen/uitlezen limiet in %) zijn gebaseerd op de gedeelde gebruikerservaringen. Raadpleeg de officiële SMA Modbus-documentatie voor jouw specifieke omvormer voor de correcte en officieel ondersteunde registers.input_type
:input
voor read-only input registers,holding
voor holding registers die gelezen en geschreven kunnen worden.data_type
: Het type data in het register (bijv.int32
,int16
).scale
enprecision
: Voor het correct weergeven van de waarden. Register41255
wordt vaak gebruikt met een schaal van0.01
omdat de omvormer een waarde als5000
kan verwachten voor 50.00%.
Stap 3: Home Assistant helper aanmaken limietinstelling
Om de vermogenslimiet eenvoudig via de Home Assistant interface in te stellen, maak je een input_number
helper aan:
- Ga in Home Assistant naar “Instellingen” -> “Apparaten & Diensten” -> tabblad “Helpers”.
- Klik op “+ Helper aanmaken”.
- Kies “Nummer”.
- Geef het een naam, bijvoorbeeld “SMA vermogenslimiet percentage”.
- Stel een minimum (bijv.
0
), maximum (bijv.100
) en stapgrootte (bijv.1
) in. - Kies een eenheid, bijvoorbeeld
%
. - Klik op “Aanmaken”. De entiteit ID zal zoiets zijn als
input_number.sma_vermogenslimiet_percentage
.
Stap 4: Home Assistant automatisering voor het instellen van de limiet
Maak een automatisering die de waarde van de input_number
helper naar het Modbus-register van de omvormer schrijft.
YAML
alias: SMA limiet instellen via Modbus
description: Stelt de terugleverlimiet van de SMA omvormer in via Modbus
trigger:
- platform: state
entity_id: input_number.sma_vermogenslimiet_percentage # VERVANG DIT met de ID van jouw input_number
condition: # Geen condities nodig voor dit basisvoorbeeld
action:
- service: modbus.write_register
data:
hub: sma_modbus_hub # Naam van je Modbus hub uit configuration.yaml
slave: 3 # Unit ID van de omvormer
address: 41255 # Het holding register voor de vermogenslimiet in %
# De waarde moet vaak geschaald worden. Als het register 0-10000 verwacht voor 0-100%:
value: "{{ states('input_number.sma_vermogenslimiet_percentage') | float(0) * 100 | int }}"
# Als het register direct 0-100 verwacht:
# value: "{{ states('input_number.sma_vermogenslimiet_percentage') | int }}"
mode: single
Code language: PHP (php)
Uitleg van de automatisering:
trigger
: De automatisering start wanneer de waarde van deinput_number.sma_vermogenslimiet_percentage
verandert.action
: Roept demodbus.write_register
service aan.hub
: Verwijst naar de naam van je Modbus-configuratie inconfiguration.yaml
.address: 41255
: Het Modbus holding register dat je wilt beschrijven.value
: De waarde die je wilt schrijven. De template{{ states('input_number.sma_vermogenslimiet_percentage') | float(0) * 100 | int }}
neemt de procentuele waarde van de helper (bijv. 50), vermenigvuldigt deze met 100 (resulteert in 5000), en stuurt dit als integer. Pas deze formule aan als jouw omvormer een andere schaal verwacht voor dit register.
Hier een voorbeeld. Voor de waarde van de numeric input te veranderen, stuurt de automatisering het percentage via modbus naar je omvormer.

Stap 5: Slim aansturen op basis van dynamische energieprijzen
Nu de basis gelegd is, kunnen we de automatisering instellen om de teruglevering tot 0 terug te schroeven als de energieprijs negatief is. Onderstaand voorbeeld maakt daarbij gebruik van de Tibber integratie om de dynamische energietarieven uit te lezen.
alias: SMA teruglevering beperken bij negatieve energieprijs
description: Beperkt de teruglevering van de SMA omvormer tot 0% wanneer de energieprijs negatief is, en zet terug naar 100% als de prijs niet negatief is.
trigger:
- platform: state
entity_id:
- sensor.electricity_price_tibber
condition:
action:
- if:
- condition: numeric_state
entity_id: sensor.electricity_price_tibber
below: 0
then:
# Actie als de prijs negatief is: zet SMA omvormer limiet op 0%
- service: modbus.write_register
data:
hub: sma_modbus_hub # Naam van je Modbus hub
slave: 3 # Unit ID van je SMA omvormer
address: 41255 # Modbus register voor vermogenslimiet in %
value: 0 # Waarde voor 0% (0 * 100)
- service: notify.notify # Vervang 'notify.notify' door jouw notificatiedienst
metadata: {}
data:
message: >-
Energieprijs is negatief. Teruglevering SMA omvormer ingesteld op 0%.
title: Negatieve Energieprijs Actie
else:
# Actie als de prijs niet negatief is (0 of hoger): zet SMA omvormer limiet op 100%
- service: modbus.write_register
data:
hub: sma_modbus_hub # Naam van je Modbus hub
slave: 3 # Unit ID van je SMA omvormer
address: 41255 # Modbus register voor vermogenslimiet in %
value: 10000 # Waarde voor 100% (100 * 100)
- service: notify.notify # Optioneel: notificatie dat de limiet is hersteld
metadata: {}
data:
message: >-
Energieprijs is niet langer negatief. Teruglevering SMA omvormer ingesteld op 100%.
title: Energieprijs Normaal
mode: single
Code language: PHP (php)

Als data-gedreven marketeer weet Danny als geen ander hoe je je energie thuis kunt managen. Zo laadt hij z’n elektrische fiets op als de zon schijnt. Dankzij zijn interesse in duurzaamheid en techniek kan hij je alles vertellen over een slimme, duurzame woning.
Ik ben al een tijdje op zoeken naar een oplossing als deze, en dit artikel komt heel aardig in de buurt. Bedankt om dit te delen!
Hopelijk kan je mij over de laatste hindernis helpen.
Ik bezit een Sunny Home Manager 2 en een Sunny tripower 8.0 SE
Het begrenzen van de teruglevering zoals beschreven in “De teruglevering limiteren of stoppen via web” werkt zoals het hoort, al heb ik bij mij een extra optie:
– geen begrenzing
– max %
– max kW
– Alleen externe richtlijnen implementeren (–> extra optie die niet in jouw screenshot staat)
Nu wil ik dit ook automatiseren via modbus, maar hier zit ik vast.
– modbus op omvormer staat aan
– omvormer instelling “Bedr.mod. voorinstel. act. vermogen” = “Externe instelling werkelijk vermogen”
– uitlezen van modbus data lukt zonder probleem
– zelfs het uitvoeren van een reboot van de omvormer via modbus lukt (modbus adres 40077)
Maar dan:
– uitlezen van adres 41255 geeft waarde 0, maar ik zie geen beperking in teruglevering
– ik kan waardes schrijven naar 41255 en ook terug uitlezen, maar geen effect op de teruglevering
Vragen:
– zie jij een mogelijke issue?
– als jij in de Sunny Portal (web) een waarde ingeeft bij begrenzing in %, zie je die waarde dan ook terug komen in de modbus 41255?
En omgekeerd ook? Zie je de waardes die je schrijft naar modbus 41255 ook terug komen op de Sunny Portal?
Hi Gregoy,
Ik zou wel verwachten dat je die waarden terugziet ja. Ik weet wel dat omvormers vaak erg traag reageren en dat het wellicht daar in zou kunnen zitten.
Ik heb nog eens wat modbus handleidingen van SMA bekeken, en daar hebben ze het soms ook over modbus register 41167, zie https://files.sma.de/downloads/EDMx-Modbus-TI-en-16.pdf.
Wellicht is dat nog iets om te proberen?
Hi Danny,
Bedankt voor de snelle response!
40493 en 41167 lijken niet te bestaan voor mijn omvormer.
Wel ergens gelezen dat SMA in Q3 een update van Home Manager zal releasen die rekening houdt met dynamische prijzen. En hopelijk ook zero export automatiseert adhv de dynamische prijzen…
Ik zal nog even geduld moeten oefenen.
Hy dear, I hope this finds you well.
After a few days we reached your site and saw that the blog of your site is most beautiful and also traffic is good. So we decided to post an article and link instructions on your website. We know it takes some fee. So we agreed to pay a fee. Please tell us all your detail as like price of guest post and link instructions.
We are waiting for your good response.
With best regards