Geräteprofil · Heizungs- und Lüftungsregler
RESOL DeltaSol über Datalogger DL2 / DL3
Hinweis: Dieses Profil beruht auf der RESOL-Dokumentation der DLx Data Download API (veröffentlicht im Projekt
resol-vbusvon RESOL-Entwickler Daniel Wippermann), auf der VBus-Spezifikation (VSF) und auf echten Antworten eines DL2 mit DeltaSol CS Plus aus Community-Foren.
Voraussetzungen
- RESOL-Solar- oder Heizungsregler mit VBus (Vorgabe: DeltaSol CS Plus, andere Regler siehe unten), per VBus-Leitung an einen
- RESOL Datalogger DL2 oder DL3 mit Firmware 2.0 oder neuer angeschlossen. Der Datalogger braucht eine feste IP-Adresse (DHCP-Reservierung).
- Benutzername und Passwort des Datalogger-Webinterfaces (Werkseinstellung
admin/admin). Benutzername und Passwort dürfen die Zeichen&,=,?und;nicht enthalten, weil sie in der URL übertragen werden. - Test im Browser:
http://<IP>/dlx/download/live?sessionAuthUsername=admin&sessionAuthPassword=<Passwort>liefert die Livedaten als JSON.
Für das Kommunikationsmodul KM2 und den Datalogger DL2 Plus gibt es ein eigenes Add-on:
RESOL DeltaSol über KM2 / DL2 Plus – beide liefern ihre Daten nicht über
/dlx/download/live, sondern über eine JSON-RPC-Schnittstelle mit Anmeldung.
Nicht unterstützt werden KM1 und VBus/LAN-Adapter: Sie liefern ihre Daten nur über das binäre VBus-Protokoll (TCP-Port 7053), das das Add-on-System nicht abbilden kann.
Einrichtung
- nomos Config Panel öffnen
- Das RESOL-Profil unter Skills → Add-ons importieren
- Gerät hinzufügen
- IP-Adresse des Dataloggers, Benutzername und Passwort eintragen
- Paketnummer und Feldnummern prüfen (nächster Abschnitt) – ohne diese Prüfung können Werte vertauscht sein
Paket- und Feldnummern prüfen
Der Datalogger liefert die Werte nicht mit Namen, sondern als nummerierte Liste: Im JSON stehen unter
headers die Pakete und ihre Felder (mit Namen), unter headersets → packets die Werte mit
header_index (Paketnummer, ab 0) und field_index (Feldnummer, ab 0). Das Add-on liest
raw_value des Feldes FIELD_… im Paket PACKET_INDEX.
Paketnummer (PACKET_INDEX): Position des Reglerpakets in der Liste headers (ab 0 gezählt).
- DL2 mit einem Regler: meist
0(das Paket"description" : "VBus 0: DeltaSol CS Plus") - DL3: das erste Paket ist meist der DL3 selbst (
"VBus 0: DL3"), der Regler folgt danach, also meist1
Feldnummern: Position des Feldes in der Liste fields dieses Pakets (ab 0 gezählt). Die
Reihenfolge stammt aus der VBus-Spezifikation, die im Datalogger installiert ist – sie hängt also
vom Regler und vom Firmware-/Spezifikationsstand des Dataloggers ab. Beim DeltaSol CS Plus gibt
es zwei bekannte Fassungen:
| Einstellung | Wert | CS Plus, aktuelle Spezifikation (Vorgabe) | CS Plus, ältere Spezifikation (Stand bis mind. 2019) |
|---|---|---|---|
FIELD_COLLECTOR |
Temperatur Sensor 1 (Kollektor) | 0 |
0 |
FIELD_STORAGE_BOTTOM |
Temperatur Sensor 2 (Speicher unten) | 1 |
1 |
FIELD_STORAGE_TOP |
Temperatur Sensor 3 (Speicher oben) | 2 |
2 |
FIELD_SENSOR4 |
Temperatur Sensor 4 | 3 |
3 |
FIELD_PUMP_R1 |
Drehzahl Relais 1 (Solarpumpe) | 6 |
4 |
FIELD_PUMP_R2 |
Drehzahl Relais 2 | 7 |
5 |
FIELD_HOURS_R1 |
Betriebsstunden Relais 1 | 8 |
6 |
FIELD_HOURS_R2 |
Betriebsstunden Relais 2 | 9 |
7 |
FIELD_ERRORMASK |
ErrorMask | 12 |
10 |
FIELD_HEAT_QUANTITY |
Wärmemenge (Wh) | 19 |
17 |
Die aktuelle Fassung hat 21 Felder (mit „Temperature sensor 5“ und „Flow rate“ an Position 4 und 5),
die ältere 19. Zählen Sie im Browser die Einträge unter fields des Reglerpakets – das ist
eindeutig.
Andere Regler lassen sich über dieselben Einstellungen anbinden, solange die Werte in einem Paket stehen. Beispiele (aktuelle Spezifikation, bitte trotzdem im JSON prüfen):
| Einstellung | DeltaSol BS Plus | DeltaSol BS 2009 | DeltaSol BS/DrainBack |
|---|---|---|---|
FIELD_COLLECTOR … FIELD_SENSOR4 |
0 … 3 |
0 … 3 |
0 … 3 |
FIELD_PUMP_R1 / FIELD_PUMP_R2 |
4 / 5 |
4 / 5 |
4 / 5 |
FIELD_HOURS_R1 / FIELD_HOURS_R2 |
16 / 17 |
6 / 7 |
14 / 15 |
FIELD_ERRORMASK |
7 |
10 |
– (kein Sammelfeld, z. B. 6 = Sensor 1 defekt) |
FIELD_HEAT_QUANTITY |
18 |
17 |
16 |
Regler mit mehreren Paketen (DeltaSol MX, SLT, M …) verteilen Wärmemengen und Fehler auf weitere Pakete; dort kann das Add-on nur die Werte eines Pakets lesen.
Datenbereich
Das Add-on liest alle 30 Sekunden GET /dlx/download/live (eine Anfrage für alle Werte).
- Temperaturen: Kollektor (S1), Speicher unten (S2), Speicher oben (S3), Sensor S4 (ausgeblendet)
- Pumpen: Drehzahl Relais 1 und 2 in %, Betriebsstunden Relais 1 und 2
- Solarpumpe läuft (
active): Drehzahl Relais 1 größer 0 - Wärmemenge in kWh (Rohwert in Wh, durch 1000 geteilt)
- Störung (
malfunction): Fehlermaske ungleich 0 (Sensorbruch/-kurzschluss); die Fehlermaske selbst ist ausgeblendet verfügbar (Bit 1 = S1, 2 = S2, 4 = S3, 8 = S4 defekt) - Erreichbarkeit (
reachable): ob der Datalogger auf die HTTP-Anfrage antwortet
Hinweise
- Nur lesend: Die Livedaten-Schnittstelle des Dataloggers kann keine Werte schreiben.
- Falsche Feldnummern fallen nicht auf: Das Add-on liest dann einfach ein anderes Feld (z. B.
Betriebsstunden statt Pumpendrehzahl –
activewäre dauerhaft ein). Hat das Paket weniger Felder als die eingestellte Nummer, wird der Wert aus dem nächsten Paket gelesen. Nach jedem Firmware-Update oder Upload einer neuen VBus-Spezifikation am Datalogger die Nummern erneut prüfen. - Die Paketreihenfolge kann sich ändern, wenn ein weiteres VBus-Gerät hinzukommt oder eines länger keine Daten sendet.
- Sensorfehler: Ein offener oder kurzgeschlossener Fühler meldet RESOL als
888.8°C bzw.-888.8°C. Nicht angeschlossene Fühler (oft S4) zeigen daher dauerhaft 888,8 °C. reachablesagt nur, ob der Datalogger antwortet. Ist der Regler vom VBus getrennt oder sind die Zugangsdaten falsch (der Datalogger antwortet dann mit einer HTML-Seite), bleiben die Werte einfach auf dem letzten Stand.- Welcher Fühler Kollektor bzw. Speicher ist, hängt vom im Regler gewählten Anlagenschema ab; die Bezeichnungen gelten für das Standard-Solarsystem (System 1).