Node-RED Tutorial-Reihe - Part 8: SmartMeter
Ich selbst habe noch kein Smart Meter am Laufen. Allerdings hat Jörg (meintechblog.de) sogar mehrere davon im Einsatz. Diese messen bei Ihm sowohl die genutzte Fernwärme, als auch den Stromverbrauch. Natürlich gibt es hierzu ebenfalls eine Lösung in Node-RED, welche ich Euch nicht vorenthalten möchte. Ich war wirklich erstaunt, wieviele Werte da am Ende wirklich ausgelesen werden können.
Was wird benötigt?
- Eine Node-RED-Installation
- Ein Smart Meter (in diesem Fall ein UH-5)
- Smart Meter IR (Infrarot) Schreib/Lesekopf USB (Optokopf) **
Video
Komponenten
Code
Im Video wurde der folgende Code in einer Funktion gezeigt, welcher die Zahlenwerte aus den einzelnen Raw-Values extrahiert und die eventuell angehängt Einheit abschneidet. Dies ist notwendig, damit man daraus später entsprechende Graphen und Statistiken bauen kann, da sich mit Strings an dieser Stelle etwas unglücklich rechnen lässt.
return [
{ payload: parseFloat(msg.payload["6-0:6.8"].rawValue.replace(/[^\d.-]/, '')) },
{ payload: parseFloat(msg.payload["6-0:6.26"].rawValue.replace(/[^\d.-]/, '')) },
{ payload: parseFloat(msg.payload["6-0:6.31"].rawValue.replace(/[^\d.-]/, '')) },
{ payload: parseFloat(msg.payload["6-0:6.32"].rawValue.replace(/[^\d.-]/, '')) },
{ payload: parseFloat(msg.payload["6-0:9.31"].rawValue.replace(/[^\d.-]/, '')) },
];