NEWS
Test Adapter HeatingControl v2.12.x
-
HeatingPeriodActive
Genau dafür ist der Wert da: wenn HeatingPeriodActive == false dann soll kein Wert auf dem Thermostat verändert werden. Wenn ich weiter überlege, wäre vielleicht ein konkreter Wert sinnvoller. Derzeit ist es so implementiert, dass das Handling einfach deaktiviert wird. Das Thermostat bleibt also auf dem letzten Wert stehen. Im debug log sollte stehen "nothing to do: no heating period"...
wäre es nicht Sinnvoller, statt bei offenen Fenster oder Abwesenheit die Temperatur zu senken, einen festen Wert zu nehmen?
Ist sicher auch eine Möglichkeit. Hier habe ich mich am schon öfter genannten Heizungsscript orientiert...
Nach Aktivierung der "HeatingPeriodActive" wird die falsche Periode genommen. Bei mir springt er am Montag immer wieder auf die Sa/So Einstellung.
Das muss ich mir anschauen. Ich mache mir dazu ein Ticket im github (siehe https://github.com/rg-engineering/ioBroker.heatingcontrol/issues/13)
@iobroker_Alex , @Michael-Sauer
Warnungen
Die Warnungen können ignoriert werden. Ich habe mir hier ebenfalls ein Ticket gemacht (siehe https://github.com/rg-engineering/ioBroker.heatingcontrol/issues/12) Ich muss nur mal schauen, ob die Änderung der Werte direkt übernommen werden (d.h. dass z.Bsp. sofort neue Zieltemperaturen geschrieben werden). Ansonsten werden die Werte auf jeden Fall beim nächsten "planmässigen" Check übernommen.
-
Nach Aktivierung der "HeatingPeriodActive" wird die falsche Periode genommen. Bei mir springt er am Montag immer wieder auf die Sa/So Einstellung. Fehlermeldung gibt es hier keine.
Habe den Fehler gefunden. Es liegt nicht daran das er den falschen Tag nimmt sondern daran das er nicht durch die Perioden schaltet wenn die letzte Zeit kleiner ist als die vorherigen.
Wenn jetzt Periods[4] kleiner ist z.B. 3 Uhr dann bleibt er da hängen.
-
@Rene_HM
Danke für die Infos.Wäre auch dafür, dass eine fest vorgegebene Temperatur im Falle HeatingPeriodActive == false gezogen wird.
Anbei der Auszug aus dem "Heizungsskript":
Heizperiode Wenn die Heizperiode aktiviert ist (true), dann werden die Heizprogramme ausgeführt. Wenn die Heizperiode nicht aktiviert ist (false), dann werden die Ventile der Thermostate entweder geöffnet (30 Grad) oder geschlossen (6 Grad). Die Einstellung, ob geöffnet oder geschlossen werden soll kann im Programm vorgenommen werden.
Würde hier einfach mit einem Wert arbeiten, den man im Adapter oder in den Objekten definieren kann, der dann gezogen wird.
Das selbe fände ich auch richtig für die Fensterkontakte wie es @Michael-Sauer schon sagte... Im Heizungsskript wurde immer folgende Einstellung gezogen:
Verschlussabsenkungsgrenze Die Verschlussabsenkungsgrenze wird im Programmablauf genutzt, um Temperaturabsenkungen des Thermostates zu setzen. Beispielsweise ist die Standardeinstellung bei Homematic für „Fenster Offen“ 12 Grad. Erkennt also ein mit einem Fenstersensor direktverknüpftes Thermostat, dass der Sensor ein „Fenster-Offen“ meldet, dann wird das Thermostat sofort auf 12 Grad Solltemperatur gestellt. Darüber hinaus wird der hier eingestellt Wert auch genutzt um die Temperaturabsenkung für nicht direkt verknüpfte Geräte durchzuführen. Wenn also ein Sensor aus der Sensorliste (siehe weiter unten) „Fenster-Offen“ meldet, dann wird die Solltemperatur des Thermostates durch das Programm auf die Temperaturabsenkungsgrenze gestellt Standardeinstellung ist „12“.
Vorteil der Lösung: Egal wie stark man die einzelnen Absenkungen einstellt, maximal wird bis zur "Verschlussabsenkungsgrenze" abgesenkt.
Mit der aktuellen Vorgehensweise in deinem Adapter hat man ansonsten ggf. Werte die das Thermostat nicht verarbeiten kann, da z.B. Absenkung für Urlaub und Fenster auf additiv wirken. Ich glaube diese Untergrenze müsste sich einfach intergieren lassen.Vielen Dank!
-
Hallo nochmal,
ich habe noch ein paar Fragen und Anregungen:
- Wo wird der Datenpunkt zu den Feiertagen abgebildet?
Ist es einer von diesen:
heatingcontrol.0.PublicHolidyToday
heatingcontrol.0.HolidayPresent
heatingcontrol.0.Present
Ich vermute es ist der PublicHoliday?! Wenn ja funktioniert es bei mir nicht. Mein Datenpunkt ist true und der PublicHoliday Datenpunkt ist false.
Wozu sind die anderen beiden Datenpunkte?
-
Sehe ich es richtig, dass sich die Soll-Temperatur-Datenpunkte "bis" zu der angegeben Zeit beziehen? In meinem Beispiel habe ich nur 3 Perioden: 0 = 5 Uhr ; 1 = 8 Uhr und 2 = 12 Uhr. Es ist jetzt 16:23 Uhr und er zeigt mir im Datenpunkt CurrentTimePeriod an, dass Period 2 =12 Uhr zieht. Müsste hier nicht Period 0 des nächsten Tages ziehen oder wie ist die Logik?
-
Wäre es möglich zwei Datenpunkte je Raum anzulegen in der man eine manuelle Temperatur für eine definierte Zeit einstellen kann?
-
Wäre es möglich einen Datenpunkt je Raum anzulegen, der die Darstellung des aktuellen Parameters der die Temperatur beeinflusst z.B. Urlaub / Gäste / Fenster auf etc. anzeigt? So könnte man sehen warum er in dem Raum nicht die zeitliche "Soll-Temperatur" nimmt, sondern z.B. eine Absenkung vorgenommen hat...
Anbei mal eine mögliche Visualisierung in VIS.
Der Code kann einfach übernommen werden, wenn Ihr mit Suchen und Ersetzen den Raumnamen durch euren (oder eure = mehrfacher Import) ersetzt. (meiner ist "Bügelzimmer")Basis ist erstmal 1 Profil mit 3 Perioden und dem Modi: Mo-Fr + Sa-So inkl. FT.
Rest kann dazu gebaut werden. Wird dem ein oder anderen sicher helfen. Ich habe es selbst nur aus dem looxer-Threat abgeändert...
- Wo wird der Datenpunkt zu den Feiertagen abgebildet?
-
Hallo in die Runde...
Ich habe grade mal Alex´s Vis eingelesen, da gibt es bei den einzustellenden Temperaturen den Datenpunkt "javascript.0.Heizung.Heizplan.Bügelzimmer.AktivesRaumProfil".
Ein derartiger Punkt wurde bei mir gar nicht angelegt...
Vergesst es... Augen auf im Straßenverkehr....
Ist ja ein script-Datenpunkt, muss wohl selbst konfiguriert werden...Besser gesagt: kann mir jemand das dafür benötigte Script zur Verfügung stellen?
-
@guergen das Original vis ist vom Heizungsskript von looxer aus dem Forum. Dort habe ich alles, was jetzt schon über den Adapter heatingcontrol realisierbar ist übertragen. Es fehlen meiner Meinung noch ein paar Dinge, die im Adapter hoffentlich irgendwann oder zeitnah implementiert werden. Diese datenpunkte sind deshalb noch aus dem alten Skript und werden hier weder benötigt noch genutzt. Grob gesagt sind das die Punkte die ich in dem post über dir angesprochen habe. Ich habe es aber noch nicht gelöscht, da ich hoffe, dass dies eingebaut wird...
-
@iobroker_Alex
OK, Danke Dir!
Bin grade dabei es mit mehreren Unterseiten zu erstellen, je nachdem welches Profil oben angegeben ist; mal sehen ob ich das so hinbekomme... -
gerne! Danke für die Überarbeitung des VIS. Bin überhaupt nicht der VIS-Typ, aber da es hier "nur" anpassen war, hab ich das mal schnell gemacht...
Kannst deine Version ja dann mal hier hochladen. Wenn wir alle etwas mitarbeiten muss @Rene_HM nicht alles alleine machen -
@iobroker_Alex sagte in Adapter: HeatingControl:
Hallo nochmal,
ich habe noch ein paar Fragen und Anregungen:
- Wo wird der Datenpunkt zu den Feiertagen abgebildet?
Ist es einer von diesen:
heatingcontrol.0.PublicHolidyToday
heatingcontrol.0.HolidayPresent
heatingcontrol.0.Present
heatingcontrol.0.PublicHolidyToday sagt, dass heute Feiertag ist. Der Wert kann von einem externen Adapter oder script autoamtisch belegt werden, wenn im admin der Pfad entweder zum Feiertags-Adapter oder zu einem anderen beliebigen Datenpunkt konfiguriert wird.
heatingcontrol.0.HolidayPresent und heatingcontrol.0.Present sagen, dass keine Absenkung wegen Abwesenheit erfolgen sollen.
Ich vermute es ist der PublicHoliday?! Wenn ja funktioniert es bei mir nicht. Mein Datenpunkt ist true und der PublicHoliday Datenpunkt ist false.
Ich gehe davon aus, dass du deinen Datenpunkt im admin entsprechen konfigurier hast. Wenn du dann den Adapter im debug-Modus betreibst, solltest du ein log bekommen, dass genau dieser Datenpunkt "subscribed" ist. Wenn du dann den Datenpunkt toggelst, solltest du ebenfalls ein entsprechendes log bekommen. Ich schau mir das auch noch mal an... -> Der Wert wird in der aktuellen Version nicht übernommen...
hier noch das issue im github
https://github.com/rg-engineering/ioBroker.heatingcontrol/issues/18Wozu sind die anderen beiden Datenpunkte?
- Sehe ich es richtig, dass sich die Soll-Temperatur-Datenpunkte "bis" zu der angegeben Zeit beziehen? In meinem Beispiel habe ich nur 3 Perioden: 0 = 5 Uhr ; 1 = 8 Uhr und 2 = 12 Uhr. Es ist jetzt 16:23 Uhr und er zeigt mir im Datenpunkt CurrentTimePeriod an, dass Period 2 =12 Uhr zieht. Müsste hier nicht Period 0 des nächsten Tages ziehen oder wie ist die Logik?
ja, dafür gibt es schon ein issue im github. Die Idee ist, dass man einen Zeitpunkt eingibt, ab dem die neue Temperatur gilt. Damit muss die Beschreibung nicht "bis" heißen sondern "ab". Das ändere ich noch...
- Wäre es möglich zwei Datenpunkte je Raum anzulegen in der man eine manuelle Temperatur für eine definierte Zeit einstellen kann?
Ich wollte einen Datenpunkt einbauen, mit dem man einen manuelle Solltemperatur setzen kann. Das wäre dann bis zur nächsten "period" gültig. Einen Zeitraum anzugeben, wie lange die manuelle Temperatur gültig sein soll, ist schwieriger umzusetzen, (aber möglich). Ich mache dazu ein issue im github...
https://github.com/rg-engineering/ioBroker.heatingcontrol/issues/15- Wäre es möglich einen Datenpunkt je Raum anzulegen, der die Darstellung des aktuellen Parameters der die Temperatur beeinflusst z.B. Urlaub / Gäste / Fenster auf etc. anzeigt? So könnte man sehen warum er in dem Raum nicht die zeitliche "Soll-Temperatur" nimmt, sondern z.B. eine Absenkung vorgenommen hat...
ja, habe ebenfalls ein issue angelegt:
https://github.com/rg-engineering/ioBroker.heatingcontrol/issues/16 - Wo wird der Datenpunkt zu den Feiertagen abgebildet?
-
@iobroker_Alex sagte in Adapter: HeatingControl:
Kannst deine Version ja dann mal hier hochladen. Wenn wir alle etwas mitarbeiten muss @Rene_HM nicht alles alleine machen
Danke!!
-
@iobroker_Alex
Ich habe eventuel etwas vorschnel meine Frage formuliert: In diesen Scipt gibt es ja eine Funktion "Heizbetrieb", die hatte ich früher in Fhem nicht.
Daher wird das ganze bei mir mit einem Profil reichen, halt nur für jeden Tag ein paar Einträge.
Ich muss nur feststellen, dass sich mein Duty-Cycle gar nicht mehr beruhigt, ständig werden neue Daten geschrieben, komme gar nicht meh auf Werte über 300.
Habe hier 6 Thermostate Max! (die mittlere Version) 6 Fensterkontakte und einen Wandthermostat, alles über einen CUL 868.
Ich werde heute mal die Thermostate auf Hand stellen und dann mit den Werten und dem Script arbeiten.
Wenn es soweit ist, kann ich es gerne hier einstellen! -
@guergen nur das wir uns richtig verstehen: Hier wird kein Script gebraucht sondern nur der Adapter Heatingcontrol.
-
@iobroker_Alex
Das ist mir schon klar!
Aber es wäre doch auch schöln eins zu haben... -
Ich habe das bug fix-Release 0.2.2 erstellt.
Folgende Änderungen sind enthalten:- bei Neu-Anlegen der Datenpunkte ist die Beschreibung des Datenpunktes "Time" in den Perioden von "until" auf "from" geändert.
- die unnötigen Warnungen bei Änderung eines Datenpunktes sind entfernt. In dem Zusammenhang habe ich das interne Handling überarbeitet.
- Die Zeiteinstellung benötigt keine Sekunden mehr. Stunde und Minuten reichen jetzt.
- Die Übernahme des Wertes für FeiertagHeute von extern sollte jetzt funktionieren.
-
@Rene_HM alle deine Punkte kann ich bestätigen. Gute Arbeit. Danke...
-
Hallo,
ich habe die neue Version installkiert und nach restart kammen diese fehler im Log:heatingcontrol.0 2019-09-15 08:17:02.417 error exception in CheckTemperatureChange[TypeError: Cannot read property 'val' of null] heatingcontrol.0 2019-09-15 08:17:02.322 info room Büro Thermostate Target Temperature set to 21 heatingcontrol.0 2019-09-15 08:17:02.155 info room Küche Thermostate Target Temperature set to 21 heatingcontrol.0 2019-09-15 08:17:01.931 info room Schlafzimmer Thermostate Target Temperature set to 21 heatingcontrol.0 2019-09-15 08:17:01.174 info room Wohnzimmer Thermostate Current Temperature set to 21 heatingcontrol.0 2019-09-15 08:17:01.150 info room Wohnzimmer Thermostate Target Temperature set to 21 heatingcontrol.0 2019-09-15 08:17:00.638 info calculating new target temperatures heatingcontrol.0 2019-09-15 08:17:00.634 error exception in CalculateNextTime[TypeError: Cannot read property 'val' of null] heatingcontrol.0 2019-09-15 08:16:59.133 info subscribe feiertage.0.heute.boolean heatingcontrol.0 2019-09-15 08:16:57.300 info starting. Version 0.2.2 in /opt/iobroker/node_modules/iobroker.heatingcontrol, node: v8.16.1 heatingcontrol.0 2019-09-15 08:17:06.002 info handle actors Schlafzimmer current 20 target 20 heatingcontrol.0 2019-09-15 08:17:05.893 info handle actors Küche current 19 target 19 heatingcontrol.0 2019-09-15 08:17:05.835 info handle actors Büro current 20 target 20 heatingcontrol.0 2019-09-15 08:17:02.420 error exception in CheckTemperatureChange[TypeError: Cannot read property 'val' of null]
-
@CKMartens Kannst du bitte den Adapter im debug-Mode starten und dann die logs nochmal posten? das würde mir helfen, die Stellen mit der exception zu finden...
Außerdem sollte ein log
room Wohnzimmer Thermostat Current set to 21°C
nicht vorkommen. Gesetzt werden nur "targets". Hier könnte ein Konfigurationsfehler vorliegen....
-
@Rene_HM sagte in Adapter: HeatingControl:
@CKMartens Kannst du bitte den Adapter im debug-Mode starten und dann die logs nochmal posten? das würde mir helfen, die Stellen mit der exception zu finden...
room Wohnzimmer Thermostat Current set to 21°Cnicht vorkommen. Gesetzt werden nur "targets". Hier könnte ein Konfigurationsfehler vorliegen....
Ich sehe mir die Konfig nochmal an. Danke auf jedenfall für den Adaptzer. Der Adapter arbeitet gut mit tado via den ham-Adapter zusammen.
-
@Rene_HM
Das Wohnzimmer habe ich so eringestellt:
Das Target-State vom ham-Adapter und das Current-State - also die aktuelle Temperatur - des ham-Adapters. Dazu die Xiaomi Tür- und Fenstersensoren.
EDIT: Ok, den fehler gerade selbst gefunden.... aktueller Wert und Zielwert....Wäre es möglich als Temperatursensor einen externen Sensor anzugeben? Wenn da schon implimentiert ist, wo muss der eingestellt werden?
-
genau: nur ein Thermostat angeben und dort Datenpunkt für aktuellen Wert und Zielwert eingeben. Die Datenpunkte können von verschiedenen Geräten stammen, also kann man als Thermometer ein x-beliebiges Gerät verwenden.