Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Anfänger: Zwei Datenpunkte addieren in drittem

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Anfänger: Zwei Datenpunkte addieren in drittem

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @BertDerKleine last edited by paul53

      @bertderkleine sagte: Da nicht vorhersehbar ist, ob gerade A oder B aktualisiert wurden

      Stammen die DP aus verschiedenen Geräten?

      @bertderkleine sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

      Berechnung einfach 1x pro Minute machen.

      Zeitplan "jede Minute" und darin aktualisiere Objekt C mit Wert vom Objekt A + Wert vom Objekt B

      1 Reply Last reply Reply Quote 0
      • V
        Verblizz last edited by

        Trigger auf beide Objekte (A oder B) und darin beide addieren und in C schreiben.

        1 Reply Last reply Reply Quote 0
        • Cinimod
          Cinimod Most Active @BertDerKleine last edited by Cinimod

          @bertderkleine

          Ich hätte es einfach so versucht:

          Bildschirmfoto 2022-12-11 um 10.36.26.png

          paul53 1 Reply Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @BertDerKleine last edited by liv-in-sky

            @bertderkleine

            sorry - war zu langsam - doppel-lösung

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Cinimod last edited by

              @cinimod sagte: einfach so versucht:

              Wenn eine Konvertierung nach Zahl erforderlich ist, dann vor der Addition, weil sonst eine String-Verkettung erfolgt.

              Cinimod 1 Reply Last reply Reply Quote 0
              • Cinimod
                Cinimod Most Active @paul53 last edited by Cinimod

                @paul53

                Die Werte sollten ja schon beide Typ Zahl sein, dann ist eine Konvertierung vermutlich ja garnicht notwendig oder ?

                Dann vielleicht erstmal ohne probieren und schauen was passiert.

                Bildschirmfoto 2022-12-11 um 10.35.19.png

                BertDerKleine 1 Reply Last reply Reply Quote 0
                • BertDerKleine
                  BertDerKleine @Cinimod last edited by

                  @cinimod
                  Vielen Dank!

                  Ich muss mich dieser Logik erst annähern. U.a. musste ich jetzt erst lernen, welche Blöcke man wo alles reinschieben kann.

                  Kosmetische Frage: Wie kommt es, dass die blaue Addition bei Dir in zwei Zeilen untereinander erscheint, bei mir aber alles nebeneinander erscheint? Ich sehe da auch keine Möglichkeit das zu formatieren.

                  Zusatzfrage:
                  Wenn ich (A+B)*C rechnen wollte, geht das in einem Aufwasch, oder muss ich dann erst einen "steuere ObjectID" Block zum Addieren und darunter einen zweiten mit der Multiplikation machen?

                  1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 @BertDerKleine last edited by paul53

                    @bertderkleine sagte: eigenen Datenpunkt E angelegt

                    Dann sollte anstelle von "steuere" besser der Block "aktualisiere" verwendet werden.

                    @bertderkleine sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

                    bei mir aber alles nebeneinander erscheint?

                    Mauszeiger über dem Additionsblock und rechte Maustaste: "externe Eingänge" auswählen.

                    @bertderkleine sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

                    Wenn ich (A+B)*C rechnen wollte, geht das in einem Aufwasch

                    Ja.

                    Beantworte bitte noch meine Frage:
                    @paul53 sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

                    Stammen die DP aus verschiedenen Geräten?

                    BertDerKleine 1 Reply Last reply Reply Quote 1
                    • BertDerKleine
                      BertDerKleine last edited by BertDerKleine

                      @paul53

                      Ja, die Datenpunkte kommen aus zwei Geräten / zwei Adaptern. Dem Wechselrichter und dem "Zähler".

                      So sieht es jetzt aus:

                      t1.jpg

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @BertDerKleine last edited by

                        @bertderkleine sagte: So sieht es jetzt aus:

                        Man kann einen Datenpunktwert nicht gleich wieder einlesen nachdem er geschrieben wurde (asynchrone Abarbeitung von "aktualisiere"). Verwende für "Stromüberschuss" eine Variable.

                        Kommen die beiden Trigger-Datenpunkte (+ / -) aus verschiedenen Geräten?

                        BertDerKleine 1 Reply Last reply Reply Quote 1
                        • BertDerKleine
                          BertDerKleine @paul53 last edited by

                          @paul53
                          Ok, erstmal muss ich mich präzisieren. Die beiden ersten Werte, die ich subtrahiere, um "Stromüberschuss" zu bilden, kommen aus demselben Gerät, dem "Zähler".
                          Erst die "Aktuelle Leistung" für den "Stromverbrauch" kommt aus dem zweiten gerät Wechselrichter.

                          Stromüberschuss und Stromverbrauch sind ja Datenpunkte, die ich selbst angelegt habe.

                          Das führt mich zur Frage: Was ist der Unterschied zwischen einer "Variable" und einem selbst angelegten "Datenpunkt"?

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @BertDerKleine last edited by paul53

                            @bertderkleine sagte: kommen aus demselben Gerät, dem "Zähler".

                            Dann kommen sie unmittelbar nacheinander. Damit nur mit den zusammenhängenden Werten gerechnet wird , wird ein Timeout benötigt.

                            Bild_2022-12-11_143251398.png

                            @bertderkleine sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

                            Was ist der Unterschied zwischen einer "Variable" und einem selbst angelegten "Datenpunkt"?

                            Eine Variable ist ein Skript-interner Merker. Ein Datenpunkt ist ist ein komplexes ioBroker-Objekt.

                            BertDerKleine 1 Reply Last reply Reply Quote 1
                            • BertDerKleine
                              BertDerKleine @paul53 last edited by

                              @paul53
                              Danke für die Erklärungen!

                              1 Reply Last reply Reply Quote 0
                              • BertDerKleine
                                BertDerKleine @paul53 last edited by

                                @paul53
                                Darf ich nochmal auf die Frage nach der effizientesten/kürzesten Abbildung von längeren Formeln zurückkommen?
                                Wenn ich y = 2*(a+b)+2ab rechnen will, dann scheint es mir aktuell so, als ob ich da einen Stapel von Bausteinen für bräuchte.

                                Oder wie ginge das am einfachsten?

                                Homoran paul53 2 Replies Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @BertDerKleine last edited by

                                  @bertderkleine sagte in Anfänger: Zwei Datenpunkte addieren in drittem:

                                  als ob ich da einen Stapel von Bausteinen für bräuchte.

                                  ja

                                  1 Reply Last reply Reply Quote 1
                                  • paul53
                                    paul53 @BertDerKleine last edited by paul53

                                    @bertderkleine sagte: wie ginge das am einfachsten?

                                    Erst einmal die Formel optimieren: y = 2*(a+b+a*b)

                                    Das sind 4 Blöcke.

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    776
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    6
                                    17
                                    497
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo