Benutzung des Befehls "Monat"

Programmierung der HomeMatic CCU mittels contronics homeputer CL

Moderator: Co-Administratoren

nordseeluft
Beiträge: 91
Registriert: 30.09.2010, 13:34
Wohnort: Mal Bremen...mal Büsum

Benutzung des Befehls "Monat"

Beitrag von nordseeluft » 01.11.2016, 08:28

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
Gruß
Reiner


-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu :-)

nordseeluft
Beiträge: 91
Registriert: 30.09.2010, 13:34
Wohnort: Mal Bremen...mal Büsum

Benutzung des Befehls "Monat"

Beitrag von nordseeluft » 01.11.2016, 08:29

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:

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
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 :-)

Familienvater
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"

Beitrag von Familienvater » 01.11.2016, 08:51

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

Manul
Beiträge: 39
Registriert: 22.10.2016, 10:29

Re: Benutzung des Befehls "Monat"

Beitrag von Manul » 01.11.2016, 13:14

nordseeluft hat geschrieben:wenn Monat groesser 9 und Monat kleiner 5
Sollte da nicht ein "oder" stehen?

nordseeluft
Beiträge: 91
Registriert: 30.09.2010, 13:34
Wohnort: Mal Bremen...mal Büsum

Re: Benutzung des Befehls "Monat"

Beitrag von nordseeluft » 01.11.2016, 15:14

Manul hat geschrieben:
nordseeluft hat geschrieben:wenn Monat groesser 9 und Monat kleiner 5
Sollte da nicht ein "oder" stehen?
Hallo!
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 :-)

Manul
Beiträge: 39
Registriert: 22.10.2016, 10:29

Re: Benutzung des Befehls "Monat"

Beitrag von Manul » 01.11.2016, 15:44

nordseeluft hat geschrieben:Oder sehe ich schon das falsch?
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.

dondaik
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"

Beitrag von dondaik » 01.11.2016, 15:45

so ? :-)
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 :mrgreen: !!!
wer schreibfehler findet darf sie behalten.

Familienvater
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"

Beitrag von Familienvater » 01.11.2016, 20:29

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

Code: Alles auswählen


Wenn Monat zwischen 5 und 9 dann 
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

nordseeluft
Beiträge: 91
Registriert: 30.09.2010, 13:34
Wohnort: Mal Bremen...mal Büsum

Re: Benutzung des Befehls "Monat"

Beitrag von nordseeluft » 03.11.2016, 09:44

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....
Gruß
Reiner


-------------------------------------------------------------------------------------
Mit vielen Dinge der HomeMatik und den vielen Fragen dazu :-)

EnergyStar
Beiträge: 1276
Registriert: 27.07.2010, 11:38
Danksagung erhalten: 1 Mal

Re: Benutzung des Befehls "Monat"

Beitrag von EnergyStar » 03.11.2016, 10:48

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
--------------------------------------------
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

Antworten

Zurück zu „homeputer CL“