Toon niet geschikt voor een warmtepomp?

If your (rooted) Toon doesn't do what it's supposed to, post here. Dutch allowed / Posten in 't Nederlands toegestaan.

Moderators: marcelr, TheHogNL, Toonz

Post Reply
H143
Starting Member
Starting Member
Posts: 3
Joined: Sun Dec 27, 2020 5:23 pm

Toon niet geschikt voor een warmtepomp?

Post by H143 »

Is de Toon wel geschikt voor een warmtepomp?
ik gebruik de toon nu als ruimtethermostaat voor de warmtepomp
de toon stuurt de warmtepomp aan met een aan/uit signaal en de warmtepomp maakt dan warm water op weersafhankelijke basis.
alleen nu zie ik dat als ik de Toon heb aangesloten de warmtepomp ontzettend begint te pendelen
de temperatuur in de woonkamer is 19,5 graden en de setpoint staat op 21 graden
het lijkt erop dat de toon niet een constant aan signaal stuurt maar af en toe weer uitschakelt waardoor de wp gaat pendelen.
als ik de toon uitzet en de wp zelf laat regelen blijft hij rustig een aantal uren draaien.
is er een bepaalde instelling die nog aangepast meot worden voor een warmtepomp?
TheHogNL
Forum Moderator
Forum Moderator
Posts: 2125
Joined: Sun Aug 20, 2017 8:53 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by TheHogNL »

Ik heb mijn warmtepomp ook op de toon maar pendelen moet je zelf dan zien te voorkomen helaas.

Je kan wel in config_happ_thermstat.xml de heatingType op 3 zetten (en rebooteN) en dan gedraagt de toon zich iets beter (dat is dan officieel voor warmtepompen) maar pendelt echt nog wel veel (uit mijn hoofd dan iets van 15 minuten minimale run).

Wat ik doe is het heatsignaal van de toon afvangen en dan met eigen scripts uiteindelijk het signaal naar de warmtepomp sturen via een zelf te bedienen relay.

Dit is het script wat ik hiervoor op de toon heb draaien. De curl request is naar een relay op wifi dit het voor mij schakelt (dan kan bijv. een sonoff zijn).

Code: Select all

#!/bin/sh
# This script will switch a connected zwave smartplug on or off based on the burner request state on the Toon.
ANTIPENDELTIME=300
REQUESTSTATEOFFTIME=-1
STATE=-1
while true
do
        NOWDATE=`date`
        NEWSTATE=`curl -Nks http://localhost/happ_thermstat?action=getThermostatInfo | sed 's/.*"burnerInfo":"\([0-9]\)".*/\1/'`
        if [ "$STATE" -ne "$NEWSTATE" ]
        then
                if [ "$NEWSTATE" -eq "0" ]
                then
                        NOWTIME=`date +%s`
                        if [ "$REQUESTSTATEOFFTIME" -eq "-1" ]
                        then
                                # set the time when then request off was first set
                                REQUESTSTATEOFFTIME=$NOWTIME
                        fi
                        if [[ $(( $REQUESTSTATEOFFTIME + $ANTIPENDELTIME )) -lt $NOWTIME ]]
                        then
                                echo "$NOWDATE: Turning off heatpump"
                                RESULT=`curl -Nks http://192.168.178.32/toon?state=off`
                                while [ "$RESULT" != "Toon state changed to off" ]
                                do
                                        echo "$NOWDATE: Retry turning off heatpump"
                                        RESULT=`curl -Nks http://192.168.178.32/toon?state=off`
                                done
                                STATE=$NEWSTATE
                                REQUESTSTATEOFFTIME=-1
                        else
                                echo "$NOWDATE: Anti pendel time waiting to turn off heatpump"
                        fi
                else
                        echo "$NOWDATE: Turning on heatpump"
                        RESULT=`curl -Nks http://192.168.178.32/toon?state=on`
                        while [ "$RESULT" != "Toon state changed to on" ]
                        do
                                echo "$NOWDATE: Retry turning on heatpump"
                                RESULT=`curl -Nks http://192.168.178.32/toon?state=on`
                        done
                        STATE=$NEWSTATE
                fi
        fi
        if [ ! "$REQUESTSTATEOFFTIME" -eq "-1" ] && [ "$NEWSTATE" -eq "1" ]
        then
                #anti pendel worked, we now need to reset it
                echo "$NOWDATE: Anti pendel did a good job! Heatpump stayed on!"
                REQUESTSTATEOFFTIME=-1
        fi
        sleep 10
done
Member of the Toon Software Collective
H143
Starting Member
Starting Member
Posts: 3
Joined: Sun Dec 27, 2020 5:23 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by H143 »

De heating type stond bij mij al op 3
Ik denk dat ik joubscript maar eens ga proberen straks maar eens kijken of ik nog een geschikt relais heb
phoenixb
Advanced Member
Advanced Member
Posts: 512
Joined: Thu Jul 23, 2009 1:00 pm
Location: Netherlands

Re: Toon niet geschikt voor een warmtepomp?

Post by phoenixb »

Vanuit ervaring weet ik dat de toon in combinatie met een warmtepomp (vanuitgaande lucht/water of water/water) verre van ideaal is.

Er zijn een paar merken die een Opentherm ingang hebben zodat de warmtepomp direct vanuit de modulerende werking van oa de toon aangestuurd kan worden zodat de Inverter compressor netjes meeloopt op de warmte behoefte.

Echter wanneer de toon middels een aan/uit contact de warmtepomp vrijgeeft ben je erg afhankelijk van de interne regeling van de warmtepomp zelf.

Wat voor merk/type warmtepomp heb je als ik vragen mag?
__________________
TheHogNL
Forum Moderator
Forum Moderator
Posts: 2125
Joined: Sun Aug 20, 2017 8:53 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by TheHogNL »

H143 wrote:De heating type stond bij mij al op 3
Ik denk dat ik joubscript maar eens ga proberen straks maar eens kijken of ik nog een geschikt relais heb
Je vroeg in een PM hoe je het script gebruikt.

Maak een nieuw bestand (bijv /root/warmtepomp) en zet daar het script in. Je kan hem daarna executable maken dmv 'chmod +x /root/warmtepomp'
vervolgens kan je het script starten en dan draait het. Om het bij opstarten automatisch op te starten kan je het in /etc/inittab zetten bijvoorbeeld (zie voorbeeld /usr/bin/tsc script daar)
Member of the Toon Software Collective
H143
Starting Member
Starting Member
Posts: 3
Joined: Sun Dec 27, 2020 5:23 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by H143 »

bedankt. en antipendeltime 300 staat voor 300 seconden?
TheHogNL
Forum Moderator
Forum Moderator
Posts: 2125
Joined: Sun Aug 20, 2017 8:53 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by TheHogNL »

H143 wrote:bedankt. en antipendeltime 300 staat voor 300 seconden?
Ja en dat kan je uiteraard aanpassen naar eigen wens. Bijv. 900 voor een kwartier etc.
Member of the Toon Software Collective
balans
Starting Member
Starting Member
Posts: 26
Joined: Wed Feb 01, 2017 7:21 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by balans »

@TheHogNL Het is alweer een oud script maar heb wat moeite met de ouput van het sed commando sed 's/.*"burnerInfo":"\([0-9]\)".*/\1/'` ik krijg met deze combi geen output en dus doet het hele script niks. ik zou verwachten als deze json word opgepikt


{"result":"ok", "currentTemp":"2209", "currentSetpoint":"2150", "currentInternalBoilerSetpoint":"6", "programState":"0", "activeState":"-1", "nextProgram":"-1", "nextState":"-1", "nextTime":"0","nextSetpoint":"0","randomConfigId":"1804289383","errorFound":"255","connection":"0","burnerInfo":"1","otCommError":"0","currentModulationLevel":"0"}

dat de output via de sed 1 moet zijn.

maar krijg geen output heb de toon geprobeerd maar ook andere computers.

ik heb echt geen kaas gegeten van sed
balans
Starting Member
Starting Member
Posts: 26
Joined: Wed Feb 01, 2017 7:21 pm

Re: Toon niet geschikt voor een warmtepomp?

Post by balans »

a nvm dat werkt, nu de rest nog uitvogelen ik wil een esp met espeasy gaan gebruiken.

Code: Select all

#!/bin/sh
# This script will switch a connected ESP8266 relay on or off based on the burner request state on the Toon.
ANTIPENDELTIME=300
REQUESTSTATEOFFTIME=-1
STATE=-1
while true
do
        NOWDATE=`date`
        NEWSTATE=`curl -Nks http://localhost/happ_thermstat?action=getThermostatInfo | sed 's/.*"burnerInfo":"\([0-9]\)".*/\1/'`
        if [ "$STATE" -ne "$NEWSTATE" ]
        then
                if [ "$NEWSTATE" -eq "0" ]
                then
                        NOWTIME=`date +%s`
                        if [ "$REQUESTSTATEOFFTIME" -eq "-1" ]
                        then
                                # set the time when then request off was first set
                                REQUESTSTATEOFFTIME=$NOWTIME
                        fi
                        if [[ $(( $REQUESTSTATEOFFTIME + $ANTIPENDELTIME )) -lt $NOWTIME ]]
                        then
                                echo "$NOWDATE: Turning off heatpump"
                                RESULT=`curl -Nks http://192.168.1.160/control?cmd=event,TurnOff`
                                while [ "$RESULT" != "Toon state changed to off" ]
                                do
                                        echo "$NOWDATE: Retry turning off heatpump"
                                        RESULT=`curl -Nks http://192.168.1.160/control?cmd=event,TurnOff`
                                done
                                STATE=$NEWSTATE
                                REQUESTSTATEOFFTIME=-1
                        else
                                echo "$NOWDATE: Anti pendel time waiting to turn off heatpump"
                        fi
                else
                        echo "$NOWDATE: Turning on heatpump"
                        RESULT=`curl -Nks http://192.168.1.160/control?cmd=event,TurnOn`
                        while [ "$RESULT" != "Toon state changed to on" ]
                        do
                                echo "$NOWDATE: Retry turning on heatpump"
                                RESULT=`curl -Nks http://192.168.1.160/control?cmd=event,TurnOn`
                        done
                        STATE=$NEWSTATE
                fi
        fi
        if [ ! "$REQUESTSTATEOFFTIME" -eq "-1" ] && [ "$NEWSTATE" -eq "1" ]
        then
                #anti pendel worked, we now need to reset it
                echo "$NOWDATE: Anti pendel did a good job! Heatpump stayed on!"
                REQUESTSTATEOFFTIME=-1
        fi
        sleep 10
done
mijn aanpassingen , maar het werkt helaas nog niet na 5 minuten draaien zet die het relay netjes uit , maar blijft die opdracht ook herhalen
Post Reply

Return to “Toon issues and support (Nederlands toegestaan)”