Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Formel für Berechnung eines liegenden Zylinders

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Formel für Berechnung eines liegenden Zylinders

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      Elitepain77 last edited by

      Liebe Community und Experten,

      für die Berechnung meines Wasserstandes in der Zisterne habe ich einen TL-136 Sensor an einem ESP32 am laufen.
      Ich habe einen Graf Erdtank mit 5000L Volumen. (liegend)
      Funktioniert soweit, allerdings bekomme ich über den I2C Bus nur Stromwerte gemeldet (Tasmota). Ich habe eine Formel für die Berechnung gefunden, allerdings weiß ich nicht wie ich die Formel in Blockly zur Umrechung auf Liter einfach einbauen kann.
      arc.png

      Ist hier vielleicht eine Zeile Javascript der bessere Weg?

      Vielen Dank für eure Erfahrungsberichte.

      Grüße
      Chris

      haus-automatisierung Asgothian 2 Replies Last reply Reply Quote 0
      • haus-automatisierung
        haus-automatisierung Developer Most Active @Elitepain77 last edited by haus-automatisierung

        @elitepain77 sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

        Ist hier vielleicht eine Zeile Javascript der bessere Weg?

        Was fehlt Dir denn in Blockly?

        Warum eigentlich so kompliziert? Ein Zylinder berechnet man doch einfach nur mit V = π · r² · h.
        Der Radius ist ja vorgegeben und die Höhe liefert Dir der Sensor. Die Gesamthöhe kennst Du ja auch. Oder "liegt" der Zylinder?

        EDIT: Ach, liegend steht ja da 🙂 Ja dann musst es so machen. Aber auch das müsste in Blockly gehen. Sonst einfach eine Funktion schreiben.

        E 1 Reply Last reply Reply Quote 0
        • E
          Elitepain77 @haus-automatisierung last edited by

          @haus-automatisierung Danke für deine Antwort. Wie ich es in der Überschrift und im Text vermerkt hab liegt der Zylinder 🙂 Deshalb nehme ich den Wert h aus der Formel als Variable an. Ich bekomme die Komplexität der Formel aber nicht in Blockly dargestellt. 😞

          Viele Grüße
          Chris

          haus-automatisierung Homoran 2 Replies Last reply Reply Quote 0
          • haus-automatisierung
            haus-automatisierung Developer Most Active @Elitepain77 last edited by

            @elitepain77 sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

            Ich bekomme die Komplexität der Formel aber nicht in Blockly dargestellt.

            Zeig doch mal was Du schon hast. Muss ja nicht in einer Zeile sein, sondern geht ja auch Schrittweise.

            E 1 Reply Last reply Reply Quote 0
            • E
              Elitepain77 @haus-automatisierung last edited by

              @haus-automatisierung Danke schicke ich gleich, bin grad im Auto.

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @Elitepain77 last edited by

                @elitepain77 Wenn ich weiterdenke willst du wahrscheinlich das Füllvolumen berechnen und nicht das Volumen des ganzen Zylinders.
                Das wäre dann ein angeschnittener Kreis x länge

                E 1 Reply Last reply Reply Quote 0
                • E
                  Elitepain77 @Homoran last edited by

                  @homoran Hallo, ja genau. Dachte dass wäre selbstsprechend 🙂 Sorry. die Formel funktioniert in der Simulation. Ich rechne den Stromwert in cm um. Jetzt muss ich diesen Wert in die Formel (h) einsetzen. Es scheitert bei mir daran dass ich die Formel nicht in Blockly implementiert bekomme.

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Asgothian
                    Asgothian Developer @Elitepain77 last edited by Asgothian

                    @elitepain77 sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                    Ist hier vielleicht eine Zeile Javascript der bessere Weg?

                    Unter der Bedingung das die Formel stimmt (habe ich nicht verifiziert)

                    Screenshot 2024-08-22 at 15.07.33.png

                    in der JS Funktion dann:

                    return Math.acos(x)
                    

                    Blockly selber hat leider noch keine Trigonometrischen Funktionen (die ich gefunden habe).

                    A.

                    Homoran 1 Reply Last reply Reply Quote 1
                    • Homoran
                      Homoran Global Moderator Administrators @Elitepain77 last edited by

                      @elitepain77 was hättest du denn an realen Werten resp. Variablen zur Befüllung der Formel zur Verfügung?

                      L?
                      l?
                      r?
                      h?

                      Wird nirgendwo der radius des Zylinders angegeben?
                      Beziehungsweise der "Restdurchmesser", der sich ja verändert.
                      Das müsste doch in Verhältnis gesetzt wrrden ob die Füllung unterhalb oder oberhalb der Mittellinie steht.

                      Sorry, Trigonometrie war nie meine Stärke.

                      E 1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators @Asgothian last edited by

                        @asgothian sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                        Blockly selber hat leider noch keine Trigonometrischen Funktionen

                        Screenshot_20240822-150721_Firefox.jpg

                        Asgothian 1 Reply Last reply Reply Quote 0
                        • Asgothian
                          Asgothian Developer @Homoran last edited by Asgothian

                          @homoran welche version ?

                          nm - habs gefunden.. bedarf aber einer Umrechnung 🙂

                          Homoran 1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @Asgothian last edited by Homoran

                            @asgothian sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                            @homoran welche version ?

                            8.3.1, gibt es aber schon ewig

                            Asgothian 1 Reply Last reply Reply Quote 0
                            • Asgothian
                              Asgothian Developer @Homoran last edited by Asgothian

                              @homoran sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                              @asgothian sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                              @homoran welche version ?

                              8.3.1, gibt es aber schon ewig

                              War ich wohl Blind 🙂

                              Mit der eingebauten Funktion:
                              Screenshot 2024-08-22 at 15.12.58.png

                              A.

                              Nachtrag: Natürlich kann man das 2*PI/360 auf PI/180 kürzen, ich hab es aber absichtlich so gelassen - Umrechnung grad auf rad.

                              MartinP E 3 Replies Last reply Reply Quote 2
                              • MartinP
                                MartinP @Asgothian last edited by

                                @asgothian r und l sind Konstanten, und sollten in der Berechnung auch ggfs aufgelöst werden....

                                Asgothian 1 Reply Last reply Reply Quote 0
                                • E
                                  Elitepain77 @Homoran last edited by

                                  @homoran
                                  L= 2450mm
                                  r= 800mm
                                  b= 1600mm

                                  h= variabel in Abhängigkeit des Sensorwertes 🙂

                                  Hab die Formel schon in Excel nachgebaut und funktioniert einwandfrei 💪

                                  Diese Formel weicht entsprechend der normalen Volumenformel eines Zylinders ab um über den Arkuskosinus genau diese Unwegsamkeit abzubilden 🙂

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    Elitepain77 @Asgothian last edited by

                                    @asgothian Vielen herzlichen Dank 🙂 Ich probiere es später gleich aus

                                    1 Reply Last reply Reply Quote 0
                                    • Asgothian
                                      Asgothian Developer @MartinP last edited by

                                      @martinp
                                      Da hast du recht - hab ich aber Absichtlich nicht getan - dann kann im blockly die Formel wie sie ist nachvollzogen werden

                                      A

                                      MartinP 1 Reply Last reply Reply Quote 1
                                      • MartinP
                                        MartinP @Asgothian last edited by

                                        Naja, bei heutigen Prozessoren ist das eigentlich nicht mehr nötig, aber auf Rechnungs-Vereinfachungen zu verzichten, damit die Formel gleich mit der aus dem Tabellenbuch bleibt, ist vielleicht auch in Zeiten von JIT Compilern eine lässliche Sünde: Das, was man von Hand machen kann, wird die Plattform womöglich auch ganz alleine hinkriegen....

                                        Asgothian 1 Reply Last reply Reply Quote 0
                                        • Asgothian
                                          Asgothian Developer @MartinP last edited by

                                          @martinp sagte in Blockly Formel für Berechnung eines liegenden Zylinders:

                                          auf Rechnungs-Vereinfachungen zu verzichten, damit die Formel gleich mit der aus dem Tabellenbuch bleibt, ist vielleicht auch in Zeiten von JIT Compilern eine lässliche Sünde

                                          Korrekt, solange es nur darum geht eine saubere Lösung für das Problem zu schaffen.

                                          Bei meinem Post ging es aber auch darum aufzuzeigen wie so eine Formel in Blockly nachgebaut wird - inclusive aller Klammern, etc - Als Lehrstück damit der OP das vielleicht in der Zukunft auch selber machen kann.

                                          Anderen Leuten eine Rechnung in Blockly bauen die gut geht ist das eine. Leute dazu anzuleiten das selber zu tun ist das andere. Und an der stelle macht die Vereinfachung das ganze für mich aufwändiger und reduziert statt dessen die reine Transferleistung Formel zu Code.

                                          A.

                                          1 Reply Last reply Reply Quote 2
                                          • E
                                            Elitepain77 @Asgothian last edited by

                                            @asgothian Hallo asgothian, ich hab deine Formel in Blockly eingebaut. Leider liefert der Datenpunkt nicht den richtigen Wert 😞

                                            Blockly.png

                                            Ich werde den Rechenvorgang dann einfach zerlegen und mit zusätzlichen Datenpunkten abwicklen.

                                            Vielen Dank für euer Engagement!

                                            Viele Grüße
                                            Chris

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            559
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            22
                                            1065
                                            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