Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Einfache Temperatursteuerung geht nicht

    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

    Einfache Temperatursteuerung geht nicht

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

      Ich stehe irgendwie auf dem Schlauch,
      ich möchte über eine HmIP Wandthermostat die Temperatur abfragen und eine HmIP Steckdose schalten, eigentlich ganz einfach dachte ich, bei 25C geht die Steckdose auch aus aber bei 25.5C nicht wieder an. Ich habe schon mehrere Skripte probiert, auch fertige, nix geht.
      Zum verzweifeln.

      16-06-_2021_20-33-19.jpg

      T paul53 2 Replies Last reply Reply Quote 0
      • T
        tritor @ceulem last edited by

        @ceulem
        Ist die Temperatur nicht eine Zahl?
        Versuche die grünen Textbausteine gegen Zahl auszutauschen.
        Zahl findest du unter Mathematik.

        C 1 Reply Last reply Reply Quote 0
        • C
          ceulem @tritor last edited by

          @tritor hatte ich auch schon, da ist die Steckdose weder an noch aus gegangen.

          haselchen Homoran 2 Replies Last reply Reply Quote 0
          • haselchen
            haselchen Most Active @ceulem last edited by haselchen

            @ceulem

            Probier es mal mit einem Komma.

            25,5

            Und tatsächlich wäre der Matheblock der Richtige.

            https://forum.iobroker.net/topic/28318/temperatur-gesteuertes-schalten-switch-1-0-c

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

              @ceulem sagte in Einfache Temperatursteuerung geht nicht:

              @tritor hatte ich auch schon, da ist die Steckdose weder an noch aus gegangen.

              nein, muss Zahl sein.

              hmip über ccu?

              C 1 Reply Last reply Reply Quote 0
              • C
                ceulem @Homoran last edited by

                @homoran ja, über ccu

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

                  @ceulem sagte in Einfache Temperatursteuerung geht nicht:

                  @homoran ja, über ccu

                  dann muss die Ursache woanders sein!

                  welche Kanäle hat der Schaltaktor?
                  ist 3 ein Schaltkanal? (oder nur die Zustandsanzeige)?

                  C 1 Reply Last reply Reply Quote 0
                  • C
                    ceulem @Homoran last edited by

                    @homoran 3 ist der Schaltkanal.

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

                      @ceulem dann noch mal auf zahlen ändern und debug Bausteine setzten um zu sehen wo es hängt

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

                        @ceulem sagte: eine HmIP Steckdose schalten

                        Bei HmIP auch an den Duty cycle denken, d.h. nur dann Senden, wenn sich der Zustand des Aktors ändern soll.

                        Bild_2021-06-16_220800.png

                        Wert findet man unter "Trigger".

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

                          @paul53 Stimmt, habe ich nicht dran gedacht. Wo ich allerdings noch ein wenig auf dem Schlauch stehe, im letzten Block deines Skriptes "vom Objekt ID" kommt wieder der Temperatur Sensor rein oder?

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

                            @ceulem sagte: "vom Objekt ID" kommt wieder der Temperatur Sensor rein oder?

                            Nein, der Aktor. Ich dachte, dass die Aussage "nur dann Senden, wenn sich der Zustand des Aktors ändern soll", dies erklärt.

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

                              @paul53 Das Skript funktioniert bei mir nicht und für zu einer Fehlermeldung
                              Mit den debug blöcken kenn ich mich garnicht aus.

                              6a69fa9e-c5f4-401f-babd-e26f1c225933-image.png

                              So sieht das Skript aktuell aus:

                              var Aktor, Wert;
                              
                              
                              on({id: 'hm-rpc.1.000A9A49A4D2B9.1.ACTUAL_TEMPERATURE', change: "ne"}, async function (obj) {
                                var value = obj.state.val;
                                var oldValue = obj.oldState.val;
                                if (Wert <= 25) {
                                  Aktor = false;
                                } else if (Wert >= 25.5) {
                                  Aktor = true;
                                }
                                if (Aktor != getState("hm-rpc.1.0001D3C99C77A2.3.STATE").val) {
                                  setState("hm-rpc.1.0001D3C99C77A2.3.STATE"/*HMIP-PSM 0001D3C99C77A2:3.STATE*/, Aktor);
                                }
                              });
                              
                              //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyWHI5VHdoViU2MCUzQWk2eV9sKGRZdm0lM0QlMjIlM0VBa3RvciUzQyUyRnZhcmlhYmxlJTNFJTNDdmFyaWFibGUlMjBpZCUzRCUyMkNqRlIlN0QoJTdESiUyNSU2MEclMjNOJTJCJTJCNElXQ0wlMjIlM0VXZXJ0JTNDJTJGdmFyaWFibGUlM0UlM0MlMkZ2YXJpYWJsZXMlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMiElM0YoJTNCd0JiOEcweDg0JTVFZjZZJTVCTHglMjIlMjB4JTNEJTIyLTY4OCUyMiUyMHklM0QlMjItNTg3JTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwaXRlbXMlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VuZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMmolMjNzQjF6Y08lM0QlM0RtN1VZYjAlNURmNEUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0VobS1ycGMuMS4wMDBBOUE0OUE0RDJCOS4xLkFDVFVBTF9URU1QRVJBVFVSRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMiU0MGUlMkZpQ083a2o5JTdEJTNCSlklN0IlM0RTTDAuJTIyJTNFJTNDbXV0YXRpb24lMjBlbHNlaWYlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjIwNmglN0RCUGdTNmRkalJzJTJGcU0lMjU5ISUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFTFRFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIySCklM0JnNWIlNUJ+JTJDJTNBfiU1RSUyNTRFJTQwQ3kuJTNBJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJDakZSJTdEKCU3REolMjUlNjBHJTIzTiUyQiUyQjRJV0NMJTIyJTNFV2VydCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTNEMC4lM0RrJTVESSUyM2ElM0ZQUSp0JTI1cTQlM0JWQyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTI1JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJmKTQueX45NUo1MEdpNXhlJTQwN3UlMkIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlhyOVR3aFYlNjAlM0FpNnlfbChkWXZtJTNEJTIyJTNFQWt0b3IlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyUTAhRFpMKjRPJTVFTzElM0FwLkhBMjElNUQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklGMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMk9+WXd5QyU3QygweWoqdGpIJTJCS1d+aCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFR1RFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZEVBJTNCUndJRSUyQlNWN0NhciUyQiUzRlJJJTVFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJDakZSJTdEKCU3REolMjUlNjBHJTIzTiUyQiUyQjRJV0NMJTIyJTNFV2VydCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyaGhRM1BTfkFDLXMlNUQpTTViRSU0MGN3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMjUuNSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8xJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyVG5KMSl3KnJOJTJCNk4wJTIzJTdEWXNlZFAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMlhyOVR3aFYlNjAlM0FpNnlfbChkWXZtJTNEJTIyJTNFQWt0b3IlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyJTJGc2tlJTNBWkkhcGMlMkI0KE5lJTQwJTI0dVNqJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIybiUzRCU3RCpINVdTeX5WSFNmJTNEJTNCLkNFSiUyMiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMklGMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2NvbXBhcmUlMjIlMjBpZCUzRCUyMmgxSzIlNDBjJTQwbCUyM3M4T1hjJTYwKVBuJTNCRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFTkVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyaSU1RCUzQmx+MDkqR2ooUE9LKDNYV0RSJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJYcjlUd2hWJTYwJTNBaTZ5X2woZFl2bSUzRCUyMiUzRUFrdG9yJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyOVRKJTdDNV9lKG10aDklM0FqJTIzJTJDeG5LeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRWhtLXJwYy4xLjAwMDFEM0M5OUM3N0EyLjMuU1RBVEUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMnR2KWxFWVp0JTVCbCUyRig2JTdESXBSaSUyNC0lMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0VobS1ycGMuMS4wMDAxRDNDOTlDNzdBMi4zLlNUQVRFJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyYmslMjVlVDA0amZZcERTM00lN0IlMkMuWCU1QiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyWHI5VHdoViU2MCUzQWk2eV9sKGRZdm0lM0QlMjIlM0VBa3RvciUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
                              

                              e454259f-eff8-49ae-a6f4-0aae5e15c346-image.png

                              Asgothian C paul53 3 Replies Last reply Reply Quote 0
                              • Asgothian
                                Asgothian Developer @ceulem last edited by

                                @ceulem

                                Das Skript funktioniert schon. Allerdings hat das Skript eine Lücke:

                                Die Variable Aktor ist nicht definiert wenn die Temperatur zwischen 25 und 25.5 Grad liegt.

                                Genau darüber beschwert sich das Skript. Ich würde als ersten Block im Skript die Variable Aktor mit dem Wert von 'hm-rpc.1.0001D3C99C77A2.3.STATE' vorgelegen.

                                Dann sollte es gehen.

                                A.

                                1 Reply Last reply Reply Quote 0
                                • C
                                  Chrunchy @ceulem last edited by

                                  @ceulem Ich kenne nur javascript ein wenig...
                                  In Zeile 1 erstellst du die Variable Wert, ohne einen Inhalt zuzuweisen.

                                  In Zeile 7 prüfst du, ob Wert <= 25 ist. Aber was genau steht in Wert?

                                  Ersetzte in Zeile 5 das value durch Wert, dann sollte es passen, zumindest was die Prüfung angeht.

                                  Warum muss die zweite Prüfung eine else if sein?
                                  Reicht nicht an else bei einem Wert >25?

                                  Der Fehler besagt aber, dass Aktor beim setState in Zeile 13 das falsche Format hat.
                                  Zeile 2 z.B.

                                  var Aktor = new Boolean(false);
                                  

                                  Und Aktor aus Zeile 1 löschen.

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

                                    @ceulem sagte: So sieht das Skript aktuell aus:

                                    Wert darf keine selbst erstellte Variable sein, sondern unter "Trigger":

                                    Blockly_DP_Props.JPG

                                    Initialisiere die Variable Aktor außerhalb des Trigger-Blockes auf den Wert des Aktors.

                                    Bild_2021-06-17_132520.png

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

                                      @paul53 Danke, so scheint es jetzt zu funktionieren. Es gibt zwar eine Verzögerung, aber damit kann ich leben.

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      933
                                      Online

                                      31.9k
                                      Users

                                      80.2k
                                      Topics

                                      1.3m
                                      Posts

                                      7
                                      17
                                      471
                                      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