====== Ein Smartmeter über Node-RED anbinden und das ganze im LXC Container ====== Für die die Installation von Node-RED auf einem LXC Container kann diese Beschreibung genutzt werden. * [[configuration:Ein Node-RED Server unter einem LXC Container]] Ab dem Punkt "''Sie können sich mit einem Webbrowser mit der Weboberfläche von Node-RED verbinden''" machen Sie hier wieder weiter. ===== - Nach der Installation ===== Mit dem Aufruf der IP-Adresse vom LXC Container und der Portnummer(1880) bekommen Sie Zugriff auf den Node-RED Server im Container. {{:configuration:configuration:node-red_zugriff.png|}} Sie bekommen dann die Oberfläche von Node-RED angezeigt. {{:configuration:configuration:node-red_web.png|}} ---- ===== - Weiter Zusätzlich Plug-in ===== Für Node-RED muss noch das Plug-in ''Smartmeter'' hinzufügen werden. Auf der Rechteseite unter dem Menü mit den drei strichen bitte die Option „''Palette verwalten''“ auswählen. {{:configuration:configuration:installation_plugin.png|}} ---- Hier bitte auf den Reiter Installation und im Suchfeld „''smartmeter''“ eingeben. Hier dann „''node-red-contrib-smartmeter''“ installieren. {{:configuration:configuration:smartmeter_plugin.png}} ---- Nach der Installation ist die Funktion im Node-RED nutzbar. {{:configuration:configuration:plug_in.png}} ===== - Die Bausteine auf die Flow ziehen ===== Den Baustein ''smartmeter'' auf die Fläche ziehen. Mit einen doppelklick kann man diesen bearbeiten. {{:configuration:configuration:smartmeter_node.png}} ---- Als erstes wird eine neue „''Data source''“ hinterlegt. Als Auslesegerät wird ein IR-Schreib/Lesekopf genutzt. {{:configuration:configuration:lesekopf.png}} ---- ==== - Einrichten des IR-Lesekopf ==== Dieser hier geht von Seriellen Schnittstelle auf eine USB Schnittstelle. Dieser Lesekopf wird im LXC Container als ''/dev/ttyUSB0'' oder ''/dev/ttyUSBX'' angezeigt und kann dann in Node-RED angesteuert werden. Die Parameter für Serielle Schnittstelle kommen vom Datenblatt des Hersteller. Hier wurden die Standartwert genutzt die auch bei diesem Lesekopf gehen. {{:configuration:configuration:serial_node.png}} ---- Bei der Auswahl des Protokolls kommt des drauf an was der Smartmeter nutzen kann ''(SML oder D0)''. Bei der Option Transport „''SerialResponseTransport''“ nutzen. Die Daten kommen über die Serielle Schnittstelle kontinuierlich. Über die Option Request interval kann man die Daten abfragen in Sekunden angeben. Hier wurden 10 Sekunden hinterlegt für die abfrage. {{:configuration:configuration:protocol_node.png}} ---- ==== - Die Einrichtung testen ==== Ob Sie Daten von dem Lesekopf erhalten können Sie sehr einfach über die ''debug'' Ausgabe Anzeigen lassen. {{:configuration:configuration:debug_node.png}} ---- Auf der rechten Seite von Node-RED bekommen Sie die Ausgabe angezeigt. {{:configuration:configuration:anzeige_node.png}} ---- ===== - Aus dem JSON String Werte Parsen ===== Dafür haben Sie den Funktionsblock im Node-Red, hier für den Wert momentan. {{:configuration:configuration:funktion_node.png}} ---- In der Funktion müssen Sie aus der payload den Wert herausnehmen denn Sie benötigen {{:configuration:configuration:auswertung_node.png}} ---- Für die OBIS ''(1-0:16.7.0*255)'' Nummern können Sie unter dem Link nachschauen, welche Wert wo zu finden sind. [[https://wiki.volkszaehler.org/software/obis|OBIS Nummer External Link]] Unter dem debug “''Smartmeter Momentanleistung in Watt''“ können Sie es wieder überprüfen. {{:configuration:configuration:obis_node.png}} ---- ===== - Der Wert wird an einen MQTT Broker weitergeben ===== Der Momentan Leistungswert wird an einen MQTT Server weitergeben. {{:configuration:configuration:mqtt_node.png}} ---- ==== - Den Zugriff einrichten auf den Broker ==== Der MQTT Server muss hinterlegt werden {{:configuration:configuration:mqtt_server.png}} ---- Server IP Adresse und Port Nummer hinterlegen. {{:configuration:configuration:mqtt_wert_node.png}} ---- ==== - Die Struktur vom Topic ==== Ein Topic hinterlegen wie es hinterlegen werden soll. In diesem Fall habe ich mich für eine 3 Struktur entschieden. location → raspberry field → smartmeter-b8:27:eb:0f:c7:11 payload → momentan {{:configuration:configuration:topic_node.png}} ---- ==== - Die Daten über mosquitto testen ==== Über das Programme mosquitto können Sie Prüfen ob Daten an den MQTT Broker verschickt werden. :~$ mosquitto_sub -h 192.168.142.1 -p 1883 -v -t raspberry/# -u admin -P admin01 raspberry/smartmeter-b8:27:eb:0f:c7:11/momentan 146 ---- ===== Übersicht des Flow in Node-RED ===== {{:configuration:configuration:uebersicht_node.png}} ----