Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. *gelöst* Blockly Raumtemperatur aus Heizungsthermostat auslesen

    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

    *gelöst* Blockly Raumtemperatur aus Heizungsthermostat auslesen

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

      Ohjeee. Das bekomme ich ja im Leben noch nicht hin. Kannst du das bitte mal als Beispiel erstellen? Muss auch nicht mehr heute sein..

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

        @surfer09:

        er zeigt irgendwie noch eine Warnung am im LOG. ` Dar Datenpunkt "Temp_Bad" ist nicht vom Typ "Zahl"(number). Das solltest Du im Reiter "Objekte" ändern.

        1 Reply Last reply Reply Quote 0
        • surfer09
          surfer09 last edited by

          Hallo Paul,

          das habe ich gerade gemacht. Der Wert überträgt sich aber trotzdem nicht in die Homematic.
          4867_homematic_temperatur.jpg
          4867_temperatur.jpg

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

            @surfer09:

            Der Wert überträgt sich aber trotzdem nicht in die Homematic. `
            Anstelle des Blockes "aktualisiere" muss der Block "steuere" verwendet werden, damit an die CCU gesendet wird.

            Du hattest nicht erwähnt, dass es sich bei dem Datenpunkt "Temp_Bad" um eine SV der CCU handelt (man hätte es lediglich anhand des Homematic-Scripts vermuten können).

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

              In Deinem HM Script sehe ich, dass Du den Wert in einen String mit einer Nachkommastelle und der Maßeinheit konvertierst. Also ist die SV vom Typ "Zeichenkette" ? Dann muss auch der zugehörige Datenpunkt mit dem Namen "Temp_Bad" vom Typ "Zeichenkette" sein und man muss konvertieren. In Blockly habe ich allerdings keine Möglichkeit gefunden, feste Nachkommastellen vorzugeben. In Javascript geht es:

              const idSrc = getIdByName('Heizung-Badezimmer:4.ACTUAL_TEMPERATURE');
              const idDst = getIdByName('Temp_Bad');
              
              on(idSrc, function(dp) { // Triggern bei Wertänderung
                 setState(idDst, dp.state.val.toFixed(1) + ' °C'); // String mit 1 Nachkommastelle und Masseinheit
              });
              
              1 Reply Last reply Reply Quote 0
              • surfer09
                surfer09 last edited by

                Also den Wert auf "Zahl" umstellen finde ich nicht so gut. Hier werden dann keine Nachkommastellen ausgegeben…

                Wie konvertiere ich den Wert über Blockly in eine Zeichenfolge?

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

                  @surfer09:

                  Wie konvertiere ich den Wert über Blockly in eine Zeichenfolge? `
                  Etwa so, allerdings ohne feste Zahl der Nachkommastellen

                  493_blockly_numberdp_to_stringdp.jpg

                  1 Reply Last reply Reply Quote 0
                  • surfer09
                    surfer09 last edited by

                    Ich habe das Element von "aktualisiere" auf "steuere" umgestellt. Jetzt wird der Wert übertragen, allerdings mit mehreren Stellen nach dem Komma. Kann man das noch irgendwie kürzen? 1 Stelle würde ja reichen…

                    Aktuell ist der Variablenwert auf "Zeichenkette" eingestellt.
                    4867_temp_bad.jpg
                    4867_skript.jpg

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

                      @surfer09:

                      mit mehreren Stellen nach dem Komma. Kann man das noch irgendwie kürzen? 1 Stelle würde ja reichen… `
                      Das ist der Wert als Zahl. Nach der Umwandlung in einen String sind die Nullen nach dem Komma nicht vorhanden. Allerdings wirst Du dann eine oder keine Nachkommastelle haben (z.B. 22 °C).

                      1 Reply Last reply Reply Quote 0
                      • surfer09
                        surfer09 last edited by

                        Ich hab´s hinbekommen. Die Maßeinheit lässt sich in der Homematic hinterlegen, sodass der Wert als Zahl geschrieben werden kann.

                        Ich habe die Screenshots angehangen, so wie es jetzt funktioniert.

                        Danke!
                        4867_temperatur_bad_funktioniert.jpg
                        4867_skript_funktioniert.jpg
                        4867_variabe_wert.jpg
                        4867_variable_homematic.jpg

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        531
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        3
                        18
                        2211
                        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