Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Fenster Öffnen/schließen steuert Heizung

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Fenster Öffnen/schließen steuert Heizung

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Dragon @TDCroPower last edited by

      @tdcropower Ich habe als Triggerpunkte nicht die Fenstersensoren genommen sondern die Datenpunkte des "generischen Fenster offen Skripts" Die haben eine "Entprellzeit" die einstellbar ist, bei mir sind das 10 Sekunden. So können auch alle Heizkörper eines Raumes mit mehrern Fenstern geregelt werden.

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

        @tdcropower Der timeout bringt dir aber doch nichts, wenn du nicht im "falls" erneut den Wert abfragst. Aktuell nimmst ja den schon beim triggern ermittelten Wert.

        1 Reply Last reply Reply Quote 0
        • T
          TDCroPower @Dragon last edited by TDCroPower

          @dragon welche Datenpunkte sollen das sein? Verstehe deine Erklärung nicht so recht.

          @Cinimod den Wert von "is open" prüfe ich doch mit dem Trigger Objekt "Wert".
          Bei "true" gehts in den positiven "falls" Zweig und bei "false" ins "sonst".

          Cinimod D 2 Replies Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @TDCroPower last edited by dslraser

            @tdcropower sagte in Fenster Öffnen/schließen steuert Heizung:

            Wenn man das Fenster komplett öffnet und auf gekippt umstellt, indem man den Wechsel schnell durchführt (Frauchen ist da sehr fix) bleibt die Heizung eingeschaltet, obwohl das Fenster den Status gekippt hat.

            Welchen Wert hat denn der Datenbunkt bei geöffnet und welchen bei gekippt ? Zeig mal den RAW vom Datenpunkt.
            Kannst ja auch mal einen debug Baustein mit Wert direkt unter dem Trigger einbauen, dann siehst Du was passiert.

            Edit: Wenn beides getriggert wird, also geöffnet und gekippt true als Wert haben sollten, dann wird ja der Wert nicht geändert, nur der Zeitstempel wird geändert, der Wert bleibt. (also der Trigger)
            Meine Sensoren (HMIP haben drei Werte, also 0,1 oder 2, für jede Fensterstellung einen eigenen Wert)

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

              @tdcropower

              ja das ist schon klar, sollte der trigger tatsächlich aber nur einmal auslösen, solltest du nicht den schon beim triggern gelesenen Wert benutzen, lieber dann nach dem timeout noch mal "wert von ID" neu abfragen. sonst kannst auch den timeout weg lassen. 😉

              1 Reply Last reply Reply Quote 0
              • T
                TDCroPower @dslraser last edited by TDCroPower

                @dslraser der Sensor ist ein Aqara ZigBee Tür/Fenstersensor, der Datenpunkt ist ein boolean mit folgenden RAW Daten...

                {
                  "type": "state",
                  "common": {
                    "name": "Is open",
                    "type": "boolean",
                    "read": true,
                    "write": false,
                    "role": "state"
                  },
                  "native": {},
                  "from": "system.adapter.zigbee.0",
                  "user": "system.user.admin",
                  "ts": 1622678872085,
                  "_id": "zigbee.0.00158d0001dff2ef.opened",
                  "acl": {
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator",
                    "object": 1636,
                    "state": 1636
                  }
                }
                

                Der Datenpunkt erkennt alle Änderungen und triggert hier jeweils ein true/false.
                Also geschiet zwischen offen zu gekippt ein...
                offen = true
                offen -> zu = false
                zu -> gekippt = true

                dslraser 1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @TDCroPower last edited by

                  @tdcropower
                  mach einen debug Baustein mit Wert und schau was passiert.

                  geschlossen dann offen
                  offen dann gekippt

                  wird da dann immer getriggert ? (als auch von offen und dann gekippt)

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    TDCroPower @dslraser last edited by TDCroPower

                    @dslraser ja werden beide wechsel getriggert...

                    javascript.0
                    2021-10-27 10:44:56.974 error script.js.common.Heizung: true

                    javascript.0
                    2021-10-27 10:44:56.973 error script.js.common.Heizung: TEST TRIGGER

                    javascript.0
                    2021-10-27 10:44:55.897 error script.js.common.Heizung: false

                    javascript.0
                    2021-10-27 10:44:55.896 error script.js.common.Heizung: TEST TRIGGER

                    hier war es sogar länger als 1 Sekunde und somit hat der Timeout von 1 Sekunden nicht gegriffen.

                    dslraser 1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active @TDCroPower last edited by

                      @tdcropower
                      Ich kann Dir jetzt nicht ganz folgen. Ich sehe nur einen wechsel von false nach true. Wie sieht Dein Blockly jetzt aus ?

                      T 1 Reply Last reply Reply Quote 0
                      • T
                        TDCroPower @dslraser last edited by TDCroPower

                        @dslraser es sind 2 Debug Outputs direkt nach dem Trigger eingefügt....
                        Bildschirmfoto 2021-10-27 um 10.53.36.png

                        edit:
                        ich habe mir zusätzlich noch den Wert von "Power" des HKT ausgegeben.
                        Hier sieht man das der Wert direkt nach dem Trigger bei beiden auf OFF steht und somit in den "else" Pfad geleitet wird.
                        Also ist der Wechsel von gekippt auf zu noch nicht vom HKT verarbeitet worden und läuft wahrscheinlich im Hintergrund nach.

                        javascript.0
                        2021-10-27 10:57:00.425 error script.js.common.Heizung: Power: OFF

                        javascript.0
                        2021-10-27 10:57:00.424 error script.js.common.Heizung: true

                        javascript.0
                        2021-10-27 10:56:59.722 error script.js.common.Heizung: Power: OFF

                        javascript.0
                        2021-10-27 10:56:59.721 error script.js.common.Heizung: false

                        Bildschirmfoto 2021-10-27 um 10.59.13.png

                        dslraser 1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @TDCroPower last edited by

                          @tdcropower
                          und was hast Du gemacht ? Nur das Fenster geöffnet oder auch auf kipp ? (ich kenne/habe diese Sensoren nicht. Sind das Türgriffe bzw. erkennen die überhaupt den Unterschied zwischen gekippt und geöffnet wenn die nur true/false haben ?)

                          T 1 Reply Last reply Reply Quote 1
                          • T
                            TDCroPower @dslraser last edited by

                            @dslraser die Sensoren erkennen nur Offen/Zu, also keinen Zustand wie offen/gekippt.
                            Das sind folgende Sensoren...
                            https://www.amazon.de/Aqara-MCCGQ11LM-Window-Sensor-Fensterssensor/dp/B07D37VDM3

                            In dem Beispiel oben habe ich immer folgendes getestet und ausgegeben...

                            1. Fenster komplett geöffnet -> "is open": true
                            2. Fenster schließen -> "is open": false
                            3. Fenster kippen -> "is open": true
                            dslraser 1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active @TDCroPower last edited by

                              @tdcropower
                              ich muß jetzt leider erstmal weg und kann im Moment nicht weiter lesen/schreiben.

                              T 1 Reply Last reply Reply Quote 1
                              • T
                                TDCroPower @dslraser last edited by

                                @dslraser keine Eile ist ja mit dem Timeout erstmal unschön gefixt ;).
                                Suche ja nur eine bessere Lösung das Problem abzufangen.

                                1 Reply Last reply Reply Quote 0
                                • D
                                  Dragon @TDCroPower last edited by

                                  @tdcropower sagte in Fenster Öffnen/schließen steuert Heizung:

                                  @dragon welche Datenpunkte sollen das sein? Verstehe deine Erklärung nicht so recht.

                                  Hast du das Skript installiert?

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    TDCroPower @Dragon last edited by

                                    @dragon welches Skript soll das sein?
                                    Ich verwende mein eigenes Skript in diesem Beispiel.

                                    D 1 Reply Last reply Reply Quote 0
                                    • D
                                      Dragon @TDCroPower last edited by

                                      @tdcropower Gib oben im suchfeld einfach ein was ich dir als skript vorgeschlagen habe ("generischen Fenster offen Skripts") , dann findest du es. Man muss ja nicht alles in einem Skript verpacken, sondern kann auch Dinge mit mehreren Skripten erledigen. Ich habe so viele tolle und nützliche Skripte hier gefunden, welche ich alle niemals (auch da ich kein Java kann) alleine hätte erstellen können. Einige der Funktionen meines Systems zum Beispiel nutzen im Blockly eine Funktion die über ein JavaScript zur Verfügung gestellt wird. So kann ich diese tollen Skripte aus dem Forum, welche von den Erstellern liebevoll gepflegt und debugt werden nutzen ohne Java lernen zu müssen.

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        TDCroPower @Dragon last edited by

                                        @dragon finde dazu nichts...
                                        https://forum.iobroker.net/search?term=generischen Fenster offen Skripts&in=titlesposts

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          Dragon @TDCroPower last edited by

                                          @tdcropower

                                          Link

                                          Ist das erste was mir angezeigt wird bei den Suchbegriffen

                                          T 1 Reply Last reply Reply Quote 0
                                          • T
                                            TDCroPower @Dragon last edited by TDCroPower

                                            @dragon das Skript ist in meinem Beispiel wohl eher mit Raketen auf Spatzen schießen 😁

                                            wobei hier eine Zeit von 10 Sekunden bei Fenstern verwendet wird...

                                            const WindowIgnoreTime = 10000; // 10000 ms = 10 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                                            

                                            bei Türen ist es 1 Sekunde...

                                            const DoorIgnoreTime = 1000; // 1000 ms = 1 Sekunden - Zeit in ms für die kurzzeitiges öffnen/schliessen ignoriert wird
                                            

                                            Ist somit ja leider ähnlich gelöst wie in meinem Workaround.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            891
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            25
                                            1187
                                            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