De Slimme Meter Wifi Adapter met het MQTT protocol

De Slimme Meter Wifi Adapter ondersteunt ook het MQTT protocol om gegevens van de slimme meter via wifi en internet naar de gebruiker te sturen. Omdat het een licht en efficiënt protocol is wordt het vaak gebruikt bij IoT devices.

MQTT bestaat uit 3 onderdelen:

  • Een broker die de communicatie regelt tussen zenders en ontvangers
  • Een publisher die de berichten verstuurd
  • Een subscriber die de berichten ontvangt.

De broker is te vergelijken met een server. Deze kan zich bevinden op het internet of in je eigen lokale netwerk. De publisher is de Slimme Meter Wifi Adapter. De subscriber kan zijn HomeAssistant of de MQTT Explorer.

Voor informatie over MQTT: http://mqtt.org

De MQTT berichten bestaan uit onderwerpen (topics) en de inhoud daarvan (payloads).

De Slimme Meter Wifi Adapter stuurt de metergegevens door als inhoud van onderstaande topics:

sensors/power/slimme_meter/verbruik_laag_tarief
sensors/power/slimme_meter/verbruik_hoog_tarief
sensors/power/slimme_meter/levering_laag_tarief
sensors/power/slimme_meter/levering_hoog_tarief
sensors/power/slimme_meter/verbruik_actueel
sensors/power/slimme_meter/levering_actueel
sensors/power/slimme_meter/gas_meter_m3

De benaming ‘sensors’/power/slimme_meter’ kan eenvoudig aangepast worden. Men kan bijvoorbeeld een huis- of bedrijfsadres of postcode instellen. 

Home Assistant setup met MQTT protocol

Voeg in het  configuratiebestand “configuration.yaml” de mqqt gegevens toe.

favicon-192x192-full

mqtt:
broker: 10.0.0.12 #ip address Raspberry-Pi

# Sensors
sensor:
– platform: mqtt
  name: Laag tarief
  unit_of_measurement: ‘kWh’
  state_topic: “sensors/power/slimme_meter/verbruik_laag_tarief”
  value_template: “{{ value|float / 1000 }}”

– platform: mqtt
  name: Hoog tarief
  unit_of_measurement: ‘kWh’
  state_topic: “sensors/power/slimme_meter/verbruik_hoog_tarief”
  value_template: “{{ value|float / 1000 }}”

– platform: mqtt
  name: Actueel
  unit_of_measurement: ‘kW’
  state_topic: “sensors/power/slimme_meter/verbruik_actueel”
  value_template: “{{ value|float / 1000 }}”

– platform: mqtt
  name: Gas
  unit_of_measurement: ‘m3’
  state_topic: “sensors/power/slimme_meter/gas_meter_m3”
  value_template: “{{ value|float / 1000 }}”

Maak een bestand `groups.yaml` aan. Hierin kun je bepalen hoe je je slimme meter gegevens wilt laten zien. Hiernaast een voorbeeld. Hieronder zie je het resultaat.

 

default_view:
  name: Home
  view: true
  entities:
    – sun.sun
    – group.DateTimes

Energie:
  name: Energie
  view: true
  entities:
    – group.Verbruik

Verbruik:
  name: Verbruik
  entities:
    – sensor.actueel
    – sensor.hoog_tarief
    – sensor.laag_tarief
    – sensor.gas

MQTT Explorer

Wil je je metergegevens binnen je eigen lokale netwerk houden? Gebruikt dan bijvoorbeeld HomeAssistant. Je kan daar met het MQTT protocol je metergegevens naartoe sturen. Ook kan je op je computer of RaspberryPi een eigen MQTT server opzetten. Dit kan onder andere met NodeJs en de ‘mosca’ module. Maak daarna een bestand ‘broker.js’ aan met de volgende inhoud:

var mosca = require(‘mosca’);

var settings = { port:1883 };

var server = new mosca.Server(settings);

server.on(‘ready’, function() { console.log(“server ready”); } ); 

Installeer daarna de MQTT Explorer op je computer en maak een connectie met je computer of RaspberryPi waarop de broker draait. Hiervoor moet je in de MQTT Explorer het IP adres van je computer of RaspberryPi invullen. Dit kan je achterhalen door in een commando box ‘ipconfig’ of ‘ifconfig’ in te tikken.