Läuft: Heizung mit eBus-Schnittstelle

Begonnen von Prof. Dr. Peter Henning, 29 November 2014, 13:36:59

Vorheriges Thema - Nächstes Thema

john30

Zitat von: Peter1984 am 16 Februar 2020, 20:27:39
Naja doch, 1 Koppler habe ich aktuell. Die beiden Geräte kennen sich aktuell nicht.
Ich habe bisher nichts gefunden, wie ich die unterschiedlichen Geräteadressen einstellen kann?
einfacher und auch günstiger wird es sein, 2 ebus interfaces zu nutzen, denn sonst bräuchtest du einen VR32 und wärst damit aber eingeschränkt in den Möglichkeiten (und ich weiß auch gar nicht, ob das überhaupt was bringen würde).
Den Bus einfach direkt zu verbinden wird m.E. aber generell nicht klappen, da die Adressen üblicherweise nicht einstellbar sind.
author of ebusd

Peter1984

Ok, danke! Dann werde ich mal versuchen, irgendwie günstig an einen 2. Koppler zu kommen.

rob uboot

wie habt ihr den befehl setmode bzw. setmodeoverride in der praxis gelöst?
ganz ohne regler kann man das sicher auch realisieren aber das wird man wohl eher vermeiden wollen.

wenn man jetzt zb jede sekunde den setmode neu setzt und damit den regler permanent überschreibt sollte man
das system damit eigentlich regeln können. ist aber wohl nicht so elegant gelöst ...  :)

Harry2502

@rob uboot
Ich quäle mich auch mit dem Problem rum und habe eine teilweise einen Ansatz gefunden.
Was habe ich getan...
In meiner Konfiguration vom EBus greife ich auf die lokalen Konfig Dateien zu.
Da ich für meine EcoTec Plus kein Wandthermostat habe, muss ich den Wert FlowTempDesired setzen.
Um das zu realisieren, habe ich in meiner Konfigurations Datei(bai.308523.inc), folgenden Eintag hinzugefügt.
Das Vorgehen dazu stammt nicht von mir, sondern habe ich auf der GitHub Plattform gelesen.

wi,BAI,SetModeOverride,Betriebsart,,08,B510,00,hcmode,,UCH,,,,flowtempdesired,,D1C,,,,hwctempdesired,,D1C,,,,hwcflowtempdesired,,UCH,,,,,,IGN:1,,,,disablehc,,BI0,,,,disablehwctapping,,BI1,,,,disablehwcload,,BI2,,,,,,IGN:1,,,,remoteControlHcPump,,BI0,,,,releaseBackup,,BI1,,,,releaseCooling,,BI2

Über die Konsole ist man dann in der Lage, mit folgendem Befehl, die gewünschte Vorlauftemperatur zu schreiben.
ebusctl -s localhost w -c bai SetModeOverride '0;34;-;-;0;0;0;0;0;0'

Was in meinem Fall funktioniert ist, dass die neue gewünschte Temperatur an die Heizung übermittelt wird.
Was in meinem Fall nicht fünktioniert ist, dass die Heizung überhaupt wieder den Brenner startet.

Wenn ich den Befehl richtige verstehe, ist der erste Wert der Betriebsmodus(im Beispiel 0), der zweite die gewünschte Vorlauftemp. und der dritte, die Temp. des Warmwasserspeichers.
Die anderen Befehle sagen mir gar nichts.
Im Moment Versuche ich gerade die Heizung dadurch ans Laufen zu bekommen, indem ich die Werte von dem Betriebsmodus ändere.
Leider ist mir das, bis jetzt nicht gelungen. Nach dem setzten des Befehls, warte ich immer dass der heizungsinterne Controller, meine gesetzte Voralauftemp. überschreibt und das der Brenner startet.

Vielleicht kann mir ja jemand einen Tip geben, was anstatt der Null dort einzutragen ist.


rob uboot

ja so richtige tipps bekommt man hier warum auch immer nimmer. :))
dieser setmodeoverride klappt super wenn man das ganze ohne regler verwendet.
mit regler ergibt das jedoch leider keinen sinn weil er das immer wieder überschreibt und damit das system nie ins laufen kommt,
ganz egal wie oft du den befehl setzt. (intervall)

genauso ist es.
der erste wert ist der modus.

hcmode.inc bzw. _templates.csv haben in meinen fall nicht zu 100% die richtigen werte.
ich gehe mal davon aus dass das alles nicht zu 100% klappen kann da jeder eine andere anlage hat und das system daher zu adapterien ist/wäre.
hc modus 3 ist zb warmwasser und nicht 2.
pumpstatus gibt es zb. folgende werte 0,1,4,8,9,128

muss sich wohl jeder überlegen was er machen möchte und wie er das umsetzen möchte.
für das heizen ist bei mir der erste wert nach dem modus die vorlauf temperatur
und bei dem warmwasser der 3 wert mal 2 (warum auch immer?!? - also angenommen du hast 70 grad eingstellt steht dann bei mir 140)
und das stimmt dann auch nicht zwingend weil mein teil nur 65 grad schafft auch wenn man bis zu 80 grad einstellen kann.
der 2. wert nach dem modus verändert sich in meinen fall nie. (viele dinge rechnet sich die anlage auf basis der angaben selber aus)
die hinteren werte müssen auch stimmen. sonst klappt das nicht. das wäre dann zb. heizen ohne umwälzpumpe an. :)

kann dir meine werte alle noch senden falls du es genau brauchst.
generell reicht es aber wenn du alles austestest was du haben willst und dir dann im log file ansiehst was die anlage für setmode befehl gesetzt hat.
es ist generell ein wenig eine themenverfehlung weil man alle diese befehle nicht über den regler setzen sollte sondern gleich direkt an die eigentliche heizung senden sollte.
diese wiederrum setzt aber einen regler vorraus. :)
mit ein paar temperaturfühlern einem druckwächter und ein paar relais kann die anlage komplett ohne dem zeug betreiben.
fragt sich nur wozu man das brauchen sollte. :)))

ich möchte meine anlage als hybrid anlage nutzen und daher wäre es nett wenn man ins system eingreifen könnte
was ich mittlerweile auch komplett ohne regler könnte, den regler selber würde ich jedoch gerne als backup lösung weiter verwenden.
ich kann aktuell die heizung und die kühlung direkt an den hmu mit der vorlauf temperatur senden ohne dass der setmode überhaupt benutzt wird.
es gibt also noch eine instanz über dem dem setmode und sicher noch zumindest 2 darunter...
das einzige was er mir noch nicht macht ist die speicherladung ohne den befehl über den regler zu senden, aber das kann das system vielleicht auch garnicht.
zumindest sieht es die software im hmu nicht vor.

in deinem fall stimmt die setmode kombi sicher nicht.
wenn da ein wert falsch ist klappt es nicht.
sollte die anlage nicht mehr zu 100% machen was sie sollte hilt ein vom strom nehmen.

Harry2502

#3125
@rob uboot
Wir diskutieren das ganze Thema im Moment auch auf der GitHub Seite von John30.
Ich hätte dir ja gerne genauere Infos gegeben aber das ist das, was ich im Moment selber durch lesen herausgefunden habe.
In meinem Fall handelt es sich um eine Vaillant ecoTec plus 206/5-5, die ich ohne externen VC Kontroller betreibe.
Deswegen bin ich auch nicht in der Lage, den Datenverkehr zu belauschen.

Wenn du von Regler sprichst, welchen meinst du genau?

Es wäre nett wenn du mir deine Werte bezogen auf den SetModeOverride zukommen lassen könntest.

Was du schreibst, bezüglich Heizen ohne einschalten der Pumpe ist mir auch schon durch den Kopf gegangen, nur leider weiß ich nicht wirklich an welcher Stelle in dem Aufruf, welcher Wert eingetragen werden soll.

hasenhirn

Hallo Jungs,

ich stelle mich beim erstellen einer CSV-Datei für meine recovair275 echt zu dämlich an.
Leider bekomme ich es nicht auf die Latte wie ich die empfangenen Daten in die CSV umsetzen muss.
Hier mal ein paar Infos falls mir da jemand weiter helfen möchte:

ich habe insgesamt 3 ebuse.
1.) Heizung -> läuft auf Port 8888 - CSV-Dateien gefunden - alles ok
2.) Solaranlage -> läuft auf Port 7777 - CSV-Dateien gefunden - alles ok
3.) Lüftungsanlage -> läuft auf Port 6666 - CSV-Dateien gibt es dafür nicht :-(

ich habe jetzt einfach eine leere Datei mit dem Namen 15.vai00.csv erstellt welche dann auch geladen wird.
Hier mal die Info-Ausgabe vom ebusd:


ebusctl -p 6666 info
version: ebusd 3.3.v3.3-10-gfa434e5
update check: version 3.4 available
signal: acquired
symbol rate: 69
max symbol rate: 120
min arbitration micros: 783
max arbitration micros: 980
min symbol latency: 5
max symbol latency: 6
reconnects: 0
masters: 2
messages: 71
conditional: 0
poll: 0
update: 8
address 10: master #2
address 15: slave #2, scanned "MF=Vaillant;ID=VAI00;SW=0124;HW=8901", loaded "vaillant/15.vai00.csv"
address 31: master #8, ebusd
address 36: slave #8, ebusd
address c0: slave, scanned "MF=Vaillant;ID=WTW04;SW=0123;HW=9001", loaded "vaillant/c0.wtw.csv"
 

ein grab resault sieht so aus:

ebusctl -p 6666 grab result
10c0b503020001 / 0affffffffffffffffffff = 102
10c0b503020002 / 0a0b03ffffffffffffffff = 102
10c0b50903290200 / 050200580100 = 207
10c0b50903290900 / 03090000 = 106
10c0b50903290e00 / 030e0000 = 109
10c0b50903290f00 / 030f0000 = 105
10c0b50903294d00 / 044d00d51f = 111
10c0b509040e0a0001 / 00 = 201
10c0b509060e00008f0100 / 00 = 27
10c0b509050e15009001 / 00 = 204
10c0b509060e0000910100 / 00 = 143


ich habe jetzt schon heraus gefunden dass:

Waermerueckgewinnung an   10c0b509040e0a0002 / 00
Waermerueckgewinnung aus   10c0b509040e0a0001 / 00
Lueftung Tag                       10c0b509050e15009001 / 00
Lueftung Nacht                 10c0b509050e15000a01 / 00
Lueftung HI                     10c0b509050e1500dd02 / 00
Lueftung aus                      10c0b509050e1500a600 / 00

Wenn ich es richtig verstanden habe ist:
10 = der Sender - master #2
c0 = der Empfänger - slave Vaillant;ID=WTW04 .....
b5 = Standard weil Vaillant
09 = weiß ich nicht so richtig manchmal auch 03 - habe irgendwo was von der Klasse des Kommandos gelesen
04 bzw 05 = die Länge der Nachricht
e0a0002 z.B. = Waermerueckgewinnung an
/ 00 = denke das ist die Bestätigung Empfangen und verstanden -> OK


Ist das richtig so und wo muss ich in der CSV was eintragen damit wie bei der Heizung und Solaranlage die Nachrichten richtig decodiert werden?
Ich habe jetzt schon viel gelesen aber so richtig verstanden habe ich es noch nicht.
Es würde mich freuen wenn es mir jemand so erklären könnte dass sogar ich es verstehe  ::)

Hier habe ich mal ein paar Zeilen von @rob uboot geklaut.
Was müsste ich da jetzt reinschreiben für meine Anlage?

# type (r[1-9];w;u)",circuit,name,[comment],[QQ],ZZ,PBSB,[ID],field1,part (m/s),datatypes/templates,divider/values,unit,comment
#,recov,recoVair 260/4 360/4,,,,,,,,,,,
# ##### Generell #####,,,,,,,,,,,,,
*r,,,,,,B513,,,,IGN:2,,,
*w,,,,,,B509,,,,,,,
r,recov,IntensTag,Lueftungsintensitaet Tag auslesen,,,,048a03,HEX:15,,UIN,,,Werte 1-6




Was mir aber auch noch zu denken gibt ist der Beitrag von @rob uboot in dem er schreibt, dass die Einstellungen immer vom Steuermodul überschrieben werden.
Wenn ich das Steuermodul abklemme und es nicht dauern befehle sendet dreht die Lüftung nach einer weile hoch obwohl keine Steuerbefehle kommen  :o

Würde mich freuen wenn mir da jemand etwas Licht ins Dunkel bringen könnte. Ich glaube ( hoffe ) so viel fehlt nicht mehr bis ich es begreife  ;D

LG

Thomas

Prof. Dr. Peter Henning

Es empfiehlt sich, nicht direkt mit einer CSV-Datei zu arbeiten. Sondern mit einem Spreadsheet (z.B. Libre Office) und dieses dann nach CSV zu exportieren. Zum Thema Beschreibung des Protokolls: Siehe im Ordner contrib/EBUS. Dort habe ich vor 5 Jahren mal ein Paper über das Protokoll abgelegt, wird immer noch mit verteilt.

LG

pah

hasenhirn

Guten Morgen Herr Prof. Dr. Henning,

vielen Dank für die schnelle Antwort.
Die CSV-Datei habe ich mit Calc geöffnet und bearbeitet der Übersichtlichkeit halber.
Die Anleitung wie die Nachrichten zu dekodieren sind habe ich z.B. bei Github im Wiki von Ebus hier: https://github.com/john30/ebusd/wiki/4.1.-Message-definition
und aus verschiedenen Beiträgen im Forum, aber irgendwie bekomme ich es immer noch nicht hin. Vielleicht liegt es auch an meinem schlechten englisch  :-[
Das Paper dass Sie meinen habe ich leider nicht gefunden. Wie heißt die Datei?
Trotzdem noch mal danke für die Antwort.

LG

Thomas

cs-online

...findest du unter

/opt/fhem/contrib/EBUS

auf deinem FHEM-Server

Grüße

Christian
FHEM auf RPI 4 4GB, HM-WLAN-Gateway, einige HM-Aktoren,2x EBUSD an Heizung+Solar, ESP8266 am Strom-,Gas-,Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20, Shelly1,2 und 2.5,Lacrosse-Gateway und Sensoren,Sduino,Alexa-Fhem,Huawei PV mit Speicher, alles auf einem RPI und da geht noch mehr

hasenhirn

ah, super - danke.
Ich habe die ganze Zeit im Ebus-Verzeichniss / Configurations-Verzeichniss gesucht.
Die Anleitung werde ich mal durcharbeiten, vielleicht klappt es dann  :)

LG

Thomas

0000

Moin,
kurze Frage.
Gibt der eBus die aktuelle elektrische Leistungsaufnahme der Vaillant WP aus? Gibt es irgendwo eine Liste mit Werten die ausgegeben wird?

VG!



Reinhart

#3132
es gibt einen Wert der nennt sich "Partialpower".

Aber dieser Wert ändert sich bei mir nicht und gibt daher mehr oder weniger die maximal eingestellte Leistung des Gerätes aus.
Das Register ist aber in der Diagnose Ebene 1, Installateur Mode (wi) beschreibbar.

r;wi,,PartloadHcKW,d.00 Heizungsteillast,,,,"0704",,,power,,,Heizungsteillast

aber reine elektrische Leistung habe ich noch nichts gesehen!

lg
Reinhart
FHEM auf Raspy4 mit Bullseye + SSD, Homematic, ESP8266, ESP32, Sonoff, eBus, NanoCUL, MapleCUL, , MQTT2, Alexa

Prof. Dr. Peter Henning

Die einzig nennenswerte elektrische Leistung kommt durch die Pumpe zu Stande. Deren Leistung kann man (einmal) messen und das Pumpen-Signal über den Ebus abgreifen.

Eine Messung der elektrischen Gesamtleistung ist in keiner der mir bekannten Thermen vorgesehen - dafür sollte man ein externes Gerät wie etwa einen Shelly-Plug verwenden.

LG

pah

0000

Dann werde ich mir wohl einen Shelly EM für die Messung besorgen. Aktuell interessiert mich die elektrische Leistung, die sonstigen Werte stelle ich mittels des Controlers ein.
Danke und Gruß