FHT window open status setzen

Begonnen von Mitch, 05 September 2012, 20:36:43

Vorheriges Thema - Nächstes Thema

rudolfkoenig

                                                   

> Kannst Du mir evtl. noch sagen, ob man einen FHT aus fhem per set in
> windows open setzten kann?

Wenn das nicht in der set-liste der FHT auftaucht, dann weiss ich es auch
nicht.


> Wenn nicht, evtl. manuel auf 8 Grad setzten und dann zurück auf die
> Ursprungstemperatur?

Das muesste gehen, ist halt etwas aufwendiger, weil man die letzte Temperatur
merken muss (am besten in einem dummy). Oder man schaltet von Auto auf manuell,
aber hier habe ich nicht alles im Kopf, also geht das evtl. auch nicht ohne
zwischenvariable.


> fhem kann theoretisch schon mitlesen, aber wie ich geschrieben habe, geht
> das mit der FHZ1300 nicht.

Das kann ich bestaetigen, das ist ein culfw feature.


> Den TFK kann ich nicht ersetzten, weil ich dann eben nicht mehr meine Dinge
> (Mail bei Tür auf, Klingel ausschalten, Licht im Flur an etc.) schalten
> kann, weil eben der TF nicht mit der FHZ1300 direkt kommunizieren kann.

Selbst wenn Du es empfangen koenntest, die verzoegerte Meldung bei der FHT-TK
waere fuer manche Szenarien ein Problem.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Mitch

                                                     

>
> Ich hätte erwartet, dass man mit
>>
>>   set >fht> window open
>>
>> den Windowstatus setzen kann. Geht aber nicht bei meinem FHEM 5.0. Ich
>> vermute mal, mit 5.2 auch nicht.
>>
>
Gerade mit 5.2 nochmal getestet (hatte ich gestern schon probiert), geht
aber nicht


Das muesste gehen, ist halt etwas aufwendiger, weil man die letzte
> Temperatur
> merken muss (am besten in einem dummy). Oder man schaltet von Auto auf
> manuell,
> aber hier habe ich nicht alles im Kopf, also geht das evtl. auch nicht
> ohne
> zwischenvariable.
>

Das ist auch noch eine gute Idee, werde ich heute Abend mal testen, Danke.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

Mitch

                                                     

Hab jetzt mal kurz zusammen geschrieben:
define FlurUntenChecker notify Haustuer2 {\
  if ("%" eq "on") {\
   fhem ("set FHT_050a mode manuel ;; set FHT_050a desired-temp 8.0");;\
  }\
  else {\
    fhem("set FHT_050a mode auto");;\
  }\
}

Aber aus dem Bauch raus würde ich sagen, die Temperatur bleibt bis zum
nächsten Schaltvorgang des FHTs bei 8 Grad.

Man muss also wirklich die Temp erstmal irgendwie rausholen und speichern,
dann zurück schreiben.
Leider ist meine Proggrammierkenntnis da nicht ausreichend :-(

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

rudolfkoenig

                                                   

>    fhem ("set FHT_050a mode manuel ;; set FHT_050a desired-temp 8.0");;\

Das erzeugt zwei FHT-Befehlsketten, und pro FHT-Wach-Zeit wird nur eine Kette
uebertragen.  Dies hier:
  fhem ("set FHT_050a mode manual desired-temp 8.0");;\
wird auf einmal uebertragen.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Mr. P

                                                       

Hej,

ideal wäre es, einen LastState für die Soll-Temperatur einzuführen.
Aber ist eben schon wieder Entwicklungsaufwand, den jemand betreiben
muss.

Greetz,
   Gerhard

Am 6. September 2012 13:06 schrieb Mitch :
> Hab jetzt mal kurz zusammen geschrieben:
> define FlurUntenChecker notify Haustuer2 {\
>   if ("%" eq "on") {\
>    fhem ("set FHT_050a mode manuel ;; set FHT_050a desired-temp 8.0");;\
>   }\
>   else {\
>     fhem("set FHT_050a mode auto");;\
>   }\
> }
>
> Aber aus dem Bauch raus würde ich sagen, die Temperatur bleibt bis zum
> nächsten Schaltvorgang des FHTs bei 8 Grad.
>
> Man muss also wirklich die Temp erstmal irgendwie rausholen und speichern,
> dann zurück schreiben.
> Leider ist meine Proggrammierkenntnis da nicht ausreichend :-(
>
>
> --
> To unsubscribe from this group, send email to
> fhem-users+unsubscribe@googlegroups.com

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Greetz,
   Mr. P

borsti67

                                                 

> Aber aus dem Bauch raus würde ich sagen, die Temperatur bleibt bis zum
> nächsten Schaltvorgang des FHTs bei 8 Grad.

So ist es, wie ich Dir aus eigener Erfahrung versichern kann. :(

> Man muss also wirklich die Temp erstmal irgendwie rausholen und speichern,
> dann zurück schreiben.

Ich hatte gehofft, dass es einen Trick gäbe, um das zu vermeiden. :-P
Wenn der FHT seine Statusberichte abgeliefert hat, stehen ja die
Soll-Temperaturen und deren Zeitfenster in den diversen Readings. Mein
Lösungsansatz wäre gewesen, die anhand dessen zu ermitteln.
Leider geht es mir da wie Dir, das ist schon recht komplex. Anhand des
aktuellen Wochentags und der Uhrzeit müsste man ermitteln, in welchem
Zeitfenster der FHT sich gerade befindet, und dementsprechend die
"desired-temp" auf "day-temp" oder "night-temp" setzen. :-/

Gruß
Torsten

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)

Guest

Originally posted by: <email address deleted>

Hi Mich und Rudi!

In der von Mitch selbst angegebenen ELV Quelle steht zwar im Text immer
etwas von FHT80 TF aber die Bilder zeigen eindeutig einen FHT80 TFK!
Der FHT80 TFK hat halt im Gegensatz zu TF 2 Kanäle, lässt sich aber genauso
(wie in der BA) am FHT80b anmelden.

 

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Mitch

                                                     

Achso, und weil das Bild das gleiche ist, geht das dan?? sorry wenn ich
lache.

Das Bild ist so, weil der alte Fensterkontakt, der TF, das gleiche Gehäuse
wie der TFK hat.
Der neue, der TF-2, hat einfach ein neues Gehäuse.

Rudi hat es doch schon richtig erklärt, das eine ist FHT Protokoll, das
andere FS20.

Ich habe jetzt keine Lust mehr darüber zu diskutieren!

Am Donnerstag, 6. September 2012 14:23:19 UTC+2 schrieb ilmtuelp0815:
>
> Hi Mich und Rudi!
>
> In der von Mitch selbst angegebenen ELV Quelle steht zwar im Text immer
> etwas von FHT80 TF aber die Bilder zeigen eindeutig einen FHT80 TFK!
> Der FHT80 TFK hat halt im Gegensatz zu TF 2 Kanäle, lässt sich aber
> genauso (wie in der BA) am FHT80b anmelden.
>
>  
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

Mitch

                                                     

Hi Torsten,

ich hab das ganze jetzt erstmal übergangsweise so gelöst:

#define FlurUntenChecker notify Haustuer2 {\
#  if ("%" eq "on") {\
#   fhem ("set FHT_050a mode manual desired-temp 8.0");;\
#  }\
#  else {\
#    if (($mday=Mon || $mday=Wed || $mday=Fre && $hour < 19 || $hour > 7)
|| ($mday=thu || §mday=thu && $hour < 19 || $hour > 14)) {\
#      fhem("set FHT_050a mode auto desired-temp 21.5");;\
#    }\
#    else {\
#      fhem("set FHT_050a mode auto desired-temp 14.0");;\
#    }\
#  }\
#}
Allerdings weis ich nicht genau, wie man die Wochentage abfragen kann.


Am Donnerstag, 6. September 2012 13:59:31 UTC+2 schrieb Borsti67:
>
> > Aber aus dem Bauch raus würde ich sagen, die Temperatur bleibt bis zum
> > nächsten Schaltvorgang des FHTs bei 8 Grad.
>
> So ist es, wie ich Dir aus eigener Erfahrung versichern kann. :(
>
> > Man muss also wirklich die Temp erstmal irgendwie rausholen und
> speichern,
> > dann zurück schreiben.
>
> Ich hatte gehofft, dass es einen Trick gäbe, um das zu vermeiden. :-P
> Wenn der FHT seine Statusberichte abgeliefert hat, stehen ja die
> Soll-Temperaturen und deren Zeitfenster in den diversen Readings. Mein
> Lösungsansatz wäre gewesen, die anhand dessen zu ermitteln.
> Leider geht es mir da wie Dir, das ist schon recht komplex. Anhand des
> aktuellen Wochentags und der Uhrzeit müsste man ermitteln, in welchem
> Zeitfenster der FHT sich gerade befindet, und dementsprechend die
> "desired-temp" auf "day-temp" oder "night-temp" setzen. :-/
>
> Gruß
> Torsten
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

borsti67

                                                 

> #    if (($mday=Mon || $mday=Wed || $mday=Fre && $hour < 19 || $hour > 7) ||
> ($mday=thu || §mday=thu && $hour < 19 || $hour > 14)) {\

ich glaube, da würde ich noch mehr mit Klammern arbeiten, um mit den
Auswertungs-Prioritäten sicher zu sein. ;) Ausserdem ist da mind. 1
Tippfehler ("§"). Auf diese Art funktioniert das aber grundsätzlich,
ja.
Nur setzt diese Methode voraus, dass Du diese Abfrage für jeden FHT
einzeln schreiben/prüfen musst (falls Du in anderen Räumen andere
Zeiten oder Temperaturen hast) und die im FHT gespeicherten Werte mit
Deinem Ausdruck übereinstimmen. Das ist nicht sonderlich elegant.

ich formuliere mal meine Idee in "Pseudo-Code":

$jetzt=aktuelle Zeit im Format "HH:MM"
$tag=$mday in Kleinbuchstaben gewandelt
$f1=ReadingsVal("FHT_050a",$tag . "-from1","00:00")
$f2=ReadingsVal("FHT_050a",$tag . "-from2","00:00")
$t1=ReadingsVal("FHT_050a",$tag . "-to1","24:00")
$t2=ReadingsVal("FHT_050a",$tag . "-to2","24:00")

if(($jetzt ge $f1 && $jetzt le $t1) || ($jetzt ge $f2 && $jetzt ge $t2)) {
  fhem("set FHT_050a mode auto desired-temp ".
ReadingsVal("FHT_050a","day-temp","21.5"))
} else {
  fhem("set FHT_050a mode auto desired-temp ".
ReadingsVal("FHT_050a","night-temp","14.0"))
}

vielleicht kann das ja einer vervollständigen...?

Gruß
Torsten

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)

rudolfkoenig

                                                   

> || ($mday=thu || §mday=thu && $hour < 19 || $hour > 14)) {\

Das ist falsch.  Richtig ist $mday eq "thu" || ...
= ist Zuweisung
== ist Zahlenvergleich
eq ist Stringvergleich

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Mitch

                                                     

Danke, Du hast natürlich Recht Rudi.
Hab das einfach mal so runter geschrieben.


Am Donnerstag, 6. September 2012 16:12:10 UTC+2 schrieb Rudolf Koenig:
>
> > || ($mday=thu || �mday=thu && $hour < 19 || $hour > 14)) {\
>
> Das ist falsch.  Richtig ist $mday eq "thu" || ...
> = ist Zuweisung
> == ist Zahlenvergleich
> eq ist Stringvergleich
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

borsti67

                                                 

sodele, habe doch noch ein paar Stündchen Zeit gehabt...

Hier also nun eine Funktion (idealerweise in 99_MyUtils.pm packen),
die FHEM einen FHT (als Parameter zu übergeben) zurücksetzen lässt auf
die Temperatur, die gemäß Tag/Nacht-Modus eingestellt sein sollte.
Wenn man das noch eleganter machen kann, immer her damit. Falls jemand
mit WIKI-Zugriff das dort einstellen mag, bitte gern.

Die Werte 21.0 und 17.0 sind übrigens die Standard-Werte, die bei den
FHTs im Auslieferzustand gesetzt sind. Die nutze ich hier, falls die
Reports noch nicht gelaufen sind bzw. die Werte aus anderen Gründen
nicht da sind. Natürlich kann man da andere vorbelegen... Bei den
von/bis-Werten gehe ich auch sicherheitshalber davon aus, dass man es
im Zweifelsfall lieber warm hat. *grins* Aber wie gesagt, nicht
irritieren lassen, diese Zahlen greifen ja nur, wenn man vom FHT kein
Reading bekommt!


sub FHTnominal($) {
# Solltemperatur (auto) eines FHT zur aktuellen Uhrzeit ermitteln
  my($fht) = @_;
  my $jetzt = strftime("%R", localtime(time));
  my @wdays = qw(sun mon tue wed thu fri sat);
  my $tag = $wdays[strftime("%w", localtime(time))];
  my $f1 = ReadingsVal($fht,$tag . "-from1","00:00");
  my $f2 = ReadingsVal($fht,$tag . "-from2","00:00");
  my $t1 = ReadingsVal($fht,$tag . "-to1","24:00");
  my $t2 = ReadingsVal($fht,$tag . "-to2","24:00");

  if(($jetzt ge $f1 && $jetzt le $t1) || ($jetzt ge $f2 && $jetzt le $t2)) {
    fhem("set $fht mode auto desired-temp " .
ReadingsVal($fht,"day-temp","21.0"))
  } else {
    fhem("set $fht mode auto desired-temp " .
ReadingsVal($fht,"night-temp","17.0"))
  }
}

@Mitch: Du müßtest die Funktion also aufrufen mit

FHTnominal("FHT_050a");

Gruß,
Torsten

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)

Mitch

                                                     

Hi Torsten,

hab jetzt nochmal eine Frage dazu:

mit FHTnominal("FHT_050a");
rufe ich die Werte ab und wie schreibe ich sie zurück?

Am Freitag, 7. September 2012 11:07:52 UTC+2 schrieb Mitch:
>
> Hi Torsten,
>
> das sieht doch schonmal sehr gut aus, vielen Dank.
>
> Werde mir das mal am WE genauer anschauen und testen.
>
>
> Am Donnerstag, 6. September 2012 22:52:26 UTC+2 schrieb Borsti67:
>>
>> sodele, habe doch noch ein paar Stündchen Zeit gehabt...
>>
>> Hier also nun eine Funktion (idealerweise in 99_MyUtils.pm packen),
>> die FHEM einen FHT (als Parameter zu übergeben) zurücksetzen lässt auf
>> die Temperatur, die gemäß Tag/Nacht-Modus eingestellt sein sollte.
>> Wenn man das noch eleganter machen kann, immer her damit. Falls jemand
>> mit WIKI-Zugriff das dort einstellen mag, bitte gern.
>>
>> Die Werte 21.0 und 17.0 sind übrigens die Standard-Werte, die bei den
>> FHTs im Auslieferzustand gesetzt sind. Die nutze ich hier, falls die
>> Reports noch nicht gelaufen sind bzw. die Werte aus anderen Gründen
>> nicht da sind. Natürlich kann man da andere vorbelegen... Bei den
>> von/bis-Werten gehe ich auch sicherheitshalber davon aus, dass man es
>> im Zweifelsfall lieber warm hat. *grins* Aber wie gesagt, nicht
>> irritieren lassen, diese Zahlen greifen ja nur, wenn man vom FHT kein
>> Reading bekommt!
>>
>>
>> sub FHTnominal($) {
>> # Solltemperatur (auto) eines FHT zur aktuellen Uhrzeit ermitteln
>>   my($fht) = @_;
>>   my $jetzt = strftime("%R", localtime(time));
>>   my @wdays = qw(sun mon tue wed thu fri sat);
>>   my $tag = $wdays[strftime("%w", localtime(time))];
>>   my $f1 = ReadingsVal($fht,$tag . "-from1","00:00");
>>   my $f2 = ReadingsVal($fht,$tag . "-from2","00:00");
>>   my $t1 = ReadingsVal($fht,$tag . "-to1","24:00");
>>   my $t2 = ReadingsVal($fht,$tag . "-to2","24:00");
>>
>>   if(($jetzt ge $f1 && $jetzt le $t1) || ($jetzt ge $f2 && $jetzt le
>> $t2)) {
>>     fhem("set $fht mode auto desired-temp " .
>> ReadingsVal($fht,"day-temp","21.0"))
>>   } else {
>>     fhem("set $fht mode auto desired-temp " .
>> ReadingsVal($fht,"night-temp","17.0"))
>>   }
>> }
>>
>> @Mitch: Du müßtest die Funktion also aufrufen mit
>>
>> FHTnominal("FHT_050a");
>>
>> Gruß,
>> Torsten
>>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
FHEM im Proxmox Container

borsti67

                                                 

Hallo Mitch,

> mit FHTnominal("FHT_050a");
> rufe ich die Werte ab und wie schreibe ich sie zurück?

Was meinst Du mit "abrufen"?

Mit diesem Aufruf wird Dein FHT_050a auf Betriebsart "AUTO"
eingestellt und die Temperatur auf den aktuellen Sollwert.

Die Werte holt die Funktion aus den letzten Readings, Du solltest also
mindestens ein Mal die "report"-Funktion benutzt haben, damit die
überhaupt vorhanden sind...
Eingabefenster von FHEM -->  set FHT_050a report1 report2
(das dauert ziemlich lange, bis alle vom FHT gemeldet sind!)

Die Sollwerte programmierst Du entweder auf dem gleichen Weg, z.B.
"set FHT_050a night-temp 8.0" oder direkt am Gerät. Achtung: In
letzterem Fall musst Du danach auch den Report wieder abrufen, solche
Änderungen sendet der FHT m.W. nicht automatisch!

Gruß
Torsten

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)