Dimplex Wärmepumpenmanager: Unterschied zwischen den Versionen

Aus FHEMWiki
KKeine Bearbeitungszusammenfassung
Zeile 103: Zeile 103:
##  Register Warmwassertemperatur definieren
##  Register Warmwassertemperatur definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 21.02.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_dhw_temperature ModbusRegister 0 3
define dim_dhw_temperature ModbusRegister 0 3
Zeile 115: Zeile 115:
   attr dim_dhw_temperature stateAlias temperature
   attr dim_dhw_temperature stateAlias temperature
   attr dim_dhw_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_dhw_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_dhw_temperature updateIntervall 60
   attr dim_dhw_temperature updateInterval 60
</pre>
</pre>
<pre>
<pre>
Zeile 121: Zeile 121:
##  Register Vorlauftemperatur definieren
##  Register Vorlauftemperatur definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 21.02.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_flow_temperature ModbusRegister 0 5
define dim_flow_temperature ModbusRegister 0 5
Zeile 133: Zeile 133:
   attr dim_flow_temperature stateAlias temperature
   attr dim_flow_temperature stateAlias temperature
   attr dim_flow_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_flow_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_flow_temperature updateIntervall 60
   attr dim_flow_temperature updateInterval 60
</pre>
</pre>
<pre>
<pre>
Zeile 139: Zeile 139:
##  Register Rücklauftemperatur definieren
##  Register Rücklauftemperatur definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 21.02.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_return_temperature ModbusRegister 0 2
define dim_return_temperature ModbusRegister 0 2
Zeile 151: Zeile 151:
   attr dim_return_temperature stateAlias temperature
   attr dim_return_temperature stateAlias temperature
   attr dim_return_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_return_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_return_temperature updateIntervall 60
   attr dim_return_temperature updateInterval 60
</pre>
</pre>
<pre>
<pre>
Zeile 157: Zeile 157:
##  Register Rücklaufsolltemperatur definieren
##  Register Rücklaufsolltemperatur definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 21.02.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_returnset_temperature ModbusRegister 0 53
define dim_returnset_temperature ModbusRegister 0 53
Zeile 169: Zeile 169:
   attr dim_returnset_temperature stateAlias temperature
   attr dim_returnset_temperature stateAlias temperature
   attr dim_returnset_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_returnset_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_returnset_temperature updateIntervall 300
   attr dim_returnset_temperature updateInterval 300
</pre>
</pre>


Zeile 220: Zeile 220:
##  Coil Verdichter definieren
##  Coil Verdichter definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_compressor_output ModbusCoil 0 41
define dim_compressor_output ModbusCoil 0 41
Zeile 228: Zeile 229:
   attr dim_compressor_output room Dimplex
   attr dim_compressor_output room Dimplex
   attr dim_compressor_output source Coil
   attr dim_compressor_output source Coil
   attr dim_compressor_output updateIntervall 60
   attr dim_compressor_output updateInterval 60


########################################################
########################################################
Zeile 242: Zeile 243:
##  Coil Ventilator definieren
##  Coil Ventilator definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_ventilator_output ModbusCoil 0 43
define dim_ventilator_output ModbusCoil 0 43
Zeile 250: Zeile 252:
   attr dim_ventilator_output room Dimplex
   attr dim_ventilator_output room Dimplex
   attr dim_ventilator_output source Coil
   attr dim_ventilator_output source Coil
   attr dim_ventilator_output updateIntervall 60
   attr dim_ventilator_output updateInterval 60


########################################################
########################################################
Zeile 264: Zeile 266:
##  Coil 2.Wärmeerzeuger definieren
##  Coil 2.Wärmeerzeuger definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_2heatgenerator_output ModbusCoil 0 44
define dim_2heatgenerator_output ModbusCoil 0 44
Zeile 272: Zeile 275:
   attr dim_2heatgenerator_output room Dimplex
   attr dim_2heatgenerator_output room Dimplex
   attr dim_2heatgenerator_output source Coil
   attr dim_2heatgenerator_output source Coil
   attr dim_2heatgenerator_output updateIntervall 60
   attr dim_2heatgenerator_output updateInterval 60


########################################################
########################################################
Zeile 286: Zeile 289:
##  Coil Heizungsumwälzpumpe M13 definieren
##  Coil Heizungsumwälzpumpe M13 definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_circulationpump_output ModbusCoil 0 45
define dim_circulationpump_output ModbusCoil 0 45
Zeile 294: Zeile 298:
   attr dim_circulationpump_output room Dimplex
   attr dim_circulationpump_output room Dimplex
   attr dim_circulationpump_output source Coil
   attr dim_circulationpump_output source Coil
   attr dim_circulationpump_output updateIntervall 60
   attr dim_circulationpump_output updateInterval 60


########################################################
########################################################
Zeile 308: Zeile 312:
##  Coil Warmwasserpumpe M18 definieren
##  Coil Warmwasserpumpe M18 definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_dhwpump_output ModbusCoil 0 46
define dim_dhwpump_output ModbusCoil 0 46
Zeile 316: Zeile 321:
   attr dim_dhwpump_output room Dimplex
   attr dim_dhwpump_output room Dimplex
   attr dim_dhwpump_output source Coil
   attr dim_dhwpump_output source Coil
   attr dim_dhwpump_output updateIntervall 60
   attr dim_dhwpump_output updateInterval 60


########################################################
########################################################
Zeile 330: Zeile 335:
##  Coil Zusatzpumpe M16 definieren
##  Coil Zusatzpumpe M16 definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_auxiliarypump_output ModbusCoil 0 49
define dim_auxiliarypump_output ModbusCoil 0 49
Zeile 338: Zeile 344:
   attr dim_auxiliarypump_output room Dimplex
   attr dim_auxiliarypump_output room Dimplex
   attr dim_auxiliarypump_output source Coil
   attr dim_auxiliarypump_output source Coil
   attr dim_auxiliarypump_output updateIntervall 60
   attr dim_auxiliarypump_output updateInterval 60


########################################################
########################################################
Zeile 352: Zeile 358:
##  Coil Flanschheizung definieren
##  Coil Flanschheizung definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_flangeheater_output ModbusCoil 0 50
define dim_flangeheater_output ModbusCoil 0 50
Zeile 360: Zeile 367:
   attr dim_flangeheater_output room Dimplex
   attr dim_flangeheater_output room Dimplex
   attr dim_flangeheater_output source Coil
   attr dim_flangeheater_output source Coil
   attr dim_flangeheater_output updateIntervall 60
   attr dim_flangeheater_output updateInterval 60


########################################################
########################################################
Zeile 407: Zeile 414:
##  Register Historie Verdichter definieren
##  Register Historie Verdichter definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_compressor_history ModbusRegister 0 72
define dim_compressor_history ModbusRegister 0 72
Zeile 414: Zeile 422:
   attr dim_compressor_history registerType Holding
   attr dim_compressor_history registerType Holding
   attr dim_compressor_history room Dimplex
   attr dim_compressor_history room Dimplex
   attr dim_compressor_history updateIntervall 3600
   attr dim_compressor_history updateInterval 3600
</pre>
</pre>
<pre>
<pre>
Zeile 420: Zeile 428:
##  Register Historie Ventilator definieren
##  Register Historie Ventilator definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_ventilator_history ModbusRegister 0 74
define dim_ventilator_history ModbusRegister 0 74
Zeile 427: Zeile 436:
   attr dim_ventilator_history registerType Holding
   attr dim_ventilator_history registerType Holding
   attr dim_ventilator_history room Dimplex
   attr dim_ventilator_history room Dimplex
   attr dim_ventilator_history updateIntervall 3600
   attr dim_ventilator_history updateInterval 3600
</pre>
</pre>
<pre>
<pre>
Zeile 433: Zeile 442:
##  Register Historie 2.Wärmeerzeuger definieren
##  Register Historie 2.Wärmeerzeuger definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_2heatgenerator_history ModbusRegister 0 75
define dim_2heatgenerator_history ModbusRegister 0 75
Zeile 440: Zeile 450:
   attr dim_2heatgenerator_history registerType Holding
   attr dim_2heatgenerator_history registerType Holding
   attr dim_2heatgenerator_history room Dimplex
   attr dim_2heatgenerator_history room Dimplex
   attr dim_2heatgenerator_history updateIntervall 3600
   attr dim_2heatgenerator_history updateInterval 3600
</pre>
</pre>
<pre>
<pre>
Zeile 446: Zeile 456:
##  Register Historie Heizungsumwälzpumpe M13 definieren
##  Register Historie Heizungsumwälzpumpe M13 definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_circulationpump_history ModbusRegister 0 76
define dim_circulationpump_history ModbusRegister 0 76
Zeile 453: Zeile 464:
   attr dim_circulationpump_history registerType Holding
   attr dim_circulationpump_history registerType Holding
   attr dim_circulationpump_history room Dimplex
   attr dim_circulationpump_history room Dimplex
   attr dim_circulationpump_history updateIntervall 3600
   attr dim_circulationpump_history updateInterval 3600
</pre>
</pre>
<pre>
<pre>
Zeile 459: Zeile 470:
##  Register Historie Warmwasserpumpe M18 definieren
##  Register Historie Warmwasserpumpe M18 definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_dhwpump_history ModbusRegister 0 77
define dim_dhwpump_history ModbusRegister 0 77
Zeile 466: Zeile 478:
   attr dim_dhwpump_history registerType Holding
   attr dim_dhwpump_history registerType Holding
   attr dim_dhwpump_history room Dimplex
   attr dim_dhwpump_history room Dimplex
   attr dim_dhwpump_history updateIntervall 3600
   attr dim_dhwpump_history updateInterval 3600
</pre>
</pre>
<pre>
<pre>
Zeile 472: Zeile 484:
##  Register Historie Flanschheizung definieren
##  Register Historie Flanschheizung definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_flangeheater_history ModbusRegister 0 78
define dim_flangeheater_history ModbusRegister 0 78
Zeile 479: Zeile 492:
   attr dim_flangeheater_history registerType Holding
   attr dim_flangeheater_history registerType Holding
   attr dim_flangeheater_history room Dimplex
   attr dim_flangeheater_history room Dimplex
   attr dim_flangeheater_history updateIntervall 3600
   attr dim_flangeheater_history updateInterval 3600
</pre>
</pre>
==== Logfile Historie ====
==== Logfile Historie ====
Zeile 498: Zeile 511:
##  Wärmemenge Heizen definieren
##  Wärmemenge Heizen definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_heating1_thermalenergy ModbusRegister 0 5096
define dim_heating1_thermalenergy ModbusRegister 0 5096
Zeile 505: Zeile 519:
   attr dim_heating1_thermalenergy registerType Holding
   attr dim_heating1_thermalenergy registerType Holding
   attr dim_heating1_thermalenergy room Dimplex
   attr dim_heating1_thermalenergy room Dimplex
   attr dim_heating1_thermalenergy updateIntervall 900
   attr dim_heating1_thermalenergy updateInterval 900
   attr dim_heating1_thermalenergy userReadings heatingthermalenergy {
   attr dim_heating1_thermalenergy userReadings heatingthermalenergy {
                                   ((ReadingsVal("dim_heating3_thermalenergy","state",0)*100000000)+
                                   ((ReadingsVal("dim_heating3_thermalenergy","state",0)*100000000)+
Zeile 517: Zeile 531:
   attr dim_heating2_thermalenergy registerType Holding
   attr dim_heating2_thermalenergy registerType Holding
   attr dim_heating2_thermalenergy room Dimplex
   attr dim_heating2_thermalenergy room Dimplex
   attr dim_heating2_thermalenergy updateIntervall 900
   attr dim_heating2_thermalenergy updateInterval 900


define dim_heating3_thermalenergy ModbusRegister 0 5098
define dim_heating3_thermalenergy ModbusRegister 0 5098
Zeile 525: Zeile 539:
   attr dim_heating3_thermalenergy registerType Holding
   attr dim_heating3_thermalenergy registerType Holding
   attr dim_heating3_thermalenergy room Dimplex
   attr dim_heating3_thermalenergy room Dimplex
   attr dim_heating3_thermalenergy updateIntervall 900
   attr dim_heating3_thermalenergy updateInterval 900
</pre>
</pre>


Zeile 532: Zeile 546:
##  Wärmemenge Warmwasser definieren
##  Wärmemenge Warmwasser definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_dhw1_thermalenergy ModbusRegister 0 5099
define dim_dhw1_thermalenergy ModbusRegister 0 5099
Zeile 539: Zeile 554:
   attr dim_dhw1_thermalenergy registerType Holding
   attr dim_dhw1_thermalenergy registerType Holding
   attr dim_dhw1_thermalenergy room Dimplex
   attr dim_dhw1_thermalenergy room Dimplex
   attr dim_dhw1_thermalenergy updateIntervall 900
   attr dim_dhw1_thermalenergy updateInterval 900
   attr dim_dhw1_thermalenergy userReadings dhwthermalenergy {
   attr dim_dhw1_thermalenergy userReadings dhwthermalenergy {
                               ((ReadingsVal("dim_dhw3_thermalenergy","state",0)*100000000)+
                               ((ReadingsVal("dim_dhw3_thermalenergy","state",0)*100000000)+
Zeile 551: Zeile 566:
   attr dim_dhw2_thermalenergy registerType Holding
   attr dim_dhw2_thermalenergy registerType Holding
   attr dim_dhw2_thermalenergy room Dimplex
   attr dim_dhw2_thermalenergy room Dimplex
   attr dim_dhw2_thermalenergy updateIntervall 900
   attr dim_dhw2_thermalenergy updateInterval 900


define dim_dhw3_thermalenergy ModbusRegister 0 5101
define dim_dhw3_thermalenergy ModbusRegister 0 5101
Zeile 559: Zeile 574:
   attr dim_dhw3_thermalenergy registerType Holding
   attr dim_dhw3_thermalenergy registerType Holding
   attr dim_dhw3_thermalenergy room Dimplex
   attr dim_dhw3_thermalenergy room Dimplex
   attr dim_dhw3_thermalenergy updateIntervall 900
   attr dim_dhw3_thermalenergy updateInterval 900
</pre>
</pre>
==== Umweltenergie ====
==== Umweltenergie ====
Zeile 565: Zeile 580:
<pre>
<pre>
########################################################
########################################################
##  Umweltenergie/enzogene Kälteenergie definieren
##  Umweltenergie/entzogene Kälteenergie definieren
##  Erstellt........: 06.01.2015
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
########################################################
define dim_environment1_energy ModbusRegister 0 5127
define dim_environment1_energy ModbusRegister 0 5127
Zeile 574: Zeile 590:
   attr dim_environment1_energy registerType Holding
   attr dim_environment1_energy registerType Holding
   attr dim_environment1_energy room Dimplex
   attr dim_environment1_energy room Dimplex
   attr dim_environment1_energy updateIntervall 900
   attr dim_environment1_energy updateInterval 900
   attr dim_environment1_energy userReadings environmentenergy {
   attr dim_environment1_energy userReadings environmentenergy {
                                 ((ReadingsVal("dim_environment3_energy","state",0)*100000000)+
                                 ((ReadingsVal("dim_environment3_energy","state",0)*100000000)+
Zeile 586: Zeile 602:
   attr dim_environment2_energy registerType Holding
   attr dim_environment2_energy registerType Holding
   attr dim_environment2_energy room Dimplex
   attr dim_environment2_energy room Dimplex
   attr dim_environment2_energy updateIntervall 900
   attr dim_environment2_energy updateInterval 900


define dim_environment3_energy ModbusRegister 0 5129
define dim_environment3_energy ModbusRegister 0 5129
Zeile 594: Zeile 610:
   attr dim_environment3_energy registerType Holding
   attr dim_environment3_energy registerType Holding
   attr dim_environment3_energy room Dimplex
   attr dim_environment3_energy room Dimplex
   attr dim_environment3_energy updateIntervall 900
   attr dim_environment3_energy updateInterval 900
</pre>
</pre>



Version vom 22. Februar 2015, 13:17 Uhr

Mit der NWPM-Erweiterung ist es möglich, den Dimplex Wärmepumpenmanager in ein Hausnetzwerk einzubinden. Durch die Einbindung der NWPM-Erweiterung ist es ebenfalls möglich, die zur Verfügung gestellten Werte vom Wärmepumpenmanager mittels ModbusTCP in FHEM zu übernehmen, anzuzeigen und grafisch darzustellen.

Voraussetzung

Die Anbindung des Dimplex Wärmepumpenmanager an FHEM erfolgt mittels NWPM-Erweiterung und der aktuellen FHEM Installation. Weiterhin werden die zur Verfügung stehenden Module:

  • 36_ModbusTCPServer.pm
  • 37_ModbusCoil.pm
  • 37_ModbusRegister.pm

genutzt. Getestet wurde der Zugriff auf einem BeagleBone Black mit der hier beschriebenen Debian Installation.

Installation

Die nachfolgenden Module sind notwendig und müssen nachinstalliert werden. Zum Zeitpunkt der Erstellung dieser Dokumentation (31.1.2015) sind diese Module noch nicht offiziell in FHEM enthalten und werden auch nicht mittels Update verteilt.

  • download der Module von https://github.com/ChrisD70/FHEM-Modules:
    • 36_ModbusTCPServer.pm
    • 37_ModbusCoil.pm
    • 37_ModbusRegister.pm
  • kopieren der Module in das Verzeichnis /fhem/FHEM/
  • anschließend gegebenenfalls durch ein Reload laden

Benutzung

Anlegen der ModbusTCPServer Verbindung

Wie im im nachfolgenden angegeben muss zunächst eine ModbusTCPServer Verbindung hergestellt werden. Die angegebene IP-Adresse muss durch die IP-Adresse der Wärmepumpe ersetzt werden.

########################################################
##  ModbusTCPServer definieren
########################################################
define HeatPumpServer ModbusTCPServer 192.168.1.150
attr HeatPumpServer verbose 2

Ein erfolgreicher Verbindungsaufbau wird mit einem „ok“ im State gekennzeichnet.

Modbus-Register/Coil Adressen definieren

Im nachfolgendem Beispiel wird anhand der Außentemperatur die Adressdefinition erklärt.

########################################################
##  Außentemperatur
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_outdoor_temperature ModbusRegister 0 1
   attr dim_outdoor_temperature IODev HeatPumpServer
   attr dim_outdoor_temperature conversion 0.1:0
   attr dim_outdoor_temperature event-min-interval .*:900
   attr dim_outdoor_temperature event-on-change-reading .*
   attr dim_outdoor_temperature plcDataType INT
   attr dim_outdoor_temperature registerType Holding
   attr dim_outdoor_temperature room Dimplex
   attr dim_outdoor_temperature stateAlias temperature
   attr dim_outdoor_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_outdoor_temperature updateInterval 600

Erklärung:

Erläuterungen zur Adressdefinition
Attribut Erläuterungen
ModbusRegister 0 1 0 Device Adresse, in der Regel bei ModbusTCP immer 0
ModbusRegister 0 1 1 Register Adresse, wird unter www.dimplex.de/wiki → ModbusTCP → Spalten IP zur Verfügung gestellt
IODev Verwendeter und zuvor angelegter ModbusTCPServer
conversion eine gegebenenfalls notwendige Konvertierung des übermittelten Values
PlcDataType Ermögliche automatische Interpretation der ankommenden Daten
stateAlias es wird ein zusätzliches Reading erzeugt, um zum Beispiel das Statistic-Modul nutzen zu können, stateAlias ist eine echte Kopie von "state"
updateInterval Intervall des Abfragezyklus (z.B. 300 Sekunden)

Betriebsdaten

Vorschlag der Namensvergabe für die Betriebsdaten. Eine sinnvolle Namensvergabe erleichtert später das Anlegen weiterer Definitionen von zum Beispiel Logfiles, Statistiken oder auch readingsGroup.

dim_outdoor_temperature Außentemperatur
dim_flow_temperature Vorlauftemperatur
dim_return_temperature Rücklauftemperatur
dim_returnset_temperature Rücklaufsolltemperatur
dim_room_temperature Raumtemperatur
dim_dhw_temperature Warmwassertemperatur
dim_dhwset_temperature Warmwassersolltemperatur
dim_brine_temperature Soletemperatur
dim_high_pressure Hochdruck
dim_low_pressure Niederdruck
########################################################
##  Register Warmwassertemperatur definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_dhw_temperature ModbusRegister 0 3
   attr dim_dhw_temperature IODev HeatPumpServer
   attr dim_dhw_temperature conversion 0.1:0
   attr dim_dhw_temperature event-min-interval .*:900
   attr dim_dhw_temperature event-on-change-reading .*
   attr dim_dhw_temperature plcDataType INT
   attr dim_dhw_temperature registerType Holding
   attr dim_dhw_temperature room Dimplex
   attr dim_dhw_temperature stateAlias temperature
   attr dim_dhw_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_dhw_temperature updateInterval 60
########################################################
##  Register Vorlauftemperatur definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_flow_temperature ModbusRegister 0 5
   attr dim_flow_temperature IODev HeatPumpServer
   attr dim_flow_temperature conversion 0.1:0
   attr dim_flow_temperature event-min-interval .*:900
   attr dim_flow_temperature event-on-change-reading .*
   attr dim_flow_temperature plcDataType INT
   attr dim_flow_temperature registerType Holding
   attr dim_flow_temperature room Dimplex
   attr dim_flow_temperature stateAlias temperature
   attr dim_flow_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_flow_temperature updateInterval 60
########################################################
##  Register Rücklauftemperatur definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_return_temperature ModbusRegister 0 2
   attr dim_return_temperature IODev HeatPumpServer
   attr dim_return_temperature conversion 0.1:0
   attr dim_return_temperature event-min-interval .*:900
   attr dim_return_temperature event-on-change-reading .*
   attr dim_return_temperature plcDataType INT
   attr dim_return_temperature registerType Holding
   attr dim_return_temperature room Dimplex
   attr dim_return_temperature stateAlias temperature
   attr dim_return_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_return_temperature updateInterval 60
########################################################
##  Register Rücklaufsolltemperatur definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_returnset_temperature ModbusRegister 0 53
   attr dim_returnset_temperature IODev HeatPumpServer
   attr dim_returnset_temperature conversion 0.1:0
   attr dim_returnset_temperature event-min-interval .*:900
   attr dim_returnset_temperature event-on-change-reading .*
   attr dim_returnset_temperature plcDataType INT
   attr dim_returnset_temperature registerType Holding
   attr dim_returnset_temperature room Dimplex
   attr dim_returnset_temperature stateAlias temperature
   attr dim_returnset_temperature stateFormat {sprintf("%0.1f", ReadingsVal($name,"state",0))}
   attr dim_returnset_temperature updateInterval 300

Logfile Betriebsdaten

Anlegen eines täglichen Logfile der Betriebsdaten.

########################################################
##  Logfile Betriebsdaten definieren
##  Erstellt........: 06.01.2015
########################################################
define filelog_dim_temperature FileLog ./log/filelog_dim_temperature-%W-%d.log
                                      dim_.*._temperature:temperature:.*|dim_.*._pressure:pressure:.*
   attr filelog_dim_temperature room Dimplex

Statistiken

Folgender Code legt die Statistiken der Betriebsdaten an

define dim_statistics statistics dim_.*._temperature|dim_.*._pressure
   attr dim_statistics dayChangeTime 1
   attr dim_statistics deltaReadings temperature,pressure
   attr dim_statistics minAvgMaxReadings temperature,pressure
   attr dim_statistics room Dimplex
   attr dim_statistics tendencyReadings temperature,pressure

Zustände

Vorschlag der Namensvergabe für die Zustände. Eine sinnvolle Namensvergabe erleichtert später das Anlegen weiterer Definitionen von zum Beispiel Logfiles, Statistiken oder auch readingsGroup.

dim_compressor_output Verdichter
dim_ventilator_output Ventilator
dim_brinepump_ output Solepumpe
dim_circulationpump_output Heizungsumwälzpumpe M13
dim_2heatgenerator_output 2.Wärmeerzeuger
dim_dhwpump_output Warmwasserpumpe M18
dim_auxiliarypump_output Zusatzpumpe M16
dim_flangeheater_output Flanschheizung
########################################################
##  Coil Verdichter definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_compressor_output ModbusCoil 0 41
   attr dim_compressor_output IODev HeatPumpServer
   attr dim_compressor_output disableRegisterMapping 1
   attr dim_compressor_output event-min-interval .*:900
   attr dim_compressor_output event-on-change-reading .*
   attr dim_compressor_output room Dimplex
   attr dim_compressor_output source Coil
   attr dim_compressor_output updateInterval 60

########################################################
##  Passenden HourCounter für Verdichter definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_compressor_output HourCounter dim_compressor_output:on dim_compressor_output:off
   attr hourcounter_compressor_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_compressor_output event-on-change-reading .*
########################################################
##  Coil Ventilator definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_ventilator_output ModbusCoil 0 43
   attr dim_ventilator_output IODev HeatPumpServer
   attr dim_ventilator_output disableRegisterMapping 1
   attr dim_ventilator_output event-min-interval .*:900
   attr dim_ventilator_output event-on-change-reading .*
   attr dim_ventilator_output room Dimplex
   attr dim_ventilator_output source Coil
   attr dim_ventilator_output updateInterval 60

########################################################
##  Passenden HourCounter für Ventilator definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_ventilator_output HourCounter dim_ventilator_output:on dim_ventilator_output:off
   attr hourcounter_ventilator_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_ventilator_output event-on-change-reading .*
########################################################
##  Coil 2.Wärmeerzeuger definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_2heatgenerator_output ModbusCoil 0 44
   attr dim_2heatgenerator_output IODev HeatPumpServer
   attr dim_2heatgenerator_output disableRegisterMapping 1
   attr dim_2heatgenerator_output event-min-interval .*:900
   attr dim_2heatgenerator_output event-on-change-reading .*
   attr dim_2heatgenerator_output room Dimplex
   attr dim_2heatgenerator_output source Coil
   attr dim_2heatgenerator_output updateInterval 60

########################################################
##  Passenden HourCounter für 2.Wärmeerzeuger definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_2heatgenerator_output HourCounter dim_2heatgenerator_output:on dim_2heatgenerator_output:off
   attr hourcounter_2heatgenerator_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_2heatgenerator_output event-on-change-reading .*
########################################################
##  Coil Heizungsumwälzpumpe M13 definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_circulationpump_output ModbusCoil 0 45
   attr dim_circulationpump_output IODev HeatPumpServer
   attr dim_circulationpump_output disableRegisterMapping 1
   attr dim_circulationpump_output event-min-interval .*:900
   attr dim_circulationpump_output event-on-change-reading .*
   attr dim_circulationpump_output room Dimplex
   attr dim_circulationpump_output source Coil
   attr dim_circulationpump_output updateInterval 60

########################################################
##  Passenden HourCounter für Heizungsumwälzpumpe M13 definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_circulationpump_output HourCounter dim_circulationpump_output:on dim_circulationpump_output:off
   attr hourcounter_circulationpump_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_circulationpump_output event-on-change-reading .*
########################################################
##  Coil Warmwasserpumpe M18 definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_dhwpump_output ModbusCoil 0 46
   attr dim_dhwpump_output IODev HeatPumpServer
   attr dim_dhwpump_output disableRegisterMapping 1
   attr dim_dhwpump_output event-min-interval .*:900
   attr dim_dhwpump_output event-on-change-reading .*
   attr dim_dhwpump_output room Dimplex
   attr dim_dhwpump_output source Coil
   attr dim_dhwpump_output updateInterval 60

########################################################
##  Passenden HourCounter für Warmwasserpumpe M18 definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_dhwpump_output HourCounter dim_dhwpump_output:on dim_dhwpump_output:off
   attr hourcounter_dhwpump_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_dhwpump_output event-on-change-reading .*
########################################################
##  Coil Zusatzpumpe M16 definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_auxiliarypump_output ModbusCoil 0 49
   attr dim_auxiliarypump_output IODev HeatPumpServer
   attr dim_auxiliarypump_output disableRegisterMapping 1
   attr dim_auxiliarypump_output event-min-interval .*:900
   attr dim_auxiliarypump_output event-on-change-reading .*
   attr dim_auxiliarypump_output room Dimplex
   attr dim_auxiliarypump_output source Coil
   attr dim_auxiliarypump_output updateInterval 60

########################################################
##  Passenden HourCounter für Zusatzpumpe M16 definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_auxiliarypump_output HourCounter dim_auxiliarypump_output:on dim_auxiliarypump_output:off
   attr hourcounter_auxiliarypump_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_auxiliarypump_output event-on-change-reading .*
########################################################
##  Coil Flanschheizung definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_flangeheater_output ModbusCoil 0 50
   attr dim_flangeheater_output IODev HeatPumpServer
   attr dim_flangeheater_output disableRegisterMapping 1
   attr dim_flangeheater_output event-min-interval .*:900
   attr dim_flangeheater_output event-on-change-reading .*
   attr dim_flangeheater_output room Dimplex
   attr dim_flangeheater_output source Coil
   attr dim_flangeheater_output updateInterval 60

########################################################
##  Passenden HourCounter für Flanschheizung M16 definieren
##  Erstellt........: 06.01.2015
########################################################
define hourcounter_flangeheater_output HourCounter dim_flangeheater_output:on dim_flangeheater_output:off
   attr hourcounter_flangeheater_output event-min-interval tick.*:0,.*:3600
   attr hourcounter_flangeheater_output event-on-change-reading .*

Logfile Zustände

Anlegen eines wöchentlichen Logfile der Zustände.

########################################################
##  Logfile Ausgänge/Zustände definieren
##  Erstellt........: 06.01.2015
########################################################
define filelog_dim_output_week FileLog ./log/filelog_dim_output_week-%W.log dim_.*._output.*
   attr filelog_dim_output_week room Dimplex

Historie

Vorschlag der Namensvergabe für die Historie. Eine sinnvolle Namensvergabe erleichtert später das Anlegen weiterer Definitionen von zum Beispiel Logfiles, Statistiken oder auch readingsGroup.

dim_compressor_history Verdichter
dim_ventilator_history Ventilator
dim_brinepump_history Solepumpe
dim_circulationpump_history Heizungsumwälzpumpe M13
dim_2heatgenerator_history 2.Wärmeerzeuger
dim_dhwpump_history Warmwasserpumpe M18
dim_auxiliarypump_history Zusatzpumpe M16
dim_flangeheater_history Flanschheizung
########################################################
##  Register Historie Verdichter definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_compressor_history ModbusRegister 0 72
   attr dim_compressor_history IODev HeatPumpServer
   attr dim_compressor_history event-on-change-reading .*
   attr dim_compressor_history plcDataType INT
   attr dim_compressor_history registerType Holding
   attr dim_compressor_history room Dimplex
   attr dim_compressor_history updateInterval 3600
########################################################
##  Register Historie Ventilator definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_ventilator_history ModbusRegister 0 74
   attr dim_ventilator_history IODev HeatPumpServer
   attr dim_ventilator_history event-on-change-reading .*
   attr dim_ventilator_history plcDataType INT
   attr dim_ventilator_history registerType Holding
   attr dim_ventilator_history room Dimplex
   attr dim_ventilator_history updateInterval 3600
########################################################
##  Register Historie 2.Wärmeerzeuger definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_2heatgenerator_history ModbusRegister 0 75
   attr dim_2heatgenerator_history IODev HeatPumpServer
   attr dim_2heatgenerator_history event-on-change-reading .*
   attr dim_2heatgenerator_history plcDataType INT
   attr dim_2heatgenerator_history registerType Holding
   attr dim_2heatgenerator_history room Dimplex
   attr dim_2heatgenerator_history updateInterval 3600
########################################################
##  Register Historie Heizungsumwälzpumpe M13 definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_circulationpump_history ModbusRegister 0 76
   attr dim_circulationpump_history IODev HeatPumpServer
   attr dim_circulationpump_history event-on-change-reading .*
   attr dim_circulationpump_history plcDataType INT
   attr dim_circulationpump_history registerType Holding
   attr dim_circulationpump_history room Dimplex
   attr dim_circulationpump_history updateInterval 3600
########################################################
##  Register Historie Warmwasserpumpe M18 definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_dhwpump_history ModbusRegister 0 77
   attr dim_dhwpump_history IODev HeatPumpServer
   attr dim_dhwpump_history event-on-change-reading .*
   attr dim_dhwpump_history plcDataType INT
   attr dim_dhwpump_history registerType Holding
   attr dim_dhwpump_history room Dimplex
   attr dim_dhwpump_history updateInterval 3600
########################################################
##  Register Historie Flanschheizung definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_flangeheater_history ModbusRegister 0 78
   attr dim_flangeheater_history IODev HeatPumpServer
   attr dim_flangeheater_history event-on-change-reading .*
   attr dim_flangeheater_history plcDataType INT
   attr dim_flangeheater_history registerType Holding
   attr dim_flangeheater_history room Dimplex
   attr dim_flangeheater_history updateInterval 3600

Logfile Historie

Anlegen eines monatlichen Logfile für die Historischen Daten.

########################################################
##  Logfile Historie definieren
##  Erstellt........: 06.01.2015
########################################################
define filelog_dim_history_month FileLog ./log/filelog_dim_history_month-%m.log dim_.*._history.*
   attr filelog_dim_history_month room Dimplex

Wärmemengen

Laut Definition aus dem Dimplex-Wiki werden die Wärmemengen für Heizen, Warmwasser und Schwimmbad aus 3 Register-Adressen zusammengesetzt. Im Nachfolgenden Code-Beispiel wird dies entsprechend dargestellt. Dabei wird jeweils im ersten Register ein neues userReading mit der Darstellung der Gesamtwärmemenge angelegt.

########################################################
##  Wärmemenge Heizen definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_heating1_thermalenergy ModbusRegister 0 5096
   attr dim_heating1_thermalenergy IODev HeatPumpServer
   attr dim_heating1_thermalenergy event-on-change-reading .*
   attr dim_heating1_thermalenergy plcDataType INT
   attr dim_heating1_thermalenergy registerType Holding
   attr dim_heating1_thermalenergy room Dimplex
   attr dim_heating1_thermalenergy updateInterval 900
   attr dim_heating1_thermalenergy userReadings heatingthermalenergy {
                                   ((ReadingsVal("dim_heating3_thermalenergy","state",0)*100000000)+
                                    (ReadingsVal("dim_heating2_thermalenergy","state",0)*10000)+
                                    (ReadingsVal("dim_heating1_thermalenergy","state",0)))}

define dim_heating2_thermalenergy ModbusRegister 0 5097
   attr dim_heating2_thermalenergy IODev HeatPumpServer
   attr dim_heating2_thermalenergy event-on-change-reading .*
   attr dim_heating2_thermalenergy plcDataType INT
   attr dim_heating2_thermalenergy registerType Holding
   attr dim_heating2_thermalenergy room Dimplex
   attr dim_heating2_thermalenergy updateInterval 900

define dim_heating3_thermalenergy ModbusRegister 0 5098
   attr dim_heating3_thermalenergy IODev HeatPumpServer
   attr dim_heating3_thermalenergy event-on-change-reading .*
   attr dim_heating3_thermalenergy plcDataType INT
   attr dim_heating3_thermalenergy registerType Holding
   attr dim_heating3_thermalenergy room Dimplex
   attr dim_heating3_thermalenergy updateInterval 900
########################################################
##  Wärmemenge Warmwasser definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_dhw1_thermalenergy ModbusRegister 0 5099
   attr dim_dhw1_thermalenergy IODev HeatPumpServer
   attr dim_dhw1_thermalenergy event-on-change-reading .*
   attr dim_dhw1_thermalenergy plcDataType INT
   attr dim_dhw1_thermalenergy registerType Holding
   attr dim_dhw1_thermalenergy room Dimplex
   attr dim_dhw1_thermalenergy updateInterval 900
   attr dim_dhw1_thermalenergy userReadings dhwthermalenergy {
                               ((ReadingsVal("dim_dhw3_thermalenergy","state",0)*100000000)+
                                (ReadingsVal("dim_dhw2_thermalenergy","state",0)*10000)+
                                (ReadingsVal("dim_dhw1_thermalenergy","state",0)))}

define dim_dhw2_thermalenergy ModbusRegister 0 5100
   attr dim_dhw2_thermalenergy IODev HeatPumpServer
   attr dim_dhw2_thermalenergy event-on-change-reading .*
   attr dim_dhw2_thermalenergy plcDataType INT
   attr dim_dhw2_thermalenergy registerType Holding
   attr dim_dhw2_thermalenergy room Dimplex
   attr dim_dhw2_thermalenergy updateInterval 900

define dim_dhw3_thermalenergy ModbusRegister 0 5101
   attr dim_dhw3_thermalenergy IODev HeatPumpServer
   attr dim_dhw3_thermalenergy event-on-change-reading .*
   attr dim_dhw3_thermalenergy plcDataType INT
   attr dim_dhw3_thermalenergy registerType Holding
   attr dim_dhw3_thermalenergy room Dimplex
   attr dim_dhw3_thermalenergy updateInterval 900

Umweltenergie

Als Umweltenergie wird die zugeführte Kälteenergie aus der Umwelt (Luft/Erdreich) bezeichnet. Das Auslesen dieser Werte über die Schnittstelle ist erst ab einem neueren Softwarestand möglich. Die Differenz der gesamten Wärmemenge und der Umweltenergie entspricht in etwa der Energie des Verdichters.

########################################################
##  Umweltenergie/entzogene Kälteenergie definieren
##  Erstellt........: 06.01.2015
##  Geändert........: 22.02.2015
########################################################
define dim_environment1_energy ModbusRegister 0 5127
   attr dim_environment1_energy IODev HeatPumpServer
   attr dim_environment1_energy event-on-change-reading .*
   attr dim_environment1_energy plcDataType INT
   attr dim_environment1_energy registerType Holding
   attr dim_environment1_energy room Dimplex
   attr dim_environment1_energy updateInterval 900
   attr dim_environment1_energy userReadings environmentenergy {
                                ((ReadingsVal("dim_environment3_energy","state",0)*100000000)+
                                 (ReadingsVal("dim_environment2_energy","state",0)*10000)+
                                 (ReadingsVal("dim_environment1_energy","state",0)))}

define dim_environment2_energy ModbusRegister 0 5128
   attr dim_environment2_energy IODev HeatPumpServer
   attr dim_environment2_energy event-on-change-reading .*
   attr dim_environment2_energy plcDataType INT
   attr dim_environment2_energy registerType Holding
   attr dim_environment2_energy room Dimplex
   attr dim_environment2_energy updateInterval 900

define dim_environment3_energy ModbusRegister 0 5129
   attr dim_environment3_energy IODev HeatPumpServer
   attr dim_environment3_energy event-on-change-reading .*
   attr dim_environment3_energy plcDataType INT
   attr dim_environment3_energy registerType Holding
   attr dim_environment3_energy room Dimplex
   attr dim_environment3_energy updateInterval 900

Logfile Wärmemengen

Anlegen eines jährlichen Logfile der Wärmemengen.

########################################################
##  Logfile Wärmemengen definieren
##  Erstellt........: 06.01.2015
########################################################
define filelog_dim_thermalenergy_year FileLog ./log/filelog_dim_thermalenergy_year-%y.log
                                              dim_heating1_thermalenergy:heatingthermalenergy:.*|
                                              dim_dhw1_thermalenergy:dhwthermalenergy:.*|
                                              dim_heating1_thermalenergy:heatingthermalenergy:.*
   attr filelog_dim_thermalenergy_year room Dimplex

Die Dokumentation für die Darstellung in einer readingsGroup folgt.

Plotbeispiel

Plotbeispiel

Im nebenstehenden Plotbeispiel werde die Temperaturen (Analogwerte) sowie die Ausgänge (Digitalwerte) dargestellt. Im einzelnen sind die Kurven für die

  • Aussen- (AT)
  • Raum- (RT)
  • Rücklauf- (RL)
  • Rücklaufsoll- (RLS)
  • Warmwasser- (WWT) und
  • Vorlauftemperatur (VLT)

sowie die Ausgänge für

  • Verdichter 1 (Vd)
  • Ventilator (Ve)
  • 2.Wärmeerzeuger (2We)
  • Heizungsumwälzpumpe (Hup)
  • Warmwasserumwälzpumpe (Wup) und
  • Zusatzumwälzpumpe (Zup)

enthalten.

Kontakt

Weitere Fragen, Wünsche und Anregungen bitte im entsprechenden Forenthread zum Wiki-Artikel "Dimplex Wärmepumpenmanager" zur Diskussion stellen.