DOIF Definition mit Zeit Temperatur und Zeitintervall

Begonnen von gNomeX, 17 Dezember 2015, 18:23:46

Vorheriges Thema - Nächstes Thema

gNomeX

Zitat von: Damian am 18 Dezember 2015, 22:01:55
Ach ja, es muss noch:

attr di_HeizLamp1 do always

damit jeden Tag um 8:00 Uhr die Sache funktioniert.

Gruß

Damian
hatte ich auch überlegt ob das noch zu gefügt werden muss


Zitat von: gNomeX am 18 Dezember 2015, 19:38:23
was mir aber auch aufgefallen ist in meinen Codes

define di_HzgTerrarium_Mitte DOIF ([07:00-17:00]) (set HeizungTerrarium_Mitte desired 35) DOELSE (set HeizungTerrarium_Mitte desired 30)

läßt das Licht weiter brennen auch nach 17 Uhr. Da in der Nacht eine Temperatur von 22 Grad sind

Ich habe das auf

define di_HzgTerrarium_Mitte DOIF ([07:00-17:00]) (set HeizungTerrarium_Mitte desired 35) DOELSE (set HeizungTerrarium_Mitte desired 20)

Geändert

Aber was ich noch nicht so verstehe

was passiert wenn ich die Temperatur 35 Grad erreicht habe... Dann geht die Lampe ja wieder aus..

...bis sie unter 20 Grad gefallen ist?
Wenn ich das noch gelöst bekomme das die lampe um 17 Uhr aus geht egal welche Temperatur ist bin ich fast fertig.

Damian

Zitat von: gNomeX am 18 Dezember 2015, 22:11:08
hatte ich auch überlegt ob das noch zu gefügt werden muss

Wenn ich das noch gelöst bekomme das die lampe um 17 Uhr aus geht egal welche Temperatur ist bin ich fast fertig.

Wo ist das Problem? Die THRESHOLDS arbeiten autark und halten die definierte Temperatur durch Ein- und Ausschalten (Hysterese 1 Grad ist default).

Bei 20 Grad geht die Lampe aus und wird wieder eingeschaltet, wenn die voreingestellte Temperatur höher ist als die tatsächlich und das wird wohl erst wieder um 07:00 Uhr der Fall sein.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

gNomeX

Das Problem ist wenn die Lampe 14 Uhr abschaltet bekomme ich die Temperatur nicht unter 20 Grad innerhalb der normalen Schaltzeiten also bis 17 Uhr

Wenn ich den Trashold auf 26 schalte würde die Lampe nach 17 Uhr wieder an gehen  da eine Temperatur von unter 26 erreicht wird.


Ist es möglich ein 2ten doif Befehl zu nutzen der den status abfragt und die Lampe
Nach 17 Uhr abschalten wenn der Status on gegeben ist?

Damian

Zitat von: gNomeX am 19 Dezember 2015, 08:34:47
Das Problem ist wenn die Lampe 14 Uhr abschaltet bekomme ich die Temperatur nicht unter 20 Grad innerhalb der normalen Schaltzeiten also bis 17 Uhr

Warum soll die Lampe um 14:00 Uhr dauerhaft ausgeschaltet sein.

Noch mal: Zwischen 07:00 und 17:00 Uhr hast du die Soll-Temperatur auf 35 Grad eingestellt, damit pendelt die Temperatur durch ständiges Ein- und Ausschalten zwischen 34 und 35 Grad (das macht doch das THRESHOLD-Modul). Beim THRESHOLD-Modul handelt es sich um einen Zweipunktregler (die Funktion eines solchen lässt sich im Internet nachschlagen)

Um 17:00 Uhr wird Solltemperatur auf 20 Grad eingestellt. Da bei dir im Zimmer aber die Temperatur nicht unter 20 Grad fällt, wird das THRESHOLD niemals die Lampe einschalten, weil die Solltemperatur (20 Grad) in deinem Zimmer nicht unterschritten wird.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

gNomeX

Also war das alles so richtig wie ich das hatte?
define di_HzgTerrarium_Mitte DOIF ([07:00-17:00]) (set HeizungTerrarium_Mitte desired 35) DOELSE (set HeizungTerrarium_Mitte desired 20)



Damian

Zitat von: gNomeX am 19 Dezember 2015, 09:50:02
Also war das alles so richtig wie ich das hatte?
define di_HzgTerrarium_Mitte DOIF ([07:00-17:00]) (set HeizungTerrarium_Mitte desired 35) DOELSE (set HeizungTerrarium_Mitte desired 20)

ja. und wenn du zwischendurch die Lampe ausschalten möchtest, dann solltest du das nur über das Setzen der Solltemperatur erledigen, ansonsten wird das THRESHOLD-Modul sie bald wieder einschalten ;)

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

gNomeX

Danke dir.. und Auch Otto für die Geduld und Hilfe.

Dann kann das Thema als erledigt geschlossen werden.

Ich werde später noch mal als Edit die Code zeilen posten für Anfänger wie ich einer bin.

gNomeX

Hier der Vorerst endgültige Code
Mit Beschreibung
#----------------------Platzhalter für kommende Wärmelampe
#define HeizungTerrarium_Links THRESHOLD Temp_Links:temperature WLamp_Links
#attr HeizungTerrarium_Links number_format %.1f
#attr HeizungTerrarium_Links state_cmd1_gt off
#attr HeizungTerrarium_Links state_cmd2_lt on
#attr HeizungTerrarium_Links state_format _m _dv _sc
##Derzeit nicht in Betrieb
#define di_HzgTerrarium_Links DOIF ([07:05-17:25]) (set HeizungTerrarium_Links desired 26) DOELSE (set HeizungTerrarium_Links desired 20)
##di_HzgTerrarium_Mitte Schaltet WLamp_Rechts von 07:05-17:25 eine Soll Max Temperatur von 26 Grad und eine Min Temperatur von 25 Grad UND Nach 17:25 Eine Max Temperatur von 20 Somit bleiben die WLamp_Mitte aus (bei einer Terrarium Temp über 20 Grad)

#----------------------
define di_HauptLamp DOIF ([07:20-17:15]) (set HauptLamp on) DOELSE (set HauptLamp off)
attr di_HauptLamp do always
##Schaltet die Grundbeleuchtung von 7:20 bis 17:15

#----------------------
define HeizungTerrarium_Mitte THRESHOLD Temp_Mitte:temperature WLamp_Mitte
attr HeizungTerrarium_Mitte number_format %.1f
attr HeizungTerrarium_Mitte state_cmd1_gt off
attr HeizungTerrarium_Mitte state_cmd2_lt on
attr HeizungTerrarium_Mitte state_format _m _dv _sc
##Defeniert HeizungTerrarium_Mitte THRESHOLD

define di_HzgTerrarium_Mitte DOIF ([07:05-17:25]) (set HeizungTerrarium_Mitte desired 35) DOELSE (set HeizungTerrarium_Mitte desired 20)
##di_HzgTerrarium_Mitte Schaltet WLamp_Rechts von 07:05-17:25 eine Soll Max Temperatur von 39 Grad und eine Min Temperatur von 25 Grad UND Nach 17:25 Eine Max Temperatur von 20 Somit bleiben die WLamp_Mitte aus (bei einer Terrarium Temp über 20 Grad)

#----------------------
define HeizungTerrarium_Rechts THRESHOLD Temp_Rechts:temperature WLamp_Rechts
attr HeizungTerrarium_Rechts number_format %.1f
attr HeizungTerrarium_Rechts state_cmd1_gt off
attr HeizungTerrarium_Rechts state_cmd2_lt on
attr HeizungTerrarium_Rechts state_format _m _dv _sc
##Defeniert HeizungTerrarium_Rechts THRESHOLD

define di_HzgTerrarium_Rechts DOIF ([07:10-17:20]) (set HeizungTerrarium_Rechts desired 39) DOELSE (set HeizungTerrarium_Rechts desired 20)
#di_HzgTerrarium_Rechts Schaltet WLamp_Rechts von 07:10-17:20 eine Soll Max Temperatur von 39 Grad und eine Min Temperatur von 25 Grad UND Nach 17:20 Eine Max Temperatur von 20 Somit bleiben die WLamp_Rechts aus (bei einer Terarium Temp über 20 Grad)

#----------------------UV Wärmelampe(Sonnenplatz)
define di_HeizLamp1 DOIF ([8:00] or [12:00] or [16:00])(set HeizLamp1 on-for-timer 2700)
attr di_HeizLamp1 do always
#Heizlamp1 = UV Wärmelampe(Sonnenplatz)
#Schaltet NUR 8, 12 und 16 Uhr für jeweils 45 Minuten = 2700 Sekunden

#----------------------
define di_UVLamp1 DOIF ([07:00-17:30]) (set UVLamp1 on) DOELSE (set UVLamp1 off)
attr di_UVLamp1 do always
##UV Lampe Schaltet Nur von 7:00-17:30 Uhr

##Beleuchtung Schaltet wie im Code zu sehen nacheinander um einen Sonnenaufgang/Untergang zu Simulieren
##Aufgang: UVLamp1 (7:00) -> WLamp_Mitte (7:05) -> WLamp_Rechts (7:10) -> HauptLamp (7:20) -> HeizLamp1(8,12,16 Uhr)
##Untergang: HeizLamp1( 16:45 Uhr) -> HauptLamp (17:15)-> WLamp_Rechts (17:20) -> WLamp_Mitte (17:25) -> UVLamp1 (17:30)

Otto123

Ich hoffe die Agame freut sich über die technische Lösung.  ;)

Schöne Feiertage

Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

gNomeX

Der ist total Happy  ;D und Frauchen und Sohnemann auch.

Danke vielmals das ihr mir den einstieg in die Welt von Fhem so erleichtert habt.

Dir auch Frohe Feiertage.