Buderus KM200 Kommunikationsmodul

Begonnen von Sailor, 21 Juli 2014, 12:39:47

Vorheriges Thema - Nächstes Thema

Sailor

Hallo SSB


Zitat von: Starkstrombastler am 03 Mai 2017, 23:04:17
das Sortieren funktioniert  -  allerding rutscht das Reading, bei dem kein Zeitstempel hinterlegt ist, an das Ende der Liste. Dieser Fall lässt sich dann eher nicht mit einem Notify abfangen:

Wenn das Teil schon keinen vernünftigen Zeitstempel mitbekommen hat, was soll der arme Modulauthor auch daraus verschlimmbessern?  ;D

Zitat von: Starkstrombastler am 03 Mai 2017, 23:04:17
Das lässt sich mit folgender Änderung in Zeile 2345 vermeiden:

if ($TempTime) {    $TempTime      =~ s/^(.+)$/sprintf("%s%s", $1, ' 'x(20-length($1)))/e  ;  }


Danke, eingecheckt!

Gruß
    Sailor
******************************
Man wird immer besser...

Starkstrombastler

Hallo Sailor,

im Quelltext gibt es wohl mehrere Abschnitte mit ähnlichem Code. Ich hatte tatsächlich die Änderung
if ($TempTime) {    $TempTime      =~ s/^(.+)$/sprintf("%s%s", $1, ' 'x(20-length($1)))/e  ;  }
an drei verschiedenen Stellen eingebaut, nämlich in den Zeilen  1787, 2345 und 2845. Das bitte noch nachpflegen.

Außerdem führt der noch fehlende Zeitstempel 11-mal zu einer Fehlermeldung beim Sortieren:
Use of uninitialized value in string comparison (cmp) at ./FHEM/73_km200.pm line 2832.

Vielleicht sollte direkt nach dem Lesen vom Gateway gegen fehlende Einträge (Zeitstempel etc.) geprüft werden um ggf. passende Dummy-Werte einzutragen.

Gibt es eigentlich noch andere User mit einem ähnlichen Problem?

LG
Starkstrombastler
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

hijo

So wir benutzten das Modul jetzt schon sehr lange und sind wirklich begeistert. Bis jetzt habe ich eigentlich nur gemonitort um z.B. eine gute Heizkurve einzustellen. Jetzt würde ich gerne mehr damit machen.
Zu unserer Anlage: Wir haben eine GBH172 mit Solar und einem Pufferspeicher von 400 Liter. Zusätzlich einen T75 Frischwasserspeicher mit 75L.
Solar ist eigentlich nur für PNRS400 vorgesehen. Für den T75 wird eine feste Temperatur eingestellt. Wir die unterschritten erwärmt die HZ das Wasser entweder aus dem Pufferspeicher oder die Flamme geht an.
Bei uns ist das Wasser auf 42 Grad eingestellt.
Was ich gerne hätte wäre, wenn die Temperatur im Pufferspeicher steigt, dass dann automatisch auch die Temperatur des T75 sukzessive mit ansteigt, vom PMRS erwärmt. Das geht i.M. nur über eine manuelle Anpassung, die sehr träge ist, oder über eine thermische Desinfektion was schneller abläuft.

Hat das schon jemand realisiert?   
Raspi mit FHEM 5.8, Qivicon mit Telekom App, Web KM200 von Buderus, Philips HUE System, Xiaomi Smart Home Kit, HM-CFG-LAN LAN mit 6x HM-CC-RT-DN und HM-TC-IT-WM-W-EU, Ikea Tradfri, TP-Link HS110

OWL-Winki

Zitat von: Sailor am 27 April 2017, 08:47:01
Man soll die Hoffnung nie aufgeben!  ;)
Danke Sailor für Deine Antwort,
ich entschuldige mich, dass ich auch dieses Mal erst nach mehreren Wochen antworte. :-( Aber dafür hat sich mein Problem inzwischen erledigt. :-)
Zitat von: Sailor am 27 April 2017, 08:47:01
Funktioniert der entsprechende "set" - Befehl?
Das war mein Problem, dass ich weder in der Wiki noch bei der Schnelldurchsicht dieses Threads die entsprechenden set-Befehle gesehen hatte und auch mit den ersten ,,Angeboten" in der Dropdownliste nicht klar gekommen war. Vielleicht saß ich auch auf meiner eigenen Leitung.

Später habe ich dann

       
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyFrost
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyLow
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyHigh
gefunden und die funktionieren auch.

Nur

       
  • set 53_Junkers /heatingCircuits/hc1/operationMode auto
funktionierte nicht.

Weil ich aber immer noch nach einer Möglichkeit suche, in den Auto-Modus zu schalten, habe ich dann diesen Thread intensiver gelesen und andere Möglichkeiten getestet. ,,operationMode night", ,,operationMode day", ,,activeSwitchProgram A", ,,activeSwitchProgram/A" – teilweise tat sich nichts, teilweise stürzte FHEM ab.

Gestern fiel endlich mein Groschen und ich machte für mein komplettes System ein Update. Erst für mein Debian Jessie und dann für FHEM. Und siehe da:

       
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyFrost
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyLow
  • set 53_Junkers /heatingCircuits/hc1/operationMode permanentlyHigh und
  • set 53_Junkers /heatingCircuits/hc1/operationMode auto
funktionieren einwandfrei.

Ein zufriedener KM200-Nutzer mehr!

Danke allen an der (Weiter-)Entwicklung Beteiligten!

Gruß
    Winki
******************************
Raspberry Pi mit FS20 und HomeMatic,
7x HM-LC-Sw1-FM, 16x HM-LC-Sw2-FM, 16x HM-LC-Sw1-Pl-2, 3x HM-Sec-SC-2, 4x HM-Sec-SC, 4x HM-Sec-SCo, 2x HM-OU-CFM-Pl, 5x HM-CC-RT-DN, 2x HM-Sec-MDIR-2, 6x HM-LC-Bl1PBU-FM, 1x HM-CCU2 u.a.

Chk1971

Liebe Forumsmitglieder,
Wir haben letztes Jahr eine cerapur 9000i mit mblani sowie solarthermie (Heizung und WW) installiert.
Dieser Thread ist genau, was ich gesucht habe, da ich die Anlage besser Monitoren und automatisieren will (zB zur Vermeidung von Stagnation Heizkreise nutzen, um überschüssige Wärme aus dem Puffer zu bringen).
Verstehe ich das richtig: ich brauche lediglich fhem, das Modul von sailor und ein mblani, das auf den Router geschaltet ist? Ich war schon am überlegen, ein junkers knx Modul zu kaufen, das wäre aber deutlich teurer und aufwändiger als die hier vorgestellte Lösung.

Vielen Dank und Grüße
Christoph

Sailor

Hallo Chris

Zitat von: Chk1971 am 13 Juni 2017, 22:43:47
Verstehe ich das richtig: ich brauche lediglich fhem, das Modul von sailor und ein mblani, das auf den Router geschaltet ist? Ich war schon am überlegen, ein junkers knx Modul zu kaufen, das wäre aber deutlich teurer und aufwändiger als die hier vorgestellte Lösung.

Das fhem-Modul 73_km200.pm funktioniert nur mit den Schnitstellenboxen namens KM200 und KM300.

Siehe WIKI: https://wiki.fhem.de/wiki/Buderus_Web_Gateway

Ob das mit deiner JUNKERS funktioniert und welche Schnittstellenbox du dafür brauchst, kann ich dir nicht sagen.

Sorry

Gruß
    Sailor
******************************
Man wird immer besser...

Chk1971

Hallo Sailor,
Vielen Dank für die schnelle Antwort. Achim-e und OWL winke haben in diesem Thread gepostet und mit der junkerskomponente offenbar Erfolg. Ich wollte nur wissen, ob man noch irgendeinen Adapter benötigt.
Das ist aber offenbar nicht der Fall. Daher werde ich mir einen pi zulegen und mal meine Erfahrungen mitteilen.

Viele Grüße

Christoph 

enno

Moin an alle Nutzer diese Moduls.

Ich nutze das Modul mit Buderus KM200.

Im Wiki steht:

Beispiel für Menüführung
Anzeige der Liste für Fehlermeldungen

Mit freundlicher Einladung an DLindner :-)

Steuerungsmenü eines Heizkreises

Mit freundlicher Einladung an DLindner :-)

Steuerungsmenü der Warmwasserbereitstellung

Mit freundlicher Einladung an DLindner :-)


Hat jemand eine kurze Erklärung wie ich z.B. "Heisswasser einmal Ladung" anstossen kann? Das wird hier weiter vorne zwar erklärt, aber ich bekomme es so nicht zum laufen.

Gruss
Enno
Einfacher FHEM Anwender auf Intel®NUC

Sailor

Hallo Enno

Zitat von: enno am 14 Juni 2017, 15:21:17
Hat jemand eine kurze Erklärung wie ich z.B. "Heisswasser einmal Ladung" anstossen kann? Das wird hier weiter vorne zwar erklärt, aber ich bekomme es so nicht zum laufen.

Antwort: Ja, DLindner!  ;D ;D ;D ;D

Im Ernst: Wir warten alle schon seit Anno-Dunnemals darauf, dass er seine Lösung im Wiki bereitstellt.

Gruss
    Sailor
******************************
Man wird immer besser...

enno

Moin,

Nach dem Log war er im Oktober 2016 das letzte mal online. Hat ihn mal jemand angeschrieben? Wohnt hier jemand in Paderborn, der mal vorbei gehen kann und einen Ausdruck holen kann. Ins Wiki stellen würde ich nach erfolgreichem Test übernehmen. Irgendwann muss ich dort mit Schreiben mal anfangen, und sei es mit Lösungen die ich nur irgendwo abgeschrieben habe 8)

Vielleicht gibt es ja noch den ein oder anderen, der einen Weg gefunden hat. Ich brauche das eigentlich nur fuer eine Lösung mit DOIF und set in Kombination mit verschiedenen Sensoren die im und am Haus verteilt sind. Eine Bedienung über Readingsgroup etc. ist nicht so wichtig. Das kann das Bedienungspanel von Buderus auch.

Gruss
Enno
Einfacher FHEM Anwender auf Intel®NUC

Chk1971

Liebe Forumsmitglieder,

kurzes Update zur Junkers-Therme: Es läuft, d.h. das MBlan i Modul wird erkannt und gelesen, ohne dass ich irgendetwas aus der fhem KM200 Wiki abändern musste.

Weil ich mich mit der Programmierung von FHEM etwas schwer tue, könnt Ihr mir vielleicht einen vernünftigen Link oder eine Beispieldatei nennen, wie man unter FHEM die Anzeige der gelesenen Werte optisch so schön wie bei DLindner darstellen kann UND vor allem, wie ich Werte von FHEM aus setze?

Ich bin total begeistert von FHEM und der Möglichkeit, der automatischen Regelung meiner Therme näher zu sein!

Viele Grüße,

Christoph

Sailor

Hi Christoph

Zitat von: Chk1971 am 19 Juni 2017, 21:00:40
Weil ich mich mit der Programmierung von FHEM etwas schwer tue, könnt Ihr mir vielleicht einen vernünftigen Link oder eine Beispieldatei nennen, wie man unter FHEM die Anzeige der gelesenen Werte optisch so schön wie bei DLindner darstellen kann UND vor allem, wie ich Werte von FHEM aus setze?

Ich habe folgendes in der fhem.cfg stehen.

"myKm200" ist mein km200 device in fhem


###START###### Define Readingsgroup for Temperatures ###########################################################START###
define CH_rgr_Temperatures readingsGroup myKm200:<%temp_outside>,<Outside_Temperature>,/system/sensors/temperatures/outdoor_t1 myKm200:<%sani_buffer_temp_all>,<Domestic_Hot_Water_Temperature>,/system/sensors/temperatures/hotWater_t2  myKm200:<%sani_supply_temp>,<Supply_Temperature>,/heatingCircuits/hc1/actualSupplyTemperature
attr CH_rgr_Temperatures alias Temperatures
attr CH_rgr_Temperatures group Central Gas Boiler
attr CH_rgr_Temperatures room Central Heating
attr CH_rgr_Temperatures valueStyle style="text-align:right"
####END####### Define Readingsgroup for Temperatures ############################################################END####

###START###### Define Readingsgroup for operating hours ########################################################START###
define CH_rgr_BoilerOperating readingsGroup myKm200:<%sani_boiler_temp>,<Total/[min]>,/heatSources/workingTime/totalSystem myKm200:<%sani_heating>,<Heating/[min]>,/heatSources/workingTime/centralHeating  myKm200:<%sani_water_tap>,<Hot_Water/[min]>,/dhwCircuits/dhw1/workingTime myKm200:<%icoHISTORIE>,<Number_of_Starts>,/heatSources/hs1/numberOfStarts
attr CH_rgr_BoilerOperating alias Operating Statistics
attr CH_rgr_BoilerOperating group Central Gas Boiler
attr CH_rgr_BoilerOperating room Central Heating
attr CH_rgr_BoilerOperating valueStyle style="text-align:right"
####END####### Define Readingsgroup for operating hours #########################################################END####

###START###### Define Readingsgroup for status flags ###########################################################START###
define CH_rgr_BoilerStatusFlags readingsGroup myKm200:<%Heizung_Hauptschalter.on>,<Flame>,/heatSources/hs1/flameStatus myKm200:<%Heizung_Hauptschalter.off-for-timer>,<Mode>,/heatingCircuits/hc1/operationMode
attr CH_rgr_BoilerStatusFlags alias Boiler Status Flags
attr CH_rgr_BoilerStatusFlags group Central Gas Boiler
attr CH_rgr_BoilerStatusFlags room Central Heating
attr CH_rgr_BoilerStatusFlags valueStyle style="text-align:right"
####END####### Define Readingsgroup for status flags ############################################################END####

###START###### Define Plot for Central Heating Boiler Parameter ################################################START###
define SVG__CH_Values SVG myDbLog:SVG__CH_Values:HISTORY
attr SVG__CH_Values plotsize 1600,400
attr SVG__CH_Values room Plots
attr SVG__CH_Values title "Central Heating"
####END####### Define Plot for Central Heating Boiler Parameter #################################################END####


und die dazugehoerige /opt/fhem/www/gplot/SVG__CH_Values.gplot


# Created by FHEM/98_SVG.pm, 2017-03-28 20:44:30
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title '<TL>'
set ytics
set y2tics
set grid y2tics
set ylabel "Temperature in C / Modulation in % / Energy in kWh"
set y2label "Power in kW"
set yrange [0:100]
set y2range [0:25]

#myDbLog myKm200:/system/sensors/temperatures/supply_t1::
#myDbLog myKm200:/heatingCircuits/hc1/pumpModulation::
#myDbLog myKm200:/system/sensors/temperatures/hotWater_t2::
#myDbLog CH_GasCalculator:CH_GasCounter_counters.A_PowerCurrent::
#myDbLog CH_GasCalculator:CH_GasCounter_counters.A_EnergyDay::

plot "<IN>" using 1:2 axes x1y1 title 'Vorlauftemperatur' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Ladepumpe' ls l1 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'DHW Temperatur' ls l2 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Power' ls l3 lw 1 with steps,\
     "<IN>" using 1:2 axes x1y1 title 'Gas_Energy_Consumption' ls l6fill lw 1 with lines


Schon mal ein Anfang

Gruss
    Sailor
******************************
Man wird immer besser...

Chk1971

Hallo Sailor,

vielen Dank, das sieht gut aus!

Ich bin mit dem Lesen im diesem Thread weiter voran gekommen - im Moment scheint es nicht möglich zu sein, von FHEM aus auch Werte zu setzen, z.B. Heiztemperaturen, verstehe ich das richtig?

Viele Grüße

Christoph

Sailor

Hallo Christoph

Zitat von: Chk1971 am 19 Juni 2017, 22:25:17
Ich bin mit dem Lesen im diesem Thread weiter voran gekommen - im Moment scheint es nicht möglich zu sein, von FHEM aus auch Werte zu setzen, z.B. Heiztemperaturen, verstehe ich das richtig?

Was zeigt denn das Drop-Down-Menue neben dem "set" - Befehl an?

Gruss
    Sailor

******************************
Man wird immer besser...

Chk1971

 Das Menü enthält eine ganze Menge von Services. Wenn ich rechts neben einem Service einen plausiblen werde eintrage und Set drücke erhalte ich aber immer eine Fehlermeldung, dass der Service nicht geändert werden kann.