NEWS
Adapter für Buderus KM200 (und eventuell auch anderen KMxxx)
-
@mwolle : Mal sehen ob das geht später:
schedule('{"time":{"exactTime":true,"start":"23:00"},"period":{"days":1}}', function () {
on({id: "weatherunderground.0.forecast.1d.tempMax"/high temperature/, val: true}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
// Abprüfen der Prognosetemperatur für morgen und dann Anpassung des Heizungsprogramms
if ('weatherunderground.0.forecast.1d.tempMax' <= '5') {
setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/heatingCircuits.hc2.activeSwitchProgram/, '4', true);
}
if ('weatherunderground.0.forecast.1d.tempMax' <= '10' && 'weatherunderground.0.forecast.1d.tempMax' > '5') {
setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/heatingCircuits.hc2.activeSwitchProgram/, '3', true);
}
if ('weatherunderground.0.forecast.1d.tempMax' <= '15' && 'weatherunderground.0.forecast.1d.tempMax' > '10') {
setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/heatingCircuits.hc2.activeSwitchProgram/, '2', true);
}
if ('weatherunderground.0.forecast.1d.tempMax' <= '19' && 'weatherunderground.0.forecast.1d.tempMax' > '15') {
setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/heatingCircuits.hc2.activeSwitchProgram/, '1', true);
}
console.debug('Klappt es?');
});
});'default';
mal sehen ob das geht.
Nächstes Ding wäre die dynamische Anpassung der Heizleistung...
-
@mwolle said in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
@mwolle : Mal sehen ob das geht später:
schedule('{"time":{"exactTime":true,"start":"23:00"},"period":{"days":1}}', function () {var value = obj.state.val; var oldValue = obj.oldState.val; // Abprüfen der Prognosetemperatur für morgen und dann Anpassung des Heizungsprogramms if ('weatherunderground.0.forecast.1d.tempMax' <= '5') { setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, '4', true); } if ('weatherunderground.0.forecast.1d.tempMax' <= '10' && 'weatherunderground.0.forecast.1d.tempMax' > '5') { setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, '3', true); } if ('weatherunderground.0.forecast.1d.tempMax' <= '15' && 'weatherunderground.0.forecast.1d.tempMax' > '10') { setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, '2', true); } if ('weatherunderground.0.forecast.1d.tempMax' <= '19' && 'weatherunderground.0.forecast.1d.tempMax' > '15') { setState("km200.0.heatingCircuits.hc2.activeSwitchProgram"/*heatingCircuits.hc2.activeSwitchProgram*/, '1', true); } console.debug('Klappt es?');
so geht das und funktioniert gut. Bei dem zweiten Programm scheint ein direktes Schreiben auf die Therme nicht zu gehen?!:
die Heizleistung anzupassen, scheint über den Adapter nicht zu gehen?! -
Hi,
ich bin auf der Suche nach einer Dokumentation der Werte die eine KM200 senden kann. Teilweise sind die Bezeichungen nicht sehr eindeutig. Gefunden habe ich bisher das hier:
Hat jemand noch eine umfassendere Dokumentation?
-
Hallo zusammen,
Ich wollte mal nachfragen ob es irgendwie möglich ist mehr Daten aus der Heizung auszulesen? Bei meiner Heizung sind zwei getrennte Solaranlagen auf dem Dach. Es wird aber leider nur eine Seite vom Dach im ioBroker über den Adapter angezeigt. Zudem habe ich in der Steuerung von der Heizung gesehen, dass auch die Temperatur im Brennkessel angezeigt wird.
Kann man den Adapter irgendwie anpassen ?
Grüße
-
Hallo,
niemand eine Idee?
-
@bullydog1984de
Auch wenn Dein Beitrag schon etwas älter ist, aber vielleicht liest Du ja noch mit und kannst mir folgende Frage beantworten. In deinem Thread schreibst Du u.A.:"ioBroker läuft bei mir auf einer Synology DS216. Meine Node Version ist 4.8 <- Sollte doch eigentlich die richtige sein für den Adapter!?"
Läuft bei Dir der IOB wirklich auf einer DS216 und wenn ja wie? Die DS216 unterstützt doch m.W. keine virtuelle Umgebung.
Ich frage deshalb, weil ich auf einer DS218+ in einer VMM ein Windows 10 Pro extra laufen lasse um den IOB zu betreiben. Das ganze ist aber nicht gerade performant und ich frage mich, ob es eine Möglichkeit gibt, den IOB nativ auf der Synology zu betreiben, zumal da auch meine DB für die History liegt (MariaDB 10). Da meine DS218+ eh 24/7 läuft, möchte ich nur ungern einen extra Rechner für den IOB betreiben.
Vielleicht haben ja hier auch noch andere mitlesende Forenmitglieder Tipps zu diesem Thema.Danke und Gruß Thomas
-
Hallo,
bei mir läuft der Adapter sehr zuverlässig. Leider bekomme ich wenn ich der Solltemperatur von Heizkreis 1 einen Wert vorgebe eine Warnung.
Bei Heizkreis 2 passiert das nicht. Kann mir jemand sagen was ich falsch mache?
Vielen Dank! -
@timo55 sagte in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
Ich frage deshalb, weil ich auf einer DS218+ in einer VMM ein Windows 10 Pro extra laufen lasse um den IOB zu betreiben. Das ganze ist aber nicht gerade performant und ich frage mich, ob es eine Möglichkeit gibt, den IOB nativ auf der Synology zu betreiben, zumal da auch meine DB für die History liegt (MariaDB 10). Da meine DS218+ eh 24/7 läuft, möchte ich nur ungern einen extra Rechner für den IOB betreiben.
Vielleicht haben ja hier auch noch andere mitlesende Forenmitglieder Tipps zu diesem Thema.Ich muss gestehen, dass ich Deine Überlegungen nicht richtig nachvollziehen kann. Warum VMM mit Win10?
Ich habe diverse Raspberry PI'S und eine Diskstation DS716+II mit 8GB. Auf diversen Plattformen läuft bzw. lief bei mir ioBroker. Bei der Synology ist die einfachste Art, diese unter Docker laufen zu lassen:
https://smarthome.buanet.de/2019/05/iobroker-unter-docker-auf-der-synology-diskstation-v3/.
Ist in wenigen Minuten installiert.Ich hatte mich dann aber für VMM mit Debian Server entschieden (4GB dedizierter Hauptspeicher, eigene IP, SSH Zugang etc) und auch MariaDB dort separat installiert, da ich die Konfiguration für InnoDB anpassen wollte. WIN10 kannst Du in Bezug auf Performance vergessen. Ich benutze VMM für meine Entwicklungsinstanz - Gerade die Snapshots sind dort sehr hilfreich.
Seitdem der PI4 mit 4 GB verfügbar ist, läuft dort aber meine ioBroker Hauptinstanz. Der PI4 ist bei mir deutlich performanter als die Diskstation und ich benutze auch die Pio's für Sensoren (z.B. Gaszähler) bzw. den USB-Eingang für das Auslesen des Sromzählers (Smartmeter Adapter). Sichern tue ich über Rsync mit ActiveBackup for Business auf die Diskstation.
Für mich sind die Diskstations (ich habe 2) systemkritisch und ich würde davon abraten direkt auf Systemebene Anpassungen vorzunehmen.
-
@Torsten-Schwaar sagte in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
Hallo,
bei mir läuft der Adapter sehr zuverlässig. Leider bekomme ich wenn ich der Solltemperatur von Heizkreis 1 einen Wert vorgebe eine Warnung.Bei Heizkreis 2 passiert das nicht. Kann mir jemand sagen was ich falsch mache?
Mir ist nicht ganz klar, wie Du die Heizung betreibst. Normalerweise ist ja ein Heizprogram aktiv, welches zwischen den Temperaturniveaus km200.0.heatingCircuits.hc1.temperatureLevels.comfort2 und km200.0.heatingCircuits.hc1.temperatureLevels.eco umschaltet. Der km200.0.heatingCircuits.hc1.currentRoomSetpoint wird dann je nach Zeit damit gefüllt. Entweder Du veränderst die Levels oder benutzt den km200.0.heatingCircuits.hc1.temporaryRoomSetpoint um den Setpoint temporär zu verändern (bis zum nächsten Schaltpunkt). Werte
- -1: Automatik s.o.
- 0: Heizkreis ausgeschaltet
- größer 0: temporärer Setpoint-Wert
P.S.: gilt für km200.0.heatingCircuits.hc1.switchProgramMode = Levels(0). Mit absoluten Werten habe ich keine Erfahrung.
-
Für den Fall das ein Heizungsthermostat unter einen bestimmten Sollwert sinkt gebe ich der Heizung den Sollwert von 21 Grad. Sind alle gemessenen Werte über dem Sollwert setze ich den Setpoint auf 0 also aus. Somit geht die Heizung z.b. an wenn ich den Sollwert manuell hoch drehe. Oder Sie bleibt halt aus weil ich keine Wärme benötige.
-
@Torsten-Schwaar Aber dann solltest Du den km200.0.heatingCircuits.hc1.temporaryRoomSetpoint nehmen. Hatte ich oben falsch reinkopiert.
Wie verstellst Du den Sollwert? Am Buderus Thermostat oder woanders?
-
Der km200.0.heatingCircuits.hc1.temporaryRoomSetpoint steht bei mir auf -1. Wenn ich an der Heizung den Sollwert ändere dann ändert sich nur der heatingCircuits.hc1.temperatureRoomSetpoint
Wo ist da der Unterschied zwischen beiden? Und auf welchen Wert setze ich dann heatingCircuits.hc1.temperatureRoomSetpoint? -
@Torsten-Schwaar sagte in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
Wo ist da der Unterschied zwischen beiden? Und auf welchen Wert setze ich dann heatingCircuits.hc1.temperatureRoomSetpoint?
Der Wert wird bei Automatikbetrieb automatisch gesetzt. Der Temporäre Setpoint übersteuert diesen ....
Oder Du schaltest auf manuellen Betrieb um... km200.0.heatingCircuits.hc1.operationMode = 1 -
@Torsten-Schwaar Aber warum diese Übersteuerung ... was willst Du damit erreichen? Das macht die Heizungsregelung doch normalerweise alleine. Ist der Heizkreis mit Radiatoren oder eine FB-Heizung?
Ich habe bei mir die Logik, dass ich meine FB-Heizung je nach Wetterprognose 2-3 Stunden vorher ausschalte, da diese bei mir sehr träge ist. Dann aber nur den temporären Setpoint verändere.
-
Meine Heizung befindet sich im manuellen Modus. Baulich bedingt habe ich keine Buderus Thermostate. Die Informationen kommen über die im Haus verteilten innogy Thermostate. Zudem gibt es einen Kamin und einen Wintergarten. Erzeugt eins davon Wärme wird es im Haus warm genug. Damit setzt ich die Heizung auf 0 Grad. Somit muss der Heizkreis auch nicht warm gehalten werden. Pumpe brauche ich auch nicht an haben. Sollte jedoch ein Raum wärme benötigen geht die Heizung an indem ich Ihr den Sollwert gebe. Somit übersteuere ich eigentlich gar nicht. Es gibt nur an oder aus anhand der Heizungsthermostate.
-
@Torsten-Schwaar FB-Heizung oder Radiatoren?
Der Datenpunkt km200.0.heatingCircuits.hc1.currentRoomSetpoint ist read-only ! Einfach unter Objekte nachschauen.
Ich habe meinen Heizkreis mal versuchsweise auf manuell gestellt. So wie es aussieht kann ich dann die Setpoint-Temperatur nicht vorgeben !! Nur beim Automatik-Mode scheint das über den km200 zu funktionieren.
Ein / Ausschalten sollte dann aber über km200.0.heatingCircuits.hc1.suWiSwitchMode gehen. (Sommer-/Winterbetrieb). Probier mal aus.Meine generellen Überlegungen zur Übersteuerung der Heizkreise bzw. Optimierung der Heizung:
- Die Heizungssteuerung muss auch funktioneren, wenn ioBroker nicht funktioniert.
- Deshalb übersteuere ich programmatisch nur temporär und lasse ansonsten die Automatik laufen
- Eine optimal eingestellte Heizung sollte mit möglichst geringen Temperaturen laufen (Mittelwert Kesseltemp / Rücklauf) Dann ergibt sich der optimale Wirkungsgrad.
- Die Anlage sollte möglichst wenig takten, sondern modulieren.
- Selbst wenn es im Wohnzimmer zu warm ist, kann es Wärmedarf in anderen Räumen geben.
Ich habe Homematic Thermostate an der Heizkörpern und ansonsten FB-Heizung. Mein Wintergarten und die großen Fenster im Wohnzimmer erzeugen bei Sonne erhebliche Wärme, so dass ich dann die FB-Heizung rechtzeitig ausschalte.
Die Heizkörper-Thermostate regeln ja selber auf und zu. Das Problem ist dann aber, dass die Heizung ggfs. häufig taktet, da die Wärme nicht abgeführt wird. Das ist nicht ökonomisch optimal und die Kessellebensdauer wird reduziert.
Also aufpassen, dass je nach Heizsystem die Anlage immer noch optimal läuft.Ich hatte zu Anfang anhand der Thermostate der Radiatoren und der Zimmertemperaturen in den FB-Räumen mir den Heizbedarf berechnet und davon abhängig die Heizkreise ein / ausgeschaltet. Davon bin ich jetzt weg. Meine Heizung startet mit 52% Modulation für 3 Minuten. Das muss laut Buderus so sein, um eine sichere Zündung zu gewährleisten. Die so erzeugte Wärme wird dann aber ggfs. nicht abgeführt, so dass die Heizung taktet. Jetzt habe ich die Brennerleistung begrenzt und Parameter verändert.
-
Hallo @tom57
vielen Dank für Dein Feedback.
Meine Entscheidung für die Konfiguration von IOB in einer Windows 10 VMM auf einer Syno hatte zwei Gründe:- Möglichst keinen zusätzlichen Computer sondern Nutzung eines bestehenden Systems was 24x7 läuft
- Ein Horror vor allem was mit Linux zu tun hat
Eigentlich bin ich im Großen und Ganzen zufrieden wie es läuft. Habe ein umfangreiches VIS aufgebaut mit integrierten Flot Diagrammen u.A. für den KM200 und Smartmeteradapter. Nur wenn ich über die Remote-Console auf Windows zugreife um mal Änderungen im IOB, VIS oder Flot vorzunehmen, dann wird es grottenlangsam.
Habe auch schon daran gedacht es mal mit IOB im Docker zu testen. Kann man ja auch wieder runterschmeißen wenn's mir nicht zusagt oder nicht damit klar komme. Ich denke, dass Linux im Docker weniger Overhead mit sich schleppt als ein Windows in der VMM. Da die Tage noch lange kurz sind und man derzeit eh nichts unternehmen kann, werde ich das mit dem Docker mal in Angriff nehmen. Auch noch vielen Dank für den Link. Aber ein IOB Paket für DSM wäre natürlich schon eine feine Sache, oder? -
Hallo,
ich habe ein Problem mit dem Wert comfort2. Wenn ich den Wert per Hand setze funktioniert alles einwandfrei. Setze ich den Wert über ein Script, wird immer der Wert von 22°C eingetragen. Woran liegt das? Ich habe nirgendwo vorgegeben, dass der Wert 22°C betragen soll.
Ich möchte mit dem Wert die Heizung runterfahren, wenn alle Heizungen ausgeschaltet sind.
Gerade habe ich gesehen, dass das auch mit dem Wert temporaryRoomSetpoint möglich ist.
Der Wert steht bei mir auf -1. Wenn ich den Wert z.B. auf 20°C stelle, dann wird der Wert comfort2 überschrieben und bei 0 ist die Heizung ganz aus? Geht denn dann die Warmwasseraufbereitung trotzdem weiter? -
@tom57 vielen Dank für dein Infos.
jetzt scheint es zu gehen. Besonders an der Lösung gefällt mir, dass die Heizung die Macht übernimmt wenn der iobroker mal nicht möchte.
Zusammenfassend:
Heizung befindet sich im Automatikmodus
Dann ist es möglich den "km200.0.heatingCircuits.hc1.temporaryRoomSetpoint" zu überschreiben.
Was nur nicht richtig funktionert hat ist der Heizung die "0" zu geben. Dann wird der Wert auf 5° gesetzt. Kann mir noch jemand erklären was ich da im Sktipt eintragen muss damit das nicht passiert.
Ich habe mir jetzt damit geholfen, dass ich in den Einstellungen den min Value" Wert von 5 auf 0 gesetzt habe. -
@tom57 said in Adapter für Buderus KM200 (und eventuell auch anderen KMxxx):
Der Datenpunkt km200.0.heatingCircuits.hc1.currentRoomSetpoint ist read-only ! Einfach unter Objekte nachschauen.
Wie finde ich heraus, ob ein Datenpunkt read-only ist? Unter Objekte/ Einstellungen und dann der Stift? Unter Raw kann man zumindest was von read true und write false lesen. Ist das die richtige "Guckstelle"?
Ich würde ja versuchen, anhand von Zimmertemperatur und Taktverhalten die Leistung dynamisch anzupassen. Gerade in der Übergangszeit, wird es schwer zu modulieren. (Also man geht mit viele Power rein, dann ist der Vorlauf so schnell warm das er gar nicht zum runtermodulieren kommt, sondern direkt ausschaltet.)
Ich glaube aber, dass man wohl die Datenpunkte an der Therme nicht anfassen darf, sondern nur an der Steuerung, bei mir eine Junkers FW 200, da kann man drauf schreiben wie man möchte.VG
Marcel