Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. Rechnen in der Visualisierung

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    709

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.9k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Rechnen in der Visualisierung

Geplant Angeheftet Gesperrt Verschoben Visualisierung
9 Beiträge 3 Kommentatoren 992 Aufrufe 3 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    MaThoPa1973
    schrieb am zuletzt editiert von
    #1

    Hallo und frohes neues Jahr Zusammen,

    ich habe ein kleines Problem, bei welchem ich mal Eure Hilfe bräuchte.

    In meiner Visualisierung bekomme ich über einen FRITZ!DECT die Leistung meiner Mini-PV-Anlage angezeigt, über einen IR-Lesekopf bekomme ich den aktuellen Strombezug (oder im ungünstigsten Fall auch die Einspeisung, dann als Negativ-Wert) angezeigt.

    Ich möchte nun aus den Werten der PV-Anlage (Wert1) und dem Strombezugswert (Wert2) mir in der Visualisierung einen errechneten Wert (Wert3) anzeigen lassen, welcher mir den momentanen Deckungsanteil der PV-Anlage am Strombedarf anzeiget (Strombedarf = PV-Ertrag + Strombezug).

    Rechnerisch sähe es also wie folgt aus:

    Anzeige in % = Wert1 / (Wert1+Wert2) *100

    Aber wie kann ich in der Visualisierung Berechnungen durchführen? In einem html-Widget kann ich die Werte übernehmen - mir ist auch bekannt, dass es sich in dem Moment der Übernahme erst einmal um einen Text-String handelt und nicht um einen numerischen Wert. Versuche ich das mit parseInt in eine Zahl umzuwandeln bekomme ich nur noch ein "undefined" angezeigt.... und Berechnungen bekomme ich irgendwie überhaupt nicht hin.

    Danke vielmals für Eure Hilfe.

    Gruß
    Markus

    BananaJoeB OliverIOO 2 Antworten Letzte Antwort
    0
    • M MaThoPa1973

      Hallo und frohes neues Jahr Zusammen,

      ich habe ein kleines Problem, bei welchem ich mal Eure Hilfe bräuchte.

      In meiner Visualisierung bekomme ich über einen FRITZ!DECT die Leistung meiner Mini-PV-Anlage angezeigt, über einen IR-Lesekopf bekomme ich den aktuellen Strombezug (oder im ungünstigsten Fall auch die Einspeisung, dann als Negativ-Wert) angezeigt.

      Ich möchte nun aus den Werten der PV-Anlage (Wert1) und dem Strombezugswert (Wert2) mir in der Visualisierung einen errechneten Wert (Wert3) anzeigen lassen, welcher mir den momentanen Deckungsanteil der PV-Anlage am Strombedarf anzeiget (Strombedarf = PV-Ertrag + Strombezug).

      Rechnerisch sähe es also wie folgt aus:

      Anzeige in % = Wert1 / (Wert1+Wert2) *100

      Aber wie kann ich in der Visualisierung Berechnungen durchführen? In einem html-Widget kann ich die Werte übernehmen - mir ist auch bekannt, dass es sich in dem Moment der Übernahme erst einmal um einen Text-String handelt und nicht um einen numerischen Wert. Versuche ich das mit parseInt in eine Zahl umzuwandeln bekomme ich nur noch ein "undefined" angezeigt.... und Berechnungen bekomme ich irgendwie überhaupt nicht hin.

      Danke vielmals für Eure Hilfe.

      Gruß
      Markus

      BananaJoeB Online
      BananaJoeB Online
      BananaJoe
      Most Active
      schrieb am zuletzt editiert von
      #2

      @mathopa1973 Du hast also 2 Datenpunkte mit den beiden Werten.
      Ich habe dann bisher immer z.B. ein Blockly erstellt welches auf Änderungen einer der beiden Datenpunkte reagiert und das Ergebnis in einen 3. Datenpunkt geschrieben:
      efc1f1d6-4c7f-44bd-9e4d-2cb6394d861b-image.png
      Und im VIS dann den Zieldatenpunkt verwenden

      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

      M 2 Antworten Letzte Antwort
      1
      • BananaJoeB BananaJoe

        @mathopa1973 Du hast also 2 Datenpunkte mit den beiden Werten.
        Ich habe dann bisher immer z.B. ein Blockly erstellt welches auf Änderungen einer der beiden Datenpunkte reagiert und das Ergebnis in einen 3. Datenpunkt geschrieben:
        efc1f1d6-4c7f-44bd-9e4d-2cb6394d861b-image.png
        Und im VIS dann den Zieldatenpunkt verwenden

        M Offline
        M Offline
        MaThoPa1973
        schrieb am zuletzt editiert von
        #3

        @bananajoe Danke vielmals für den Tipp, mit Blockly bin ich in Gänze erst einmal in Berührung gekommen und habe daher da noch nicht die große Erfahrung.

        Kurze Frage noch: Der Datenpunkt der im ersten Block (erzeuge Datenpunkt) steht, muss der vorher auch erstellt sein oder wird der dann automatisch erstellt?

        1 Antwort Letzte Antwort
        0
        • BananaJoeB BananaJoe

          @mathopa1973 Du hast also 2 Datenpunkte mit den beiden Werten.
          Ich habe dann bisher immer z.B. ein Blockly erstellt welches auf Änderungen einer der beiden Datenpunkte reagiert und das Ergebnis in einen 3. Datenpunkt geschrieben:
          efc1f1d6-4c7f-44bd-9e4d-2cb6394d861b-image.png
          Und im VIS dann den Zieldatenpunkt verwenden

          M Offline
          M Offline
          MaThoPa1973
          schrieb am zuletzt editiert von
          #4

          @bananajoe in welcher Rubrik finde ich den Baustein {"type","number","read":"true";"write":"true"} ?

          BananaJoeB 1 Antwort Letzte Antwort
          0
          • M MaThoPa1973

            @bananajoe in welcher Rubrik finde ich den Baustein {"type","number","read":"true";"write":"true"} ?

            BananaJoeB Online
            BananaJoeB Online
            BananaJoe
            Most Active
            schrieb am zuletzt editiert von BananaJoe
            #5

            @mathopa1973 Also der Datenpunkt in welchen du schreiben willst, der muss vorher schon da sein. Den kannst du von Hand unterhalb von

            0_userdate.0
            

            anlegen. Oder wie in meinem Beispiel lässt du den durch dein Skript erzeugen - so mache ich das immer damit Skripte von immer immer funktionieren weil die alle benötigten Datenpunkte für das Schreiben einfach selbst erzeugen.
            Der Baustein mit dem Typ ist ein normaler Text-Baustein in dem

            {"type":"number","read":"true","write":"true"}
            

            steht. number für Zahl, string wäre Text usw. - was du beim "von hand" anlegen halt auch auswählen kannst.
            Der wird nur einmal angelegt, wenn der schon da ist passiert einfach nichts. Wenn du den Datenpunkt löscht wird der nach einem Neustart des Skripts neu erzeugt.

            Bei falls Objekt habe ich auch Textbausteine gesetzt und den Pfad aus dem Objektexplorer reinkopiert. Wenn du den Textbaustein weglässt ist da ein blaues Feld welches du anklicken kannst - dann öffnet sich der Explorer und du kannst den Datenpunkt auswählen.

            Wenn du das erst einmal drin hast wird es ganz leicht :-)

            Wenn du die + Blöcke hast - die einmal mit der rechten Maustaste anklicken, da gibt es einen Punkt externe Eingänge, damit kannst du zwischen einer horizontalen und vertikalen Ansicht umschalten (kenne ich auch erst seit gestern)

            ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

            M 1 Antwort Letzte Antwort
            1
            • BananaJoeB BananaJoe

              @mathopa1973 Also der Datenpunkt in welchen du schreiben willst, der muss vorher schon da sein. Den kannst du von Hand unterhalb von

              0_userdate.0
              

              anlegen. Oder wie in meinem Beispiel lässt du den durch dein Skript erzeugen - so mache ich das immer damit Skripte von immer immer funktionieren weil die alle benötigten Datenpunkte für das Schreiben einfach selbst erzeugen.
              Der Baustein mit dem Typ ist ein normaler Text-Baustein in dem

              {"type":"number","read":"true","write":"true"}
              

              steht. number für Zahl, string wäre Text usw. - was du beim "von hand" anlegen halt auch auswählen kannst.
              Der wird nur einmal angelegt, wenn der schon da ist passiert einfach nichts. Wenn du den Datenpunkt löscht wird der nach einem Neustart des Skripts neu erzeugt.

              Bei falls Objekt habe ich auch Textbausteine gesetzt und den Pfad aus dem Objektexplorer reinkopiert. Wenn du den Textbaustein weglässt ist da ein blaues Feld welches du anklicken kannst - dann öffnet sich der Explorer und du kannst den Datenpunkt auswählen.

              Wenn du das erst einmal drin hast wird es ganz leicht :-)

              Wenn du die + Blöcke hast - die einmal mit der rechten Maustaste anklicken, da gibt es einen Punkt externe Eingänge, damit kannst du zwischen einer horizontalen und vertikalen Ansicht umschalten (kenne ich auch erst seit gestern)

              M Offline
              M Offline
              MaThoPa1973
              schrieb am zuletzt editiert von
              #6

              @bananajoe Danke, so wird's auch überschaubarer.

              Eine hoffentlich letzte Frage: Ich beziehe mich ja einmal auf den Wert der PV-Anlage, der kann nur positiv oder 0 sein. Der aktuelle Strombezug kann jedoch, wenn der aktuelle Strombedarf kleiner als die Stromproduktion ist, auch negativ sein. Kann ich in Blockly da irgendwie noch eine Wenn-Dann-Funktion zwischen setzen? Wenn positiv dann rechne so und wenn negativ dann rechne so?

              BananaJoeB 1 Antwort Letzte Antwort
              0
              • M MaThoPa1973

                Hallo und frohes neues Jahr Zusammen,

                ich habe ein kleines Problem, bei welchem ich mal Eure Hilfe bräuchte.

                In meiner Visualisierung bekomme ich über einen FRITZ!DECT die Leistung meiner Mini-PV-Anlage angezeigt, über einen IR-Lesekopf bekomme ich den aktuellen Strombezug (oder im ungünstigsten Fall auch die Einspeisung, dann als Negativ-Wert) angezeigt.

                Ich möchte nun aus den Werten der PV-Anlage (Wert1) und dem Strombezugswert (Wert2) mir in der Visualisierung einen errechneten Wert (Wert3) anzeigen lassen, welcher mir den momentanen Deckungsanteil der PV-Anlage am Strombedarf anzeiget (Strombedarf = PV-Ertrag + Strombezug).

                Rechnerisch sähe es also wie folgt aus:

                Anzeige in % = Wert1 / (Wert1+Wert2) *100

                Aber wie kann ich in der Visualisierung Berechnungen durchführen? In einem html-Widget kann ich die Werte übernehmen - mir ist auch bekannt, dass es sich in dem Moment der Übernahme erst einmal um einen Text-String handelt und nicht um einen numerischen Wert. Versuche ich das mit parseInt in eine Zahl umzuwandeln bekomme ich nur noch ein "undefined" angezeigt.... und Berechnungen bekomme ich irgendwie überhaupt nicht hin.

                Danke vielmals für Eure Hilfe.

                Gruß
                Markus

                OliverIOO Offline
                OliverIOO Offline
                OliverIO
                schrieb am zuletzt editiert von OliverIO
                #7

                @mathopa1973 sagte in Rechnen in der Visualisierung:

                Wert1 / (Wert1+Wert2) *100

                rechnen in vis direkt geht über binding.
                du trägst im html widget im feld html den folgenden text ein:

                {dp1:0_userdata.0.wert1;dp2:0_userdata.0.wert2;dp1 / (dp1+dp2) *100}
                

                die Namen der Datenpunkte für dp1 und dp2 entsprechend anpassen.
                du kannst alle standard javascript befehle verwenden. das ergebnis des ausdrucks wird dann ausgegeben.
                Die Dokumentation zu binding ist hier zu finden:
                https://github.com/ioBroker/ioBroker.vis#bindings-of-objects

                Meine Adapter und Widgets
                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                Links im Profil

                1 Antwort Letzte Antwort
                2
                • M MaThoPa1973

                  @bananajoe Danke, so wird's auch überschaubarer.

                  Eine hoffentlich letzte Frage: Ich beziehe mich ja einmal auf den Wert der PV-Anlage, der kann nur positiv oder 0 sein. Der aktuelle Strombezug kann jedoch, wenn der aktuelle Strombedarf kleiner als die Stromproduktion ist, auch negativ sein. Kann ich in Blockly da irgendwie noch eine Wenn-Dann-Funktion zwischen setzen? Wenn positiv dann rechne so und wenn negativ dann rechne so?

                  BananaJoeB Online
                  BananaJoeB Online
                  BananaJoe
                  Most Active
                  schrieb am zuletzt editiert von
                  #8

                  @mathopa1973 Jepp kannst du. Unter Logik den Falls nehmen

                  ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 10 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV APC 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                  M 1 Antwort Letzte Antwort
                  1
                  • BananaJoeB BananaJoe

                    @mathopa1973 Jepp kannst du. Unter Logik den Falls nehmen

                    M Offline
                    M Offline
                    MaThoPa1973
                    schrieb am zuletzt editiert von
                    #9

                    @bananajoe Danke vielmals - alle Fragen geklärt - läuft.

                    Habe festgestellt, dass ich eine Wenn-Dann (oder Falls)-Bedingung nicht benötige... stand da gerade mathematisch ein bisschen auf dem Schlauch. Denn...

                    Deckung = PV/PV+Strombezug bzw. im Falle der Einspeischung Deckung = PV/PV+(-Einspeisung)

                    Beispiel: 600 W Stromproduktion durch PV, der Stromzähler zeigt -200 W (Einspeisung), so ergibt sich folgende Rechnung:

                    Deckung in % = 600W/(600W+(-200W)) * 100 = 600W/400W * 100 = 150%

                    Ist bei gleicher PV-Produktion hingegen immer noch ein Strombezug von 200W dann sieht die Rechnung wie folgt aus:

                    Deckung in % = 600W/(600W+200W) * 100 = 600W/800W *100 = 75%

                    Alles also genau so wie ich es haben will... und meine Frau sieht auf Anhieb ob Sie mal eben die Spül- oder Waschmaschine noch anschmeißen soll um eine Überproduktion zu vermeiden ;)

                    1 Antwort Letzte Antwort
                    0

                    Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                    Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                    Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                    Registrieren Anmelden
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    561

                    Online

                    32.7k

                    Benutzer

                    82.6k

                    Themen

                    1.3m

                    Beiträge
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2025
                    logo
                    • Anmelden

                    • Du hast noch kein Konto? Registrieren

                    • Anmelden oder registrieren, um zu suchen
                    • Erster Beitrag
                      Letzter Beitrag
                    0
                    • Home
                    • Aktuell
                    • Tags
                    • Ungelesen 0
                    • Kategorien
                    • Unreplied
                    • Beliebt
                    • GitHub
                    • Docu
                    • Hilfe