Hallo,
ich habe eine FritzDect 200 an meinem Boiler (120 L) im Keller gehangen. Außerdem habe ich einen Wechselrichter von Kostal. Beides ist schon in FHEM integriert.
Mein Problem bin ich ( der sich gerade erst in die Materie einarbeitet) und eine Funktion die ich gern hätte. Nach mehrmaligem Lesen der Anleitung für Anfänger, sowie des Wikis und Forums hab ich es wenigstens schon mal hinbekommen, daß der Boiler zwischen 07:30 und 11:59 Uhr angeht, wenn genügend Strom durch die Solaranlage produziert wird.
####Boiler an wenn Sonne reicht ###################################################
define BoilerSolar notify Wechselrichter {\
my $hm = sprintf("%%02d:%%02d", $hour, $min);;\
if ( $hm gt "07:30" && $hm lt "11:59") { \
if (ReadingsVal ("Wechselrichter","AC.Power.Fast",0) > 2500) { fhem("set BOILER on")} } }
ab jetzt steh ich aber auf dem Schlauch, denn ich weiß nicht, wie ich es hinbekomme, daß
1. Der Boiler (an der FritzDect) dann wieder abschaltet, wenn er weniger als 5 Watt zieht ( das Wasser sozusagen aufgeheizt ist)
2. Wenn bis 11:59 Uhr der Boiler an diesem Tag noch nicht an war, soll er trotzdem angehen - egal wie viel Watt die Solaranlage zur Verfügung stellt und dann natürlich auch wieder selbständig abschalten, wenn er weniger als 5 Watt zieht - das soll er natürlich nicht tun, wenn er an diesem Tag schon einmal an war ( oder sogar noch ist)
3. Das sollte er dann täglich tun
Eigentlich müßte das doch möglich sein, oder? Kann mir da jemand auf die Sprünge helfen, wie ich so etwas realisieren kann?
Schöne Grüße
Mario
[UPDATE]
Für die FritzDect gibt es das Reading "power" - der ausgegebene Wert ist in der Form: 0.00 W - damit sollte sich ja das mit dem kleiner 5 Watt realisieren lassen, oder?
außerdem gibt es zur FritzDect eine LogDatei mit Zeilen in folgendem Format ( dort scheint es immer einen Eintrag zu geben, wann die FritzDect eingeschaltet wurde - beim ausschalten gibt es keinen Eintrag)
2013-07-27_11:32:18 BOILER power: 2176.52 W
2013-07-27_11:35:18 BOILER power: 0.00 W
2013-07-27_16:22:13 BOILER power: 3348.32 W
da hätte man also die Information, ob der Boiler heute schon mal an war.
Wie man das da jetzt aber extrahiert und dann ein ordentliches notify schreibt hab ich noch keine Ahnung. Kommt Zeit kommt Rat - ich bleib dran.
so, hab heute mal das neue AVM Labor für die 7390 eingespielt. Da gibts jetzt für die FritzDect 200 eine neue Funktion: Abschalten bei Inaktivität
da kann ich einstellen, daß die Dect 200 ausgehen soll, wenn weniger als 5 Watt gezogen werden. Damit wäre also dieses Problem schonmal gelöst.
Wie schreib ich jetzt aber die Funktion:
wenn Boiler heut schonmal an dann nicht mehr angehen - woher bekomme ich die Information, ob der Boiler heut schon mal an war und wie kann ich diese Information dann auslesen?
Schöne Grüße
Mario
Hab jetzt eine Lösung, die hoffentlich funktioniert:
hab mir jetzt noch einen Dummy angelegt den ich auf on setze, wenn der Boiler angeht - um 23:00 Uhr setze ich den dann täglich einfach wieder auf off, ob das so die beste Methode weiß ich nicht, wie ich oben schon geschrieben hatte, fange ich ja gerade erst an - wer also bessere Ideen dazu hat, ich bin ganz Ohr
Um das Ausschalten des Boilers wenn er weniger als 5 Watt zieht, kümmert sich die FritzDect wie ich im zweiten Post geschrieben habe.
also: hier BoilerDummy erstellt und Abfrage ob die Watt der Solaranlage reichen sowie, ob der Boiler Dummy off ist, wenn das zutrifft Boiler und BoilerDummy auf on stellen
####Boiler an wenn Sonne zwischen 7:30 und 11:59 reicht und Boiler noch nicht an war ##############
define boiler_alt dummy
define BoilerSolar notify Wechselrichter {\
my $hm = sprintf("%%02d:%%02d", $hour, $min);;\
if ( $hm gt "07:30" && $hm lt "11:59") { \
if ( Value("boiler_alt") eq "off") {\
if (ReadingsVal ("Wechselrichter","AC.Power.Fast",0) > 2500) { fhem("set BOILER on;;set boiler_alt on")} } } }
attr BoilerSolar room KELLER
####ENDE Boiler an wenn Sonne reicht ##############################################
dann zwei at's, das erste prüft dann um 12:00 Uhr, ob der Boiler Dummy off ist, wenn ja, dann setzt er den Boiler und den Dummy auf on.
define BoilerOhneSolar at *12:00:00 { if ( Value("boiler_alt") eq "off") { fhem("set BOILER on;;set boiler_alt on") } }
beim zweiten at setz ich den Boiler Dummy um 23:00:00 einfach wieder auf off
define BoilerAltOffTaeglich at *23:00:00 set boiler_alt off
P.S.: wenn ich die AT's in die .cfg schreibe, verschwinden sie nach dem speichern, sind aber bei EVERYTHING zu sehen - ist das normal? warum ist das so?
Schöne Grüße
Mario