PV-Anlage: Status visualisieren vie Pixel-Led (WLED), inkl. andere Geräte-Stati

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • MarkusCosi
    Extension Master
    • 28.09.2023
    • 199

    PV-Anlage: Status visualisieren vie Pixel-Led (WLED), inkl. andere Geräte-Stati

    Hier eine kleine Beschreibung eines Projekts zur Visualisierung von Prozent-Balken über einen logisch segmentierten Pixel-LED Streifen.

    Das kann man z.B. benutzen um die PV-Anlage in Bezug auf aktuelle Stromerzeugung sowie den Füllstand des Batteriespeichers (SoC) anzuzeigen (hier bietet sich gelb als Farbe an, bzw. grün-gelb bei Erzeugung > Verbrauch; Batterie-Laden aktiv).

    Außerdem kann man, wenn man möchte, auch andere Geräte-Stati so anzeigen. Hier bieten sich WiFi-fähige Küchenmaschinen wie Geschirrspüler oder Kaffeemaschinen mit HomeConnect-Schnittstelle an. Die bieten einerseits einen "Betriebszustand" an (z.B. bereit = 1, Programm läuft = 3), und andererseits eine Fortschritts-info (z.B. Geschirrspülprogramm % bis Fertig, oder Kaffeezubereitung in %, zeigt auch die Kaffeemaschine selbst an). Hier bieten sich andere Farben an um visuell stets kenntlich zu machen was der Prozent-Balken gerade anzeigt.

    Für das Projekt eignet sich das WLED Projekt prima. Den Controller gibt es hier, und die json-API um die Segmente einzeln anzusteuern hier.
    Das ganze kann man dann per Bausteine in der Loxone-Config realisieren, wobei die Befehle an den Pixel-Streifen über den WLED controller per http-Befehl gehen. Diesen wie folgt configurieren:

    Die Idee war nun: den Streifen über eine Ecke in einer Küchennische einbauen.
    Material:
    • cod.m Controller (hier), dazu den Kondensator (hier)
    • Profil mit schwarzer Abdeckung (z.B. hier).
    • BTF-LIGHTING RGBW RGBWW Warmweiß SK6812, 60LEDs/Pixels/m (z.B. hier)
    • Netzteil 5V, 3A (15W), mit Kabelschraubklemmen-Anschluss hier
    • Dazu etwas Schrumpfschlauch, und Kabel, und eine kleine Baumarkt Installationsdose ca. 10x10x2cm...

    Ein erstes Segment (id: 0) vertikal (V), ein zweites (id: 1) horizontal (H). Der Relevante Effekt ("fx") heißt "percent" und hat die #: 98 ("Lights up a percentage of segment", "ix" setzt den Prozentwert: "% of fill, One color", siehe hier).
    Außerdem wollte ich den ganzen Streifen als konfigurierbare Lampe in meiner Wohnzimmer-Lichtsteuerung haben.

    Die Konfiguration ist anbei.

    Virtueller Ausgang: Adresse: http://<<IP des WLED controller>>;
    Befehl dann mit: Befehl bei ein: /json/state; HTTP-header bei ein: Content-Type:application/json; http-Body bei ein: <<wie folgt>>; http Methode bei ein: POST;

    hier nun die Befehle die in der Config (Bild anbei) jeweils verwendet werden (die Farben lassen sich natürlich nach Wunsch anpassen, die Effekte-Nummern ("fx":#) sind hier einzusehen):
    • Beide Segmente erzeugen: {"on":true,"seg":[{"id":0,"sel":false,"start":0,"stop":33,"on":fa lse ,"bri":0},{"id":1,"sel":false,"start":33,"stop" :80 ,"on":false,"bri":0}]}
    • Beide Segmente Löschen: {"on":true,"seg":[{"id":0,"sel":true,"start":0,"stop":80},{"id":1 ,"sel":false,"start":33,"stop":0}]}
    • Bereit: {"on":true,"seg":[{"id":1,"sel":false,"start":33,"stop":80,"on":t rue ,"fx":38,"ix":255,"sx":10,"bri":255,"col":[[255,0,255],[0,255,255],[0,0,0]]}]}
    • V: {"on":true,"seg":[{"id":0,"sel":false,"start":0,"stop":33,"on":tr ue, "fx":98,"ix":<v>,"bri":255}]}
    • V blue: {"on":true,"seg":[{"id":0,"sel":false,"start":0,"stop":33,"col":[[0,255,255],[0,0,0]]}]}
    • V yellow: {"on":true,"seg":[{"id":0,"start":0,"stop":33,"col":[[255,255,0],[0,0,0]]}]}
    • V yellowgreen: {"on":true,"seg":[{"id":0,"start":0,"stop":33,"col":[[100,255,0],[0,0,0]]}]}
    • H: {"on":true,"seg":[{"id":1,"sel":false,"start":33,"stop":80,"fx":9 8," ix":<v>,"bri":255}]}
    • H pink: {"on":true,"seg":[{"id":1,"sel":false,"start":33,"stop":80,"col":[[255,0,255],[0,0,0]]}]}
    • H yellow: {"on":true,"seg":[{"id":1,"sel":false,"start":33,"stop":80,"col":[[255,255,0],[0,0,0]]}]}
    • H yellowgreen: {"on":true,"seg":[{"id":1,"sel":false,"start":33,"stop":80,"col":[[100,255,0],[0,0,0]]}]}
    Die Logik verwendet einerseits Analogwahlschalter um die gewünschten Prozente an den V oder H-Befehl <v> weiterzugeben, je nach Geräte-Betriebszustand und PV-Anzeige (gewünscht ja/nein?, s.u.).
    Andererseits gibt es eine Menge nicht zwangsläufig eleganter Logik zur Auswahl der Farbe der jeweiligen Segmente.

    Zuletzt noch einen Block mit Bausteinen für die Visu mit der ich die Pixel-Leiste als ganzes wie ein Licht betreiben und konfigurieren kann. Das wird jedoch solange ignoriert, wie entweder die Geräte eine Info einspielen, oder aber die PV-Anzeige aktiv geschalten ist (per Schaltuhr von morgens bis spät Abends, sowie ver-UND-et mit einem einfachen Schalter).


    Klicke auf die Grafik für eine vergrößerte Ansicht  Name: WLED3.jpg Ansichten: 1 Größe: 717,2 KB ID: 433443
    Viele Grüße!
    Zuletzt geändert von MarkusCosi; 29.05.2024, 20:54.
  • MarkusCosi
    Extension Master
    • 28.09.2023
    • 199

    #2
    und hier noch das Ergebnis

    Klicke auf die Grafik für eine vergrößerte Ansicht

Name: Bild 2.jpg
Ansichten: 600
Größe: 368,7 KB
ID: 433446
    Angehängte Dateien

    Kommentar

    • MarkusCosi
      Extension Master
      • 28.09.2023
      • 199

      #3
      ...ich habe mich zuletzt noch von DaOptika's smarter Stehlampen-Idee inspirieren lassen und mir dort die Idee mit den einzelnen LED-Pixeln zur Status-Anzeige abgeschaut. D.h. ich habe nun noch die zwei ganz rechten LEDs genutzt, um zusätzlich Informationen zum Status der Waschmaschine / Trockner anzeigen zu lassen (Läuft? An? Aus?)...

      Es scheint ja, als ob so etwas wohl doch auch per http-API geht (siehe das Stehlampen-Projekt oben). Kann jemand einschätzen, ob man sich wegen dem "zuspammen" des lokalen Netzwerks bei der obigen Integration Gedanken machen müsste, und die http-API via UDP Port(?) hier besser wäre? Dann müsst ich bei Gelegenheit wohl nochmal schauen ob es nicht doch auch per UDP bzw. http-Calls geht...

      Kommentar

      • noelie
        Dumb Home'r
        • 17.01.2021
        • 18

        #4
        Hallo, zunächst einmal tut es mir leid, aber mein geschriebenes Deutsch ist sehr schlecht, daher verwende ich Google Translate.
        Wie haben Sie Json zum Laufen gebracht?
        Jedes Mal, wenn ich einen Curl-Ausdruck ausführe, erhalte ich einen „Fehler 9“ (siehe Anhang). Ich verwende ein Dig2Go mit WLed 0.14.2. Ich habe es auch mit 0.14.4 getestet und das Gleiche passiert, sogar das neueste 0.15b4 hat das gleiche Problem.
        Ich habe auch versucht, den Befehl über Loxone auszuführen, aber auch das funktioniert nicht (Fehler siehe Screenshot). Irgendwelche Tipps?

        Vielen Dank
        Angehängte Dateien

        Kommentar


        • MarkusCosi
          MarkusCosi kommentierte
          Kommentar bearbeiten
          http Methode steht auf "Post"? Bei mir ist zwischen dem "Content-Type:" und dem "application/json" kein Leerzeichen. An sonsten habe ich 0.14.1 auf einem cod.m. WLED controller v0.10.

        • noelie
          noelie kommentierte
          Kommentar bearbeiten
          Hallo Markus, danke für die Antwort. Ich habe das Leerzeichen entfernt und auf 0.14.1 heruntergestuft, erhalte aber immer noch die gleiche Meldung. Ich habe noch einmal überprüft, ob ich einen Post-Befehl verwende, und das habe ich auch, wie Sie im Anhang sehen können.
          Können Sie Ihre virtuelle Ausgabe als exportierte Vorlage senden?
      • MarkusCosi
        Extension Master
        • 28.09.2023
        • 199

        #5
        ich fürchte ich kann dann auch nicht weiterhelfen. Es sieht eigentlich alles soweit wie bei mir auch aus...
        P.S.: die Zeilen "Info" sehe ich bei mir leider nicht im http Monitor. Nur "Request" und "Response"?
        Klicke auf die Grafik für eine vergrößerte Ansicht  Name: json.jpg Ansichten: 0 Größe: 114,9 KB ID: 438614
        Zuletzt geändert von MarkusCosi; 12.08.2024, 10:20.

        Kommentar

        Lädt...