Benutzung des Befehls "Monat"
Moderator: Co-Administratoren
-
- Beiträge: 91
- Registriert: 30.09.2010, 13:34
- Wohnort: Mal Bremen...mal Büsum
Benutzung des Befehls "Monat"
Liebe HomeMatiker!
Ich sehe mal wieder den Wald vor lauter Bäumen nicht.
Mein Problem: Ich möchte meine Rollläden nach Monaten steuern. Also im Winter früher runter-im Sommer später runter.
Hierzu habe ich folgendes geschrieben:
// Von Oktober bis März soll der "Winterfahrplan" gelten.
wenn Monat groesser 9 und Monat kleiner 5 und Uhrzeit= "07:30:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw......
// Küche und Kleiderzimmer sollen um 19 Uhr runterfahren...alle anderen erst um 22 Uhr.
wenn Uhrzeit >= "19:00:00" dann
Roll_kueche_66 :="unten"
Warte("00:00:05")
Roll_KlZi :="unten"
endewenn
// 2 Stunden nach Sonnenuntergang soll spätestens runtergefahren werden
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw..........
endewenn
endewenn
//Sommerfahrplan
wenn Monat groesser 4 und Monat kleiner 10 und Uhrzeit >= Sonnenaufgang und Uhrzeit >= "06:00:00" und Uhrzeit < "08:00:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw.......
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw........
endewenn
endewenn
usw... kennzeichnet nur weitere Rollläden die mit fahren sollen.
Also: Es tut sich nichts!
Hat jemand eine Idee hierzu?
Habe schon vieles ausprobiert. Homeputer sagt auch keine Syntaxfehler.
das Makro wird in der Init aufgerufen.
Ich könnte mir noch vorstellen, dass das Makro in der Zeittabelle in irgend einer Weise noch aufgerufen werden muss.
Für jede Hilfe bin ich dankbar!
Viele Grüße aus Bremen
Reiner
Ich sehe mal wieder den Wald vor lauter Bäumen nicht.
Mein Problem: Ich möchte meine Rollläden nach Monaten steuern. Also im Winter früher runter-im Sommer später runter.
Hierzu habe ich folgendes geschrieben:
// Von Oktober bis März soll der "Winterfahrplan" gelten.
wenn Monat groesser 9 und Monat kleiner 5 und Uhrzeit= "07:30:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw......
// Küche und Kleiderzimmer sollen um 19 Uhr runterfahren...alle anderen erst um 22 Uhr.
wenn Uhrzeit >= "19:00:00" dann
Roll_kueche_66 :="unten"
Warte("00:00:05")
Roll_KlZi :="unten"
endewenn
// 2 Stunden nach Sonnenuntergang soll spätestens runtergefahren werden
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw..........
endewenn
endewenn
//Sommerfahrplan
wenn Monat groesser 4 und Monat kleiner 10 und Uhrzeit >= Sonnenaufgang und Uhrzeit >= "06:00:00" und Uhrzeit < "08:00:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw.......
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw........
endewenn
endewenn
usw... kennzeichnet nur weitere Rollläden die mit fahren sollen.
Also: Es tut sich nichts!
Hat jemand eine Idee hierzu?
Habe schon vieles ausprobiert. Homeputer sagt auch keine Syntaxfehler.
das Makro wird in der Init aufgerufen.
Ich könnte mir noch vorstellen, dass das Makro in der Zeittabelle in irgend einer Weise noch aufgerufen werden muss.
Für jede Hilfe bin ich dankbar!
Viele Grüße aus Bremen
Reiner
Gruß
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
-
- Beiträge: 91
- Registriert: 30.09.2010, 13:34
- Wohnort: Mal Bremen...mal Büsum
Benutzung des Befehls "Monat"
Liebe HomeMatiker!
Ich sehe mal wieder den Wald vor lauter Bäumen nicht.
Mein Problem: Ich möchte meine Rollläden nach Monaten steuern. Also im Winter früher runter-im Sommer später runter.
Hierzu habe ich folgendes geschrieben:
usw... kennzeichnet nur weitere Rollläden die mit fahren sollen.
Also: Es tut sich nichts!
Hat jemand eine Idee hierzu?
Habe schon vieles ausprobiert. Homeputer sagt auch keine Syntaxfehler.
das Makro wird in der Init aufgerufen.
Ich könnte mir noch vorstellen, dass das Makro in der Zeittabelle in irgend einer Weise noch aufgerufen werden muss.
Für jede Hilfe bin ich dankbar!
Viele Grüße aus Bremen
Reiner
Ich sehe mal wieder den Wald vor lauter Bäumen nicht.
Mein Problem: Ich möchte meine Rollläden nach Monaten steuern. Also im Winter früher runter-im Sommer später runter.
Hierzu habe ich folgendes geschrieben:
Code: Alles auswählen
// Von Oktober bis März soll der "Winterfahrplan" gelten.
wenn Monat groesser 9 und Monat kleiner 5 und Uhrzeit= "07:30:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw......
// Küche und Kleiderzimmer sollen um 19 Uhr runterfahren...alle anderen erst um 22 Uhr.
wenn Uhrzeit >= "19:00:00" dann
Roll_kueche_66 :="unten"
Warte("00:00:05")
Roll_KlZi :="unten"
endewenn
// 2 Stunden nach Sonnenuntergang soll spätestens runtergefahren werden
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw..........
endewenn
endewenn
//Sommerfahrplan
wenn Monat groesser 4 und Monat kleiner 10 und Uhrzeit >= Sonnenaufgang und Uhrzeit >= "06:00:00" und Uhrzeit < "08:00:00" dann
Roll_AB_65 :="oben"
Warte("00:00:05")
usw.......
wenn Uhrzeit = Sonnenuntergang dann
warte("02:00:00")
endewenn
wenn Uhrzeit >Sonnenuntergang und Uhrzeit <"22:00:00" dann
// Wartedauer ist eine Variable vom Typ Uhr
// spätestens um 22:00 gehen die Rollläden runter
Wartedauer := "22:00:00"
Wartedauer := Wartedauer - Uhrzeit
warte(Wartedauer)
endewenn
wenn Uhrzeit > Sonnenuntergang dann
Roll_AB_65 :="unten"
Warte("00:00:05")
usw........
endewenn
endewenn
Also: Es tut sich nichts!
Hat jemand eine Idee hierzu?
Habe schon vieles ausprobiert. Homeputer sagt auch keine Syntaxfehler.
das Makro wird in der Init aufgerufen.
Ich könnte mir noch vorstellen, dass das Makro in der Zeittabelle in irgend einer Weise noch aufgerufen werden muss.
Für jede Hilfe bin ich dankbar!
Viele Grüße aus Bremen
Reiner
Gruß
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
-
- Beiträge: 7151
- Registriert: 31.12.2006, 15:18
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Rhein-Main
- Danksagung erhalten: 35 Mal
Re: Benutzung des Befehls "Monat"
Hi,
1. Code bitte in Codetags posten
2. Du solltest Dich noch mal mit der grundsätzlichen Funktionsweise von Homeputer vertraut machen.
Wenn Du das in das Init-Makro schreibst, dann müsste HPCL (die Exec-Engine) genau im richtigen Moment gerade gestartet werden, damit etwas passiert.
Schau dir das http://homematic-forum.de/forum/viewtop ... 74#p311593 mal an, versuche es zu verstehen und auf Deine Zwecke umzumünzen.
Der Familienvater
1. Code bitte in Codetags posten
2. Du solltest Dich noch mal mit der grundsätzlichen Funktionsweise von Homeputer vertraut machen.
Wenn Du das in das Init-Makro schreibst, dann müsste HPCL (die Exec-Engine) genau im richtigen Moment gerade gestartet werden, damit etwas passiert.
Schau dir das http://homematic-forum.de/forum/viewtop ... 74#p311593 mal an, versuche es zu verstehen und auf Deine Zwecke umzumünzen.
Der Familienvater
Re: Benutzung des Befehls "Monat"
Sollte da nicht ein "oder" stehen?nordseeluft hat geschrieben:wenn Monat groesser 9 und Monat kleiner 5
-
- Beiträge: 91
- Registriert: 30.09.2010, 13:34
- Wohnort: Mal Bremen...mal Büsum
Re: Benutzung des Befehls "Monat"
Hallo!Manul hat geschrieben:Sollte da nicht ein "oder" stehen?nordseeluft hat geschrieben:wenn Monat groesser 9 und Monat kleiner 5
Nein, denn es soll ja dazwischen liegen. Also von Oktober bis April.
Oder sehe ich schon das falsch?
Gruß
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
Re: Benutzung des Befehls "Monat"
Ich fürchte, ja: Welche Zahl ist denn gleichzeitig größer als 9 und kleiner als 5? Sind ja nicht so viele Monate, die Du selektieren willst, die kannst Du ja mal einzeln im Kopf durchgehen.nordseeluft hat geschrieben:Oder sehe ich schon das falsch?
-
- Beiträge: 12945
- Registriert: 16.01.2009, 18:48
- Wohnort: Steingaden
- Hat sich bedankt: 1627 Mal
- Danksagung erhalten: 222 Mal
Re: Benutzung des Befehls "Monat"
so ?
Monat = 10 .....
( 10 > 9) und (10 < 4 )
Monat = 10 .....
( 10 > 9) und (10 < 4 )
-------
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso !!!
wer schreibfehler findet darf sie behalten.
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso !!!
wer schreibfehler findet darf sie behalten.
-
- Beiträge: 7151
- Registriert: 31.12.2006, 15:18
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Rhein-Main
- Danksagung erhalten: 35 Mal
Re: Benutzung des Befehls "Monat"
Hi,
es gibt in HPCL auch einen "Zwischen" Operator, das liest sich evtl. besser.
Ansonsten ist es richtig, das es keine Zahl gibt die größer als 9 und kleiner als 5 ist.
Entweder ist der Monat kleiner als 5 oder größer als 9, dann wäre das die "dunkle" Jahreszeit, oder der Monat ist größer als 4 und kleiner als 10, dann wäre das die freundlichere Jahreszeit.
Oder eben ein
Zur Not oder auf jeden Fall in der HPCL Hilfe unter "Bedingungen für Zeiträume" nachlesen, da ist genau das Beispiel auch mit dem Monat...
Der Familienvater
es gibt in HPCL auch einen "Zwischen" Operator, das liest sich evtl. besser.
Ansonsten ist es richtig, das es keine Zahl gibt die größer als 9 und kleiner als 5 ist.
Entweder ist der Monat kleiner als 5 oder größer als 9, dann wäre das die "dunkle" Jahreszeit, oder der Monat ist größer als 4 und kleiner als 10, dann wäre das die freundlichere Jahreszeit.
Oder eben ein
Code: Alles auswählen
Wenn Monat zwischen 5 und 9 dann
Der Familienvater
-
- Beiträge: 91
- Registriert: 30.09.2010, 13:34
- Wohnort: Mal Bremen...mal Büsum
Re: Benutzung des Befehls "Monat"
Hallo!
Vielen Dank für die Tipps. Die in den Bedingungen der Hilfe aufgezeigten "zwischen" - "groesser" und "kleiner" habe ich im Vorfeld schon ausprobiert.
Ich nehme erste einmal wieder eine Vorversion die ich programmierte hatte - und die funktionierte.
Wollte das Ganze nur ein wenig verfeinern. Ich arbeite jetzt mal mit einer Variablen.
Vielen dank nochmal!
Eine Frage noch: Hat PeterM sein Rollladenprog. mal gepostet? Wenn das wie sein Heizungsprog. ist dann würde ich mich freuen!
Bis dann....
Vielen Dank für die Tipps. Die in den Bedingungen der Hilfe aufgezeigten "zwischen" - "groesser" und "kleiner" habe ich im Vorfeld schon ausprobiert.
Ich nehme erste einmal wieder eine Vorversion die ich programmierte hatte - und die funktionierte.
Wollte das Ganze nur ein wenig verfeinern. Ich arbeite jetzt mal mit einer Variablen.
Vielen dank nochmal!
Eine Frage noch: Hat PeterM sein Rollladenprog. mal gepostet? Wenn das wie sein Heizungsprog. ist dann würde ich mich freuen!
Bis dann....
Gruß
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
Reiner
-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu
-
- Beiträge: 1276
- Registriert: 27.07.2010, 11:38
- Danksagung erhalten: 1 Mal
Re: Benutzung des Befehls "Monat"
Hallo,
so aus der gestückelten Aufführung der Codeteile werde ich nicht schlau.
Aber wie werden die zugehörigen Makros denn aufgerufen? Zyklisch?
Ein Makro, dass auf ein Warte-Statement läuft wird hier angehalten und alles andere kommt dran. Wenn die Zeit abgelaufen ist, wird genau hinter der Warte-Anweisung weitergearbeitet. Jedes Makro kann aber genau nur einmal zur Zeit ausgeführt werden. Auch wenn es wartet, wird es ja prinzipiell ausgeführt. Wenn also das Makro in Warte-Stellung ist und dann aber erneut aufgerufen wird, wird das wartende Makro abgebrochen und neu gestartet.
Vielleicht liegt hier dein Problem?
Gruß EnergyStar
so aus der gestückelten Aufführung der Codeteile werde ich nicht schlau.
Aber wie werden die zugehörigen Makros denn aufgerufen? Zyklisch?
Ein Makro, dass auf ein Warte-Statement läuft wird hier angehalten und alles andere kommt dran. Wenn die Zeit abgelaufen ist, wird genau hinter der Warte-Anweisung weitergearbeitet. Jedes Makro kann aber genau nur einmal zur Zeit ausgeführt werden. Auch wenn es wartet, wird es ja prinzipiell ausgeführt. Wenn also das Makro in Warte-Stellung ist und dann aber erneut aufgerufen wird, wird das wartende Makro abgebrochen und neu gestartet.
Vielleicht liegt hier dein Problem?
Gruß EnergyStar
--------------------------------------------
CCU1 mit 1.514, CUxD 0.59b, Historian V0.7.6hf1
161 Kanäle in 35 Geräten
in schrittweiser Migration auf die
CCU2 mit 2.15.5, CUxD 0.68, Historian V0.7.6hf1
254 Kanäle in 88 Geräten
gesamte Funktionalität über die
CL-Box mit homeputer CLX Ver. 4.0 Rel. 150625
Ansichten: 17, Objekte: 882, Zeilen: 19863, Variablen: 1966
CCU1 mit 1.514, CUxD 0.59b, Historian V0.7.6hf1
161 Kanäle in 35 Geräten
in schrittweiser Migration auf die
CCU2 mit 2.15.5, CUxD 0.68, Historian V0.7.6hf1
254 Kanäle in 88 Geräten
gesamte Funktionalität über die
CL-Box mit homeputer CLX Ver. 4.0 Rel. 150625
Ansichten: 17, Objekte: 882, Zeilen: 19863, Variablen: 1966