NEWS
[Vorlage] Heizungsthermostatsteuerung - Script
-
So Problem ist gelöst.
Die Gewerke waren auf der CCU richtig angelegt. Im ioBroker aber fehlerhaft Importiert. Hier waren falsche Namen vorhanden. Ist wohl ein alter Fehler den ich bis jetzt nicht korigiert hatte.
Nun werden erstmal alle Variablen angelegt.
Dann kann ich jetzt weiter testen.
-
Das erste Thermostat habe ich nun umgestellt und es funktioniert super.
Allgemeine Anmerkungen zum View
-
Datumsanzeigen im Deutschen Format
-
Temperatur immer mit Kommer und eine Nachkommerstelle anzeigen
Die var VerschlussAbsenkungsGrenze sollte eventuell auch im View eingestellt werden.
Die neuen Thermostate erkennen ja einen schnellen Temperaturabfall selber als Fenster offen. Wird da auch die var VerschlussAbsenkungsGrenze benutzt und wie lange ist die dann wirksam?
Bei Heizperiode aktiv = aus sollten dann die Thermostate alle auf 100% gefahren werden um dann über den Sommer die Thermostate zu schonen.
Bei jeden lauf des Scriptes wird ja immer die Function CreateStates aufgerufen um die Variablen anzulegen. Hier sollte man versuchen dieses nur ein mal zu machen. Ist bestimmt dann auch schneller.
Hast da wirklich eine Super Arbeit geleistet. Vielen Dank.
Ich teste weiter.
-
-
…freut mich, dass es soweit bei dir klappt.
Nun zu deinen Punkten:
- Datumsanzeigen im Deutschen Format
da gibt es eines - letzter Programmlauf - nehme ich mal auf
- Temperatur immer mit Kommer und eine Nachkommerstelle anzeigen
das liegt am Widget. Ich habe dieses Widget set gewählt, weil es touch bedienbar ist.
- Die var VerschlussAbsenkungsGrenze sollte eventuell auch im View eingestellt werden.
****die ist standardmaessig auf 12 Grad wie auch bei der CCU. Dies sollte über alle Thermostate und dem Script synchronsiert sein. Dann
gibt es kein Problem****
- Die neuen Thermostate erkennen ja einen schnellen Temperaturabfall selber als Fenster offen. Wird da auch die var VerschlussAbsenkungsGrenze
benutzt und wie lange ist die dann wirksam?
ich habe das nicht getestet. Sensoren sind auf jeden Fall die bessere Wahl. Wenn das Thermostat auf 12 Grad geht und nach z.B. 15 Minuten wieder auf Normaltemperatur sollte es keine Probleme geben ( die Dauer z.B. 15 kann in der CCu eingestellt werden )
- Bei Heizperiode aktiv = aus sollten dann die Thermostate alle auf 100% gefahren werden um dann über den Sommer die Thermostate zu schonen.
das kann eingestellt werden und steht auf 30 Grad . 100 geht in ioBroker nicht
- Bei jeden lauf des Scriptes wird ja immer die Function CreateStates aufgerufen um die Variablen anzulegen. Hier sollte man versuchen dieses nur ein
mal zu machen. Ist bestimmt dann auch schneller.
****das ist nicht so. Die States werden nur einmal ausgelesen und das ist bei Programmstart. Im Schedule werden die States nicht mehr gecheckt.
Darum muss auch bei neuen Thermostaten das Programm neu gestartet werden, damit es diese erkennt. Eine merkliche Performance Anforderung ist
ohne nur dann vorhanden, wenn neue States angelegt werden müssen****
vG Looxer
-
` > - Bei Heizperiode aktiv = aus sollten dann die Thermostate alle auf 100% gefahren werden um dann über den Sommer die Thermostate zu schonen.
das kann eingestellt werden und steht auf 30 Grad . 100 geht in ioBroker nicht `
Bei Heizperiode aktiv = aus muss die Ventielstellung auf 100 % gesetz werden das sollte 4.valve_state sein.
Alles ander tasten wir uns dann mal ran.
Wünsche euch ein schönes Osterfest.
Gruß Norbert
-
… Ventielstellung auf 100 % gesetz werden das sollte 4.valve_state sein. `
VALVE_STATE ist "read only" ! -
OK
muss aber gehen.
Wenn ich in der CCU Heizperiode auf false setze werden alle Thermostate auf ventilstellung 100% gefahre.
Muss mir noch mal das CCU Script ansehen was da genau passiert.
-
in der CCU können 0 und 100 gesetzt werden. In ioBoker nicht.
es gab auch mal eine Meldung dazu:
-
Hallo
habe bei mir das Feiertagsscript installiert und var UseFeiertagskalender = true; gesetzt.
feiertage.0.heute.boolean ist true
Es wird aber nicht die Einstellung für Feiertag verwendet sondern die für Freitag.
Ist das bei euch auch so?
-
Hast du evt bei feiertag,Sonntag und Samstag im view den tick “wie Vortag“ gesetzt?
Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk
-
Nein habe ich nicht.
-
Hi,
Feiertage wurden nicht erkannt. Fehler ist gefixt.
Wird gleich hochgeladen.
vG Looxer
-
Version 0.72 ist hochgeladen.
Fixes:
// Version 0.72 14.04.2017 - Feiertag wurde nicht korrekt erkannt
// ….......................Datumsformat für die Anzeige "letzter Programmlauf im View" wurde auf DDMMYYYY umgestellt
// ..........................Das Feiertagsflag vom Feiertagsadapter wird synchronisiert mit dem Feiertagsflag der Heizungssteuerung
//...........................Das Anwesenheitsflag von der Anwesenheitsfunktion wird synchronisiert mit dem Feiertagsflag der Heizungssteuerung
vG Looxer
-
Vielen Dank!
Jetzt klappt es Super.
-
So Problem ist gelöst.
Die Gewerke waren auf der CCU richtig angelegt. Im ioBroker aber fehlerhaft Importiert. Hier waren falsche Namen vorhanden. Ist wohl ein alter Fehler den ich bis jetzt nicht korigiert hatte.
Nun werden erstmal alle Variablen angelegt.
Dann kann ich jetzt weiter testen. `
Hallo,
wie hast du diesen Fehler korrigiert?
Bei mir steht immer dieses $-Zeichen davor. Wenn ich es lösche, kommt es nach einer Weile wieder.
Bekomme dann immer eine Fehlermeldung vom Script.
javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: $(…).each is not a function at getDevices (script.js.Haus.Heizungsthermostatsteuerung:296:114) at script.js.Haus.Heizungsthermostatsteuerung:249:1
Frohe Ostern!
-
wie hast du diesen Fehler korrigiert?
Bei mir steht immer dieses $-Zeichen davor. Wenn ich es lösche, kommt es nach einer Weile wieder.
Bekomme dann immer eine Fehlermeldung vom Script. `
Hi,
hast du denn die letzte Version aus dem ersten post hochgeladen ?
Der Code nach den Einstellungen sollte nicht geändert werden.
vG Looxer
-
Hallo Superdad
ich bin wie folgt vorgegangen
-
in der CCU habe ich die Gewerke Editiert und dann mit gleichem Namen abgespeichert
-
in ioBroker dann HM-REGA einmal aktualisiert
-
danach waren die Gewerke mit dem richtiegen Namen vorhanden
-
dann die alten löschen
So hat es bei mir funktioniert.
Gruß Norbert
-
-
Habe es auch so gemacht.
In der CCU gibt es z.Bsp. das Gewerk Heizung und Verschluss.
In IoBroker heisst das aber ${funcHeating}.
Habe das per Hand umbenannt.
Dann kommt im Script die Meldung:
javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: Cannot read property 'common' of undefined at sandbox.getEnums (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1871:56) at script.js.Haus.Heizungsthermostatsteuerung:246:9
Also IoBroker neu starten und die Fehlermeldung ist weg.
Aber unter enum.functions steht dann wieder ${funcHeating}, zusätzlich zum Gewerk Heizung.
Das Gleiche gilt für Räume.
Und dann kommt wieder die Fehlermeldung:
javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: $(…).each is not a function at getDevices (script.js.Haus.Heizungsthermostatsteuerung:296:114) at script.js.Haus.Heizungsthermostatsteuerung:249:1
Was meinst du mit Gewerke editiert?
Frohe Ostern!
-
In der CCU gibt es z.Bsp. das Gewerk Heizung und Verschluss.
In IoBroker heisst das aber ${funcHeating}.
Habe das per Hand umbenannt. `
Hi,
falls du keine eigenen Gewerke/Räume in IoBroker eingerichet hast, dann empfehle ich dir einen Neusynch.
Lösche die Funktionen und Räume aus den Aufzählungen und restarte den REGA Adapter. (knopf "neuladen")
Dann sollte alles gut sein.
vG Looxer
-
Räume und Funktionen habe ich auch schon alle gelöscht und neu geladen.
Da passiert das Gleiche.
Habe dann ${funcHeating} und Heizung als Gewerk.
Und dann geht das Spiel von vorne los.
-
Hallo
also melde dich an der CCU an
-
gehe auf Einstellungen -> Gewerke
-
unten rechts Gewerkeliste Bearbeiten klicken
-
ändere von einem Gewerk einfach mal den Namen auf der linken Seite der Tabelle und schliessen
-
dann gehst du in den ioBroker Asdmin -> Instanzen
-
hier klickst du bei hm-rega auf neu Laden
-
jetzt sollte unter Aufzählungen -> enum.functions das geänderte Gewerk auch angezeigt werden
Versuche das mal abzuarbeiten.
-