Over mij

Energie besturing met Home Assistant

Deze pagina is gemaakt met als doel om mijn zelf gebouwde automatisering in Home Assistant te documenteren. Misschien is er een liefhebber die dit op Github kan zetten, je bent welkom. Ik heb geen ervaring met Github maar heb wel een account, Hhalewijn. Dus wees dan in ieder geval zo vriendelijk om naar mij te verwijzen.

HomeMatic integratie

Een eerste belangrijk component dat ik gebruik is het monitoren van diverse tussenmeters in mijn meterkast. Deze worden gemonitord door mijn domotica installatie HomeMatic. Ook de besturing van laadpaal, warmtepomp en alle apparatuur in huis verloopt via sensoren en aktoren in HomeMatic. Er is dus een integratie gemaakt tussen HomeMatic en HomeAssistant.

In configuration.yaml heb ik een include opgenomen:

homematic: !include homematic.yaml

 

De homematic.yaml file bevat de volgende regels:

#Homematic configuration

interfaces:

wireless:

host: 192.168.2.3

port: 2001

wired:

host: 192.168.2.3

port: 2000

IP:

host: 192.168.2.3

port: 2010

 

Achter de wired poorten zitten de frequentie meters die de pulsen meten van de tussenmeters.

In HomeAssistant kan ik deze pulsen overnemen en vertalen naar sensoren. Deze zijn benoemd in configuration.yaml

template:

– sensor:

– name: “EV_Laadpaal_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_18_frequency’) | float * 3.6 * 10.0}}

– sensor:

– name: “EV_Solar_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_16_frequency’) | float * 3.6 * 1.0}}

– sensor:

– name: “EV_Tuinhuis_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_17_frequency’) | float * 3.6 * 1.0}}

– sensor:

– name: “EV_Heating_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_15_frequency’) | float * 3.6 * 1.0}}

– sensor:

– name: “EV_Huishoudverbruik_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_19_frequency’) | float * 3.6 * 10.0}}

– sensor:

– name: “EV_Boot_Actueel”

device_class: power

unit_of_measurement: W

state: >

{{ states(‘sensor.leq0147882_20_frequency’) | float * 3.6 * 10.0}}


 

 

Integratie Victron Energy componenten

 

De integratie met Victron Energy via een CX device loopt over Modbus. Hiervoor is geen specifieke integratie nodig of beschikbaar. Wel moeten de sensoren gemaakt worden. Er zijn vele honderden registers die je kunt uitlezen. Ik heb de belangrijkste hieronder opgenomen.

LET OP! De slave ID’s en register adressen kunnen per configuratie afwijken. Raadpleeg dus eerst de modbus documentatie van Victron en maak gebruik van de referentie Excel sheet die je kunt downloaden van de Victron website.

Ik heb gekozen voor Modbus ipv MQTT omdat volgens de documentatie van Victron de poorten van MQTT wel eens wijzigen met software releases.

Eerst in configuration.yaml de volgende include:

modbus: !include modbus.yaml

 

In de file modbus.yaml dan de volgende sensoren definieren:

# modbus victron ess

– name: victron

retry_on_empty: true

retries: 10

type: tcp

host: 192.168.2.86

port: 502

# REMARK: scan_interval: <5 can cause troubles

sensors:

– name: ‘VE AC Consumption L1’

unit_of_measurement: “W”

slave: 100

address: 817

data_type: uint16

scan_interval: 5

device_class: power

 

– name: ‘VE AC Consumption L2’

unit_of_measurement: “W”

slave: 100

address: 818

data_type: uint16

scan_interval: 5

device_class: power

 

– name: ‘VE AC Consumption L3’

unit_of_measurement: “W”

slave: 100

address: 819

data_type: uint16

scan_interval: 5

device_class: power

 

– name: ‘VE Grid power L1’

unit_of_measurement: “W”

slave: 100

address: 820

data_type: int16

scan_interval: 5

device_class: power

 

– name: ‘VE Grid power L2’

unit_of_measurement: “W”

slave: 100

address: 821

data_type: int16

scan_interval: 5

device_class: power

 

– name: ‘VE Grid power L3’

unit_of_measurement: “W”

slave: 100

address: 822

data_type: int16

scan_interval: 5

device_class: power

 

– name: ‘VE Critical Loads power L1’

unit_of_measurement: “W”

slave: 246

address: 23

data_type: int16

scale: 10

scan_interval: 5

device_class: power

 

– name: ‘VE Critical Loads power L2’

unit_of_measurement: “W”

slave: 246

address: 24

data_type: int16

scale: 10

scan_interval: 5

device_class: power

 

– name: ‘VE Critical Loads power L3’

unit_of_measurement: “W”

slave: 246

address: 25

data_type: int16

scale: 10

scan_interval: 5

device_class: power

 

# GRID meter waarden

 

 

# ESS Settings

– name: ‘VE ESS Minimum SoC setpoint’

unit_of_measurement: “%”

data_type: uint16

slave: 100

address: 2901

scan_interval: 5

scale: 0.1

 

– name: ‘VE Maximum System Grid Feed In’

unit_of_measurement: “W”

data_type: uint16

slave: 100

address: 2706

scale: 0.01

device_class: power

# command_on: 4000

# command_off: 40

# verify_state: false

 

– name: ‘VE ESS BatteryLife state’

data_type: uint16

slave: 100

address: 2900

scan_interval: 5

 

– name: ‘VE ESS Grid setpoint’

unit_of_measurement: “W”

data_type: int16

slave: 100

address: 2700

device_class: power

 

 

#Battery

– name: ‘VE Battery current’

unit_of_measurement: “A DC”

slave: 100

address: 841

data_type: int16

scale: 0.1

precision: 0

device_class: current

 

– name: ‘VE Battery Power System’

unit_of_measurement: “W”

slave: 100

address: 842

data_type: int16

scale: 1.0

precision: 0

device_class: power

 

# VE Charge power. deze gebruiken voor omrekenen van min en pos

– name: ‘VE Charge Power System’

unit_of_measurement: “W”

slave: 100

address: 866

data_type: int16

scale: 1.0

precision: 0

device_class: energy

 

– name: ‘VE Battery State of Charge System’

unit_of_measurement: “%”

slave: 100

address: 843

data_type: uint16

scale: 1

precision: 0

 

– name: ‘VE Battery Discharged Energy’

unit_of_measurement: “kWh”

slave: 245

address: 301

data_type: uint16

scale: 0.1

precision: 0

device_class: energy

state_class: total_increasing

 

– name: ‘VE Battery Charged Energy’

unit_of_measurement: “kWh”

slave: 245

address: 302

data_type: uint16

scale: 0.1

precision: 0

device_class: energy

state_class: total_increasing

 

# Victron device over Modbus: vebus

# Grid Voltage

– name: ‘VE Grid Voltage L1 in’

unit_of_measurement: “V AC”

slave: 246

address: 3

data_type: uint16

scale: 0.1

offset: 0

precision: 2

device_class: voltage

 

– name: ‘VE Grid Voltage L2 in’

unit_of_measurement: “V AC”

slave: 246

address: 4

data_type: uint16

scale: 0.1

offset: 0

precision: 2

device_class: voltage

 

– name: ‘VE Grid Voltage L3 in’

unit_of_measurement: “V AC”

slave: 246

address: 5

data_type: uint16

scale: 0.1

offset: 0

precision: 2

device_class: voltage

 

– name: “VE Multi Inverter State”

slave: 246

address: 31

data_type: uint16

# Inverter States, 0=Off;1=Low Power;2=Fault;3=Bulk;4=Absorption;5=Float;6=Storage;7=Equalize;8=Passthru;9=Inverting;10=Power assist;11=Power supply;252=Bulk protection

 

#Alarm Sensors

– name: ‘VE Grid lost alarm’

slave: 246

address: 64

data_type: uint16

unit_of_measurement: “0=Ok;1=Warning”

 

– name: ‘VE Multi Temperature alarm’

slave: 246

address: 34

data_type: uint16

unit_of_measurement: “0=Ok;1=Warning;2=Alarm”

 

– name: ‘VE Multi Overload alarm’

slave: 246

address: 36

data_type: uint16

unit_of_measurement: “0=Ok;1=Warning;2=Alarm”

 

#### Binary sensors (no binary in victron) ########

# binary_sensors:

 

Er is geen sensor die het vermogen weergeeft van de 3 fasen opgeteld. Daarom heb ik in configuration.yaml nog een extra sensor gemaakt die een berekening maken adhv enkele modbus sensoren. Ook heb hier de Modbus write sensor gemaakt die we straks gebruiken om het laad en ontlaad proces te besturen adhv de day-ahead tarieven. De Victron ESS wordt dus bestuurd mbv modbus write via de sensor ESS_Grid_Setpoint. Hiervoor is een automation gemaakt in HomeAssistant. Zie verder.

– sensor:

– name: “VE Grid Power”

device_class: power

unit_of_measurement: W

state: >

{{ states(“sensor.ve_grid_power_l1”) |float + states(“sensor.ve_grid_power_l2”) | float + states(“sensor.ve_grid_power_l3”) |float }}

– sensor:

– name: “ESS_Grid_Setpoint”

## use this to set ESS grid setpoint. Values are determined by maximum grid connection point

## substract value from 65535 for negative vaule

device_class: power

unit_of_measurement: W

state: >

{% if is_state(“input_number.ess_grid_feedin”, “0.0”) -%}

0

{%- elif is_state(“input_number.ess_grid_feedin”, “1.0”) -%}

17250

{%- elif is_state(“input_number.ess_grid_feedin”, “-1.0”) -%}

48285

{%- endif %}

 

Op basis van deze 2 integraties kan een dashboard in Home Assistant worden gemaakt die de actuele gegevens weergeeft.

Integratie SolarEdge en P1

Ik heb aan Home Assistant toegevoegd de integratie met SolarEdge voor de zonnestroom informatie. Hierbij moet wel opgemerkt worden dat deze gegevens 1x per 15 minuten worden opgehaald. De informatie is dus alleen statistisch van waarde, je kunt er nauwelijks mee sturen.

Ook heb ik een Youless energie meter aan de P1 poort van de slimme meter gekoppeld. Dit levert enkele extra sensoren op en samen met de eerdere integraties kun je nu het Home Assistant Energy dashboard inrichten.

Onderin het scherm kun je de overige sensoren toevoegen. In mijn situatie zijn dat dus de sensoren die ik via HomeMatic inlees:

Ik heb als extra integratie de Forecast Solar integratie toegevoegd. Deze kan de solar forecast in het energy dashboard weergeven. Maar ik vind de kwaliteit onvoldoende om hiervan gebruik te maken. Zeker als je een bijzondere solar configuratie hebt diverse oriëntaties zoals ik.

Het dashboard ziet er dan zo uit:

De energie tarieven die op de kaart zijn ingevuld komen verderop aan bod. Dit zijn namelijk de berekende tarieven vanuit de day-ahead tool.

Day ahead software

Voor de day ahead software moeten er een aantal componenten worden toegevoegd aan Home Assistant: Node Red en MQTT broker. Dit zijn standaard add-ons die via een menu knop geinstalleerd kunnen worden.

Ik heb gebruik gemaakt van wat code die ik via Internet heb gevonden: https://community.home-assistant.io/t/electricity-day-ahead-prices-for-home-assistant-using-node-red-and-entso-e-api/394484

De reden om met ENTSO te werken is dat dit een europees prijssysteem is waarvan de nederlandse providers zoals Nieuwestroom of ANWB hun prijzen ook vandaan halen. Bovendien hoef je geen contract te hebben om de data van de ENTSO website af te halen. Wel moet je eenmalig een API aanvragen, dit kun je via bovenstaande link terughalen.

De code heb ik op enkele plaatsen wat aangepast dus ik plaats hieronder opnieuw de schermafdrukken en de aangepast code. Zo heb ik in de berekening de waarden geconverteerd en bereken ik een gemiddelde, maximale en minimale prijs.

Allereerst de MQTT sensor in configuration.yaml

mqtt:

sensor:

– state_topic: entsoe/day-ahead

name: ‘Day-ahead-price’

unit_of_measurement: “€”

value_template: ‘{{ value_json.day_ahead_price }}’

json_attributes_topic: entsoe/day-ahead

 

Dan in Node Red de volgende entiteiten:

Ik heb daar een paar kleine aanpassingen in gedaan:

De code in de Generate URL node:

const today = new Date()

let todayDate = (“0” + today.getDate()).slice(-2)

let todayMonth = (“0” + (today.getMonth() + 1)).slice(-2);

let todayYear = today.getFullYear();

let todayString = todayYear + todayMonth + todayDate;

 

var urlAddr = “https://transparency.entsoe.eu/api?securityToken=c47d0846-ac4a-4b5c-8c90-2e51eea542a0&documentType=A44&in_Domain=10YNL———-L&out_Domain=10YNL———-L&periodStart=” + todayString + “0000&periodEnd=” + todayString + “2300”

msg.url = urlAddr;

return msg;

 

De code in de Generate Aray node:

var priceArray = [];

var avgprice = 0;

var maxprice = 0;

var minprice = 9999;

for (let i = 0; i < 24; i++) {

priceArray[i] = parseFloat (msg.payload.Publication_MarketDocument.TimeSeries[0].Period[0].Point[i][“price.amount”][0]);

avgprice = avgprice + parseFloat (priceArray[i]);

if (parseFloat(priceArray[i]) > maxprice) {

maxprice = parseFloat(priceArray[i]);

}

if (parseFloat(priceArray[i]) < minprice) {

minprice = parseFloat(priceArray[i]);

}

}

avgprice = (avgprice / 24);

priceArray[24] = (avgprice);

priceArray[25] = (maxprice);

priceArray[26] = (minprice);

flow.set(“pArray”, priceArray);

msg.payload = { “day_ahead_price”: priceArray };

return msg;

 

Dan voor de 2e flow die elk uur draait de volgende instellingen in de node gemaakt:

De timing is relevant (ook in de 1e flow) omdat ik heb gemerkt dat de timing anders niet geheel verloopt zoals je wenst; op het hele uur. Dat heeft met een bug of gedrag van Node Red te maken.

Dan de code in de node Get next hour rate

var priceArray = [];

priceArray = flow.get(“pArray”);

const today = new Date();

let todayHour = today.getHours();

let todayDate = (“0” + today.getDate()).slice(-2)

let todayMonth = (“0” + (today.getMonth() + 1)).slice(-2);

let todayYear = today.getFullYear();

 

msg.payload = {

“day_ahead_price”: priceArray[todayHour] / 1000,

“avg_price”: priceArray[24] / 1000,

“max_price”: priceArray[25] / 1000,

“min_price”: priceArray[26] / 1000,

“records”: [

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T00:00:00”,

“Price”: priceArray[0] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T01:00:00”,

“Price”: priceArray[1] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T02:00:00”,

“Price”: priceArray[2] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T03:00:00”,

“Price”: priceArray[3] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T04:00:00”,

“Price”: priceArray[4] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T05:00:00”,

“Price”: priceArray[5] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T06:00:00”,

“Price”: priceArray[6] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T07:00:00”,

“Price”: priceArray[7] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T08:00:00”,

“Price”: priceArray[8] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T09:00:00”,

“Price”: priceArray[9] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T10:00:00”,

“Price”: priceArray[10] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T11:00:00”,

“Price”: priceArray[11] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T12:00:00”,

“Price”: priceArray[12] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T13:00:00”,

“Price”: priceArray[13] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T14:00:00”,

“Price”: priceArray[14] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T15:00:00”,

“Price”: priceArray[15] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T16:00:00”,

“Price”: priceArray[16] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T17:00:00”,

“Price”: priceArray[17] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T18:00:00”,

“Price”: priceArray[18] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T19:00:00”,

“Price”: priceArray[19] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T20:00:00”,

“Price”: priceArray[20] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T21:00:00”,

“Price”: priceArray[21] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T22:00:00”,

“Price”: priceArray[22] / 1000

},

{

“Time”: todayYear + “-” + todayMonth + “-” + todayDate + “T23:00:00”,

“Price”: priceArray[23] / 1000

}

]

};

return msg;

 

Zoals je ziet zijn de waarden hier meteen al geconverteerd naar centen.

En tot slot de MQTT node:

Het IP adres is het adres van mijn HA installatie. Het poort adres van de MQTT broker die daarop draait.

Na bewaren en deploy moet je zien dat de MQTT broker verbinding maakt. Je kunt dan de waardes inlezen.

Hierna kun je Apexchart maken. Ik heb deze gemodificeerd als volgt:

type: custom:apexcharts-card

experimental:

color_threshold: true

graph_span: 24h

show:

last_updated: true

span:

start: day

header:

title: Day Ahead Prices

standard_format: false

show: true

show_states: false

colorize_states: true

apex_config:

chart:

height: 250

stroke:

width: 1

curve: smooth

now:

show: true

color: red

label: Nu

yaxis:

– min: -0.1

max: 1

decimals: 2

apex_config:

tickAmount: 11

series:

– entity: sensor.day_ahead_price

type: column

unit: ‘ €’

float_precision: 3

show:

header_color_threshold: true

data_generator: |

return entity.attributes.records.map((record, index) => {

return [record.Time, record.Price];

});

color_threshold:

– value: 0.1

color: lightgreen

– value: 0.2

color: green

– value: 0.3

color: yellow

– value: 0.4

color: orange

– value: 0.5

color: orangered

– value: 0.6

color: red

– value: 0.7

color: purple

 

En dat moet dan ongeveer dit resultaat opleveren:

Om de verschillende waarden uit de sensor.day-ahead-price atributen te halen, heb ik nieuwe sensoren gedefinieerd in configurations.yaml (templates dus).

– sensor:

– name: “Day_Ahead_Avg_Price”

device_class: monetary

unit_of_measurement: €

state: >

{{ state_attr (‘sensor.day_ahead_price’, ‘avg_price’)}}

– sensor:

– name: “Day_Ahead_Current_Price”

#device_class: monetary

unit_of_measurement: €/kWh

state: >

{{ state_attr (‘sensor.day_ahead_price’, ‘day_ahead_price’)}}

– sensor:

– name: “Day_Ahead_Min_Price”

device_class: monetary

unit_of_measurement: €

state: >

{{ state_attr (‘sensor.day_ahead_price’, ‘min_price’)}}

– sensor:

– name: “Day_Ahead_Max_Price”

device_class: monetary

unit_of_measurement: €

state: >

{{ state_attr (‘sensor.day_ahead_price’, ‘max_price’)}}

– sensor:

– name: “Day_Ahead_Lowerband_Price”

device_class: monetary

unit_of_measurement: €

state: >

{{ (1-(states (‘input_number.ess_price_lower_band’)) | int / 100) * (states (‘sensor.day_ahead_avg_price’) | float ) }}

– sensor:

– name: “Day_Ahead_Upperband_Price”

device_class: monetary

unit_of_measurement: €

state: >

{{ (1+(states (‘input_number.ess_price_upper_band’)) | int / 100) * (states (‘sensor.day_ahead_avg_price’) | float )}}

 

Automations

In principe ben je nu klaar om automations te maken met de sensoren die nu gemaakt zijn.

Ik heb hiervoor de grafische interface gebruikt maar in enkele gevallen moet je de yaml code zelf invullen of aanpassen. Deze automations sturen de switches aan die op hun beurt dus aktoren zijn in mijn HomeMatic domotica systeem. Ik ben op dit moment bezig met het verder uitwerken van diverse scenario’s. Hier zal dus nog wel het e.e.a. aan gewijzigd gaan worden, net als aan de scripts in mijn domotica installatie.

Het resultaat uit mijn automations.yaml file:

– id: ‘1662234306246’

alias: Switch on Energy Storage and Energy Consumers

description: ”

trigger:

– platform: numeric_state

entity_id: sensor.day_ahead_price

attribute: day_ahead_price

below: sensor.day_ahead_lowerband_price

condition: []

action:

– service: switch.turn_on

data: {}

target:

entity_id:

– switch.peq1418450_7

– service: input_number.set_value

data:

value: 1

target:

entity_id: input_number.ess_grid_feedin

– service: switch.turn_off

data: {}

target:

entity_id: switch.peq1418450_8

mode: single

– id: ‘1662899027507’

alias: Set ESS Grid Feed by Modbus

description: This automation sets the Victron ESS Grid feed to in, out or 0

trigger:

– platform: state

entity_id:

– input_number.ess_grid_feedin

condition: []

action:

– service: modbus.write_register

data:

address: 2700

slave: 100

value: ‘{{ states(”sensor.ess_grid_setpoint”) }}’

hub: victron

mode: single

– id: ‘1663360219833’

alias: Switch off Energy Storage and Consumers and Dump Energy to Grid

description: ”

trigger:

– platform: numeric_state

entity_id: sensor.day_ahead_price

attribute: day_ahead_price

above: sensor.day_ahead_upperband_price

condition:

– condition: numeric_state

entity_id: sensor.ve_battery_state_of_charge_system

above: 50

action:

– service: switch.turn_off

data: {}

target:

entity_id: switch.peq1418450_7

– service: input_number.set_value

data:

value: -1

target:

entity_id: input_number.ess_grid_feedin

– service: switch.turn_on

data: {}

target:

entity_id: switch.peq1418450_8

mode: single

– id: ‘1663360672817’

alias: Switch off Energy Storage and set Grid setpoint to 0

description: ”

trigger:

– platform: numeric_state

entity_id: sensor.day_ahead_price

attribute: day_ahead_price

above: sensor.day_ahead_lowerband_price

below: sensor.day_ahead_upperband_price

condition: []

action:

– service: switch.turn_off

data: {}

target:

entity_id:

– switch.peq1418450_8

– switch.peq1418450_7

– service: input_number.set_value

data:

value: 0

target:

entity_id: input_number.ess_grid_feedin

– service: switch.turn_off

data: {}

target:

entity_id: switch.peq1418450_9

mode: single

– id: ‘1663598422950’

alias: Switch Energy Dump if SoC below 50

description: ”

trigger:

– platform: numeric_state

entity_id: sensor.ve_battery_state_of_charge_system

below: 50

condition: []

action:

– service: input_number.set_value

data:

value: 0

target:

entity_id: input_number.ess_grid_feedin

mode: single

– id: ‘1664573680849’

alias: VSW ultra switch on

description: Schakelt schakelaar aan als de elec prijs zeer laag is.

trigger:

– platform: numeric_state

entity_id: sensor.day_ahead_price

attribute: day_ahead_price

below: 0.02

condition: []

action:

– service: switch.turn_on

data: {}

target:

entity_id: switch.peq1418450_9

mode: single

– id: ‘1664573871793’

alias: VSW ultra switch off

description: ”

trigger:

– platform: numeric_state

entity_id: sensor.day_ahead_price

attribute: day_ahead_price

above: 0.02

condition: []

action:

– service: switch.turn_off

data: {}

target:

entity_id: switch.peq1418450_9

mode: single

 

 

Wishlist

 

Dit draait nu een paar weken en ik begin er aardig wat ervaring mee op te doen. Wat ik mis is een voorspelling voor de volgende dag. De day-ahead prijzen zijn in de loop van de middag bekend en eigenlijk wil je die al weten om daarmee het laden/ontladen en het sturen van andere aktoren voor de rest van de dag, optimaal te kunnen besturen. Via de link uit de HA community (hiervoor) heb ik gezien dat ook anderen hiermee bezig zijn. Dus ik ga dat nog verder volgen.

Een uitgewerkt concept voor een thuisbatterij

Als antwoord op de sterk gestegen vraag naar een oplossing voor thuisopslag heb ik bedrijfsmatig (via mijn bedrijf Hetslimmehuis) samen met ECO-Lithium (leverancier van batterijen) enkele standaard concepten ontwikkeld met behulp van het Victron Energy Storage System ESS.

In dit artikel tref je de verschillende mogelijkheden die wij voor je kunnen samenstellen. Natuurlijk is er nog veel meer mogelijk, maar door de keuze wat te beperken én toch ook rekening te houden met groei in de toekomst, kun je met deze oplossingen een mooie start maken met het opslaan en hergebruiken van jouw eigen opgewekte energie. Nieuwsgierig? Check ook het Youtube kanaal.

Vier opties of maatwerk

Wij hebben vier opties nader uitgewerkt. Deze vier opties hebben gemeen dat zij gebruik maken van bestaande PV-omvormers (AC type) zoals SMA, GroWatt, GoodWe of SolarEdge, met uitzondering van optie 4. Bij deze laatste is gekozen voor een zonnelader van Victron Energy die wordt geïntegreerd in het ESS.

  1. Een enkel fase oplossing, geschikt tot 5 kWp bestaand PV vermogen, met een ECO-Lithium batterij van 11 kWh bruto capaciteit (9 kWh nuttig te gebruiken);
  2. Een drie fase oplossing, geschikt tot 5 kWp bestaand PV vermogen, met een ECO-Lithium batterij van 15 kWh bruto capaciteit (14 kWh nuttig te gebruiken).
  3. Een drie fase oplossing, geschikt tot 15 kWp bestaand PV vermogen, met een ECO-Lithium batterij van 15 kWh bruto capaciteit (14 kWh nuttig te gebruiken).
  4. Als extra keuze hebben wij een 3 fasen oplossing samengesteld met een SmartSolar MPPT laadregelaar voor zonnepanelen met een aansluitwaarde van 6-11kWp. Hierbij past een 15kWh batterij. Voor deze optie heb je dan zelf geen AC omvormer meer nodig en er is minder energieverlies.

Uiteraard zijn ook andere configuraties mogelijk, neem in dat geval contact met ons op.

Batterijen kunnen wij op dit moment leveren in de grootte van 11 kWh of 15 kWh. Meerdere sets kunnen parallel geschakeld worden tot bijvoorbeeld 22 kWh, 30 kWh of 45 kWh.

Uitgangspunten

Voor deze oplossingen hebben wij de volgende uitgangspunten samengesteld. Deze uitgangspunten zijn gebaseerd op onze ervaringen.

  • Hetslimmehuis is van mening dat een thuis batterij alleen bestaansrecht heeft als deze wordt aangesloten op een PV (zonnepanelen) installatie. Natuurlijk kun je het opslagsysteem ook gebruiken zonder een PV-systeem maar erg logisch is dat niet.
  • Als vuistregel voor de omvang van de batterij hanteren wij het gemiddelde dagverbruik over een jaar gemeten. Bijvoorbeeld: u verbruikt jaarlijks 3.500 kWh elektriciteit in uw huishouden (zonder verrekening/saldering van PV opwek), hierbij past een capaciteit van 3500/365=9.6 kWh batterij.
  • Een tweede vuistregel zegt ons dat de batterij capaciteit moet passen bij de capaciteit van de hybride omvormer van Victron én bij de opwek capaciteit van jouw PV installatie.
    • Voorbeeld 1: je hebt 10 zonnepanelen van elk 350 Wp, totaal dus 3.500 Wp, aangesloten op een enkelfase GroWatt omvormer van 3.500 Watt. De omvormer van Victron moet in staat zijn om dit vermogen in de batterij te laden of uit de batterij te halen. Hierbij past een Multiplus II 5000 VA.
    • Voorbeeld 2: je hebt 16 zonnepanelen van elk 350 Wp, totaal 5.600 Wp, aangesloten op een 3 fasen omvormer van SolarEdge van 5 kW. In dit geval kies je de 3-fasen oplossing van Victron met 3 stuks Multiplus II 3000 VA. Samen hebben deze een opgeteld vermogen dat ruim voldoende is om dit opgewekte vermogen in de batterijen te laden of uit de batterijen te halen.
    • Voorbeeld 3: je hebt 24 panelen van elk 350 Wp, totaal 8.400 Wp, aangesloten op een 3 fasen omvormer van SMA van 8 kW. je hebt dan 2 keuzes: je kunt kiezen voor de 3 fasen oplossing met 3 stuks Multiplus II 3000 (maximaal 5,5 kW laden/ontladen) of 3 stuks Multiplus II 5000 (maximaal 11 kW laden/ontladen).
  • Een grotere batterij dan door ons bepaald heeft geen voordeel. Je moet immers ook in staat zijn om de batterij te laden met voldoende zonnestroom. In de zomer kan een 3.500 Watt PV omvormer gemiddeld 20 kWh op een dag “oogsten”, daar gaat dan het eigen verbruik voor bijvoorbeeld vaatwasser, keukenboiler e.d. vanaf. Stel dat dit overdag 5 kWh is, dan is er maximaal 15 kWh beschikbaar voor de batterij. Een te grote batterij heeft dus geen zin. De kans is groot dat er te veel dagen in het jaar zijn dat de batterijen niet voldoende geladen kunnen worden. Een batterij gaat langer mee als deze minder wordt gebruikt maar de batterij is beveiligd tegen te diepe ontlading.
  • De omvang van de Victron omvormers is van invloed op de maximale belasting die kan optreden in geval van een netspanningsstoring of als u werkelijk al het verbruik in jouw huis wenst te compenseren tot 0.
    • Voorbeeld 1: het benodigd vermogen voor jouw huishouden is s ‘avonds 2.000 Watt. Als de stroom uitvalt wil je dat alle apparatuur die samen die 2.000 Watt verbruikt, blijft functioneren. Alle opties kunnen dit ondersteunen.
    • Voorbeeld 2: het benodigd vermogen voor jouw huishouden is s ‘avonds 2.000 Watt en de laadpaal staat aan en verbruikt ook 3.500 Watt. In geval van een stroomstoring kan dat niet opgevangen worden door de Victron omvormers en zullen deze overbelast worden. In dat geval kiezen wij ervoor om zware verbruikers (zoals boilers, warmtepomp, laadpaal e.d.) parallel te schakelen met de Victron omvormers. Dit betekent in ons voorbeeld dat de laadpaal gedurende de stroomstoring uit zal gaan maar de overige apparaten in jouw huis gewoon blijven functioneren. Overbelasting van omvormers wordt zo voorkomen.
    • Voorbeeld 3: het benodigde vermogen voor jouw huishouden is op een grijze regenachtige dag 2.000 Watt. De zonnepanelen leveren slechts 500 Watt. Het Victron Energie systeem zal het verschil compenseren door 1.500 Watt uit de batterijen te halen zodat jij  geen stroom hoeft te kopen. Maar als plotseling de laadpaal wordt aangezet met een vermogen van 11.000 Watt is dit te veel om gecompenseerd te worden door de Victron Multiplus II 3000. Deze levert maximaal 5.500 Watt in drie fasen. Het nettoverschil zal vanaf het elektriciteitsnetwerk worden geladen (2.000+11.000-500-5.500=7.000 Watt.

Wat zit er in onze Victron ESS oplossing?

Afhankelijk van de gekozen optie krijg je 1 of 3 omvormers en een batterij van 11 kWh of 15kWh door ons geleverd. Daarnaast een Cerbo CX besturingseenheid met een 5 inch Touchscreen en een Lynx distributie eenheid inclusief zekeringen voor het aansluiten van de batterij en de bekabeling van en naar de meterkast. Ook worden er veiligheidsautomaten geleverd zodat de installatie veilig aangesloten kan worden op de huisinstallatie in de meterkast.

Het geheel wordt door ons gemonteerd op een houten multiplexplaat, voorzien van een brandvertragende coating die uiteindelijk op een droge, stofvrije en vorstvrije plaats in of nabij de woning moet worden geplaats. Tegen een meerprijs kan een volledig rvs-kast met afsluitbare deuren worden geleverd waarin de installatie wordt geplaatst. De omvormers kunnen in warme zomerse omstandigheden geluid produceren. De ruimte waarin de apparatuur wordt geplaatst moet dus geventileerd kunnen worden.

In uw meterkast wordt een extra tussenmeter geplaatst die met een datakabel wordt verbonden met de Cerbo CX besturingseenheid. In de meterkast splitsen wij de noodzakelijke aansluitingen naar de woning (verlichting, keuken, televisie e.d.) van de niet noodzakelijke aansluitingen (boiler, warmtepomp, laadpaal e.d.). Daarnaast wordt een extra veiligheidsautomaat in de meterkast gebouwd. Als de meterkast onvoldoende ruimte heeft voor deze uitbreidingen, leveren wij een uitbreiding tegen een kleine meerprijs.

Het gemonteerde systeem heeft een totaalgewicht van 50-150 kg, afhankelijk van de uitvoering (exclusief de optionele rvs-straatkast. Daarnaast krijgt u de batterijen geleverd. Een batterij van 10 kWh heeft een gewicht van 60 kg. Een batterij van 15 kWh heeft een gewicht van 85 kg. Batterijen kunnen op de grond worden geplaatst maar wij kunnen ook exemplaren leveren die tegen de muur worden geplaatst. Neem contact met ons op voor de mogelijkheden.

Hieronder zijn de 4 opties nader uitgewerkt.

Optioneel kan een extra batterij worden toegevoegd tegen de volgende prijs:

  • 10 kWh        € 4.400,-
  • 15 kWh        € 6.000,-
  • Meerprijs RVS-buitenkast is op aanvraag en afhankelijk van de situatie.

Momenteel ontwikkelen wij software waarmee het mogelijk is om op basis van de energietarieven, energie in te kopen of te verkopen via het batterij systeem. Zodra wij een werkend en stabiel systeem hebben, zullen wij je hierover berichten. De verwachting is dat dit eind 2022 tot een eerste versie kan leiden.

Opstelling optie 1: 1 fase Multiplus II-5000

Optie 1: Enkel Fase 5kVA/10kWh
Victron Multiplus II 5000 48/70-50 PMP482505010 1
Victron Cerbo X ESS controller BPP900450100 1
Victron Touchscreen HDMI 50 BPP900455050 1
Victron Touchscreen wallmount BPP900465050 1
Victron Carlo Gavazi gridmeter ET112 REL300100000 1
Victron RS485 to USB 5 mtr kabel ASS030572050 1
Victron SmartShunt 500A SHU050150050 1
Victron Megafuse zekering CIP137250010 2
ECO-Lithium 10kW batterij ECO-Lithium 10/48 1
Toebehoren (kabels, automaten) 1
Montage kosten 1
TOTAAL, excl. BTW € 8.350,-

Opstelling optie 2: 3 fasen Multiplus II-3000

Optie 2: drie-fasen 9kVA/15kWh
Victron Multiplus II 3000 48/35-32 PMP482305010 3
Victron Cerbo X ESS Controller BPP900450100 1
Victron Touchscreen HDMI 50 BPP900455050 1
Victron Touchscreen wallmount BPP900465050 1
Victron Carlo Gavazi gridmeter ET340 REL300300000 1
Victron RS485 to USB 5 mtr kabel ASS030572050 1
Victron SmartShunt 500A SHU050150050 1
Victron Lynx Distributor LYN060102000 1
Victron Mega Fuse 250A CIP137250010 4
Eco-Lithium batterij 15kWh/48V ECO-Lithium 15/48 1
Toebehoren (kabels, automaten) 1
Montage Kosten 1
TOTAAL, excl. BTW € 11.950,-

Opstelling optie 3: 3 fasen Multiplus II 5000

Optie 3: drie-fasen 15kVA/15kWh
Victron Multiplus II 5000 48/70-50 PMP482505010 3
Victron Cerbo X ESS Controller BPP900450100 1
Victron Touchscreen HDMI 50 BPP900455050 1
Victron Touchscreen wallmount BPP900465050 1
Victron Carlo Gavazi gridmeter ET340 REL300300000 1
Victron RS485 to USB 5 mtr kabel ASS030572050 1
Victron SmartShunt 500A SHU050150050 1
Victron Lynx Distributor LYN060102000 1
Victron Mega Fuse 250A CIP137250010 4
Eco-Lithium batterij 15kWh/48V ECO-Lithium 15/48 1
Toebehoren (kabels, automaten) 1
Montage Kosten 1
TOTAAL excl. BTW € 13.750,-

Optie 4: 3 fasen Multiplus II 3000 inclusief SmartSolar MPPT 6-11kWp

Optie 4: drie-fasen 9kVA/15kWh, incl SmartSolar 6-11kWp
Victron Multiplus II 3000 48/35-32 PMP482305010 3
Victron Cerbo X ESS Controller BPP900450100 1
Victron Touchscreen HDMI 50 BPP900455050 1
Victron Touchscreen wallmount BPP900465050 1
Victron Carlo Gavazi gridmeter ET340 REL300300000 1
Victron RS485 to USB 5 mtr kabel ASS030572050 1
Victron SmartShunt 500A SHU050150050 1
Victron Lynx Distributor LYN060102000 1
Victron Mega Fuse 250A CIP137250010 5
Victron MPPT Smartsolar RS450/100 SCC145110410 1
Eco-Lithium batterij 15kWh/48V ECO-Lithium 15/48 1
Toebehoren (kabels, automaten) 1
Montage Kosten 1
TOTAAL excl. BTW € 13.500,-

Garantie en overige voorwaarden

  • Alle prijzen in deze aanbieding zijn excl. 21% BTW.
  • Deze prijslijst is geldig voor het 3e kwartaal van 2022. Prijzen na 1 oktober 2022 zijn nog onbekend.
  • Er zijn nog geen landelijke subsidies voor Energie Opslag Systemen. Neem contact met je gemeente of er lokale subsidies beschikbaar zijn. Zakelijk zijn er wel subsidies, zoals VAMIL (EIA). Neem contact met RVO voor meer informatie.
  • Op het werkende systeem leveren wij een garantie van 5 jaar. Voor een Doe Het Zelf oplossing geldt alleen de garantie op defecte onderdelen.
  • Het Victron ESS vereist een Internet aansluiting. Hiermee kunt u als eigenaar en wij als systeem integrator het systeem monitoren en eventuele storingen oplossen. Een ethernet aansluiting is aan te bevelen, ook voor toekomstige functionele uitbreidingen. Optioneel kan tegen meerprijs een Wifi oplossing worden geboden als de reikwijdte van uw Wifi niet toereikend is.
  • Het Victron ESS beschikt standaard over een backup-faciliteit: bij stroomuitval blijft de woning volledig voorzien van stroom. Dit vereist wel een extra kabel tussen de Victron ESS omvormers en de meterkast (samen dus 2 kabels!). Kies altijd een 6mm2 kabel (enkel fase of 3-fase, afhankelijk van de gewenste opstelling).
  • Levertijd is in overleg en afhankelijk van de beschikbaarheid van onderdelen.
  • Leveringsvoorwaarden Hetslimmehuis zijn van toepassing. Deze zijn beschikbaar op onze website: https://www.hetslimmehuis.nl/leveringsvoorwaarden

Een publiek bedankje

Lieve mensen,

Vier jaar geleden was ik best trots dat ik na mijn ondernemerschap als wethouder een bijdrage mocht gaan leveren aan een betere maatschappij. Want zo voelt dat. Je hebt idealen over hoe de samenleving kan zijn en als je daar een praktische bijdrage aan wilt leveren, moet je dat vooral als lokaal bestuurder gaan doen.

Maar hoe doe je dat? Waar begin je dan? Welke knoppen zijn er om aan te draaien en waar zitten die knoppen? Als ondernemer neem je zelf de touwtjes in handen en kies je koers. Maar de overheid is geen bedrijf. Al snel kreeg ik de vraag wat ik van het wethoudersvak vond. En zeker de eerste 1 ½ jaar antwoordde ik dan met twijfels. Wat doe ik hier en waar ben ik aan begonnen?

Ik miste het raadswerk. Dat zag ik toch als een leuke competitie, een wedstrijd. Je zoekt coalities voor jouw standpunten, verdiept je in de inhoud en viert een overwinning als de wedstrijd is gewonnen. Maar die competitie is er niet in een college. Ik zat bijna altijd met kromme tenen te luisteren naar raadsvergaderingen. Maar ingrijpen kun je niet. De raad is immers het hoogste orgaan. En de wethouder moet zijn plek kennen.

Ik twijfelde of dit wel mijn ding was. En toen daar de vertrouwenscrisis en het bestuurlijke gedoe met Oostzaan, de directie en het MT en leegloop van personeel achteraan kwam, overwoog ik serieus om mijn wethoudersbaan op te zeggen.

Toch heb ik geleerd.
Als je iets wil veranderen moet je het complete systeem doorgronden en tot de grond toe durven afbreken om er iets beters voor terug te bouwen. Het vraagt lef. Een mooie term is trouwens creatieve destructie. En daarna kun je er nog wat aan schaven en vijlen.

Maar ook:
Kies je voor handelen vanwege een verkregen mandaat of kies je voor handelen op basis van wederzijds vertrouwen?
Blijf je hangen in goede intenties en getekende overeenkomsten of toon je daadkracht met zichtbaar resultaat?
Doe je 5 dingen half of heb je focus en doe je 1 ding goed?
Gaan we neuzelen over punten en komma’s of nemen we een besluit op basis van de inhoud?

Ik denk dat een goede bestuurder naast visie vooral over een gezonde portie lef, focus en daadkracht moet beschikken. En geduld natuurlijk.
Tja, daar blink ik niet zo in uit. 😉

Ik ben trots op het behaalde resultaat met de jeugdzorg. Rust in de uitvoering en vooral onderscheidende resultaten. Ik wil iedereen die daaraan heeft meegewerkt bedanken voor hun enthousiasme en inzet om samen iets moois neer te zetten voor de jeugd in Wormerland en misschien ook wel voor andere gemeenten in de toekomst.

Ik ben trots op het behaalde resultaat met het afval dossier. Natuurlijk had het eerder opgeleverd moeten worden maar je hebt niet alle omstandigheden onder controle. Maar dankzij de focus en de vele uren die ik via Facebook, telefoon, appjes e.d. met inwoners heb gecommuniceerd heb ik het gevoel dat er inmiddels een geaccepteerd systeem is ingevoerd. Natuurlijk moet er hier en daar nog wat geschaafd en gevijld worden.

Ik ben blij dat er goede plannen liggen voor een duurzame toekomst voor Wormerland. Maar met plannen alleen kom je er niet, we moeten nu daadkracht tonen met de echte energietransitie. Mijn kinderen verdienen ook een toekomst.

Het is leuk dat er nieuwe reuring in het Dorpshuis in Wijdewormer is gekomen. Lekker eten en compleet met cabaret. Er ligt nog een gevalletje Westertil overigens. Maar vooral ben ik blij met de wijze waarop de samenwerking met Oostzaan en de directie is hersteld.

In de zomer vorig jaar kreeg ik de smaak van besturen een beetje te pakken. De resultaten binnen mijn portefeuilles werden beter zichtbaar en tastbaar. En dan zie je opeens andere onderwerpen die in onze gemeente aandacht behoeven en waar ik wel een bijdrage aan zou kunnen leveren. En dus zag ik een 2e termijn wel zitten. Daar is het niet van gekomen, de kiezer wilde iets anders en dan moet je concluderen dat 4 jaar eigenlijk te kort is. Dus ik ga wat anders doen.

Eén onderwerp houd ik vast: de energietransitie. Daar is veel in te doen en daar zoek ik nu nieuwe uitdagingen. Na de zomer ga ik als vrijwillig Energiecoach onze inwoners helpen bij het realiseren van besparingen op de energierekening. Maar ook professioneel ben ik al bezig met leuke projecten op het gebied van besparing en duurzame opwek en opslag. Mijn actieve aanwezigheid op de sociale media werkt als een mooi uithangbord en ik ga vast nog veel plezier beleven aan mijn nieuwe projecten.

Dank jullie wel voor het vertrouwen en de samenwerking, het ga jullie goed!

Bevroren warmtepomp

Verwarmen met een aan/uit warmtepomp en een stooklijn

Ik heb nu 5 jaar een warmtepomp in gebruik en ben daar best tevreden over. Ik heb er al wat blogjes over geschreven. Het hele verwarmingssysteem heb ik zelf gebouwd door verschillende oplossingen te integreren. De warmtepomp zelf is van Chinese makelij. Simpel aan/uit maar redelijk efficiënt en weinig tot geen mogelijkheden om hem speciaal aan te sturen. Toch ben ik gaan zoeken naar manieren om met zo min mogelijk energie het huis en het tuinhuis te verwarmen. En verwarmen met een stooklijn is zoiets.

De eerste 4 jaar schakelde de warmtepomp in als de temperatuur in het buffervat onder de 35 graden Celsius kwam. Dat zou de ideale temperatuur moeten zijn voor de vloerverwarming. Maar ik merkte ook dat het tuinhuis daar eigenlijk tekort aan had. Er zitten wat leidingverliezen in de ondergrondse leidingen en het is een houten huisje met weinig accumulerend vermogen. Bovendien werd het buffervat ook wel eens onnodig opgewarmd naar die 35 graden. Bijvoorbeeld als er helemaal geen warmtevraag was.

Het optimaliseren is dus begonnen met het koppelen van het opwarmen aan de warmtevraag. En als het tuinhuis warmte nodig had, verhoogde ik de temperatuur met 3 graden om het verlies te compenseren. Het hielp in het energieverbruik maar er moest meer inzitten. In de tijd dat ik het huis nog met een gas CV ketel verwarmde, heb ik de weersafhankelijke regeling met een stooklijn juist uitgeschakeld. Dat had een positief effect op de gasrekening.

Tijd om mij eens te verdiepen in het concept van stooklijnen: afhankelijk van de buitentemperatuur en enkele variabelen bereken je de optimale en gewenste temperatuur van het water dat in de vloerverwarming wordt gepompt. In veel stooklijnberekeningen kun je ook rekenen met het vermogen van de warmtebron. In mijn geval kan dat niet, de warmtepomp is een aan/uit systeem en werkt niet modulerend. Dat maakt mijn formule iets eenvoudiger.

Formule voor stooklijn berekening

Er is heel erg veel te lezen op Internet over stooklijnen en adaptief stoken. Ik heb mij beperkt tot een relatief eenvoudige aanpak en heb proefondervindelijk de volgende formule samengesteld en toegepast:

Stookwaarde = 20 + Stooklijn * (voetpunt – buitentemperatuur )

  • De stookwaarde is dan de temperatuur die nodig is voor de vloerverwarming. En die waarde is geen vaste waarde maar deze is afhankelijk van een paar variabelen:
  • 20 is de basis temperatuur (zonder verliezen) om de woning op 20 graden te houden bij een buitentemperatuur van 20. Deze waarde is o.a. afhankelijk van je eigen gewenste comfort maar ook van de warmteverliezen én warmte inbreng (vd zon bijvoorbeeld) van de woning. Ik heb deze waarde proefondervindelijk vastgesteld.
  • Stooklijn is een vast getal dat past bij het type verwarmingsinstallatie, het afgiftesysteem dus en de mate van isolatie. Voor vloerverwarming kies je 0.7. Voor radiatoren kun je 1.2 kiezen en voor een gecombineerd afgifte systeem van vloerverwarming en radiatoren bijvoorbeeld 1.0. Uit mijn gas-cv-tijdperk weet ik dat de waarden in de handleidingen veel hoger waren en meestal afgestemd op een hoge ketelwatertemperatuur. Om die reden heb ik de stooklijn voor het tuinhuis op 0.9 ingesteld. Met een lagere temperatuur van 55 graden kan ook de Stooklijn-waarde naar beneden. Idem voor een lage temperatuur warmtepomp in een super geïsoleerd huis met een optimaal warmteafgiftesysteem.
  • Voetpunt is het punt waarop bij een buitentemperatuur van 20 graden, het warmteafgiftesysteem nog warmte afgeeft om de 20 graden (de basis temperatuur) in huis te behouden. Ik gebruik hiervoor 2 waarden: 20 voor de woning en 24 voor het tuinhuis waarbij de correctie in de leidingverliezen dan worden verrekend.
  • Buitentemperatuur is de gemeten buitentemperatuur van een sensor van het domoticasysteem.

Al deze waarden moet je proefondervindelijk vaststellen. Daar gaat wel wat tijd overheen! Ik had veel data verzameld in de afgelopen jaren en kon de verkregen meetgegevens mooi naast de berekende waarden leggen om te bekijken of de formule standhield. Een Excelsheet kan helpen om de berekende waarden per temperatuur te vinden:

En dit resulteert dan in een grafiek:

Ik heb de formule vervolgens verwerkt in een script voor mijn domotica systeem:

! Script voor stooklijn berekenen en stelt var VV Stookwaarde in

! Dit script berekent de stookwaarde obj2 aan de hand van een formule en een paar vaste waarden

! de formule is Stookwaarde = 20 + Stooklijn * ( voetpunt – buitentemperatuur (obj1) )

! het voetpunt is vastgesteld op 24 graden voor Tuinhuis en 20 graden voor de woning

! De stooklijn is vastgesteld op 0,9 (vloerverwarming met verlies) voor tuinhuis en 0,7 voor de woning

! de buitentemperatuur wordt in een ander script gemeten en berekend en is een Variabele obj1

! de berekende aanvoertemperatuur wordt in een variabele gestopt voor verdere verwerking

! in het besturingsprogramma voor de Warmtepomp obj8

!Defineer de variabelen

real obj1 = dom.GetObject(“HmIP-RF.0010DD898987E1:1.ACTUAL_TEMPERATURE”).Value();

real obj2 = dom.GetObject(‘VV Stookwaarde’);

real obj5 = dom.GetObject(“ThermTHaanv”);

var obj6 = dom.GetObject(‘WP-Stay-Off’);

var obj7 = dom.GetObject(‘Warmtevraag Tuinhuis’);

var obj8 = dom.GetObject(“BidCos-Wired.PEQ1418450:1.STATE”);

var obj9 = dom.GetObject(‘Warmtevraag Woning’);

var BuitenTemp= obj1;

var Stookwaarde = obj2.Value();

var Aanvoer = obj5.Value();

var WPuit = obj6.Value();

var WarmtevraagTuinhuis = obj7.Value();

var WarmtevraagWoning = obj9.Value();

!bereken nu het voetpunt en de stooklijn

if (WarmtevraagWoning == 1)

{

real Voetpunt = 20.0;

real Stooklijn = 0.7;

if (WarmtevraagTuinhuis == 1)

{

real Voetpunt = 24.0;

real Stooklijn = 0.9;

}

!Bereken nu de Stookwaarde

if (Voetpunt == 0)

{

real Voetpunt = 20;

real Stooklijn = 0.7;

}

Stookwaarde = 20.0 + (Stooklijn * (Voetpunt – BuitenTemp));

WriteLine (Stookwaarde);

!Schrijf de stookwaarde terug naar Variabele

dom.GetObject (obj2).State(Stookwaarde);

! Nu gaan we de Warmtepomp sturen

!Controleer eerst of de Warmtepomp aan staat ivm energiesturing, anders exit

if (WPuit == 1)

{

! (“de warmtepomp staat uit”);

obj8.State(0);

quit;

}

! Nu gaan we de Warmtepomp sturen

! Controleer daarna of er warmtevraag is, anders exit

if ((WarmtevraagTuinhuis == 0) && (WarmtevraagWoning == 0))

{

! (“er is geen warmtevraag”);

obj8.State(0);

quit;

}

! Controleer de aanvoer temperatuur

if (Aanvoer > Stookwaarde)

{

! (“er hoeft geen warmte geleverd te worden”);

! schakel dan de warmtepomp uit

obj8.State(0);

quit;

}

if (Aanvoer < Stookwaarde)

{

! (“er is warmte nodig”);

! schakel de warmtepomp aan

obj8.State(1);

}

Groot besparingseffect

Dit script draait nu ruim 15 maanden en ik heb dus een heel stookseizoen kunnen kijken welk effect dit zou hebben op comfort en elektriciteitsverbruik. Er is geen comfort verschil. Door de juiste waarden te kiezen (proefondervindelijk vastgesteld) en deze te vertalen naar de formule, is een prima comfort in zowel de woning als in het tuinhuis te vinden. Maar de verschillen in energieverbruik zijn spectaculair; er is maar liefst 29% energie bespaard met deze regeling!

Dus het verschil tussen een dynamische regeling op basis van buitentemperatuur of een regeling die warmte vasthoudt in een buffer is zo groot dat ik mijzelf afvraag waarom ik dit niet eerder heb bedacht.

Bijkomend effect: verhoogde opbrengst van zonneboilers

En dan is er nog iets. Doordat de temperaturen in het buffervat nu lager waren, bleek de zonneboiler beter instaat om in de winterperiode toch nog warmte toe te voegen. De zonneboilers komen in de winter normaal gesproken niet boven de 30 graden uit. Maar doordat het buffervat nu minder warm werd gestookt door de warmtepomp konden de zonneboilers toch nog een bijdrage leveren. En dat levert dus nog een extra rendement op voor de warmtepomp omdat de retourtemperatuur van de vloerverwarming onderin het buffervat wordt gemengd met de afgifte van de zonneboilers. En laat die temperatuur nou net op of boven de retourtemperatuur komen. De winst in de koude kwartalen is bijna 110%!

Secundaire winst

Er is ook nog bijvangst. Door deze regeling hoeft de warmtepomp niet meer te pendelen rondom de vastgestelde waarde van 35 graden. Hij wordt nu alleen geschakeld als er werkelijk warmtebehoefte is. Daarnaast wordt de warmtepomp voor een periode van minstens 20 minuten aangeschakeld. Overtollige energie wordt daarmee alsnog in het buffervat opgeslagen maar algemeen draait de warmtepomp veel rustiger, minder vaak gestart en zal daardoor de levensduur toenemen.

Hoera.

Trots op onze jeugdzorg

Vorige week kreeg ik de fantastische bevestiging dat onze gewaagde keus om de jeugdzorg in Wormerland op een andere manier te organiseren, positief uitpakt voor onze kinderen en gezinnen. Uit de regionale rapportage van de Jeugdbescherming bleek dat er een daling is van het aantal gezinnen in de jeugdbescherming van 5,5% voor onze regio. Maar Wormerland laat de grootste daling zien, in totaal een afname van 48%!

Toen ik als wethouder in 2019 kennis maakte met de Jeugdbescherming maakte ik kritische opmerkingen over hun functioneren. Natuurlijk is de Jeugdbescherming er primair om kinderen te beschermen of onder toezicht van een voogd te stellen. Zoals beschermen van het kind tegen huiselijk geweld, suïcidaal gedrag, verwaarlozing of zelfs tegen crimineel gedrag. De jeugdbescherming kan hiervoor diverse vormen van begeleiding bieden, tot en met het uithuisplaatsen van een jongere. Dat zijn vergaande maatregelen. En vaak ook maatregelen die lang effect hebben op het functioneren en opgroeien van kinderen. Mijn kritiek was vooral gericht op de gezinssituatie. Want je kunt een kind wel beschermen maar als de ouders verslaafd zijn, of in bittere armoede leven, of het ‘normaal’ vinden dat hun kinderen met echtelijk ruzies en vechtpartijen moeten leren opgroeien, dan moet je ook wat doen aan die oorzaak. Dan moet je ook die ouders helpen. En daar werd in mijn ogen verkeerd of niet op gereageerd.

Jeugdbescherming overbodig

Mijn reactie was “ik ga de jeugdbescherming onnodig maken”. Misschien een wat simpele reactie. En die ontlokte ook een tegenreactie van de Jeugdbescherming: “als je dat doet, hebben wij straks geen werk meer…..” En dat was precies de bevestiging die mij overtuigde om aan de slag te gaan. Het kan toch niet zo zijn dat wij een systeem in stand houden vanwege werkverschaffing? Bescherming is prima maar kinderen én gezinnen moeten ook de kans krijgen om hun normale leven weer op te pakken. Gelijke kansen op goede toekomst. Help het kind maar help vooral het gezin!

Investeer lokaal in preventie

In Wormerland hebben we de investeringen in preventie van jeugd- en gezinsproblematiek en in een integrale manier van problemen oplossen, nog verder geïntensiveerd. Een greep uit de maatregelen:

  • Samen met Centrum Jong is een laagdrempelige toegang gecreëerd in de Beschuitstoren waar ouders met vragen over opgroeien en opvoeden terecht kunnen.
  • Samen met de Peuteropvang is er een programma ontwikkeld voor Vroeg- en Voorschoolse Educatie: peuters worden voorbereid op de overstap naar het basisonderwijs. Zo kan taal- en leerachterstand vroegtijdig worden voorkomen.
  • Specifiek met kinderopvangorganisatie Baloe is er een Peuterplus groep opgericht. Kinderen die anders naar een Medisch Kinder Dagverblijf zouden moeten gaan worden nu dicht bij huis opgevangen. Ook hier met als voordeel dat het kind beter kan doorstromen naar speciaal onderwijs. Maar ook dat er aandacht is voor de totale gezinssituatie.
  • Er is een betere en intensievere samenwerking met het basisonderwijs in Wormerland tot stand gekomen (School Maatschappelijk werk en Interne Begeleiders) met warme overdracht van de kinderopvang (VVE en Peuterplus) en eventuele gezinsproblematiek. Allemaal ter voorkoming van onderwijsachterstand.
  • Met het voortgezet onderwijs is er ingezet op het voorkomen van verzuim. Een Thuiszitterspact en de maatschappelijke business case Buiten Gewoon Leren dragen hiertoe bij.
  • Het jeugdteam functioneert als spin in het web en hanteert de uitgangspunten:
    • Aandacht voor gezin, dicht bij huis. Kinderen groeien thuis op, 
    • Goede, passende en tijdige hulp voor de gezinnen die dat nodig hebben,
    • Kinderen groeien zo thuis mogelijk op; minder kinderen in verblijf,
    • Een houdbaar en betaalbaar jeugdstelsel door te kiezen voor hulp die werkt,
  • Met innovatie budgetten hebben we behaalde besparingen opnieuw geinvesteerd in nieuwe laagdrempelige preventieve voorzieningen:
    • We hebben gezinscoaches aangesteld die niet alleen de kindproblematiek proberen op te lossen maar integraal de gezinsproblematiek aanpakt. Gezinshulp bij schulden, integratie, verslaving maar ook gewoon een helpende hand bij de dagelijkse gezinsbeslommeringen,
    • Voor het jeugdteam is een psycholoog aangesteld zodat jeugd problemen snel lokaal verholpen kunnen worden. En ook ter voorkoming van wachtlijsten voor specialistische zorg.
    • En sinds kort bieden we ambulante ondersteuning buiten kantoortijden. Gewoon om een kind de kans te bieden s’-avonds te bellen met een vertrouwenspersoon als het kind er even zelf niet meer uitkomt.

Het lijken zo voor de hand liggende maatregelen. Wij hebben ze in Wormerland toegepast en de Jeugdbescherming ziet het in de rapportages: het werkt! Wij kunnen preventieve jeugd- en gezinshulp lokaal bieden zodat de problemen niet uit de hand lopen. Gewoon een voorbeeld van visie, lef, daadkracht, volhouden en teamwork. En daar ben ik trots op.

Lokale Jeugdzorg in de toekomst?

Eigenlijk moet we gewoon af van de specialistische jeugdzorg (C). Dat zou het streven moeten zijn. Problemen die kinderen ondervinden vanuit de gezinssituatie zijn zeker problemen die we zelf lokaal kunnen oplossen. Van vechtscheidingen weten we inmiddels dat dit veel leed kan veroorzaken en dat we daar een goede aanpak voor kunnen bieden. Maar natuurlijk zullen er altijd kinderen zijn die iets speciaals nodig hebben dat lokaal niet geboden kan worden. Zoals voor kinderen met autisme of een aangeboren beperking. Of gezinnen die systemisch al meerdere generaties met problemen geconfronteerd zijn. Mijn motto is van C naar B naar A. In plaats van dure specialistische zorg op afstand (C), zoeken we naar relatief eenvoudige, desnoods meervoudige hulp dichtbij huis (B). En liever nog in het eigen Jeugdteam als dat mogelijk is (A). Voor uithuisplaatsing gaan we binnenkort bijvoorbeeld van start met HuisvoorNoordje: opvang in de regio zodat kinderen de kans krijgen om gewoon op school te blijven waar zij zich thuis voelen tussen leeftijdsgenoten maar ook de kans hebben om contact met het thuisfront te houden als dat nodig is. Er is nog veel te doen en er kan nog meer bereikt worden. Het werk is nog niet klaar.

En de jeugdbescherming in de toekomst?

Deze week had ik toevallig een gesprek met een moeder van 2 volwassen zoons. Zij vertelde mij over haar ervaringen met Jeugdzorg na een vreselijke vechtscheiding. Zij en haar beide zoons bevestigden dat de jeugdbescherming gebaat was bij een situatie waarbij kinderen zo lang als mogelijk in de beschermende sfeer verkeerden. In haar geval heeft het zeven jaar geduurd voordat de jeugdbescherming erkende dat de kinderen eigenlijk prima bij de moeder konden blijven, dat uithuisplaatsing of Onder Toezicht Stelling (OTS) onnodig was en dat de kinderen beter af waren met een stabiele situatie bij moeder dan te proberen het huwelijk te redden. De 2 volwassen zoons wonen nog steeds bij hun moeder omdat er geen betaalbare woningen te vinden zijn. Een trieste bevestiging van mijn eerdere conclusie hoewel ik ook wel begrijp dat één voorbeeld niet een bevestiging kan zijn van falend beleid. Maar toch…….

Harold Halewijn

Wethouder Jeugdzorg & Onderwijs – Wormerland

Hoe ga jij jouw huis in de toekomst verwarmen?

Binnen 30 jaar zullen onze woningen op een andere manier verwarmd moeten worden. Voor nieuw en recent gebouwde huizen is dat geen probleem. Door de uitstekende isolatie kunnen die met heel weinig energie verwarmd worden, bijvoorbeeld met een elektrische warmtepomp. Maar hoe doen we dat met woningen die ouder zijn dan 20 jaar? En wat heb jij dan nodig voor jouw woning? En hoe kunnen wij elkaar helpen? Hoe ga jij jouw huizen in de toekomst verwarmen? Op deze vragen probeer ik in deze blog antwoord te geven. Read More