HowTo: Node Red – Nerdiys-PanelMeter mit Wetterdaten versorgen

In den Artikeln Retro-SmartHome-Display via Analog-Anzeigen selber bauen und ESPEasy – NerdiysPanelMeter-Plugin installieren und konfigurieren  wurde beschrieben was Ihr tun müsst um ein eigenes Retro-SmartHome-Display zu bauen.

Wenn nu alles funktioniert seid Ihr schon mal auf einem guten Weg. Damit Eure Anzeige aber jetzt so richtig nützlich wird, müsst Ihr sie natürlich noch mit den entsprechenden Daten füttern.

Wie Ihr zum Beispiel eine Wetter-Daten-Anzeige umsetzt und aus NodeRed mit den entsprechenden Daten füttert, ist im folgenden Artikel erklärt.


Sicherheitshinweise

Ich weiß die folgenden Hinweise sind immer irgendwie lästig und wirken unnötig. Aber leider haben schon viele Menschen die es "besser" wussten aus Leichtsinnigkeit Augen, Finger oder anderes verloren bzw. sich verletzt. Im Vergleich dazu ist ein Datenverlust fast nicht der Rede Wert, aber auch diese können echt ärgerlich sein. Deswegen nehmt Euch bitte fünf Minuten Zeit um die Sicherheitshinweise zu lesen. Denn auch das coolste Projekt ist keine Verletzung oder anderen Ärger wert.
https://www.nerdiy.de/sicherheitshinweise/

Affiliatelinks/Werbelinks

Die hier in aufgeführten Links zu Online-Shops sind sogenannte Affiliate-Links. Wenn Du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekommt Nerdiy.de von dem betreffenden Online-Shop oder Anbieter eine Provision. Für Dich verändert sich der Preis nicht. Falls Du Deine Einkäufe über diese Links tätigst unterstützt Du Nerdiy.de dabei auch in Zukunft weitere nützliche Projekte anbieten zu können. 🙂 


Voraussetzungen

Hilfreiche Artikel:
Damit Ihr diese Konfiguration übernehmen  könnt sollte NodeRed natürlich schon installiert sein.
Wie ihr einen RaspberryPi dazu vorbereitet und dann NodeRed darauf installiert ist in den folgenden Artikeln beschrieben.

Die folgenden Artikel beschreiben was zu tun ist um den RaspberryPi soweit vorzubereiten:
RaspberryPi – Einrichten für Nerdiys!
RaspberryPi – Die Erste Konfiguration!
RaspberryPi – Den RaspberryPi über SSH steuern

NodeRed – Installation von NodeRed auf dem RaspberryPi
NodeRed – Neue Nodes installieren
Retro-SmartHome-Display via Analog-Anzeigen selber bauen
ESPEasy – NerdiysPanelMeter-Plugin installieren und konfigurieren

Benötigtes Werkzeug:
-keins-

Benötigtes Material:

In der folgenden Liste findet Ihr alle Teile die Ihr zur Umsetzung dieses Artikels benötigt.


In die NodeRed Konfigurationsoberfläche einloggen

Bevor Ihr eure NodeRed Konfiguration bearbeiten könnt müsst Ihr Euch - falls aktiviert - zunächst in die NodeRed Konfigurationsoberfläche einloggen.

Ansicht des Login Dialogs. Hier müsst Ihr die Login Daten eingeben die Ihr während der Konfiguration des Logins angegeben habt. Infos dazu findet Ihr im Artikel NodeRed - Benutzerlogin einrichten.

Node-Code importieren

Der folgende NodeCode sorgt dafür, dass die aktuellen Wetterdaten in regelmäßigen Abständen von openWeatherMap abgerufen und an das PanelMeter weitergesendet werden.

Um diesen Code zu testen könnt Ihr ihn einfach in Eure NodeRed-Installation importieren. Tipps dazu findet Ihr im Artikel NodeRed – Node-Code importieren und exportieren.

Damit der Code funktioniert, müsst Ihr außerdem einen openWeatherMap-API-Key in der openWeatherMap-Node eintragen. Infos dazu findet Ihr im Artikel NodeRed – Aktuelle Wetterdaten von OpenWeatherMap beziehen.

Aufbau des NodeCodes.
Eigenschaften der Change-Node(s). Mit “min” und “max” wird der Skalenbereich bzw. Interval festgelegt in dem “value” liegen muss. Mit “pm_num” wird außerdem die ID des einzustellenden PanelMeters übergeben.
Eigenschaften der HTTP-Request-Node. Darin enthalten ist der Link/die Adresse des PanelMeters an das der HTTP-Request mit dem Befehl “pmset…” und den korrekten Parametern gesendet wird.

Hier nun der eigentliche NodeCode:

[{"id":"66cf8f15.ab862","type":"change","z":"fc4b3766.addee8","name":"","rules":[{"t":"set","p":"min","pt":"msg","to":"-50","tot":"str"},{"t":"set","p":"max","pt":"msg","to":"50","tot":"str"},{"t":"set","p":"pm_num","pt":"msg","to":"1","tot":"str"},{"t":"set","p":"value","pt":"msg","to":"data.main.temp-273.15","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":860,"y":980,"wires":[["4b7d71f6.7b8f6"]]},{"id":"974ae16f.228f4","type":"json","z":"fc4b3766.addee8","name":"","property":"payload","action":"","pretty":false,"x":650,"y":1020,"wires":[["66cf8f15.ab862","1e0b8ca8.fb4b43","95ad8d98.a6ea6","19cb44df.0d1f2b"]]},{"id":"d3d7ea44.d221c8","type":"inject","z":"fc4b3766.addee8","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":380,"y":1000,"wires":[["2f224771.f86a98"]]},{"id":"1e0b8ca8.fb4b43","type":"change","z":"fc4b3766.addee8","name":"","rules":[{"t":"set","p":"value","pt":"msg","to":"data.main.humidity","tot":"jsonata"},{"t":"set","p":"min","pt":"msg","to":"0","tot":"str"},{"t":"set","p":"max","pt":"msg","to":"100","tot":"str"},{"t":"set","p":"pm_num","pt":"msg","to":"2","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":860,"y":1020,"wires":[["4b7d71f6.7b8f6"]]},{"id":"95ad8d98.a6ea6","type":"change","z":"fc4b3766.addee8","name":"","rules":[{"t":"set","p":"value","pt":"msg","to":"data.main.pressure","tot":"jsonata"},{"t":"set","p":"min","pt":"msg","to":"900","tot":"num"},{"t":"set","p":"max","pt":"msg","to":"1100","tot":"num"},{"t":"set","p":"pm_num","pt":"msg","to":"3","tot":"num"}],"action":"","property":"","from":"","to":"","reg":false,"x":860,"y":1060,"wires":[["4b7d71f6.7b8f6"]]},{"id":"2f224771.f86a98","type":"openweathermap","z":"fc4b3766.addee8","name":"","wtype":"current","lon":"","lat":"","city":"Bochum","country":"Germany","language":"de","x":420,"y":1060,"wires":[["974ae16f.228f4"]]},{"id":"8a6440bc.d3f16","type":"openweathermap in","z":"fc4b3766.addee8","name":"","wtype":"current","lon":"","lat":"","city":"Bochum","country":"Germany","language":"de","x":380,"y":960,"wires":[["974ae16f.228f4"]]},{"id":"19cb44df.0d1f2b","type":"debug","z":"fc4b3766.addee8","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","x":830,"y":940,"wires":[]},{"id":"4b7d71f6.7b8f6","type":"http request","z":"fc4b3766.addee8","name":"","method":"GET","ret":"txt","paytoqs":false,"url":"http://192.168.20.30/control?cmd=pmset,{{pm_num}},{{min}},{{max}},{{value}}","tls":"","proxy":"","x":1130,"y":1020,"wires":[["861bfac3.dc6708"]]},{"id":"861bfac3.dc6708","type":"debug","z":"fc4b3766.addee8","name":"","active":false,"console":"false","complete":"payload","x":1350,"y":1020,"wires":[]}]

Viel Spaß mit dem Projekt

Ich hoffe bei euch hat alles wie beschrieben funktioniert. Falls nicht oder ihr Fragen oder Anregungen habt lasst es mich in den Kommentaren bitte wissen. Ich trage dies dann ggf. in den Artikel nach.
Auch Ideen für neue Projekte sind immer gerne willkommen. 🙂

P.S. Viele dieser Projekte - besonders die Hardwareprojekte - kosten viel Zeit und Geld. Natürlich mache ich das weil ich Spaß daran habe, aber wenn Du es cool findest, dass ich die Infos dazu mit Euch teile, würde ich mich über eine kleine Spende an die Kaffeekasse freuen. 🙂

Buy Me a Coffee at ko-fi.com       

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.