Astro Steuerrung

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
Cyrelian
Beiträge: 601
Registriert: 24. Sep 2015 17:55
Answers: 4

Astro Steuerrung

Beitrag von Cyrelian »

Hi,

dadurch das ich mittlerweile einiges über das Astro-Binding , bzw. über dessen Events steuere, hier mal meine "astro.items":

Code: Alles auswählen

/* -------------  ASTRO --------------------
	Astro enthält alle Items für die Astro Steuerung
 */

Group	gAstro "Astro"	<sun>	(gSystem)

// Sonnenaufgang
DateTime	Sonnenaufgang_Time		"Sonnenaufgang [%1$tH:%1$tM]"		<sunrise>		(gAstro)	{astro="planet=sun, type=rise, property=start"}

//Sonnenuntergang
DateTime	Sonnenuntergang_Time	"Sonnenuntergang [%1$tH:%1$tM]"		<sunset>		(gAstro)	{astro="planet=sun, type=set, property=end"}

//Verschiedenes
String		Mondphase				"Mondphase [MAP(Mond.map):%s]"		<moon>		(gAstro)	{astro="planet=moon, type=phase, property=name"}
String		Sternzeichen			"Sternzeichen [MAP(Tierkreiszeichen.map):%s]"	<colorwheel>	(gAstro)		{astro="planet=sun, type=zodiac, property=sign"}
String		Jahreszeit				"Jahreszeit [MAP(Jahreszeit.map):%s]"			<sun_clouds>	(gAstro)		{astro="planet=sun, type=season, property=name"}


// -------------  Azimuth and Elevation --------------------

Number   Azimuth        "Sonnen Azimut [%.2f °]"  <sun>   (gAstro) {astro="planet=sun, type=position, property=azimuth"}
Number   Elevation      "Sonnenhöhe [%.2f °]"  <sun> (gAstro) {astro="planet=sun, type=position, property=elevation"}


//	-------------  Tag und Nacht --------------------

Switch IsNight      "Nacht" <clearnight>        (gAstro)
Switch IsDay        "Tag" <clearday>            (gAstro)
Switch IsTwilight   "Dämmerung" <sun_clouds>     (gAstro)


/* -------------  VIRTUELLE SCHALTER --------------------
 	Setzt den Switch zur Zeit auf ON, gefolgt von OFF
*/


//	-------------  Sonnenaufgang --------------------

// Event genau zum Sonnenaufgang
Switch	Sonnenaufgang_Event					{astro="planet=sun, type=rise, property=start"}

// Event genau zum Sonnenaufgang
Switch	Sonnenaufgang_Event_front			{astro="planet=sun, type=rise, property=start"}

// Event 15min *nach* Sonnenaufgang
Switch	Sonnenaufgang_Event_After15			{astro="planet=sun, type=rise, property=start, offset=15"}

// Event 30min *vor* Sonnenaufgang
Switch	Sonnenaufgang_Event_before30_back	{astro="planet=sun, type=rise, property=start, offset=-30"}

// Event 30min *vor* Sonnenaufgang
Switch	Sonnenaufgang_Event_before30_front	{astro="planet=sun, type=rise, property=start, offset=-30"}



// -------------  Sonnenuntergang --------------------

// Event genau zum Sonnenuntergang
Switch	Sonnenuntergang_Event				{astro="planet=sun, type=set, property=end"}

// Event genau zum Sonnenuntergang
Switch	Sonnenuntergang_Event_back			{astro="planet=sun, type=set, property=end"}

// Event 15min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After15	{astro="planet=sun, type=set, property=end, offset=15"}

// Event 30min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After30	{astro="planet=sun, type=set, property=end, offset=30"}

// Event 60min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After60	{astro="planet=sun, type=set, property=end, offset=60"}

// Event 15min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After15_back	{astro="planet=sun, type=set, property=end, offset=15"}

// Event 15min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After15_front	{astro="planet=sun, type=set, property=end, offset=15"}

// Event 30min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After30_back	{astro="planet=sun, type=set, property=end, offset=30"}

// Event 30min *nach* Sonnenuntergang
Switch	Sonnenuntergang_Event_After30_front	{astro="planet=sun, type=set, property=end, offset=30"}


// -------------  Vollmond --------------------

Switch	Vollmond_Event						{astro="planet=moon, type=phase, property=full"}


// -------------  Abenddämmerung --------------------

// astronomische Dämmerung – bis zur maximalen Dunkelheit tiefer Nacht (Tiefenwinkel bis 18 Grad)

DateTime Astronomical_Dusk_Start        "Astronomische Abenddämmerung Start [%1$tH:%1$tM]" (gAstro) {astro="planet=sun, type=astroDusk, property=start"}
DateTime Astronomical_Dusk_End          "Astronomische Abenddämmerung Ende [%1$tH:%1$tM]"   (gAstro) {astro="planet=sun, type=astroDusk, property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Astronomical_Dusk_Duration_Str "Astronomische Abenddämmerung (Dauer) [%s]"       (gAstro) {astro="planet=sun, type=astroDusk, property=duration"}


// nautische Dämmerung – Horizont (Kimmlinie) noch erkennbar und schon einige Sterne sichtbar (Tiefenwinkel bis 12 Grad)

DateTime Nautic_Dusk_Start "Nautische Abenddämmerung Start [%1$tH:%1$tM]" 					(gAstro) {astro="planet=sun,type=nauticDusk,property=start"}
DateTime Nautic_Dusk_End   "Nautische Abenddämmerung Ende [%1$tH:%1$tM]"   					(gAstro) {astro="planet=sun,type=nauticDusk,property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Nautic_Dusk_Duration_Str "Nautische Abenddämmerung (Dauer) [%s]"        			(gAstro) {astro="planet=sun, type=nauticDusk, property=duration"}


//bürgerliche Dämmerung – Lesen im Freien möglich (Tiefenwinkel bis 6 Grad)

DateTime Civil_Dusk_Start "Bürgerliche  Abenddämmerung Start [%1$tH:%1$tM]" 				(gAstro) {astro="planet=sun,type=civilDusk,property=start"}
DateTime Civil_Dusk_End   "Bürgerliche  Abenddämmerung Ende [%1$tH:%1$tM]" 					(gAstro) {astro="planet=sun,type=civilDusk,property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Civil_Dusk_Duration_Str "Bürgerliche  Abenddämmerung (Dauer) [%s]"    				(gAstro) {astro="planet=sun, type=civilDusk, property=duration"}



// -------------  Morgendämmerung --------------------

// astronomische Dämmerung – bis zur maximalen Dunkelheit tiefer Nacht (Tiefenwinkel bis 18 Grad)

DateTime Astronomical_Dawn_Start        "Astronomische Morgendämmerung Start [%1$tH:%1$tM]" (gAstro) {astro="planet=sun, type=astroDawn, property=start"}
DateTime Astronomical_Dawn_End          "Astronomische Morgendämmerung Ende [%1$tH:%1$tM]"   (gAstro) {astro="planet=sun, type=astroDawn, property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Astronomical_Dawn_Duration_Str "Astronomische Morgendämmerung (Dauer) [%s]"       (gAstro) {astro="planet=sun, type=astroDawn, property=duration"}


// nautische Dämmerung – Horizont (Kimmlinie) noch erkennbar und schon einige Sterne sichtbar (Tiefenwinkel bis 12 Grad)

DateTime Nautic_Dawn_Start "Nautische Morgendämmerung Start [%1$tH:%1$tM]" 					(gAstro) {astro="planet=sun,type=nauticDawn,property=start"}
DateTime Nautic_Dawn_End   "Nautische Morgendämmerung Ende [%1$tH:%1$tM]"   					(gAstro) {astro="planet=sun,type=nauticDawn,property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Nautic_Dawn_Duration_Str "Nautische Morgendämmerung (Dauer) [%s]"        			(gAstro) {astro="planet=sun, type=nauticDawn, property=duration"}


//bürgerliche Dämmerung – Lesen im Freien möglich (Tiefenwinkel bis 6 Grad)

DateTime Civil_Dawn_Start "Bürgerliche Morgendämmerung Start [%1$tH:%1$tM]" 						(gAstro) {astro="planet=sun,type=civilDawn,property=start"}
DateTime Civil_Dawn_End   "Bürgerliche Morgendämmerung Ende [%1$tH:%1$tM]"   						(gAstro) {astro="planet=sun,type=civilDawn,property=end"}

// formatierte Ausgabe e.g 1:50 (1 Stunde, 50 Minuten)
String   Civil_Dawn_Duration_Str "Bürgerliche Morgendämmerung (Dauer) [%s]"        				(gAstro) {astro="planet=sun, type=civilDawn, property=duration"}
Für die Steuerung der Rollos benutze ich z.B. die "bürgerliche Dämmerung / Civil Dusk"

CYA

favorit626
Beiträge: 35
Registriert: 15. Mai 2016 22:38

Astro Steuerrung Bitte um Hilfe

Beitrag von favorit626 »

Hallo Cyrelian,
nach längerer Pause habe ich mal wieder Zeit mit Openhab zu beschäftigen.
Ich würde gerne meine Jalousie über Dein Astro Steuerung (Civil Dusk / Civil Dawn) steuern. Das Jalousie wird mit einem Homematicschalter geschaltet. Benötige ich noch andere Einträge in den Rules oder vielleicht noch woanders?

Gruß
Knut

Benutzeravatar
Cyrelian
Beiträge: 601
Registriert: 24. Sep 2015 17:55
Answers: 4

Re: Astro Steuerrung

Beitrag von Cyrelian »

Hi Knut,


ja, du musst noch die "Rule" bauen. WIe z.B. diese.

Code: Alles auswählen

rule "Licht Vorgarten an"
    when
		Item Sonnenuntergang_Event_after60 received update ON
    then
        if (Jahreszeit.state=="Autumn" || Jahreszeit.state=="Winter"){
        	EGEingangLichtVorgarten.sendCommand(ON)
        	logInfo("AstroRules:Licht Vorgarten an", "Licht Vorgarten an")
        }
end
Es gibt natürlich mehrere Wege den "Civil_Dawn_Start" abzufragen.Hier ist es eine bestimmte Zeit. Du kannst den aber auch als Schalter definieren und dann auf den Status "ON" abfragen.

Hier noch ein anderes Beispiel:

Code: Alles auswählen

rule "Tag und Nacht"
when
    Item Elevation changed or System started
then
      if (Elevation.state > 0) {
        if (IsDay.state==OFF || IsDay.state==Uninitialized || IsDay.state==Undefined) {
            logInfo("AstroRules:Tag und Nacht", "Sonnenstand > 0 Grad - Es ist Tag")
              IsTwilight.sendCommand(OFF)
              IsDay.sendCommand(ON)
              IsNight.sendCommand(OFF)        
        }
      }
	  if (Elevation.state <= 0 && Elevation.state >= -4) {
        if (IsDay.state==ON || IsDay.state==Uninitialized || IsDay.state==Undefined) {
            logInfo("AstroRules:Tag und Nacht", "Sonnenstand ist zwischen 0 und -5 Grad - Es ist Dämmerung")
        	   	IsTwilight.sendCommand(ON)
              	IsDay.sendCommand(OFF)
              	IsNight.sendCommand(OFF)
         }            
      }
      if (Elevation.state < -4) {     
        if (IsTwilight.state==ON || IsTwilight.state==Uninitialized || IsTwilight.state==Undefined) {
            logInfo("AstroRules:Tag und Nacht", "Sonnenstand < -4 Grad - Es ist Nacht")
              IsTwilight.sendCommand(OFF)
              IsDay.sendCommand(OFF)
              IsNight.sendCommand(ON)      
          }
      }
end
Hoffe das hilft Dir weiter, Ansonsten meld dich nochmal.

CU
Cyrelian

favorit626
Beiträge: 35
Registriert: 15. Mai 2016 22:38

Re: Astro Steuerrung

Beitrag von favorit626 »

Hallo Cyrelian,

danke für die Informationen. Ich hatte mir schon eine ganz einfache "Rule" gemacht, die so erstmal funktioniert.

Code: Alles auswählen

rule "Jalousie Büro morgens auf"  
when 
     Item Buergl_MorgendaemmeungStart_Event received update ON
then
    sendCommand(Shutter_GF_Buero, OFF)
end

 
rule "Jalousie Büro abends zu" 
when 
    Item Buergl_Abenddaemmerung_Event received update ON
then
    sendCommand(Shutter_GF_Buero, ON)
end
Ich denke ich muss noch viel lernen.

Gruß
Knut

Benutzeravatar
Cyrelian
Beiträge: 601
Registriert: 24. Sep 2015 17:55
Answers: 4

Re: Astro Steuerrung

Beitrag von Cyrelian »

Hi Knut,

kein Thema, haben ja alle mal angefangen :D .

CU
Cyrelian

Antworten