Ankündigung

Einklappen
Keine Ankündigung bisher.

KNX über Node Red in InfluxDB

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Grafe
    antwortet
    Ich benutze InfluxDB 2 mit dem Contribute-Influx-Node. Die Daten werden in einen Bucket geschrieben, der Timestamp kommt vom Influx-Host.
    Und hier ist das Problem: der Timestamp ist immer 30min. später als die Schreibzeit. Wie lässt sich das erklären?
    Die Systemzeit/Zeitzone auf dem Server ist natürlich korrekt. Hängt das irgendwie mit dem Retention-Dienst zusammen, der alle 30min. läuft? Allerdings habe ich kein Löschen der Daten eingestellt.

    Einen Kommentar schreiben:


  • gbglace
    antwortet
    Nimm die GA irgendwie mit in die Tabelle. Ja ist ggf genauso beweglich wie die Quell-PA gegenüber dem Namen aber mit einer gescheiten GA Struktur bist da schneller bei Suchen/filtern als mit den ganzen Texten.

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von abeggled Beitrag anzeigen
    dann sehen wir vielleicht wo es hackt
    Mein "Filter" war verkehrt. ich hab statt Tonic versucht auf description zuzugreifen, die ja nun aber in dem payload-array liegt. Ich hatte halt gedacht, wenn du schon den Namen hast dank der CSV, nutz ihn auch. Dabei aber nicht bedacht, dass der sich ja "verschiebt".

    Bildschirmfoto 2022-09-16 um 07.57.13.png

    Edit: So hatte ich mir das vorgestellt

    Bildschirmfoto 2022-09-16 um 08.01.32.png
    Zuletzt geändert von DBocksteger; 16.09.2022, 07:02.

    Einen Kommentar schreiben:


  • abeggled
    antwortet
    Zitat von DBocksteger Beitrag anzeigen
    Die Werte, die die bei dir scheinbar außerhalb der zwei im Code erzeugten Objekte/Strukturen liegen, fehlen bei mir. (eigentlich aber auch logisch, es wird der Payload ja überschrieben).
    ja, der Payload (msg.payload) wird überschrieben, wir brauchen aber die GA und die liegt eigentlich in msg.topic, welches ich daher auf msg.measurement umschreibe. Die passende GA (2/4/0) scheint ja in beiden Debug-Nodes vorhanden zu sein, nur noch nicht am richtigen Ort. Ändere mal die Debug-Node auf das ganze msg-Objekt und nicht nur den payload, dann sehen wir vielleicht wo es hackt.

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von Kai Burkard Beitrag anzeigen
    Lass mich wissen ob du Erfolg hast. Die Verwendung erkläre ich hier: https://youtu.be/-P37g6_qGqY - es gibt schon recht viele Nutzer
    Für einzelne Werte würde ich wohl auch regelmäßiger Nutzer werden Da ich allerdings erstmal 'prophylaktisch' alles loggen möchte, ist mir das zu umständlich, die ganzen Eingänge zu definieren etc. Daher wie sich hier schon abzeichnet nun doch der weg über NodeRed.

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von abeggled Beitrag anzeigen
    Zeig mal was bei dir aktuell ankommt?
    Bildschirmfoto 2022-09-16 um 07.24.09.png
    Ich hab den Code nochmal 1:1 von dir übernommen, mit selbem Ergebnis. Die Werte, die die bei dir scheinbar außerhalb der zwei im Code erzeugten Objekte/Strukturen liegen, fehlen bei mir. (eigentlich aber auch logisch, es wird der Payload ja überschrieben).

    Bildschirmfoto 2022-09-16 um 07.25.23.png

    EDIT: Ich hab nochmal eine Ausgabe der eingehenden Message hinzugefügt...

    Bildschirmfoto 2022-09-16 um 07.31.19.png
    Angehängte Dateien
    Zuletzt geändert von DBocksteger; 16.09.2022, 06:33.

    Einen Kommentar schreiben:


  • abeggled
    antwortet
    Zitat von DBocksteger Beitrag anzeigen
    Habe ich gerade mal spontan versucht nachzubauen, leider mit eher geringem Erfolg.
    Zeig mal was bei dir aktuell ankommt?
    So in etwa müsste es aussehen, inkl. measurement:
    image.png
    Ich denke du verwirfst das Topic in deinem [Prepare].
    Hier nochmal mein Code:
    Code:
    msg.payload = [{
         value: msg.payload,
    },
    {
         source : msg.knx.source,
         dpt: msg.knx.dpt,
         description: msg.devicename,
         event: msg.knx.event
    }];
    return msg;

    Einen Kommentar schreiben:


  • gbglace
    antwortet
    Im Telegramm auf dem Bus gibt es eben nur die GA und kein Name der GA, den kennt kein Gerät auf dem Bus, nur die ETS, da müsstest also irgendwie die ETS Projektdatei als Mapping auf den RPI bringen und erst das Telegramm auswerten bevor Du da was in die Influx schreibst. Ähnlich schaut es mit der genauen Einheit aus.die wählst dann erst in Grafana bei der Verwendung in der Auswertung.

    Einen Kommentar schreiben:


  • Kai Burkard
    antwortet
    Zitat von DBocksteger Beitrag anzeigen
    hab dann bei Recherchen den X1 Datenbank-Baustein von Kai Burkard gefunden, bin gespannt ob ich damit mein Ziel erreiche

    Lass mich wissen ob du Erfolg hast. Die Verwendung erkläre ich hier: https://youtu.be/-P37g6_qGqY - es gibt schon recht viele Nutzer

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von abeggled Beitrag anzeigen
    bei mir sieht es so aus
    Habe ich gerade mal spontan versucht nachzubauen, leider mit eher geringem Erfolg.

    Bildschirmfoto 2022-09-15 um 22.45.12.png Bildschirmfoto 2022-09-15 um 22.45.03.png
    Da werd ich morgen nochmal etwas Zeit investieren müssen
    Angehängte Dateien

    Einen Kommentar schreiben:


  • abeggled
    antwortet
    Das Measurement in der Influx-Node musst du leerlassen und es vorbereiten, bei mir sieht es so aus:
    image.pngimage.png

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von abeggled Beitrag anzeigen
    Bei Deiner Konfig ist aus meiner Sicht etwas falsch: Wenn Multicast, dann auch die Mulitcast-Adresse angeben 224.0.23.12
    Dazu brauchst du natürlich einen Router und kein Interface. Vielleicht wäre es gut wenn du sagst was du genau hast.
    Wenn du keinen Router hast dann stelle mal Tunnel UDP unter Verwendung deiner Interface IP 192.168.178.26
    Universal-Node funktioniert einwandfrei.
    Manchmal hat man echt mehr als einen Nagel im Kopf. Danke, das wars. UDP, IP vom X1, fertig.

    Aber... Wie bekomme ich nun den Namen der Gruppenadresse als "Measurement" durchgeschleift, um die Werte nach GPAs zu gruppieren?

    Bildschirmfoto 2022-09-15 um 22.10.59.png
    An der Stelle ebenfalls interessant, wie gebe ich den Typ dynamisch weiter?

    Bildschirmfoto 2022-09-15 um 22.09.49.png
    Schönen Abend

    Einen Kommentar schreiben:


  • gbglace
    antwortet
    Wenn er die X1 Datenbank nutzen will, dann hat er wohl nen X1 der kein Router ist.

    Einen Kommentar schreiben:


  • abeggled
    antwortet
    Bei Deiner Konfig ist aus meiner Sicht etwas falsch: Wenn Multicast, dann auch die Mulitcast-Adresse angeben 224.0.23.12
    Dazu brauchst du natürlich einen Router und kein Interface. Vielleicht wäre es gut wenn du sagst was du genau hast.
    Wenn du keinen Router hast dann stelle mal Tunnel UDP unter Verwendung deiner Interface IP 192.168.178.26
    Universal-Node funktioniert einwandfrei.

    Einen Kommentar schreiben:


  • DBocksteger
    antwortet
    Zitat von gbglace Beitrag anzeigen
    Also erstmal die Verbindung KNX NR hinbiegen, danach über influx nachdenken.

    Das war auch mein Gedanke. Nach ein paar weiteren Tests fiel dann aber auf, dass der Node tut was er soll, wenn ich NICHT den Universal-Modus aktiviere... Jede zu visualisierende GPA einzeln abzubilden, ist mir aber zu doof. hab dann bei Recherchen den X1 Datenbank-Baustein von Kai Burkard gefunden, bin gespannt ob ich damit mein Ziel erreiche

    Einen Kommentar schreiben:

Lädt...
X