UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[DISKUSSION] Viessmann Wärmepumpe an Modbus RTU

Wissen, Planung & Diskussion zur Modbus Unterstützung im Timberwolf Server.
Stellt uns hier Eure Modbus Projekte und Ideen vor.
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
martin
Reactions:
Beiträge: 138
Registriert: Mo Okt 15, 2018 10:07 pm
Wohnort: bei Stuttgart
Hat sich bedankt: 76 Mal
Danksagung erhalten: 69 Mal

Viessmann Wärmepumpe an Modbus RTU

#1

Beitrag von martin »

Hallo zusammen,

noch ein Modbuskandidat: Viessmann Wärmepumpe Vitocal 300-G
Die Steuerung (Vitronic) der Wärmepumpe kann wohl per Modbus RTU angesprochen werden. Noch steht die Integration mit meiner PV-Anlage auf meiner ToDo-List. Laut diverser Foreneinträge funktioniert die Kommunikation mit dem Zähler von SBC, eine Kommunikation mit dem Kostal (siehe Post viewtopic.php?p=24460#p24460) funktioniert wohl nicht. Von Viessmann direkt hab ich auf die Schnelle keine modbus-spec gefunden. Daher hier mal die Daten aus dem Zählerdatenblatt:
26-527_DE01_DS_Energy-meter-ALE3-with-integrated-Serial-Modbus.pdf

Da die Wärmepumpenregelung voraussetzt, dass der Stromzähler den PV-Überschuss ohne Heizungsverbrauch berücksichtigt, ist dass mit einem Zähler zur Gewährleistung der dynamischen 70% Regelung wohl sowieso nicht unter einen Hut zu bringen. Alternativen für mich sind daher
  • den TWS als modbus gateway zwischen Wärmepumpe und PV-Zähler zu verwenden und die Modbuswerte entsprechend für die Wärmepumpe aufzubereiten
Viele Grüße
Martin
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
VG Martin
TWS 2500 ID:152 + PBM ID:819 + PBM ID:1079, VPN aktiv, Reboot erlaubt"

StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

#2

Beitrag von StefanW »

Danke Martin,

kannst Du das bitte detaillierter Ausführen?

- Wer ist in diesem Szenario Master und wer ist Slave! Das ist sehr wichtig, weil das ist für die Kommunikationsrichtung und wer wen steuert wichtig, insbesondere weil bei Modbus RTU die Highlander Regel ("Es kann nur einen geben") gilt!

- Die Modbus Spec von Vissmann ist dann schon interessant

martin hat geschrieben: So Jun 07, 2020 11:34 pmDa die Wärmepumpenregelung voraussetzt, dass der Stromzähler den PV-Überschuss ohne Heizungsverbrauch berücksichtigt, ist dass mit einem Zähler zur Gewährleistung der dynamischen 70% Regelung wohl sowieso nicht unter einen Hut zu bringen.

==> Bitte die Details dieser 70% Regelung und was das mit der Wärmepumpe GENAU zu tun hat erklären, weil ich habe nix PV und kenne die speziellen Regelungen nicht

martin hat geschrieben: So Jun 07, 2020 11:34 pmAlternativen für mich sind daher den TWS als modbus gateway zwischen Wärmepumpe und PV-Zähler zu verwenden und die Modbuswerte entsprechend für die Wärmepumpe aufzubereiten

Bitte erläutern:

- Wer ist hier Master, wer ist Slave?

- Welche Werte würden von wo geholt, wie aufbereitet und wohin gesendet (also welche Verbrauchsdaten ganz grob werden wir aufbereitet und wie zur Steuerung eingsetzt und wie wird so ein Regelsystem dann bedämpft)?

- Von welchen Zeiten reden wir hier? Jede Sekunde? Jede Minute? Wieviele Werte?

martin hat geschrieben: So Jun 07, 2020 11:34 pm...auf den PV-Modus in der Wärmepumpe zu verzichten und die Logik im TWS zu implementieren; Beeinflussung der Wärmepumpe dann über Smart-Grid Eingang der WP -
- Ich habe den kurzen Eintrag bei io:Broker gelesen, aber der Hintergrund ist mir nicht klar.

- Was ist der SmartGrid Eingang?

Sorry dass ich da genauer nachfrage, aber am Ende des Tages geht es um jedes einzelne Bit und das müssen wir schon genauer wissen, wenn ich prüfen soll, dass wir damit voraussichtlich kompatibel sind, insbesondere da nachträgliche Änderungen aufwändig sind.

lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
martin
Reactions:
Beiträge: 138
Registriert: Mo Okt 15, 2018 10:07 pm
Wohnort: bei Stuttgart
Hat sich bedankt: 76 Mal
Danksagung erhalten: 69 Mal

#3

Beitrag von martin »

Hallo Stefan,
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Wer ist in diesem Szenario Master und wer ist Slave! Das ist sehr wichtig, weil das ist für die Kommunikationsrichtung und wer wen steuert wichtig, insbesondere weil bei Modbus RTU die Highlander Regel ("Es kann nur einen geben") gilt!
Die Viessmannwärmepumpe (mit dem Vitotronic 200) ist immer Master, der Energiezähler ist Slave. Leider ist die Herstellerdokumentation hier mangelhaft - Infos gibt es ggf. im Herstellerforum. Referenz: https://www.viessmann-community.com/t5/ ... aq-p/95050
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Die Modbus Spec von Vissmann ist dann schon interessant
Reicht es nicht die Daten von dem Viessmann kompatiblen Zähler (Saia-Burgess Controls) zu kennen - siehe erster Post?
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm ==> Bitte die Details dieser 70% Regelung und was das mit der Wärmepumpe GENAU zu tun hat erklären, weil ich habe nix PV und kenne die speziellen Regelungen nicht
Unsere 9,15 KWp PV-Anlage darf maximal 70%, d.h. hier ~6,4KW ins Netzeinspeisen. Zur Regelung des Wechselrichters misst ein Stromzähler (Kostal Smart Energy Meter) den kompletten Hausverbrauch (inklusive Wärmepumpe) und regelt ggf. den Wechselrichter ab, falls das Delta aus PV-Ertrag und Hausverbrauch größer als die erlaubten 6,4KW sind.

Die Viessmann Wärmepumpe weiß erstmal nicht ob eine PV-Anlage verbaut ist oder nicht und macht z.B. Warmwasser, dann wenn die Temperatur im Speicher unter einen Schwellwert gefallen ist unabhängig von der PV-Leistung. Über eine Sollwertanhebung bei PV-Überschuss kann man die Eigenstromnutzung optimieren.
Die Philosophie bei meiner Wärmepumpe ist, dass diese Sollwertanhebung erst dann gemacht wird wenn die PV-Anlage mehr Strom erzeugt als im Haus verbraucht wird, d.h. die Wärmepumpe will das Delta aus PV-Ertrag und Hausverbrauch (exklusive Wärmepumpe).
Der Zähleranschluss (Zähler C) ist von Viessmann in folgendem Dokument beschrieben: https://www.viessmann.com/vires/product ... 0001_1.PDF
Bildschirmfoto von 2020-06-13 22-23-04.png

Damit braucht die Wärmepumpe andere Werte als der "70% Zähler" liefert.
Für die Wärmepumpe an sich hab ich auch noch einen Verbrauchszähler. Der war für die BAFA-Förderung der Erdwärmebohrung notwendig.
Damit hätte ich alle Werte um mir einen virtuellen Zähler zu bauen der aus dem "70% Zähler" und dem "BAFA-Zähler" die notwendigen Werte an die Wärmepumpe liefert.
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Welche Werte würden von wo geholt, wie aufbereitet und wohin gesendet (also welche Verbrauchsdaten ganz grob werden wir aufbereitet und wie zur Steuerung eingsetzt und wie wird so ein Regelsystem dann bedämpft)?
gute Frage, eine Spec dazu hab ich leider nicht gefunden. Eigentlich müsste die elektrische Leistung (Überschuss PV) ausreichen. Die Regelung an sich findet in der Wärmepumpe statt. D.h. sobald die Einschaltbedingung für die Sollwertanhebung zutreffen, läuft der Verdichter für eine gewisse Mindestlaufzeit auch wenn ggf. dadurch auch wieder Strom aus dem Netz bezogen werden muss
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Von welchen Zeiten reden wir hier? Jede Sekunde? Jede Minute? Wieviele Werte?
Lässt sich das ggf. aus den Daten des SBC-Zählers ablesen?
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Was ist der SmartGrid Eingang?
Siehe https://www.waermepumpe.de/normen-technik/sg-ready/
Die Viessmann Wärmepumpe kann dafür 2 potentialfreie Kontakte nutzen.
0 0 -> wärmepumpe normalbetrieb
1 0 -> EVU-Sperre, d.h. der Verdichter ist aus
0 1 -> Betrieb der Wärmepumpe mit angepassten Sollwerten
1 1 -> Anlagenkomponenten werden auf die eingestellten max. Temperaturen beheizt/ min Temperaturen gekühlt

In meinem Fall würde ich die Steuerung nicht einem EVU überlassen, sondern müsste im TWS selbst eine Logik implementieren. In diesem Fall bräuchte ich Modbus "nur" um den PV-Überschuss aus dem "70% Zähler" zu bekommen. Die potentialfreien Kontakte dann über knx.


Viele Grüße
Martin
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
VG Martin
TWS 2500 ID:152 + PBM ID:819 + PBM ID:1079, VPN aktiv, Reboot erlaubt"

StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

#4

Beitrag von StefanW »

Hallo Martin,
martin hat geschrieben: So Jun 07, 2020 11:34 pmDaher hier mal die Daten aus dem Zählerdatenblatt:
Ok, habe mir das mal angesehen.

Kurze Rückmeldung für Dich zur Dokumentation des Zählers "ALE3" von "Saia-Burgess Controls Ltd" aus der Schweiz:
  1. Dokumentation: Die Dokumentationen ist wirklich sehr gut.
  2. Byte Order: Angaben zu Byte Order vorhanden, sehr gut
  3. Codierung: Angaben zur Codierung sind NICHT direkt angegeben, weder für numerische Werte (dürfte Unsigned Integer sein) noch für Strings (ASCII oder UTF8 ?), unschön
  4. Speicherung Setup-Parameter: Ein Spannungsausfall wird erkannt, dann werden die Werte gerettet, vorbildlich
  5. Zulässige Wertebereiche: Es gibt KEINE Angabe der zulässigen Wertebereiche. Somit kann man nicht auf Gültigkeit prüfen, zwar kein Beinbruch, aber schon ein wenig schade
  6. Festkomma-Format: Viele Angaben sind im Festkommaformat, sehr präzise Angabe plus Beispiel, vorbildlich
  7. Physikalische Einheiten: Sind jeweils genau angegeben, hervorragend
  8. Registermapoing: Registermapping ist gut beschrieben, ok
  9. Timingangaben: Ja, angegeben, mit 60 ms sehr schnell, hervorragend (gibt es auch auslesbar als Register)
  10. Anzahl der gleichzeitig abfragbaren Register: Auch angegeben, es können 20 Register in einem Rutsch gelesen werden, sehr gut
  11. Aktualisierung: Ja, alle 10 Sekunden werden die Werte aktualisiert, gerade noch gut
  12. Device Identification: Es gibt Angaben zur Identifizierung und zur Seriennummer, sollte ausreichend sein
  13. Device Address Setup: Ja, es gibt auch ein Register um die Adresse elektronisch zu setzen, top
Insgesamt wirklich sehr brauchbare Dokumentation und fast vorbildlich, wenn die Codierung klarer angegeben wäre.

Mein Wunsch wäre noch die Prüfbarkeit der zulässigen Wertebereiche. Ist zwar nicht zwingend nötig. aber ich finde es immer eine gute Idee, jeden Wert auf eine gewisse Plausibilität zu prüfen (wegen solcher Unterlassungen sind schon Raketen für 1 Milliarde Euro abgestürzt, weil es einen nicht erkannten Überlauf von Variablen beim Start gab oder Mars-Sonden sind zerschellt, weil die physikalische Einheit der Werte - hier Füsse anstatt Meter - nicht ausreichend klar abgesprochen war). Wir sind hier zwar nicht bei der Raumfahrt, aber es wäre doch ein einfaches sich Gedanken über zulässige Wertebereiche zu machen. Andere Hersteller tun dies ja auch. Sind aber nur meine persönlichen grundsätzlichen Erwägungen.


Hinweise:
  1. Ich liste das nicht deshalb so ein wenig akribisch auf, weil ich eine fremde Doku bewerten möchte. Unsere eigene Doku ist bislang selbst noch zu dünn und da sollten wir zuerst an unsere Nase fassen. Aber ich möchte damit ein wenig identifizieren, auf was wir bei den eigenen Erklärungen / Doku dann Wert legen müssen und welche Fragen im Support auftauchen, wenn die Nutzer das dann implementieren. Damit ich das nur einmal durcharbeiten muss, habe ich das eben gleich mal herausgeschrieben. ==> Also, Not offense
  2. Ich habe die Doku beim schnellen Durchblättern gecheckt, daher könnte ich auch das ein oder andere übersehen haben. Meine Anmerkungen stehen daher unter dem Vorbehalt einer Nachprüfung, wenn es dann drauf ankommt
  3. Womöglich ist es bei fehlenden Informationen sinnvoll den Support des Herstellers anzufragen, insbesondere bei Fragezeichen hinsichtlich Byte-Order oder Word-Order und bei Codierungen. Bitte nicht unbedingt auf diesen Thread hinweisen, wir wollen schließlich keine Milch verschütten


martin hat geschrieben: So Jun 14, 2020 12:03 am
StefanW hat geschrieben: Di Jun 09, 2020 1:53 pm - Die Modbus Spec von Vissmann ist dann schon interessant
Reicht es nicht die Daten von dem Viessmann kompatiblen Zähler (Saia-Burgess Controls) zu kennen - siehe erster Post?
Klar, aber als ich diese Frage stellt wusste ich noch nicht, dass die Vissmann Wärmepumpe als Modbus RTU Master hier agieren würde und daher keine Abfragen an diese möglich sind. Insofern war meine Frage dann obsolet und die Doku des Zählers habe ich mir angesehen.

martin hat geschrieben: So Jun 14, 2020 12:03 am In meinem Fall würde ich die Steuerung nicht einem EVU überlassen, sondern müsste im TWS selbst eine Logik implementieren. In diesem Fall bräuchte ich Modbus "nur" um den PV-Überschuss aus dem "70% Zähler" zu bekommen. Die potentialfreien Kontakte dann über knx.
Danke, habe es nun verstanden.

1. Die Wärmepumpe als Master braucht letztlich den ins Netz abgegebenen PV-Überschuss abzüglich des eigenen Verbrauches.
2. Der Zähler liefert jedoch den ins Netz abgegebenen PV-Überschuss INKLUSIVE des eigenen Verbrauches der Wärmepumpe
3. Mit einem zweiten Zähler wird dieser Verbrauch der Wärmepumpe erfasst, aber die Wärmepumpe kann an diese Info nicht ran, weil sie nur einen Zähler abfragen und zudem nicht subtrahieren kann.

Der Timberwolf Server wird das alles können, damit sieht die Lösung so aus:

A. TWS pollt als Modbus RTU Master den Hauptzähler
B. TWS pollt als Modbus RTU Master den Nebenzähler (für die Wärmepumpe)
C. TWS errechnet den ins Netz abgegebenen PV-Überschuss inkl Wärmepumpe (konkret: Hauptzählerleistung minus Nebenzählerleistung)
D: TWS stellt als Modbus RTU Slave diesen Wert der Vissmann Wärmepumpe zur Verfügung

==> Sollte so funktionieren. Womöglich nicht in der ersten Implementierung, weil wir zuerst den Master implementieren, aber der Slave kommt dann zügig dazu. Du kannst dann genau das Format und die Register einstellen, welche der Timberwolf Server gegenüber der Wärmepumpe einnehmen soll. Oder kurz gesagt, Du wirst das einstellen können, dass der TWS einen solchen Zähler emuliert.


lg

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.
Antworten

Zurück zu „Modbus“