Frei definierter Zahlenwert im Frontend?

2,844 views
Skip to first unread message

dou...@gmx.de

unread,
Oct 13, 2012, 3:29:23 AM10/13/12
to fhem-...@googlegroups.com

...ich komme so langsam zu den non-standard Problemchen. 

Ich möchte die Heizung in meiner Halle regeln. Ich kann dazu die Temperaturen via 1Wire messen und was ich jetzt noch bräuchte wäre eine elegante Idee, wie ich zwei Soll-Temperaturen  (T-on / T-off) auf der Web-Oberfläche unter bringe, die sich dort auch editieren/setzen lassen.
Auswertug mittels Programm bekomme ich selber hin. Bislang hatte ich alles hard-coded, daher jetzt die Frage.

Jemand ne Idee?

VG
Ralf

Rudolf Koenig

unread,
Oct 13, 2012, 4:04:11 AM10/13/12
to fhem-...@googlegroups.com
> wie ich zwei Soll-Temperaturen (T-on / T-off) auf der Web-Oberfl�che unter
> bringe, die sich dort auch editieren/setzen lassen.

2-mal dummy:

fhem> define dummy2 dummy
fhem> attr dummy2 setList state:slider,10,1,30
fhem> attr dummy2 webCmd state

oder

Alternative ist dropdown:
fhem> attr dummy2 setList state:10,15,20,25,30

UliM

unread,
Oct 13, 2012, 4:05:29 AM10/13/12
to fhem-...@googlegroups.com
Moin,
dummy mit slider?

define T-Low dummy
attr T-Low webCmd state
attr T-Low SetList state:slider,12,0.5,21


define T-Hi dummy
attr T-Hi webCmd state
attr T-Hi SetList state:slider,18,0.5,24

Oder so :)
-nicht getestet-

Gruß, Uli

dou...@gmx.de

unread,
Oct 13, 2012, 4:15:16 AM10/13/12
to fhem-...@googlegroups.com

Jungs? Ihr seid grossartig! Vielen Dank, wird sofort implementiert.

VG
Ralf

dou...@gmx.de

unread,
Oct 13, 2012, 4:27:15 AM10/13/12
to fhem-...@googlegroups.com

Funktioniert prächtig in der Device Ansicht des Dummy!

define MansCave_desired_temp dummy
attr MansCave_desired_temp room MansCave
attr MansCave_desired_temp setList state:slider,5,1,22
attr MansCave_desired_temp webCmd state

Aber hat sich das auch schon mal jemand im "stylesheetPrefix dark" angesehen? Da sieht das irgendwie komisch aus und lässt mich nur Werte zwischen 50 und 517 einstellen :-))

Rudolf Koenig

unread,
Oct 13, 2012, 5:04:40 AM10/13/12
to fhem-...@googlegroups.com
> Aber hat sich das auch schon mal jemand im "stylesheetPrefix dark"
> angesehen? Da sieht das irgendwie komisch aus und l�sst mich nur Werte
> zwischen 50 und 517 einstellen :-))

fhemweb.js war buggy ("string"+zahl = "komischer string"), habs vorhin gefixed
und mit fhemupdate hochgeladen.

dou...@gmx.de

unread,
Oct 13, 2012, 5:08:46 AM10/13/12
to fhem-...@googlegroups.com

Perfekt! :-)

Danke Rudolf!

det.

unread,
Oct 13, 2012, 1:21:46 PM10/13/12
to fhem-...@googlegroups.com
Feine Lösung, vielen Dank!

Jetzt kann ich meine Büroheizung auch mal wärmer stellen, wenn meine Frau da was zu tun hat. Sollten wir mal über eine Bastel und Script Anleitung für solch eine 1-wire Heizkörperreglung (DS2406 Modul von Fuchs, SolidStateRelais, Thermischer Stellantrieb) nachdenken, oder ist das eher geeignet für Bastler die das allein hinbekommen?

lg det.

Uwe Hofmann

unread,
Oct 13, 2012, 2:17:35 PM10/13/12
to fhem-...@googlegroups.com
Ich habe neben 4 Räumen mit FHT auch in zwei Räumen solch eine Lösung im Einsatz, Eigenbau-DS2413-Modul mit 2 SolidState Relais und angeschlossenem thermischen Stellantrieb, siehe Bild. Funktioniert super. Mein einfaches Script dazu ist bestimmt noch extrem verbesserungswürdig...

sub
prg_Heizung_GZ()

{
   my $des_temp=ReadingsVal('Gaestezimmer_Temp', "state", "20");
   my $mes_temp=ReadingsVal('Temp.GZ', "temperature", "20");
  
   if ($des_temp < $mes_temp) {
     fhem("set Heizung.GZ output A ON");
     fhem("set GZ_Heizung on");
   }
    else {
     fhem("set Heizung.GZ output A OFF");
     fhem("set GZ_Heizung off");
  }
}



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

stellantrieb.jpg

dou...@gmx.de

unread,
Oct 14, 2012, 4:21:54 AM10/14/12
to fhem-...@googlegroups.com

...ich weiss zwar nicht ob es hilft, aber hier mein grob zusammen gestricktes Programm, welches ich in der 99_MyUtils periodisch alle 10min aufrufe.

VG
Ralf

##########################################################
#
# MansCave Heizungsprogramm (wird vom Haupt-Heizungsprogramm via Timer aufgerufen)
# Prüft Aussen und Hallentemperatur (oben) und öffnet Dachfenster, wenn es nicht regnet
# Schaltet Brenner bei Wärmebedarf
##########################################################
sub
prg_MansCave_Heizung()
 {
   my $mc_to = ReadingsVal("MansCave_T_Oben","temperature","0");   # Temperatur unter dem Dach
   my $mc_ta = ReadingsVal("MansCave_T_Aussen","temperature","0"); # Aussentemperatur
   my $mc_tu = ReadingsVal("MansCave_T_Unten","temperature","0");  # Temperatur am Boden
   my $mc_dt = ReadingsVal("MansCave_Desired_Temp","state","99");  # Desired Temp
#
#  Halle lüften:
#  Wenn die Aussentemperatur 2°C grösser oder gleich der Temp-Oben ist und es nicht regnet,
#  dann bitte Lichtkuppeln öffnen, wenn diese nicht schon auf sind.
#
   if ($mc_ta >= $mc_to+2 && Value("MansCave_Lichtkuppeln") ne "on" && !Value("Regensensor_reset")) {
     Log 1, "MansCave_Heizung: set MansCave_Lichtkuppeln on";
     fhem ("set MansCave_Lichtkuppeln on");
   };
#  Wenn die Aussentemperatur kleiner als die Temp-Oben ist, und die Lichtkuppeln nicht zu,
#  dann bitte Lichtkuppeln schliessen.
#
   if ($mc_ta < $mc_to && Value("MansCave_Lichtkuppeln") ne "off") {
     Log 1, "MansCave_Heizung: set MansCave_Lichtkuppeln off";
     fhem("set MansCave_Lichtkuppeln off");
   };
#
# Halle heizen
#
# Wenn Temperatur unten kleiner Desired-Temp und der Brenner nicht schon eingeschaltet -> Brenner einschalten
#
   if ($mc_tu < $mc_dt && Value("MansCave_Heizung_Brenner") ne "on") {
     Log 1, "MansCave_Heizung: set Brenner on";
     fhem("set MansCave_Heizung_Brenner on")
    };
#
# Wenn Temperatur unten grösser (Desired-Temp+1) und der Brenner nicht schon aus -> Brenner ausschalten
#
   if ($mc_tu > $mc_dt+1 && Value("MansCave_Heizung_Brenner") ne "off") {
        Log 1, "MansCave_Heizung: set Brenner off";
        fhem("set MansCave_Heizung_Brenner off")
       };
#
# Wenn Temperatur oben mehr als 3°C wärmer als unten, der Brenner an und Deckenventilatoren nicht 
# an -> Deckenventilatoren an.
#
   if ($mc_to > $mc_tu+3 && Value("MansCave_Deckenventilatoren") ne "on" && Value("MansCave_Heizung_Brenner") eq "on") {
        fhem("set MansCave_Deckenventilatoren on")
        };
#
# Wenn Temperatur oben kleiner oder gleich (Temp unten +1) und Deckenventilatoren an
# an -> Deckenventilatoren aus.
#
   if ($mc_to <= $mc_tu+1 && Value("MansCave_Deckenventilatoren") ne "off") {
        fhem("set MansCave_Deckenventilatoren off")
        };
  return
}
#
#
##########################################################
Reply all
Reply to author
Forward
0 new messages