Atmega328p MQTT energiemeter

Mijn oude zonnepaneelinverters hebben geen mogelijkheid om de opgewekte energie uit te lezen. Maar ik heb wel een brutto-productiemeter in de meterkast hangen. Deze heeft natuurlijk ook geen uitleespoort, maar wel een knipperend LEDje.

Deze LED geeft 1000 pulsen per gemeten kWh. Een fotodiode gemonteerd voor deze LED detecteerd die pulsen. Elke puls wordt geconverteerd naar een schoon digitaal signaal met behulp van een afstelbare comparator met hysteresis en een 74HC14 Schmitt trigger. De resulterende neergaande puls triggert een interrupt van de ATMega328. De firmware telt deze interrupts en berekend de equivalente energy in Wh. Elke 60 seconde wordt deze waarde gepubliceerd op de MQTT broker onder onderwerp 'distributioncabinet/energy/solar'.

Atmega328p MQTT energy meter

My old solar inverters do not have the option to read out the produced energy. But I do have a production meter installed in my distribution cabinet. But of course, this meter also does not have a data port. But it does have a pulsing LED.

This LED flashes 1000 times for every measured kWh. A photo-diode mounted in front of this LED detects the flashes. Every pulse is converted to a clean digital signal by an adjustable comparator with hysteresis followed by a 74HC14 Schmitt-trigger. The resulting pulses can be inverted by means of a jumper. A falling edge triggers an interrupt of the ATMega328. The firmware counts the interrupts and calculates the equivalent energy in Wh. Every 60 seconds the result is published to the MQTT broker on topic 'distributioncabinet/energy/solar'.

2023-01-11

Hardware

Schematic

3D rendering

Prototype

Sensor in front of energy meter