Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Eine Heizung mit drei Fensterkontakten

    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

    Eine Heizung mit drei Fensterkontakten

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

      Hallo Leute,

      ich habe das nächste (Anfänger-)Problem. Ich möchte jetzt nach und nach meine Heizkörper smart machen und als erstes eben runter regeln wenn die Fenster offen sind und umgekehrt. Nun ist es so, dass ich im Wohnzimmer drei Fenster und einen Heizkörper habe. Ich habe auch schon ein Skript geschrieben und es funktioniert... bis zu dem Punkt an dem ich im laufenden Betrieb die Temperatur ändere. Dafür hatte ich schon eine Lösung, ich brauche ja nur die Temperaturänder als Trigger... wenn ich die aber mit rein nehme triggert sich natürlich mein Skript selber, wenn Fenster auf und zu gehen... Ich habe hin und her probiert und keine Lösung gefunden. Hier also mein Stand nur mit Fensterkontakt-Triggern. (Nicht wundern... ich habe gerade nur einen Kontakt, die anderen kommen noch... um mein Skript live zu testen habe ich hier einfach meine Lampen als "Kontakt" genommen)

      Die debugs kommen natürlich zum Schluss wieder raus.

      Danke schonmal!

      fd12e13a-9c14-403b-b1c5-d6791f2b02ec-grafik.png

      J paul53 2 Replies Last reply Reply Quote 0
      • J
        JoergH @Mariatschi0815 last edited by

        @mariatschi0815

        Da gibt es einige Wege, das fängt schon an wie Du triggerst.
        Z.B.: Leg Dir einen weiteren DP an statt einer lokalen Variable in dem Du die aktuelle Temperatur von "davor" speicherst und den nutzt Du dann zum Zurücksetzen nachdem alle Fenster geschlossen wurden.

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

          @joergh sagte in Eine Heizung mit drei Fensterkontakten:

          @mariatschi0815

          Da gibt es einige Wege, das fängt schon an wie Du triggerst.
          Z.B.: Leg Dir einen weiteren DP an statt einer lokalen Variable in dem Du die aktuelle Temperatur von "davor" speicherst und den nutzt Du dann zum Zurücksetzen nachdem alle Fenster geschlossen wurden.

          Die Lösung ist trivial (wenn ich dich richtig verstanden hab).

          Setz einfach im gleichen Skript noch einen Trigger auf die Temperaturänderung, und prüfe darin ob diese von einem Skript aus passiert. Wenn das nicht der Fall ist, dann kannst Du einfach den neuen Wert der Temperatur in die Variable sichern.

          Zum Prüfen wo eine Änderung her kommt kannst Du den Baustein aus dem Trugger-Bereich nehmen der mit "Objekt ID" voreingestellt ist. Über diesen Baustein kommst Du auf Eigenschaften des Triggers (wer hat getigert, wie war der alte wert, wie lange ist die Änderung her, etc) zugreifen.

          Alternativ kannst Du dir eine "blockier" variable bauen (FensterOffenAktiv).
          Diese setzt du bevor Du die Temperatur automatisch absenkst auf "wahr", und nachdem Du die Temperatur wieder angehoben hast auf "falsch"
          Im Trigger auf die Temperaturanpassung schaust Du dann nach ob diese Variable auf "wahr" steht. Wenn ja dann musst du die Temperaturanpassung ignorieren.

          A.

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

            @mariatschi0815
            Vorschlag:

            Bild_2022-01-04_155513.png

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

              @paul53 Ich glaube er möchte halt den Normalwert für die Raumtemperatur bei geschlossenen Fenstern in dem Moment wo er ihn nach Starten des Skriptes verändert auch mit verändert haben. Dazu braucht er wohl noch einen weiteren DP, der dann immer ausgelesen wird, wenn ein Fenster geöffnet wurde und vorher keines geöffnet war.

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

                @joergh sagte: Normalwert für die Raumtemperatur bei geschlossenen Fenstern in dem Moment wo er ihn nach Starten des Skriptes verändert auch mit verändert haben.

                Genau das macht "setze soll_geschlossen auf Wert vom DP Sollwert" innerhalb des Triggers: Wenn das erste Fenster geöffnet wird, wird die Variable auf den Sollwert gesetzt.

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

                  @paul53

                  Stimmt. Hatte es nicht gleich begriffen.

                  1 Reply Last reply Reply Quote 0
                  • M
                    Mariatschi0815 last edited by

                    Hey Leute,

                    mir ist leider etwas dazwischen gekommen, weswegen ich mich jetzt mit dem "Projekt" nicht weiter beschäftigen konnte.

                    Danke für die vielen Tipps!

                    Paul, das sieht so aus wie ich es mir vorgestellt habe. Nur eine Verständnisfrage. Den soll_geschlossen setzt du quasi nur beim Start des Skriptes auf 20 und anschließend wird er über meine Eingabe im laufenden Skript angepasst und beibehalten. Seh ich das so richtig?

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

                      @mariatschi0815 sagte: soll_geschlossen setzt du quasi nur beim Start des Skriptes auf 20 und anschließend wird er über meine Eingabe im laufenden Skript angepasst und beibehalten.

                      Ja. Wenn zum Zeitpunkt des Skriptstarts mind. ein Fenster offen ist, der Sollwert also 5 °C beträgt, muss man einen Standardwert vorgeben, da dann der Sollwert bei geschlossenen Fenstern nicht zur Verfügung steht.

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

                        @paul53 sagte: muss man einen Standardwert vorgeben

                        Alternativ kann man sich auch den Sollwert in einem eigenen Datenpunkt (unter "0_userdata.0") merken.

                        Bild_2022-01-05_134811.png

                        1 Reply Last reply Reply Quote 0
                        • M
                          Mariatschi0815 last edited by

                          Funktioniert! Danke nochmal.

                          Mal noch eine andere Frage, wenn ich jetzt noch mehr Zimmer nachrüste... (was passieren wird), macht es mehr Sinn für jedes Zimmer ein Skript zu bauen, oder das Skript so umzuschreiben, dass es für alle zimmer funktioniert? Ich hätte jetzt noch drei Zimmer mit einem Fenster und ein Zimmer mit zwei Fenstern, aber jeweils nur ein Heizkörper.

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

                            @mariatschi0815 sagte: für jedes Zimmer ein Skript zu bauen,

                            Ich würde für jedes Zimmer ein Skript verwenden, um die Skripte übersichtlich zu halten.

                            1 Reply Last reply Reply Quote 0
                            • M
                              Mariatschi0815 last edited by

                              Hey Leute,
                              da ich das Thermostat ohne bridge steuere hat sich noch ein zusätzliches Problem aufgetan. Ich muss noch den Mode mit heat oder off steuern. Also müsste ich noch einbinden, dass wenn die Fenster geschlossen sind und die Temperatur um bspw. 2Grad fällt der Modus auf heizen stellt und dann die Temperatur geregelt wird.

                              Mein Gedankengang wäre jetzt ein zusätzlichen Trigger einzubauen der auf Temperaturänderung „anspringt“ und dort ein if einzubauen, welches dann eine Variable belegt und dann ein steuere mit mode jeweils vor die Targettemp. jetzt wäre ja hier aber wieder das Problem, dass bei offenem Fenster die Temperatur sinkt und dadurch die ganze Zeit mein Trigger auslöst. Dazu kommt noch, sollte das Fenster (warum auch immer) so lange offen sein, dass die Temperatur konstant bleibt reagiert mein Trigger ja nicht mehr.

                              Bevor ihr mir jetzt ein fertiges script liefert, wofür ich euch immer sehr dankbar bin, könnt ihr mir erstmal Tips geben wie ihr an solche Probleme heran geht? Ich möchte es ja auch lernen, um seltener und vielleicht gar nicht mehr mit solchen Anfängerproblemen zu nerven.

                              Gruß Martin

                              1 Reply Last reply Reply Quote 0
                              • M
                                Mariatschi0815 last edited by Mariatschi0815

                                Das wäre jetzt meine Idee dazu.

                                Ich musste das nochmal editieren. Ich habe noch festgestellt, dass das Thermostat erst anfängt zu arbeiten, wenn mann die Lokaltempereatur kalibriert und der mode auf auto oder heat steht.
                                Also um das Heizen anzustoßen genügt es den Wert zum Kalibrieren (Offset[...]) anzustoßen. Das Thermostat mach dann zu wenn das Offset wieder 0 ist.
                                Für die Fenster genügt es den Mode zwischen off und auto (oder heat) zu schalten.

                                Also sieht mein Skript jetzt erstmal so aus:

                                787f0f04-e0a8-4ec8-aed0-1cac50fe5e29-grafik.png

                                Das Thermostat misst die Temperatur in der Umgebung eigenständig, liefert aber nicht regelmäßig aktuelle Werte. Somit nutze ich einen extra Temp-Sensor muss den Wert aber bei der Berechnung trotzdem berücksichtigen.

                                Und ein Problem bleibt, was wenn die Temperatur sich nicht mehr ändert?

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

                                  @mariatschi0815 sagte: das Thermostat erst anfängt zu arbeiten, wenn mann die Lokaltempereatur kalibriert

                                  Wirklich? Das kann ich mir nicht vorstellen. Ein Thermostat muss im entsprechenden Modus die Temperatur regeln. Die Temperaturabhängigkeit im Skript zu realisieren, ist dann kontraproduktiv.

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

                                    @paul53 Ja... das Teil bereitet mir jetzt schon etwas länger Kopfzerbrechen... Es ist auch nicht optimal in den Zigbee-Adapter eingebunden, was aber an der Hardware liegt. Hab da schon etliche Leute mit beschäftigt.
                                    Jedenfalls ist es so erstmal nutzbar. Bin hier auch schon im Forum unterwegs um rauszufinden ob das Eurotronics Spirit Zigbee mittlerweile problemlos läuft und würde dann nochmal umsteigen.
                                    Für den Moment um mich einzuarbeiten würde ich das Teil jetzt aber erstmal weiter benutzen. Auch wenn dadurch wohl noch mehr Kopfschmerzen vorprogrammiert sind.

                                    Um es nochmal kurz zu fassen, wir werden hier nicht mehr ewig wohnen, weswegen das Thermostat günstig sein soll/sollte einfach um mich praktisch (oder in dem Fall unpraktisch...) damit beschäftigen zu können.

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

                                      @mariatschi0815 sagte: das Teil bereitet mir jetzt schon etwas länger Kopfzerbrechen...

                                      Ist es das Saswell SEA802? Da wäre ich vorsichtig, wenn nicht einmal der Hersteller weiß, auf welcher Frequenz es funkt.

                                      Bild_2022-01-09_190509.png

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

                                        @paul53 said in Eine Heizung mit drei Fensterkontakten:

                                        @mariatschi0815 sagte: das Teil bereitet mir jetzt schon etwas länger Kopfzerbrechen...

                                        Ist es das Saswell SEA802? Da wäre ich vorsichtig, wenn nicht einmal der Hersteller weiß, auf welcher Frequenz es funkt.

                                        Bild_2022-01-09_190509.png

                                        Jain, ist wohl baugleich. Ob Hama da ähnlich desinteressiert ans Werk geht lässt sich nur vermuten. Wobei die Ergebnisse und Arbeitsweisen hier wohl dafürsprechen, dass einfach nur umgelabelt wurde....

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Mariatschi0815 last edited by Mariatschi0815

                                          Also, mein Spirit Zigbee kam und es macht das was ein Thermostat tun sollte. Da ich immernoch auf meine anderen Fensterkontakte warte hab ich erstmal folgendes Skript geschrieben. Nichts bewegendes.

                                          929e10d6-8402-400f-a200-49e2a61daffc-grafik.png

                                          Edit: Ich hoffe ich hab den CRON-job richtig verstanden. Ich habe hier einfach mal angefangen und ich weiß, dass mein script hier gerade mal ansatzweise lauffähig ist und bin für Hilfestellung sehr dankbar.
                                          Ich brauch ja zum Ein- und Ausschalten jeweils einen CRON und dann nochmal extra für die Tage mit unterschiedlichen Schaltzeiten, richtig?
                                          Jetzt gibt es hier schon das erste Problem, wenn bspw. über Nacht ein Fester offen bleibt und die Heizung ausgeschalten wird übermittelt sie automatisch als ZielTemp 5°C. Jetzt würde ja, sobald ich das Fenster schließe meine Heizung im Heizzyklus nur mit 5°C "heizen", wie kann ich denn das umgehen?

                                          360a14da-643a-4cca-84bd-d597de13b5bb-grafik.png

                                          Achso, zu einem späteren Zeitpunkt möchte ich die anderen Heizkörper (sobald sie nachgerüstet sind) mit in diesem Heizplan einpflegen.

                                          Gruß Martin

                                          1 Reply Last reply Reply Quote 0
                                          • M
                                            Mariatschi0815 last edited by

                                            Mahlzeit,

                                            hat keiner Zeit mir ein bisschen zu helfen? Ja ich weiß, dass es den Heizungs-Adapter gibt. Ich möchte ja aber gerne scripten (üben) und alles eben so individuell wie möglich gestalten.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            878
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            43
                                            1195
                                            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