DSMR-logger V4 (Slimme Meter uitlezer)

Geplaatst op

In augustus 2018 publiceerde ik een project voor het uitlezen van de Slimme Meter.

Aan de hand van de vele reacties van de mensen die het project hebben nagebouwd en mijn eigen ervaring met versie 3 van de DSMR-logger vond ik het tijd worden om een nieuwe versie van de hardware en de firmware te ontwikkelen.

Een aantal gebruikers gaf aan gebruik te maken van externe diensten om de gelogde data in grafieken weer te geven. Ik heb ook de behoefte aan een grafische weergave van de gelogde data maar ik wil voorkomen dat ik daar externe diensten voor moet gebruiken.

De doelstellingen voor versie 4 van de DSMR-logger zijn aangepast aan de wensen van de bouwers maar voor de kern ook grotendeels gelijk gebleven aan die van versie 3. De firmware werkt nu echter met WebSockets en de hoeveelheid opgeslagen gegevens is vergroot (twee jaar per maand, twee weken per dag en 48 uur per uur). Al deze data kan in tabellen én in grafieken worden weergegeven. Uiteraard ontbreekt de restAPI ook niet. Als kers op de taart heeft versie 4 de mogelijkheid om een klein oled-scherm aan te sluiten.

Financiële gegevens in een grafiek Financiële gegevens in een grafiek
Tot en met versie 3 van de DSMR-logger wordt iedere seconde een telegram van de Slimme Meter ontvangen. Daarvan wordt slechts een klein deel (iedere tien seconden) één telegram ook daadwerkelijk verwerkt. Op zich is dat geen probleem want de overige negen telegrammen vallen gewoon in een groot zwart gat maar .. de ESP8266 UART moet wél op deze vloed aan data reageren (de UART is interrupt driven). Zowel de Slimme Meter als de DSMR library van Matthijs Kooijman hebben een mogelijkheid om telegrammen alleen op afroep te versturen (Slimme Meter) of te vragen (DSMR library).
Het werkt zo: De Slimme Meter verstuurd alléén een telegram als de Data Request pin “hoog” is. De DSMR library heeft een functie call “enable(true)” die een pin van de ESP8266 “hoog” maakt en deze “hoog” houdt tot er een volledig telegram is ontvangen, waarna de pin “laag” wordt gemaakt (en de Slimme Meter stopt met het sturen van Telegrammen).
Omdat ik voor de eerdere versies van de DSMR-logger een ESP-01 bordje wilde gebruiken kon van deze functionaliteit geen gebruik worden gemaakt eenvoudigweg omdat de ESP-01 niet genoeg pinnen heeft om er één voor vrij te maken.

De ESP-12(E/F) heeft wel voldoende GPIO pinnen en aanzienlijk (4x) meer geheugen als de ESP-01(S). Het was daarom een logische keuze om deze variant van de ESP8266 te gebruiken voor versie 4 van de DSMR-logger.

Uitgebreide technische documentatie voor dit project kun je hier vinden.

Het prototype en Proof of Concept heb ik op een 1of!-ESP12 processor bordje met een 1of!-Proto bordje gemaakt.
Huidige pagina 1. Introductie 1. Introductie 2. Data Request Circuit 3. Telegram verwerken 4. I2C Interface 5. ADC Interface 6. Putting It All Together 7. Een mooie verpakking Geschreven door Website Willem Aandewiel (1955) heeft als achtergrond een opleiding in elektronica en digitale technieken. Het grootste deel van zijn werkbare leven heeft hij echter in de automatisering gewerkt waar hij zo'n beetje in alle disciplines van programmeur tot projectleider en projectmanager heeft gewerkt. Willem was één van de eerste Nederlanders met een micro-computer (KIM-1, 1976) in een tijd dat de PC nog moest worden uitgevonden. Tegenwoordig houdt hij zich vooral bezig met het ontwerpen en maken van kleine elektronische schakelingen met microprocessoren. Zijn ‘mission in life’ is om mensen enthousiast te maken voor het zelf maken van elektronische schakelingen, microcomputers en programmeren.

Reacties

Webwinkelkeur Kiyoh Trustpilot Opencircuit