Autor Thema: Stiebel Eltron Wärmepumpe mit CAN anbinden  (Gelesen 10126 mal)

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Stiebel Eltron Wärmepumpe mit CAN anbinden
« am: 29 März 2015, 18:54:55 »
Ich habe meine Stiebel Eltron Wärmepumpe mittels CAN an FHEM angeschlossen.
Verwendet habe ich das USBtin Interface, Kosten ca. 35€.

Anbei ein paar Screenshots, und ein Modul.
Da ich selber Perl Novize bin, bin mir sicher, dass der Code suboptimal ist.
Insbesondere das durch"loopen" durch den hash beim Empfang erscheint mir etwas aufwendig.
Bei mir läuft das Script stabil auf einem NUC unter Ubuntu, und füllt fleissig eine MySQL Datenbank.

Habe leider keine Zeit um das Modul offiziell zu maintainen, vielleicht findet sich ja jemand mit weichem Herz

Hartmut

Offline micomat

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1460
  • Alle redem vom WAF - das ist Männerdiskriminierung
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #1 am: 07 April 2015, 10:37:31 »
Hi,

was genau hast Du denn fuer eine WP?

Gruß
Markus
1x RasPi with FHEM@1000MHz, CUL433+868, IT, 2x EGPM2LAN, THZ/LWZ, STV, FB_Callmonitor, 3x HMS100TF, HMLAN, 4x HM-LC-Sw1PBU-FM, 1x HM-WDS30-T-O, 2x TX3-TH, Pushover
1x RasPi with 2x USB-IR-SML-Head, THZ via Ser2net and SMA Inverter via LAN for pvoutput.org

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #2 am: 07 April 2015, 15:40:15 »
Ich habe die WPL 15 iks-2.
Das Modul spielt aber mit jeder anderen SE Wärmepumpe mit CAN Bus, also z.B. mit solchen mit Wärmepumpenmanager WPMme, WPM II.
Darauf läuft das Kromschröder Elster Protokoll, das auch die ComfortSoft (Das Einrichtungstool der Servicetechniker) benutzt.
Die Basisdaten sind wohl immer gleich, aber je nach Pumpentyp und angeschlossenene Erweiterungen braucht's halt eine pumpenspeziefische Konfiguration.
Mit den Tools von Jürg (http://juerg5524.ch) lassen sich die Elster Codes an einem Abend ermitteln. Die Toolchain dokumentiere ich gern bei Bedarf. Wenn man mal herausgefunden hat, wie es geht, dann ist, wie immer, alles ganz einfach.

Hartmut

Offline immi

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 890
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #3 am: 07 April 2015, 20:07:33 »
well done Hartmut !!
WPL needed also a module
immi

Offline micomat

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1460
  • Alle redem vom WAF - das ist Männerdiskriminierung
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #4 am: 09 April 2015, 10:43:04 »
Soweit ich weiß hat die THZ/LWZ auch ein CAN Bus Interface... hm... :-)
1x RasPi with FHEM@1000MHz, CUL433+868, IT, 2x EGPM2LAN, THZ/LWZ, STV, FB_Callmonitor, 3x HMS100TF, HMLAN, 4x HM-LC-Sw1PBU-FM, 1x HM-WDS30-T-O, 2x TX3-TH, Pushover
1x RasPi with 2x USB-IR-SML-Head, THZ via Ser2net and SMA Inverter via LAN for pvoutput.org

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #5 am: 19 September 2015, 19:23:47 »
Anbei die neueste Version des SECAN Modules.
Ich habe den Code etwas aufgeräumt und noch ein paar neue Parameter gefunden.
Das Modul läuft jetzt seit rund einem Jahr ohne Zicken.

Die Arbeit hat sich schon bezahlt gemacht, ich konnte dem freundlichen Heizungsbauer schnell klarmachen, dass das Warmwasser-Dreiwegeventil hängt.
Am Telefon hat er es abgestritten, als ich ihm den Plot gezeigt hatte, sagte er nur "Oh, ja". 8)
Hartmut

Offline immi

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 890
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #6 am: 20 September 2015, 08:50:34 »
Hi Hartmut
Anbei die neueste Version des SECAN Modules.
Ich habe den Code etwas aufgeräumt und noch ein paar neue Parameter gefunden.
Das Modul läuft jetzt seit rund einem Jahr ohne Zicken.
well-done
Ich gehe von aus, dass Dein Modul die Stiebel Eltron Wärmepumpe THZ/LWZ nicht supportet.
Würdest Du überlegen Dein Modul in 00_WPLsomething umzunennen?
nur ein Vorschlag


Zitat
Die Arbeit hat sich schon bezahlt gemacht, ich konnte dem freundlichen Heizungsbauer schnell klarmachen, dass das Warmwasser-Dreiwegeventil hängt.
Am Telefon hat er es abgestritten, als ich ihm den Plot gezeigt hatte, sagte er nur "Oh, ja".
Kannst Du bitte den Plot teilen und erkleren Deine Diagnose?
ciao
immi

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #7 am: 20 September 2015, 16:58:37 »
Hallo Immi,

anbei das auf 00_WPL15.pm umbenannte Modul. Weil es heute geregnet hatte, habe ich Zeit gehabt die Set Routine richtig zu machen.

Zur Fehlerdiagnose habe ich zwei Plots anhehängt "before".png zeigt einen Plot vor der Reparatur. Man sieht deutlich, wie sich die Wärmepumpe über Stunden abmüht das Warmwasser zu erwärmen. Dazu mußte die Wärmepumpe regelmäßig Abtauen. Gleichzeitig steigt der Rücklauf leicht an, und die Fußbodenheizung wurde beim Warmwassererzeugen spürbar wärmer. "After.png" zeigt den Plot nach der Reparatur mit sehr schneller Aufheizung.

Hartmut


Offline immi

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 890
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #8 am: 20 September 2015, 20:20:29 »
nice !!

Ich habe irgendwo gelesen: WP Steuerung (..) Ich kann es per Definition nicht besser wissen/machen als das Entwicklerteam von Stiebel, dass sicher aus 10 und mehr Spezialisten besteht.
oder, vielleicht doch :)

Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #9 am: 23 September 2015, 12:30:47 »
Hallo Hartmut,

Dein SECAN Modul sieht toll aus. Ich würde es gerne in einer Simulation testen. Dazu bräuchte ich aber einen ("totalen") Scan Deiner WP von Dir. Wäre es Dir vielleicht möglich, mir einen solchen Scan zukommen zu lassen?

Vielen Dank und Grüsse
Jürg

Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #10 am: 24 September 2015, 08:28:08 »
Ich gehe von aus, dass Dein Modul die Stiebel Eltron Wärmepumpe THZ/LWZ nicht supportet.

Hallo immi,

es ist davon auszugehen, dass das Modul von Hartmut auch die THZ/LWZ Reihe unterstützt. Hinweise findest Du hier:

http://knx-user-forum.de/forum/öffentlicher-bereich/knx-eib-forum/12686-anbindung-canbus-an-knx

http://knx-user-forum.de/forum/öffentlicher-bereich/knx-eib-forum/code-schnipsel/26505-anbindung-tecalor-ttw13

http://knx-user-forum.de/forum/supportforen/wiregate/38306-plugin-für-stiebel-eltron-lwz-304-404-can-bus

Viele Grüsse
Jürg

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #11 am: 24 September 2015, 08:54:48 »
Hallo Jürg,
anbei meine gesammelten Scans. Der eigentliche Scan ist ab Zeile 4696 8)
Ich mache Dir gerne einen Neuen, bin aber erst wieder nächste Woche zu Hause.
Die Typenbezeichnung ist WPL15 iks-2.

Vielen Dank übrigens für Deine Super Arbeit mit den Scan Tools und CS_Brücke.

Wie nicht anders zu erwarten war, weichen einige Codes deutlich von Deiner Elster Tabelle ab. Wenn das Modul universell werden sollte, dann müsste, ähnlich wie bei der Comfortsoft, anhand der ausgelesenen Anlagenkonfiguration eben die Codes extern nachgeladen werden.

Hast Du schon etwas Licht in das FEK Mysterium bringen können?
Hartmut

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #12 am: 24 September 2015, 09:29:23 »
Hallo Jürg,
wenn Du simulieren willst, noch eine kleine Hilfestellung, weil ich ja noch keinerlei Doku für das Modul erstellt habe. Das Modul habe ich gem. Immi's Rat auf 'WPL15' umbenannt.

Definition in FHEM unter Linux dann entsprechend: define Stiebel WPL15 /dev/ttyACM0

Das Abrufen von Werten erfolgt (noch) nicht über einen internen Timer, Du musst also von 'Hand' pollen.

Die Definition define aFoo at +*00:00:10 get Stiebel WP_Sammelstatus_Relais;;get Stiebel WP_Status;;
fragt alle 10 Sekunden Status und Sammelrelais ab.

Immi hat in seinem THZ Modul eine gut gelungene Umsetzung der internen Timer, die muss ich ihm mal bei Gelegenheit 'stibitzen'.

Hartmut

Offline immi

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 890
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #13 am: 24 September 2015, 09:45:15 »
Hallo immi,
es ist davon auszugehen, dass das Modul von Hartmut auch die THZ/LWZ Reihe unterstützt. Hinweise findest Du hier:
Hi Jürg
My question is if someone wants to invest time for THZ/LWZ and Can-bus.
I see no benefit now, therefore I will not do it.
THZ/LWZ with serial interface is (to my modest opinion) pretty well supported in FHEM.

Hi Hartmut
"internen Timer" was tricky; especially to find a solution for the initial refresh of 100 registers, without slowing down FHEM and without a "non-blocking parallel implementation"...
If I can help you with "internen Timer", we can keep on discussing in PM
immi

Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #14 am: 24 September 2015, 10:15:38 »
Hallo Hartmut,

vielen Dank für Deine Unterstützung. Ich werde einmal sehen, ob ich das packe! Perl und Fhem gehören nicht zu meinen Spezialitäten. Aber vielleicht gelingt es mir, mein Perl-Modul (C++-Wrapper-Modul "elster_perl.so") in ein Fhem-Modul einzubinden. 

Bei älteren Wärmpepumpenmanager (vor WPM 3) funktioniert das Zusammenspiel mit der ComfortSoft. In diesen Fällen könnte man die Zuordnungstabellen halb automatisch erstellen. Kannst Du mir noch sagen, welche Wärmepumpenmanager Du hast?

Das FEK scheint ganz normal zu funktionieren: siehe dazu scan_data_heckmannju.inc. Bei diesem Scan ist das Problem, dass es sich um einen WPM 3 handelt und der wird von der ComfortSoft nicht unterstützt.

Viele Grüsse und gute Reise
Jürg

Offline hajo23

  • New Member
  • *
  • Beiträge: 14
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #15 am: 27 September 2015, 16:08:16 »
Hallo Jürg,
ich setze Hartmuts Modul seit 3 Monaten ein. Ich habe es für meine WPW angepasst, es um eine Zeitsynchronisation erweitert und überwache vor allem die Kommunikation zwischen WPM und den WPn, weil meine Anlage oft gestört ist. Zur Zeit polle ich noch mit diversen DOIF-Definitionen.

Beim Start des WPM wird nach dem PC (680) gesucht. Weißt Du vielleicht, wie man den PC beim WPM anmeldet und ob der WPM dann selbstständig Statusmeldungen sendet? In diesem Fall könnte man sich ggf. das Pollen sparen.

Mich würde auch interessieren, was genau der "System_Reset" macht.

Vielen Dank an Hartmut und Dich für die Unterstützung!
Gruß, Hajo

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #16 am: 28 September 2015, 00:00:54 »
Hallo Hajo,

ich musste schon ein paarmal nach einem Abtaufehler die Pumpe per WP Reset manuell zurücksetzen, und hatte gehofft das auch durch FHEM erledigen lassen zu können.
Den Code hatte ich irgendwo gefunden, aber funktioniert hat er nicht. Da ich jetzt aber den Grund für die Abtaufehler gefunden hatte, habe ich das nicht weiterverfolgt.
Der hydraulische Abgleich war nicht soo toll gewesen, und kombiniert mit einer PWM Regelung der Fußbodenheizung war dann eben ab und zu der Mindestvolumenstrom beim Abtauen unterschritten.

Mittlerweile läuft die Heizung als reine rücklaufgeführte Heizung ohne Vorlaufanteil und ohne PWM. Der hydraulische Abgleich war etwas zeitaufwändig, aber hat sich gelohnt. Habe seit dem keinen Abtaufehler mehr gehabt.

Zu den selbstständigen Statusmeldungen kannst Du ja versuchen die Abfrage in READ: if (($TargetID eq "D200")and ($Elster eq "FA"))  zu ändern in :if ($Elster eq "FA") .
Dann verarbeitet das Modul auch die Kommunikation zwischen anderen Modulen, weil es ja nicht mehr Telegramme, die an andere Module gehen, fallen lässt. Ob bei Deiner WPW da etwas passendes dabei ist, musst Du einfach versuchen. Bei mir war das nicht so richtig ergiebig. Unbekannte Werte erscheinen dann als Reading "RAW_XXXX", wobei XXXX für den Elstercode steht. Wenn Du die Abfrage auf "FA" weglässt, dann bekommst Du auch die Systemmeldungen zu sehen, was immer diese auch bedeuten mögen. Die solltest Du dann aber irgendwie extra abfangen.

Hartmut

Offline hajo23

  • New Member
  • *
  • Beiträge: 14
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #17 am: 28 September 2015, 23:15:42 »
Hallo Hartmut,

ein WP Reset könnte ich sicher gut gebrauchen.

Bei meiner Anlage liegt das Problem an der Kommunikation der Wärmepumpen mit dem Manager. In unregelmäßigen Abständen bricht sie plötzlich ab. Dann verschwinden die Pumpen aus der Konfiguration des WPM und die Anlage steht. Fehlermeldungen gibt es keine.

Seit einigen Monaten hatte ich auch Probleme auf dem Bus festgestellt. Inzwischen habe ich einen Abschlußwiderstand nachgerüstet. Die Fehler auf dem Bus sind nun scheinbar verschwunden, die sporadischen Ausfälle leider nicht.

Fhem leistet beim Überwachen gute Dienste. Die wichtigen Telegramme kommen ohne Erweiterungstelegramm (FA).  Von 480 "FFFF" an 500 und 501 (A000/A001). Als Antwort kommt ein "FFFF" von 500/501 an 480 (9200) zurück. Der Takt zur WP1 (10s) ist dabei höher als zur WP2 (300s).

Gruß,
Hajo

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #18 am: 29 September 2015, 08:08:43 »
Hallo Hajo,
das ist mal ein guter Hinweis. Da ich ausschliesslich mit Erweiterungstelegrammen arbeite, habe ich kurze Telegramme gar nicht beobachtet. Da kommt Forschungsarbeit auf mich zu.

viele Grüsse,
Hartmut

Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #19 am: 30 September 2015, 13:46:45 »
Beim Start des WPM wird nach dem PC (680) gesucht. Weißt Du vielleicht, wie man den PC beim WPM anmeldet und ob der WPM dann selbstständig Statusmeldungen sendet? In diesem Fall könnte man sich ggf. das Pollen sparen.

Mich würde auch interessieren, was genau der "System_Reset" macht.

Hallo Hajo, hallo Hartmut,

auf diese Fragen habe ich auch keine Antwort. An der Adresse 680 ist entweder das optische  Interface oder das ISG angeschlossen. Beim optischen Interface macht es keinen Sinn, wenn der WPM Statusmeldungen via CAN-Bus sendet. Beim ISG macht das Sinn, aber, ob die bei älteren Geräten an das ISG gedacht haben, bezweifle ich.

Beim System-Reset habe ich die Vermutung, dass ältere WPMs dies nicht unterstützen und man deshalb für ein ISG die Software nachrüsten muss. Dazu das Zitat von chriss1980:

http://knx-user-forum.de/forum/öffentlicher-bereich/knx-eib-forum/code-schnipsel/26505-anbindung-tecalor-ttw13/page7

Wie gesagt, werde ich versuchen mein Perl-Modul einzubringen. Aber momentan erhalte ich auf "define Stiebel WPL15 com1" als Antwort "Cannot load modul WPL15". So wie es scheint, habe ich einen langen Weg vor mir!

Viele Grüsse
Jürg



Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #20 am: 01 Oktober 2015, 16:19:20 »
Hallo Jürg,

ich habe FHEM unter Ubuntu laufen, und habe die Win Version nicht getestet.
Also flugs ActivePerl auf den Rechner gezogen, fhem installiert, und ausprobiert. Mein Laptop hat ein Win7 32 Bit System.

Während ich schön über CS_Brücke mit der Comfortsoft kommunizieren kann, bekomme ich unter FHEM den gleichen Fehler wie Du.
Auf einen virtuellen Port (mit com0com angelegt) verbindet sich FHEM aber.

Meine Vermutung ist, dass Perl da nicht mit dem USB/Serial Treiber klar kommt. Habe den schon mal auf die neueste Version upogedated, aber das hilft auch nichts.

Hatte auch versucht FHEM als Admin zu starten, denn Portmon hatte das gleiche Problem, bin da aber noch nicht weitergekommen.

Gruß
Hartmut, der die nächsten zwei Wochen offline ist



Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #21 am: 02 Oktober 2015, 07:17:40 »
Hallo Hartmut,

danke für Deine Unterstützung. Ich kann nun Dein Modul laden. Es waren einfache Anfänger-Fehler (habe "//" als Kommentar-Markierung verwendet und musste das Modul "win32-serialport" nachladen). Die USBtin-Simulation funktioniert noch nicht ganz richtig. Das sollte aber kein grosses Problem darstellen.

Viele Grüsse
Jürg

Offline juerg5524

  • New Member
  • *
  • Beiträge: 43
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #22 am: 06 Oktober 2015, 15:42:07 »
Das WPL15-Modul läuft bei mir mit der USBtin-Simulation. Ich verwende dazu die folgende Anordnung:

  fhem (WPL15) <=> com0com <=> USBtin-Simulation <=> CS_Bruecke <=> com0com> <=> ComfortSoft

Damit greife ich vom fhem und der ComfortSoft auf dieselben Simulationsdaten zu.

Danach habe ich WPL15 an meine eigenen C++-Treiber angepasst. Das Resultat liegt in "Elster.pm" vor (siehe Beilage). Zuerst verwendete ich eine Simulation in einem virtuellen Windows XP (USBtin-Simulation). Auf meinem Raspberry mit der echten WP (WPL33 und SocketCAN) funktioniert es auch. (Mit funktionieren meine ich: einzelne gets und in der Simulation auch sets absetzen.)

Jetzt sollte ich nur noch fhem verstehen, damit ich eine sinnvolle Darstellung hinkriege!

Viele Grüsse
Jürg

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #23 am: 08 Januar 2016, 20:30:14 »
Hatte etwas Zeit, und habe ein paar Ergänzungen in das Modul eingebaut.
Für die wichtigen Parameter habe ich interne Timer erstellt deren Intervallzeiten über Attribute eingestellt werden können.
Danke vielmals an Immi! Ich habe hierzu sein THZ Modul geplündert.

Da meine Fußbodenheizung nun als reine rücklaufgesteuerte Heizung arbeitet, kann die Stromsparfunktion der WPL für die Heizkreispumpe nicht verwendet werden. Dies schaltet die Pumpe in Intervallen ab, ich brauche aber kontinuierlich Fluß, da die Regelung ja auf der Rücklauftemperatur aufsetzt. Deshalb habe ich eine Funktion ergänzt, bei der die Leistung der Umwälzpumpe reduziert wird, wenn die WP nicht heizt. Auch hier kann die Funktion über Attribute eingestellt werden.

Grüße
Hartmut

Offline immi

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 890
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #24 am: 08 Januar 2016, 21:28:46 »
still too many comments/variables in a strange mixture of engl./italian
:)
reuse what you need
well done

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #25 am: 08 Januar 2016, 22:06:48 »
Hi Immi,
No worries, the code was easy to read, and I learned a litte bit Italien 8)
Thanks for your work, I just needed to copy and paste.
Hartmut

Offline mv

  • New Member
  • *
  • Beiträge: 20
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #26 am: 03 April 2016, 21:15:29 »
Hallo zusammen
Ich würde gerne von FHEM via CAN Bus auf meine Stiebel Eltron WP zugreifen.
Was ich habe:
Raspberry Pi model B
pican board
Stiebeleltron WPM II
Kann mir jemand einen Step by Step Guide zur Verfügung stellen?
Welche SW-Komponenten neben FHEM benötige ich für die Anbindung?

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #27 am: 03 April 2016, 21:44:58 »
Halo mv,
Mit dem Raspi habe ich noch nicht gearbeitet. Ich habe einen Intel Nuc, auf dem Ubuntu läuft, und daran einen USBTIN angeschlossen. Den Usbtin gibt es hier: http://www.fischl.de/usbtin/

Juerg hat ein Projekt mit Raspi realisiert, Details findest Du auf seiner Homepage http://juerg5524.ch/list_data.php ,
und hier im Forum https://forum.fhem.de/index.php/topic,42248.0.html
Ich glaube, das passt besser für Dich.

Mit Sicherheit musst Du an der Zuordnung von Elster Codes zu Funktionen etwas anpassen, die sind bei jeder Pumpenkonfiguration anders.
Juerg hat hier ein schönes Tool, CS_Brücke, mit dem man das aber sehr schnell hinbekommt. Die Zuordnung in meinem Modul basieren auf Juergs Arbeit, ich musste ca. 50% anpassen.

Radiator



« Letzte Änderung: 03 April 2016, 21:50:43 von Radiator »

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #28 am: 12 Mai 2016, 19:48:29 »
Nachdem ich mich heftigst über Ubuntu und die murksige Treiberversorgung für den Intel NUC aufgeregt habe, bin ich auf Windows 10 umgestiegen. Alles lief prima von Anfang an, superschnell und flüssig, bis eben auf mein eigenes Modul zur CAN Anbindung meiner WPL. Auch unter Linux verschluckte der Adapter ab und zu ein paar Werte... wollte ich ja schon immer mal richtig machen... 8)

Hier also das Modul mit komplett umgebauter Sende-, und Empfangslogik. Ein Sendebuffer stellt sicher, dass nicht zuu viele Anforderungen an die Pumpe gesendet werden. Die Errorliste wird abgefragt, und zusammengestze Werte (z.B. Wärmeertrag) werden korrekt erstellt. Läuft seit einem Monat superstabil.

Ich benutze jetzt die Register des USBtin, und filtere pumpeninterne Telegramme weg, so dass die Systemlast noch geringer wird. Mein NUC langweilt sich jetzt richtig. Da der MCP2515 im USBtin aber einen anderen Registeraufbau hat als der SJA1000 im Lawricell CAN232, läuft das Modul nicht mehr mit dem CAN232 Adapter.

Der ECO-Mode für die Umwälzpumpe funktioniert jetzt stabil, und die Umschaltung auf Sommerbetrieb wird erkannt.

Hartmut

Offline mmeine

  • New Member
  • *
  • Beiträge: 11
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #29 am: 12 Januar 2018, 15:52:44 »
Hallo Hartmut,

ich möchte meine SE WPC mit WPM3i gern in FHEM einbinden. Ich selber versuche das mit einem raspberry und dem pican.
Ich habe bereits einen Kommunikation mit Jürg seinem 50_Elster.pm hinbekommen. Allerdings läuft das recht instabil und mit der ganzen C++ Einbingung komme ich nicht mehr mit.

Nun bin ich auf deine 00_WPL15.pm gestoßen, welche ich auch schon in wenig auf meine Bedürfnisse angepasst habe. Das Hauptproblem ist im Moment die Herstellung der Verbindung zu meinem SocketCan ("can0"). Kannst du mir dabei helfen. Du scheinst dich ja mit der ganzen FHEM und Perl-Geschichte bestens auszukennen. Es müssten doch beim Aufruf der "sub DevIo_OpenDev" bestimmt nur die richtigen Parameter übergeben werden oder?


Grüße Markus.

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #30 am: 13 Januar 2018, 09:20:45 »
Hallo MArkus,
den CAN Socket benutze ich nicht. Unter Linux (Ubuntu) hatte sich mein USBtin unter  /dev/ttyACM0 angemeldet, so dass die Definition so aussah:

define Stiebel WPL15 /dev/ttyACM0

Hartmut



Offline mmeine

  • New Member
  • *
  • Beiträge: 11
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #31 am: 13 Januar 2018, 12:13:19 »
Hallo Hartmut,

danke für deine Rückmeldung. Mit meiner

define Stiebel Elster can0

hat das zumindest bei Jürg seiner Variante funktioniert.

mit: define Stiebel WPL15 can0

legt er zumindest das Objekt an bringt aber ein diskonnect (Kann can0 nicht offnen). Normalerweise ist can0 bereits im Linux definiert und konfiguriert, sodaß ich vermutlich nichts mehr machen muß.

Die letzte Zeile in der "WPL15_Define" mit

my $ret = DevIo_OpenDev($hash, 0, "WPL15_Init");

wird auf jebden Fall ausgeführt, stellt mir aber die Verbindung nicht her. "WPL15_Init" wird noch nicht aufgerufen.
Weist du in welchen elsif Abschnitt in der "DevIo_OpenDev" er springen muß um den richigen Porttyp auszuwählen?

Gruß Markus

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #32 am: 13 Januar 2018, 12:23:13 »
Ich habe keinerlei Erfahrung mit dem Raspi, aber hast Du schon mal probiert can0 zu initialisieren bevor Du FHEM startest?

ip link set can0 type can bitrate 20000
ifconfig can0 up


Hartmut

Offline Radiator

  • New Member
  • *
  • Beiträge: 25
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #33 am: 13 Januar 2018, 12:37:34 »
Hallo Markus,
habe gerade etwas gegoogelt. In meinem Modul verwende ich ja das Lawicel "Protokoll" für den  USBtin oder den Lawicel CAN232. Damit ist die Initialisierung, als auch der Handshake aufgebaut.

Der PiCAN benutzt das anscheinend nicht, so dass Du mein Modul wahrscheinlich nicht zum Laufen bekommen wirst. Ich selbst habe keinen Raspi, und natürlich kein PiCAN, so dass ich Dir da momentan nicht weiterhelfen kann.

Tut mir leid
Hartmut

Offline mmeine

  • New Member
  • *
  • Beiträge: 11
Antw:Stiebel Eltron Wärmepumpe mit CAN anbinden
« Antwort #34 am: 13 Januar 2018, 13:29:18 »
Hallo Hartmut,

danke für deine Mühen. Die Initialisierung mit
ip link set can0 type can bitrate 20000
ifconfig can0 up
wird bei mir automatisch beim Neustart durchgeführt.

Ich hab schon vermutet, das ich die Schnittstelle neu in dein Modul einbinden muß, ich dachte aber das geht mit wenigen Handgriffen über "DevIo_OpenDev". Schade. Da werd ich mich nochmal tiefer in dei Materie einarbeiten müssen.

Trotzdem Danke.
Markus.

 

decade-submarginal