Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

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

      Okay - Räume mit Umlauten sind wohl auch Böse?

      index.html#Heizung_Büro

      "View existiert nicht!"

      Ansonsten lief das Script nun an, die Objekte wurden erstellt, aber im Vis erhalte ich für die ersten Testräume überall nur Ventilstellungen NaN.

      ! 3277_bildschirmfoto_2018-01-07_um_15.10.49.png

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

        Ich würde keine Umlaute nehmen. Die Views werden im Browser über die URL aufgerufen … und da sind Umlaute nicht die beste Wahl.

        Die Ventilstellung müsstest Du selber in der jeweiligen View nachtragen - zumindest müsste ich das (bin seit der Version v0.8x dabei).

        Gruß,

        Eric

        Von unterwegs getippert

        1 Reply Last reply Reply Quote 0
        • P
          pxstd last edited by

          Okay, okay - die Raumnamen in der CCU haben allerdings dort schon Umlaute. Aber davon kann der Visname ja abweichen.

          Was hat es mit der Seitenleiste auf sich?

          3277_bildschirmfoto_2018-01-07_um_20.49.34.png

          Hier sind komplett nicht existente Geräte zugewiesen. Soll das so?

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

            Da musst Du manuell die Datenpunkte deines Raumthermostats einfüllen das korrekte Werte kommen. Klicke auf die "NaN" und dann die Object-ID ändern in der Widget Konfig

            1 Reply Last reply Reply Quote 0
            • P
              pxstd last edited by

              @apollon77:

              Da musst Du manuell die Datenpunkte deines Raumthermostats einfüllen das korrekte Werte kommen. Klicke auf die "NaN" und dann die Object-ID ändern in der Widget Konfig `

              Okay - das ist also bewusst so wie es ist. Ich dachte man könnte mit einem cleveren Dev-Trick/Funktion die passenden Geräte auswählen.

              1 Reply Last reply Reply Quote 0
              • S
                StefanLue last edited by

                Auch von mir ein zunächst mal ein herzliches Danke für die tolle Arbeit mit dem Script.

                Eine simple (?) Frage:

                Mein Wandthermostat HM-TC-IT-WM-W-EU wird in enum.functions (wie auch in der CCU) als "Klima" geführt. Die Heizkörperthermostate als "Heizung".

                Wie kann ich das vereinheitlichen um alle im Script bei var HeizungGewerk zu berücksichtigen?

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

                  Moin,

                  die Aufteilung der Geräte aus die Gewerke findet auf der CCU statt.

                  Dort die Zuordnung ändern und dann den hm-rega neu starten (ggf. musst Du dann noch die enum.functions „aufräumen“, falls der rega-Adapter das nicht automatisch macht).

                  Gruß,

                  Eric

                  Von unterwegs getippert

                  1 Reply Last reply Reply Quote 0
                  • S
                    StefanLue last edited by

                    Danke. War etwas versteckt in der CCU…

                    1 Reply Last reply Reply Quote 0
                    • S
                      swordfisch last edited by

                      Schöne Sache aber irgendwie komme ich nicht klar

                      immer wenn ich das Script starte kommt diese meldung im LOg

                      ! javascript.0 2018-01-09 22:09:40.129 warn at Object. (script.js.common.Heizungssteuerung:419:9)
                      ! javascript.0 2018-01-09 22:09:40.129 warn at LoopRooms (script.js.common.Heizungssteuerung:754:5)
                      ! javascript.0 2018-01-09 22:09:40.129 warn at setOwnState (script.js.common.Heizungssteuerung:482:5)
                      ! javascript.0 2018-01-09 22:09:40.126 warn State "javascript.0.Heizung.Heizplan.GlobaleParameter.Source_last_Program_Run" not found
                      ! javascript.0 2018-01-09 22:09:40.123 info script.js.common.Heizungssteuerung: Heizungsscript verarbeitung benutzt Trigger und Events
                      ! javascript.0 2018-01-09 22:09:38.124 info script.js.common.Heizungssteuerung: registered 0 subscriptions and 0 schedules
                      ! javascript.0 2018-01-09 22:09:38.123 info script.js.common.Heizungssteuerung: Routine GetDevices Devices initialisiert
                      ! javascript.0 2018-01-09 22:09:38.070 info Start javascript script.js.common.Heizungssteuerung

                      1 Reply Last reply Reply Quote 0
                      • L
                        looxer01 last edited by

                        @swordfisch:

                        immer wenn ich das Script starte kommt diese meldung im LOg `

                        Hi,

                        das script kann keine Geräte einlesen. In den meisten Fällen liegt es an Raum/Gewerkezuordnung.

                        Dazu gab es ja einige posts hier im Thread -ein wenig weiter oben-

                        (Einstellung im Script, Einstellung in der CCU, Check die Aufzählungen in ioBroker etc)

                        Schau dir das mal an.

                        Ich kenne allerdings auch deine Einstellungen nicht. Könnte ja sein, dass du NICHT-HM Geräte verwendest, In dem Fall müssen aber trotzdem die Räume in den Aufzählungen vorhanden sein.

                        vG Looxer

                        1 Reply Last reply Reply Quote 0
                        • P
                          pxstd last edited by

                          Hallo zusammen!

                          Ich wollte mich zurückmelden und erstmal ein Lob aussprechen:

                          Danke loxxer! Tolles Script und alles funktioniert wie es soll.

                          Einen Zusammenhang verstehe ich allerdings noch nicht:

                          Ich habe im EG einen Raum aus Homematic Wandthermostat und 2 Heizungsaktoren.

                          Was wird im Vis "Heizung_Wohnzimmer" jetzt angesteuert?

                          Die Geräte haben eine Direktverknüpfung via HM, aber was steuert das Script an, wenn ich Temperaturen verändere?

                          1 Reply Last reply Reply Quote 0
                          • L
                            looxer01 last edited by

                            @pxstd:

                            ch habe im EG einen Raum aus Homematic Wandthermostat und 2 Heizungsaktoren.

                            Was wird im Vis "Heizung_Wohnzimmer" jetzt angesteuert?

                            Die Geräte haben eine Direktverknüpfung via HM, aber was steuert das Script an, wenn ich Temperaturen verändere? `

                            Hi,

                            kommt auf deine Einstellungen an. Es gibt eine Spalte bei der Thermostat Tabelle. Direktverknuepft true/false

                            Wenn auf True, dann sucht das Script die Wandthermostate. Wenn es keines findet, dann nimmt es die Heizkörperthermostate.

                            Wenn nicht-direktverknuepft, dann synchronisiert das Script alle Thermostate. (Simulation der Gruppenfunktion)

                            also in Short,

                            • Wenn DV, dann wird nur ein Thermostat eines Raumes angesteuert

                            • Wenn nicht DV, dann werden alle Geräte eines Raumes synchronisiert (Gruppenfunktion Simulation)

                            vG Looxer

                            1 Reply Last reply Reply Quote 0
                            • P
                              pxstd last edited by

                              @looxer01:

                              Es gibt eine Spalte bei der Thermostat Tabelle. `
                              Wo das? In den Objekten?

                              Die Frage resultiert daraus, dass ich ständig eine manuell gesetzte Temperatur im Wohnzimmer habe, die ich mir nicht erklären kann:

                              Heizprogramm in der CCU2 steht durchgehend auf 17°C

                              3277_bildschirmfoto_2018-01-10_um_10.07.59.png
                              3277_bildschirmfoto_2018-01-10_um_10.13.25.png

                              1 Reply Last reply Reply Quote 0
                              • L
                                looxer01 last edited by

                                @pxstd:

                                Wo das? In den Objekten? `

                                Nein, im Script in der Thermostattype-Tab im Bereich der Einstellungen.

                                Dort sind alle Geräte gelistet. Check das bitte mal was zu deinen Thermostaten passt ?

                                Welche hast du ?

                                vG Looxer

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pxstd last edited by

                                  Im Wohnzimmer habe ich HM-TC-IT-WM-W-EU an der Wand und HM-CC-RT-DN an den Heizkörpern.

                                  Script sagt:

                                  ! var ThermostatTypeTab = [];
                                  ! // 0.RPC-Pfad 1.GeraeteType 2. Beschreibung, 3. Type 4.DP-SollTemp 5.nicht verwendet ID 6.DP MANU/AUTO Schaltung 7.Steuerung DV 8. IstTemp 9-Check-MANU-Mode 10-Ventilstellung wenn nicht Heizperiode 11. Delay nach Verschluss zu
                                  ! ThermostatTypeTab[0] = ['hm-rpc.0.', 'HM-TC-IT-WM-W-EU', 'Wandthermostat (neu)' ,'WT', '2.SET_TEMPERATURE' , false, '2.MANU_MODE', true, '1.TEMPERATURE', '2.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[1] = ['hm-rpc.0.', 'HM-CC-TC' , 'Wandthermostat (alt)' ,'WT', '2.SETPOINT' , false, false, false, '1.TEMPERATURE', false, 12, 0];
                                  ! ThermostatTypeTab[2] = ['hm-rpc.0.', 'HM-CC-RT-DN' , 'Heizkoerperthermostat(neu)' ,'HT', '4.SET_TEMPERATURE' , false, '4.MANU_MODE', true, '4.ACTUAL_TEMPERATURE', '4.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[3] = ['hm-rpc.1.', 'HmIP-eTRV' , 'Heizkoerperthermostat(HMIP)','IPHT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', false, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[4] = ['hm-rpc.1.', 'HmIP-eTRV-2' , 'Heizkoerperthermostat(HMIP)','IPHT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', false, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[5] = ['hm-rpc.1.', 'HmIP-WTH' , 'Wandthermostat(HMIP)' ,'IPWT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', true, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[6] = ['hm-rpc.1.', 'HmIP-WTH-2' , 'Wandthermostat(HMIP)' ,'IPWT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', false, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[7] = ['hm-rpc.1.', 'HmIP-STH' , 'Wandthermostat(HMIP)' ,'IPWT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', true, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];
                                  ! ThermostatTypeTab[8] = ['hm-rpc.1.', 'HmIP-STHD' , 'Wandthermostat(HMIP)' ,'IPWT', '1.SET_POINT_TEMPERATURE', false, '1.CONTROL_MODE', true, '1.ACTUAL_TEMPERATURE', '1.CONTROL_MODE', 12, 0];

                                  Sollte also (eigentlich) passen. Ich weiß nur nicht woher die Temperatur kommt 😄

                                  1 Reply Last reply Reply Quote 0
                                  • L
                                    looxer01 last edited by

                                    @pxstd:

                                    Im Wohnzimmer habe ich HM-TC-IT-WM-W-EU an der Wand und HM-CC-RT-DN an den Heizkörpern. `

                                    kannst du bitte mal im Script debug = true setzen , das script laufen lassen und das Ergebnis posten ?

                                    vG Looxer

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      looxer01 last edited by

                                      bitte sende das Log auf jeden Fall.

                                      ABER

                                      mir ist noch was aufgefallen. 17 Grad ist die minimaltemp und die Parameter stehen auf Abwesend.

                                      Absenkung Abwesenheit steht auf 3 Grad. Vielleicht gibt es noch ein Problem mit der Minimaltemperatur.

                                      Nachdem du das Log gezogen hast teste bitte nochmal eine geringere Absenkung.

                                      Könnte sein, dass die Minimaltemp hier als manuelle temp einschlägt - wäre ein Bug.

                                      vG Looxer

                                      1 Reply Last reply Reply Quote 0
                                      • B
                                        booehmemaik last edited by

                                        Hi ,

                                        danke erstmal für die zweite Version des Skriptes.

                                        Bei mir verhält es sich auch so, ich hab sporadisch die Situation das bei einzelnen Räumen die Solltemperatur nicht wie im Zeitplan gesetzt ,gesetzt wird.

                                        Auch bei mir steht es einfach mal auf 17 Grad, siehe Bild.

                                        3916_heizung_solltemp_issue.jpg

                                        Selbes verhalten hatte ich aber auch beim Skript version 1

                                        Wäre es möglich, das die Felder in der Tabelle vom Zeitplan im Skript vertauscht wurden und sich die Werte aus der falschen Tabelle holt bzw vom falschen Raum ?

                                        bei mir handelt es sich um NonHM Thermostate (Max e-Q3)

                                        Gruß

                                        Maik

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          looxer01 last edited by

                                          Hi,

                                          @booehmemaik:

                                          Selbes verhalten hatte ich aber auch beim Skript version 1 `
                                          na ja, schon ein wenig anders.

                                          Deine SollTemperatur für den Mittwoch 20:00 Slot ist als 17 Grad geplant. Möglicherweise liest du die Spalten falsch.

                                          Bis 20:00 = 17 Grad - so ist es zu lesen

                                          ich sehe auch, dass du für die Absenkungen Minuswerte angegeben hast. Das heisst aber, dass du eine TempAnhebung definiert hast.

                                          (hat aber nichts mit den Manuellen Temps zu tun)

                                          Auch bei dir würde ich gerne sehen was die Logs zeigen, wenn du IM Script auf debug = true gestellt hast.

                                          vG Looxer

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

                                            Hi looxer01,

                                            @looxer01:

                                            @eric2905:

                                            Bekomme folgende Meldung ins Log (die unteren 3 Warn-Zeilen):

                                            Code: Alles auswählen

                                            ….

                                            14:16:18.971 [warn] javascript.0 at SetEventGlobalParameter (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:1654:9)

                                            14:16:18.971 [warn] javascript.0 at LoopRooms (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:755:5)

                                            14:16:18.971 [warn] javascript.0 at Object. (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:419:9)

                                            …. Scheint was mit den globalen Events nicht zu passen.
                                            komme erst jetzt dazu, dem mal nachzugehen … und DU hattest recht.

                                            Ich hatte bei einem Even (Urlaub_Abwesend) ein Leerzeichen hinten dran ... und das passte natürlich nicht.

                                            Jetzt rennt es ohne WARNs.

                                            Gruß,

                                            Eric

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            957
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            climate heating javascript template
                                            115
                                            1127
                                            311703
                                            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