Rolläden Endlosschleife?

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

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

Rolläden Endlosschleife?

Beitrag von Cyrelian »

Hi,

hab ich mir mit der Rule ne astreine Endlosschleife gebaut?

Code: Alles auswählen

rule "Rolläden runter Test"
when
        Item Sonnenuntergang_Event received update ON 
then
 		   	if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100)
 		   		sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
    			sendCommand(EGWohnzimmerRolladenSofa, DOWN)
    				if (now.getHourOfDay >= 21 && now.getMinuteOfHour >=15){
    					sendCommand(EGWohnzimmerRolladenTuer, DOWN)
    	}
    	else{
  		createTimer (now.plusMinutes(5))[|
  			postUpdate (Sonnenuntergang_Event, ON)] 
    		}

end
CYA

Benutzeravatar
seppy
Beiträge: 738
Registriert: 24. Sep 2015 20:25
Answers: 4
Wohnort: Bonn

Re: Rolläden Endlosschleife?

Beitrag von seppy »

Hmm als erstes sehe ich mal Klammerfehler. So würde das meiner Meinung nach Sinn ergeben:

Code: Alles auswählen

rule "Rolläden runter Test"
when
        Item Sonnenuntergang_Event received update ON 
then
	if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100) {
		sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
		sendCommand(EGWohnzimmerRolladenSofa, DOWN)
	}
	
	if (now.getHourOfDay >= 21 && now.getMinuteOfHour >=15){
		sendCommand(EGWohnzimmerRolladenTuer, DOWN)
	} else {
		createTimer (now.plusMinutes(5))[|
			postUpdate (Sonnenuntergang_Event, ON)] 
	}
Homematic und HomematicIP über Raspberrymatic (RaspPi 4 4GB) mit 2x HMLAN. Steuerung und Visualisierung durch OpenHAB2 auf RaspPi in Hutschienengehäuse im Sicherungskasten. Rund 100 Aktoren/Sensoren

- Abgesichert durch APC USV
- Bewässerungssteuerung mit Hunter Magnetventilen (HM-LC-Sw4-DR)
- Beleuchtungssteuerung Innen und Aussen (HM-LC-Sw4-DR + HM-LC-SW1-FM + HMW-IO-12-SW7-DR)
- Rolladensteuerung mit Beschattungsautomatik über Temperaturdifferenzsensor (HM-LC-Bl1PBU-FM)
- Wetter und Unwetterinformationen von wunderground
- Benachrichtigung der Bewohner via Pushover
- Multimediawand und Dreambox Steuerung (HM-LC-SW1-FM)
- Heizungssteuerung mit Komfort und Energiesparfunktionen (HM-CC-RT-DN + HM-Sec-SC-2 + HMIP-eTRV-2)
- Werkstatt Kompressorsteuerung (HMW-IO-12-SW7-DR)
- Weihnachtsbeleuchtung außen
- Präsenzerkennung über Geolocation (iCloud Binding), iBeacon und WLAN (Unifi Binding)
- Philips HUE & Tasmota Devices (Tuya) Einbindung

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

Re: Rolläden Endlosschleife?

Beitrag von Cyrelian »

Hi Seppy, sauber dank Dir. Ich werde mal an meiner Formatierung arbeiten, dann ist es echt übersichtlicher.[emoji4]


Gesendet von iPad mit Tapatalk

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

Re: Rolläden Endlosschleife?

Beitrag von Cyrelian »

Hi Gemeinde,

ich bin mal wieder am "rulen" ;) .

Ich möchte gerne die Rollos abhängig von der Jahreszeit steuern.

Fall 1. (Frühjahr und Sommer)
Rollos sollen 30min. nach Sonnenuntergang zu gehen

Fall 2. (Herbst und Winter)
Rollos sollen mit dem Sonnenuntergang zu gehen.

Bisher habe ich das:

ITEMS:

Code: Alles auswählen

String		Jahreszeit				"Jahreszeit [MAP(Jahreszeit.map):%s]"			<sun_clouds>	(gAstro)		{astro="planet=sun, type=season, property=name"}
Switch	Sonnenuntergang_Event			{astro="planet=sun, type=set, property=end"}
Switch	Sonnenuntergang_Event_After30_back	{astro="planet=sun, type=set, property=end, offset=30"}
Rule:

Code: Alles auswählen

rule "Rolläden Hausrückseite runter"
when
        Item Sonnenuntergang_Event_back received update ON or Item Sonnenuntergang_Event_After30_back received update ON
then
   if (Jahreszeit.state=="Autumn" || Jahreszeit.state=="Winter"){
   		if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100) {
    	  sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
	      sendCommand(EGWohnzimmerRolladenSofa, DOWN)
   		}
   }

   if ((Jahreszeit.state=="Spring" || Jahreszeit.state=="Summer") && Sonnenuntergang_Event_After30_back.state==ON){
   		if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100) {
    	  sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
	      sendCommand(EGWohnzimmerRolladenSofa, DOWN)
   		}
   }
   
   if ((Jahreszeit.state=="Autumn" || Jahreszeit.state=="Winter") && now.getHourOfDay >= 21 && now.getMinuteOfHour >=15){
      sendCommand(EGWohnzimmerRolladenTuer, DOWN)
   } else {
      createTimer (now.plusMinutes(5))[|
         postUpdate (Sonnenuntergang_Event_back, ON)] 
   }
end
Irgendwie hab ich das Gefühl als würde das noch was fehlen. Bin mir aber nicht sicher. Leider sind diese "Rules" nicht so einfach zu testen.

CYA

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

Re: Rolläden Endlosschleife?

Beitrag von Cyrelian »

und noch ne kleine Änderung: :D

Code: Alles auswählen

rule "Rolläden Hausrückseite runter"
when
        Item Sonnenuntergang_Event_back received update ON or Item Sonnenuntergang_Event_After30_back received update ON
then
   if (Jahreszeit.state=="Autumn" || Jahreszeit.state=="Winter"){
   		   if (now.getHourOfDay >= 21 && now.getMinuteOfHour >=15){
      		sendCommand(EGWohnzimmerRolladenTuer, DOWN)
   			} else {
      		createTimer (now.plusMinutes(5))[|
         		postUpdate (Sonnenuntergang_Event_back, ON)] 
   			}
   		if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100) {
    	  sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
	      sendCommand(EGWohnzimmerRolladenSofa, DOWN)
   		}
   }

   if ((Jahreszeit.state=="Spring" || Jahreszeit.state=="Summer") && Sonnenuntergang_Event_After30_back.state==ON){
   		if (EGWohnzimmerRolladenTerrasse.state!=100 || EGWohnzimmerRolladenSofa.state!=100) {
    	  sendCommand(EGWohnzimmerRolladenTerrasse, DOWN)
	      sendCommand(EGWohnzimmerRolladenSofa, DOWN)
	      sendCommand(EGWohnzimmerRolladenTuer, DOWN)
   		}
   }

end

Antworten