Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Temperatur angleichen Tado + Netatmo

    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

    Temperatur angleichen Tado + Netatmo

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

      @schlumpf Haben deine Ventile einen "manuellen Modus" (Stellbetrieb)?

      Ich hab hier die Eurotronic Spirit Ventile im Einsatz und betreibe sie im Stellbetrieb, ähnlich wie du es beschrieben hast. Bei denen nennen sich die Datenpunkte: "TRV Mode" und "Manual Valve position"

      Um so größer die Differenz zwischen T-Soll und T-Ist, umso größer der Öffnungswinkel der Ventile.

      S 1 Reply Last reply Reply Quote 0
      • S
        Schlumpf @Einstein67 last edited by

        @einstein67

        Ich glaube sogar das es sowas gibt, allerdings ist der Wert des Öffnungswinkels nicht editierbar.

        Leider würde mir das vorerst nicht weiterhelfen. Im Grunde möchte ich erst einmal nicht alles komplett durch Iobroker steuern, sondern es Tado überlassen (grade im Bezug auf die Aufheizphase, welche von Tado selbst ermittelt und immer wieder nachjustiert wird). Ich will erst einmal nur, dass die Temperatur des Raums bei Tado mit der von der Wetterstation übereinstimmt.

        E 1 Reply Last reply Reply Quote 0
        • E
          Einstein67 @Schlumpf last edited by

          @schlumpf said in Temperatur angleichen Tado + Netatmo:

          allerdings ist der Wert des Öffnungswinkels nicht editierbar

          Wenn sich der Datenpunkt nicht beschreiben lässt, ist ein Stellbetrieb über einen externen Sensor nicht möglich. Außer recht begrenzt über den Temp-Offset.

          Mit der, durch die NetAtmo API entstehende Zeit Verzögerung, ist eine vernünftige Regelung leider auch nicht möglich.

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

            @schlumpf sagte: TR= Temperatur Raum
            tt= Temperatur Thermostat (kein Datenpunkt)

            Woher kommt die Raumtemperatur, wenn nicht vom Thermostaten?

            @schlumpf sagte in Temperatur angleichen Tado + Netatmo:

            Hierzu habe ich ein Skript erstellt

            ?? Zeigen!

            Versuche es mal mit diesem Blockly. Als Trigger muss die Netatmo-Temperatur verwendet werden.

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

              @paul53

              Naja, im Grunde kommt sie schon von Thermostaten. Von dem, den man dafür ausgewählt hat. Allerdings steht der Datenpunkt unter dem Raum selbst. Wähle ich ein anderes Thermostat aus, welches für die Raumtemperatür zuständig ist, wird der Wert an der selben stelle geschrieben.

              Unbenannt.png

              Die Thermostate selbst werden allerdings an einer anderen Stelle im Raumordner hinterlegt und haben keine eigene Temperaturangabe.

              Unbenannt2.png

              Problem ist, dass Tado die Thermostate nach der Raumtemperatur regelt, welche ich über den offset des entsprechenden Thermostates auch anpassen kann. Nur zur Berechnung des notwendigen offsets (um die selbe wie aus der Wetterstation zu bekommen) kann ich die Raumtemperatur nicht nutzen sondern bräuchte die der einzelnen Thermostate nochmal separat.

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

                @schlumpf sagte: bräuchte die der einzelnen Thermostate nochmal separat.

                Das sehe ich auch so. Dann ordne die beiden Thermostaten verschiedenen Räumen zu, z.B. Raum_links / Raum_rechts.

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

                  @paul53

                  Könnte ich, bringt in dem Fall aber leider nichts.

                  1. Würde das bedeuten das ich das Wohnzimmer nicht mehr komplett steuern könnte (wäre schade, aber auch lösbar)

                  2. würde ich wieder vor dem selben Problem stehen: versuche ich die Temperatur bei Tado auf die von Netatmo zu setzen, dies durch "offset", ändert das auch gleich meine Temperatur des Raumes, diese wiederum ändert den Wert des "offset" und schon hab ich wieder eine Schleife.

                  Die Temperatur bzw. den Wert den ich benötige muss, wenn ich nicht falsch liege, der des Thermostaten ohne offset sein, sprich die real gemessene Temperatur. Eine andere Lösung fällt mir nicht ein.

                  Gruß

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

                    @schlumpf sagte: das Wohnzimmer nicht mehr komplett steuern

                    Ein Thermostat als "Master", dem der Sollwert des anderen folgt.

                    @schlumpf sagte in Temperatur angleichen Tado + Netatmo:

                    hab ich wieder eine Schleife.

                    Das sollte mit dem verlinkten Blockly nicht passieren, denn es verwendet erhöhe Offset um Differenz.

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

                      @paul53

                      Master und Slave: So ist es an sich schon über die Räume geregelt. Ein Thermostat wird als Master definiert, alle anderen nehmen den Sollwert des Matsers an.

                      Blockly: Bin nicht sicher ob das so geht.

                      tt = Temperatur Termostat (kein Wert vorhanden)
                      offset(Z)=Tado offset von Thermostat (Master)
                      Wert(blau) = TR = Temperatur Raum
                      Wert(rot) = TW = Temperatur Wetterstation

                      Blockly:
                      "offset" => TW(23,6)
                      "differenz" = TW(23,6) - TR(19,3) = 4,3
                      "offset" + "differenz" = 23,6 + 4,3 = 27,9
                      "offset" => [(27,9*2)runden]/2 = 56/2 = 28
                      Wert(steuern) => "offset" => offset(Z) = 28
                      offset(Z) + tt(19,3) = TR => 28 + 19,3 = 47,3

                      Reale Schleife:
                      TW(23,6) - TR(19,3) = offset(Z)4,3
                      tt(19,3) + offset(Z)4,3 = TR(23,6)
                      TW(23,6) - TR(23,6) = offset(Z)0
                      tt(19,3) + offset(Z)0 = TR(19,3)
                      TW(23,6) - TR(19,3) = offset(Z)4,3
                      tt(19,3) + offset(Z)4,3 = TR(23,6)
                      .....usw.....

                      Problem:
                      Tado gibt nur den Wert TR an, also den Raumwert der durch den nicht vorhandenen Wert tt (Thermostatwert) plus den Wert offset (welchen man im ioBrocker ändern kann) gebildet wird. Das ist der einzige (Temperatur)Wert welcher vom Adapter kommt (abgesehen vom Sollwert).

                      Dadurch entsteht die Schleife. Ohne einen weiteren Wert in ioBroker kann eine vernünftige Rechnung nicht aufgestellt werden. Außer ich habe etwas komplett übersehen oder sehe/kenne die richtige Logik nicht.

                      😄 Ich hoffe man kann mir folgen.

                      Gruß

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

                        @schlumpf sagte: Blockly:

                        Falsch interpretiert:
                        Wert(offset) => offset(0)
                        "differenz" = TW(23,6) - TR(19,3) = 4,3
                        "offset" + "differenz" = 0 + 4,3 =4,3
                        "offset" => [(4,3*2)runden]/2 = 9/2 = 4,5
                        Wert(steuern) => "offset" => offset(Z) = 4,5
                        offset(Z) + tt(19,3) = TR => 4,5 + 19,3 = 23,8

                        Nächster Trigger:
                        Wert(offset) => offset(4,5)
                        "differenz" = TW(23,6) - TR(23,8) = -0,2
                        Betrag ist < 0,25

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

                          @paul53

                          Ah ok, ich verstehe. Der "Wert(offset)" ist ein selbst erstellter Wert?

                          Aber funktioniert das nicht nur dann, wenn die Temperatur auch steigt an der Wetterstation? Sobald die Temperaturen sinken bleibt der Heizkörper trotzdem aus. Klappt dann nur, wenn die Temperatur am Thermostat (bzw. die angezeigte Raumtemperatur) unter die der Wetterstation fällt. Was bei unseren angenommenen 4,5 grad ziehmlich viel ist!

                          paul53 2 Replies Last reply Reply Quote 0
                          • paul53
                            paul53 @Schlumpf last edited by paul53

                            @schlumpf sagte: Der "Wert(offset)" ist ein selbst erstellter Wert?

                            Nein, das ist der Wert Z vom Offset-Datenpunkt des Thermostaten.
                            TR = tt + Z
                            Datenpunktwert des Thermostaten.

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

                              ein wenig Eigeninitiative und Selbstversuche wären schon nett, und um hier mal ein paar Sachen zu eliminieren: es gibt nur einen Wert, egal wie viele Heizkörper, und nein es sind nicht einfach alle Werte editierbar, sonst kommt Schei..e raus.

                              Aber um die Faulheit ein wenig zu unterstützen:

                              bei steigendem Wert (netatmo, ... was auch immer) den Raum auf einen -1/2°C vom Soll regeln (Rooms.%number%.setting.temperature.celsius)
                              bei fallendem Wert macht man dann wieder Rooms.%number%.overlayClearZone

                              dein Blockly musst dir schon selbst basteln, hab z.B. via alexa-Ansage ein Nachlegen eingebaut.
                              Tado heizt auch normalerweise nicht, wenn es einen Temperaturanstieg feststellt, der nicht von einem Thermostat selbst verursacht/getriggert wurde.

                              S 1 Reply Last reply Reply Quote 0
                              • S
                                Schlumpf @maximal1981 last edited by Schlumpf

                                @maximal1981

                                Ist nicht ein Forum zum Diskutieren da und um sich Anregungen und Hilfe zu holen? Bei aller Liebe habe ich leider nicht Informatik bzw. Java gelernt und mache das Ganze einfach nur, weil es mir spaß macht. Dabei brauche ich einfach Hilfe, weil ich neben dem 40 Stunden Job und einem Studium zum Techniker noch eine neue Wohnung einrichte und mir neues zu lernen im alter zunehmend schwerer fällt. Deshalb bin ich dankbar, dass es Leute wie Paul gibt die mir mit viel Geduld weiterhelfen.

                                Und danke für deine freundlichen Worte, ich versuche immer erstmal eigene Skripte zu bauen und über das Forum oder Google Lösungen zu finden. Erst wenn ich nicht mehr weiter weiß, frage ich hier nach. Und ich versuche durchaus die Sachen, die mir geschrieben werden, logisch nachzuvollziehen und meine Antworten sinnvoll aufzubauen.

                                Ja, die meisten Werte sind blockiert (nicht editierbar), was verständlich und sinnvoll ist! Ich hätte nur gerne den ein oder anderen Wert zusätzlich (wie ein nicht veränderbaren, auch nicht durch offset, Wert der gemessenen Temperatur der einzelnen Thermostate).

                                Naja, mir geht es vor allem darum, dass wenn das Wohnzimmer an der Stelle, wo man sich vor allem aufhält (und wo die Wetterstation steht) warm ist, aber die Thermostate (durch die Nähe zur Außenwand und der etwas ungünstigen Abschirmung) noch eine sehr viel geringere Temperatur wahrnehmen, trotzdem die Heizung ausgeht.

                                Mein Ansatz und auch meine Skripte war erst einmal die Angleichung beider Temperaturen (sprich die Übernahme der Wetterstations-Temperatur in Tado), da mir das am einfachsten erschien. Ich wollte vorerst vermeiden tagelang alles auf ioBroker umzuziehen. Hier kam mir die Schleife in die Quere, die ich allein nicht umgehen konnte (mit den zur Verfügung stehenden Werten).

                                Der Ansatz "Nachlegen" finde ich interessant! Eventuell übernehme ich deine Idee, wenn ich darf. Ich verspreche auch, erst selbst zu probieren, bevor ich etwas frage. 😉

                                Gruß
                                Jan

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

                                  Ich muss mich entschuldigen, hab es aus der Hüfte während einem anstrengenden Arbeitstag geschrieben.

                                  Jetzt jedoch zum Verständnis:
                                  etliche Datenpunkte sind nicht editierbar.
                                  Nehmen wir deine Tado-Thermostate her. Macht doch keinen Sinn diese zu belügen wie warm/kalt es ist. Wann und wer stellt es wieder richtig? So kann keine Regelung funktionieren. Somit kann man sie nur über Steuersignale, also einem anderen Sollwert beeinflussen bzw. zu dem Verhalten "zwingen" was man erreichen möchte.
                                  Dies gilt mal global für alle Adapter.
                                  Du musst hierbei deinen Blickwinkel und die Herangehensweise ändern, um das umzusetzen was du vorhast.
                                  Ich hab dir oben schon die Datenpunkte genannt, die dich ans Ziel führen, und absichtlich kein Blocky reingestellt, denn selber Klicken macht klug^^.

                                  Wenn du was hast und vorzeigen kannst, bin ich gerne bei der Fehlersuche dabei.

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

                                    @maximal1981 sagte: Macht doch keinen Sinn diese zu belügen wie warm/kalt es ist.

                                    Ein Offset ist dafür da, falsche Messwerte zu korrigieren. Ist der Offset "read only"?

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

                                      nein ist write, ich hab es gerade getestet, trotzdem ist es eine dirty Variante in meinen Augen.
                                      Dies ist ja dazu gedacht eine Abweichung der Messung zu kompensieren.

                                      Würde es trotzdem via Sollwert machen, da diese dann bei korrekter Einstellung wieder zum Zeitplan übergehen wenn die aktuelle Timeline abgelaufen ist.

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

                                        @maximal1981 sagte: Würde es trotzdem via Sollwert machen

                                        Wenn der interne Zeitplan verwendet wird, ist es kompliziert, die Abweichung über den Sollwert zu kompensieren.

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

                                          @schlumpf sagte: funktioniert das nicht nur dann, wenn die Temperatur auch steigt an der Wetterstation?

                                          Nein, die Differenz kann auch negativ werden und so der Offset sinken.

                                          @schlumpf sagte in Temperatur angleichen Tado + Netatmo:

                                          Dadurch entsteht die Schleife.

                                          Eine Schleife Offset hoch/runter entsteht natürlich, wenn man den Offset auf die Differenz setzt. Wenn man den Offset um die Differenz erhöht, passiert es nicht, vorausgesetzt, der neue Offset ist bereits im Temperatur-Datenpunkt enthalten, wenn erneut getriggert wird.

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

                                            dann bin ich hier leider raus.
                                            In der Regeltechnik lügt man nicht die Messeinheit an, sondern beeinflusst die daraus resultierende Stellgröße und somit die Regelkurve/das Stelverhalten.

                                            Ich vergleiche sowas gerne mit einem Auto, da haben die Leute mehr Zugang:
                                            Bei einem Ausbrechen des Fahrzeuges und somit der Aktvierung des ESP, verringere ich auch nicht um ein delta die Gaspedalstellung, sondern Bremse Räder aus. Der Vergleich hinkt zwar leicht, hoffe es wird aber verstanden worauf ich eigentlich angespielt habe die ganze Zeit.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            710
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            37
                                            1845
                                            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