Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Poolheizung- Steuerung und Effizienz

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    23
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.5k

Poolheizung- Steuerung und Effizienz

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
2 Beiträge 2 Kommentatoren 1.3k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • L Online
    L Online
    Linedancer
    schrieb am zuletzt editiert von
    #1

    Hallo Gemeinde,

    hier zeige ich mal kurz wie ich meine Poolheizung steure, überwache und auch versuche die Effektivität der Heizung zu ermitteln.

    Meine Heizung ist relativ simpel aufgebaut. Es liegen 6 Kreise a ca. 80m Gartenschlauch (1/2“) parallelverschaltet auf dem Garagendach. Eine separate Pumpe fördert das Poolwasser durch diesen „Absorber“. Somit bin ich unabhängig von Filterlaufzeiten und muss die existierender Verrohrung des Filters nicht ändern.

    An Sensoren gibt es einen Homematic Differenztemperatursensor der die Pool und die Rücklauftemperatur vom Absorber misst. Dazu einen Sonnensensor ebenfalls basierend auf dem Homematic Differenztemperatursensor.

    Ein Blockly schaltet die Heizpumpe ein, wenn

    Sonne scheint

    Pooltemp < 24,8C

    Differenz Pool/Absorber > 1K

    Elevation Sonne > 10

    Und aus, wenn

    Pooltemp > 25°C oder

    Differenz Pool/Absorber < 1K

    Soweit, so simpel. Die grosse Frage ist: Bringt das was?

    Dazu bedarf es erstmal einer Info wie stark scheint die Sonne. Ich habe glücklicherweise ca. 5-10km Luftlinie von meinem Pool eine Mess Station gefunden die den Wert der Globalstrahlung in [W/m²] auf einer Website darstellt.

    Das nächste was wir brauchen ist die Wasseroberfläche des Pools in [m²] und die Fläche des Absorbers in [m²].

    Jetzt fehlt noch die Fördermenge der Heizungspumpe in [l/min] und die Masse des Poolwassers in [kg].

    Berechnungen:

    1. Sonnenenergie die das Poolwasser direkt aufheizt.

    Energie [kWh] = Globalstrahlung x Poolfläche x Messzeit

    Das ganze macht ein Blockly alle 15 minuten

    1. Sonnenenergie die den Absorber aufheizt.

    Energie [kWh] = Globalstrahlung x Absorberfläche x Messzeit

    Das macht das gleiche Blockly alle 15 minuten

    1. In das Poolwasser verbrachte Energie vom Absorber

    Energie [kWh] = m x c x delta t

    m = Wassermasse die den Absorber in der Messzeit (15 minuten) durchströmt

    c = spezifische Wäremkonstante Wasser (1,163 Wh/kgK)

    delta t = Temperaturdifferent Poolwasser / Absorber Rücklauf.

    1. Wirkungsgrad des Absorbers

    eta = Ergebnis aus 2 / Ergebnis aus 3

    1. Anteil des Absorbers an der Aufheizung des Pools

    prozentualer Anteil = Ergebnis aus 2 / (Ergebnis aus 1 + Ergebnis aus 2) *100

    Hier das Blockly das alles bis auf Punkt 5 macht.

    ! ````
    <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="oydV|(K_vtXNJ2L]b7P" x="112" y="-32"><field name="COMMENT">Berechnung der durch die Sonne erzielte Energie im Pool</field> <next><block type="schedule" id="TPz.~u#rq~J9u#ozY9qk"><field name="SCHEDULE">*/15 * * * *</field> <statement name="STATEMENT"><block type="comment" id="zo^0#vhbgEfZs6);=Mk*"><field name="COMMENT">20.2 ist die Poolfläche im m²</field> <next><block type="comment" id="ifS6_rN}8M;t;59T@k8w"><field name="COMMENT">0.25 ist der Zeitfaktorda das Script alle 15 minuten läuft</field> <next><block type="variables_set" id="Zzfvr(uBQ3y,RuOX5VOn"><field name="VAR">Energie_pro_15min</field> <value name="VALUE"><block type="math_arithmetic" id="CoV]2gyc75LCjnLf@nV" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="yg=a^!%@cs}W5K-VYIM"><field name="NUM">1</field></shadow>
    <block type="get_value" id="cZ:zNBM@eJx5%PeWr#2o"><field name="ATTR">val</field>
    <field name="OID">parser.0.Globalstrahlung_1h</field></block></value>
    <value name="B"><shadow type="math_number" id="f]JkGvM3%{[~Fp_rx#7K"><field name="NUM">1</field></shadow>
    <block type="math_arithmetic" id="m3ts0FQ^X3ScMe4tp%~V" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="NtNqm92j!Mk+D*0R+@Yl"><field name="NUM">1</field></shadow>
    <block type="math_number" id="/fYK9gE=M47Y;VtM@WaN"><field name="NUM">20.2</field></block></value>
    <value name="B"><shadow type="math_number" id=";tqWo(^Y:
    :L*NT9g]0"><field name="NUM">1</field></shadow> <block type="math_number" id="?h]3YOb*XERtQf_%J5%"><field name="NUM">0.25</field></block></value></block></value></block></value>
    <next><block type="update" id="Oi%MKWXH*(:G)09r3Zd;"><mutation delay_input="false"></mutation>
    <field name="OID">javascript.0.Pool.Solareinstrahlung_Pool</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE"><block type="math_arithmetic" id="5!11L!YlAa2H+U9S/-U{" inline="false"><field name="OP">ADD</field>
    <value name="A"><shadow type="math_number" id="HGr19Y%q8Yy(6WUyI:i0"><field name="NUM">1</field></shadow>
    <block type="get_value" id="i/^hwY85kKk-SZvRH!"><field name="ATTR">val</field>
    <field name="OID">javascript.0.Pool.Solareinstrahlung_Pool</field></block></value>
    <value name="B"><shadow type="math_number" id="#X7vgA)Mn)QtHb)llf3i"><field name="NUM">1</field></shadow>
    <block type="variables_get" id="l2m57X(4Es~;;^,zrbBu"><field name="VAR">Energie_pro_15min</field></block></value></block></value>
    <next><block type="comment" id="Q0]01WebJ?0iRlN.%cG|"><field name="COMMENT">8 ist die Kollektorfläche im m²</field>
    <next><block type="comment" id="q%J23o?2v[%tLrw-NT~S"><field name="COMMENT">0.25 ist der Zeitfaktorda das Script alle 15 minuten läuft</field>
    <next><block type="variables_set" id="os_o:v.khCWOw,@:w[w"><field name="VAR">Energie2_pro_15min</field>
    <value name="VALUE"><block type="math_arithmetic" id="eglU+)NqQd)Y}#h3MGU!" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="yg=a^_!%@cs}W5K-VYIM"><field name="NUM">1</field></shadow>
    <block type="get_value" id="m4NooAxT0_koiG:STWtD"><field name="ATTR">val</field>
    <field name="OID">parser.0.Globalstrahlung_1h</field></block></value>
    <value name="B"><shadow type="math_number" id="f]JkGvM3%{[~Fp_rx#7K"><field name="NUM">1</field></shadow>
    <block type="math_arithmetic" id=";w/j%6qGd]^{BM+IL#kH" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="NtNqm92j!Mk+D
    0R+@Yl"><field name="NUM">1</field></shadow>
    <block type="math_number" id="^DP+1t+|l_OhyF+q#dI%"><field name="NUM">8</field></block></value>
    <value name="B"><shadow type="math_number" id=";tqWo(^Y:_:L*NT9g]0"><field name="NUM">1</field></shadow> <block type="math_number" id="zt}[9S0lXm1PvXD^{K-l"><field name="NUM">0.25</field></block></value></block></value></block></value> <next><block type="update" id="dFqs;fl03C}H/TDYM)c!"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pool.Solareinstrahlung_Kollektor</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_arithmetic" id="dwec_8z.iLtoaa+Vbuc" inline="false"><field name="OP">ADD</field>
    <value name="A"><shadow type="math_number" id="HGr19Y%q8Yy(6WUyI:i0"><field name="NUM">1</field></shadow>
    <block type="get_value" id="lt?uOAj(AZI.t!mA!pd"><field name="ATTR">val</field> <field name="OID">javascript.0.Pool.Solareinstrahlung_Kollektor</field></block></value> <value name="B"><shadow type="math_number" id="#X7vgA)Mn)QtHb)llf3i"><field name="NUM">1</field></shadow> <block type="variables_get" id="rZ_@Ak|YaK}rc^y:)Muq"><field name="VAR">Energie2_pro_15min</field></block></value></block></value> <next><block type="controls_if" id="rJHmEw*%Vi#,d}xK3w+"><value name="IF0"><block type="logic_compare" id="!,e:])(~-XtG:MnpM2mf"><field name="OP">EQ</field>
    <value name="A"><block type="get_value" id=";l[m49w5|Q.Zfp2N,US"><field name="ATTR">val</field>
    <field name="OID">hm-rpc.2.MEQ0023494.2.STATE</field></block></value>
    <value name="B"><block type="logic_boolean" id="ARDAss3|lS+9_B}oo7.L"><field name="BOOL">TRUE</field></block></value></block></value>
    <statement name="DO0"><block type="comment" id="ohk;IVmGWy,@YD;V^cMz"><field name="COMMENT">Fördermenge Heizpumpe in 15 min =187.5l</field>
    <next><block type="comment" id="Zi#is+O);SH/9q(/5vlt"><field name="COMMENT">spez. Wärmekonstante c=1,163 Wh/kgK</field>
    <next><block type="variables_set" id="X{(m[Vk+9(*K;!%l}|m"><field name="VAR">DeltaT</field> <value name="VALUE"><block type="get_value" id="#4zbBIs8qnerRPo{08M"><field name="ATTR">val</field>
    <field name="OID">hm-rpc.2.LEQ0773808.3.TEMPERATURE</field></block></value>
    <next><block type="variables_set" id="gWGlZYkbF_U9Jt^@8Wsh"><field name="VAR">DeltaT</field>
    <value name="VALUE"><block type="math_number" id="TJC/O]my@kl3R1skLQeh"><field name="NUM">3</field></block></value>
    <next><block type="variables_set" id="#{VW/yg%1Z0u{Sk?KFQV"><field name="VAR">Abgegebene_Arbeit</field>
    <value name="VALUE"><block type="math_arithmetic" id="T/@EK[oAc?VP/Ya%XL+c" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="e{%qPrY=C(T)aU}X)i+r"><field name="NUM">1</field></shadow>
    <block type="math_number" id="iI+nban![~Ab1Yo%95V^"><field name="NUM">187.5</field></block></value>
    <value name="B"><shadow type="math_number" id="MhZ8IyN!h!=+mG{TC?r{"><field name="NUM">1</field></shadow>
    <block type="math_arithmetic" id="qh=5oI%rJ:D,VgW(h38}" inline="false"><field name="OP">MULTIPLY</field>
    <value name="A"><shadow type="math_number" id="_KoNMysI
    :v5%,w3,EN4"><field name="NUM">1</field></shadow>
    <block type="math_number" id="?b4K?xqNhtMOldd+]*C"><field name="NUM">1.163</field></block></value> <value name="B"><shadow type="math_number" id="y7bXedJ|6y|?.dZzUWd@"><field name="NUM">1</field></shadow> <block type="variables_get" id="{73+o)gZQ}Q*MeBZCU-m"><field name="VAR">DeltaT</field></block></value></block></value></block></value> <next><block type="update" id="@b4z,SvXw}*C,oq@o51{"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pool.Energie_Poolheizung</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="variables_get" id="}rs334/_RMF8C|lx)32k"><field name="VAR">Abgegebene_Arbeit</field></block></value> <next><block type="update" id="H;^0VDq-53?oTFGT@^#"><mutation delay_input="false"></mutation>
    <field name="OID">javascript.0.Pool.Wirkungsgrad_Poolheizung</field>
    <field name="WITH_DELAY">FALSE</field>
    <value name="VALUE"><block type="math_arithmetic" id="B%3?o8YJ%!Y9XZx#D99" inline="false"><field name="OP">DIVIDE</field> <value name="A"><shadow type="math_number" id="tsWa:(_PPmL9dF#]Tjb"><field name="NUM">1</field></shadow>
    <block type="variables_get" id="O5N;dA?obdIF(@{m?@vB"><field name="VAR">Abgegebene_Arbeit</field></block></value>
    <value name="B"><shadow type="math_number" id="[S){f8|}/at6H7p,st^R"><field name="NUM">1</field></shadow>
    <block type="variables_get" id="eCA!uUT-8E#W(hLCV0d}"><field name="VAR">Energie2_pro_15min</field></block></value></block></value></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></xml>

    Das Ganze ist natürlich mit einer gewissen Unschärfe verbunden. Einfallswinkel der Sonne, temporäre Beschattung, Aufheizung der Wandung des Pools… Aber als grobe Abschätzung schon OK. Wenn ich abends rückrechne wieviel Energie notwendig war, um die Temperatursteigerung des Tages zu erzielen, bin ich schon ziemlich nahe dran an meinen Ergebnissen.
    
    Mas schauen was ich da noch optimieren kann.
    
    hier noch 2 View´s mit denen ich das ganze visualisiere:
     ![1564_2018-07-25.png](/assets/uploads/files/1564_2018-07-25.png) 
     ![1564_2018-07-25__1_.png](/assets/uploads/files/1564_2018-07-25__1_.png) 

    –

    Ciao, Gerhard

    1 Antwort Letzte Antwort
    0
    • SmarthomeMFS Offline
      SmarthomeMFS Offline
      SmarthomeMF
      schrieb am zuletzt editiert von
      #2

      Gefällt mir sehr gut.

      Werde ich mal ausprobieren

      Max

      ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
      Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

      1 Antwort Letzte Antwort
      0
      Antworten
      • In einem neuen Thema antworten
      Anmelden zum Antworten
      • Älteste zuerst
      • Neuste zuerst
      • Meiste Stimmen


      Support us

      ioBroker
      Community Adapters
      Donate

      510

      Online

      32.5k

      Benutzer

      81.7k

      Themen

      1.3m

      Beiträge
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
      ioBroker Community 2014-2025
      logo
      • Anmelden

      • Du hast noch kein Konto? Registrieren

      • Anmelden oder registrieren, um zu suchen
      • Erster Beitrag
        Letzter Beitrag
      0
      • Home
      • Aktuell
      • Tags
      • Ungelesen 0
      • Kategorien
      • Unreplied
      • Beliebt
      • GitHub
      • Docu
      • Hilfe