IPSShadowing - eine Beschattungssteuerung

Hi Henry,

Das Problem beim mehreren aktiven Aktoren kenne ich auch. Ich habe es mit Verzögerungen gelöst. Zwischen der Ansteuerung der Aktoren liegen immer 5 Sekunden. Das heißt bei 17 gleichzeitig aktiven bzw. aktivierten Raffstores im Haus fährt der letzte Raffstore maximal 80 Sekunden (=> (17-1) x 5 Sekunden) nach dem ersten los. Wird ein Raffstore eher fertig kann u. U. die Verzögerung aus kürzer ausfallen. Das funktioniert wunderbar. Den PHP-Code such ich mal raus. Bin aktuell nicht Zuhause…

Feste Fahrten nutze ich nicht. Ich muss die Raffstores über die Temperatur und den Sonnenstand steuern. Daher ist IPS Shadowing für mich die beste Lösung.

Interessanterweise ist IPS bei manuell abgerufenen Szenen (z.B. Südost komplett beschatten) weniger präzise was die Endlage angeht als eine automatische Auslösung per Event (Sonnenstand Südost & Temperaturgrenze Schatten erreicht).

VG Christian

Hier mal meine Modifikationen um in Abhängigkeit von den aktuell aktiven Devices die Verzögerung einzustellen:

Skript IPSShadowing_Device / Funktion Refresh:

//Edit---Start---2013-07-01
//		public function Refresh() {
//----
		public function Refresh($numDevicesActive) {
			$Delay = 5 * $numDevicesActive; //Verzögerung in Sekunden (hier fix 5 Sek) multiplizier mit derAnzahl aktiver Devices
			$StepsToDo = str_replace("timeout", $Delay, $this->GetVariableValue(c_Control_StepsToDo));
			$this->SetVariableValue(c_Control_StepsToDo, $StepsToDo);
//Edit---Ende---2013-07-01
(...)

Eine kleine Ergänzung in der Funktion CalcNextSteps im gleichen Skript:


        private function CalcNextSteps() {
            $DeviceName   = IPS_GetIdent($this->deviceId);
            $DeviceConfig = get_ShadowingConfiguration();

            $Position     = $this->GetVariableValue(c_Control_Position);
            $ToBeMoved    = $this->GetVariableValue(c_Control_Movement);
            $StepsToDo    = array();

//Edit---Start---2013-07-01
            $this->AddNextStep($StepsToDo, c_MovementId_Stop,'timeout','RF-Delay', null, null);
//Edit---Ende---2013-07-01

            if ($ToBeMoved==c_MovementId_Opened or $ToBeMoved==c_MovementId_Up) {
(...)  

Gerufen wird die o. g. Funktion im Skript IPSShadowing_RefreshTimer. Dort habe ich auch Coding modifiziert. Hier der Code-Schnipsel mit ein bisschen Coding davor/danach um die relevante Passage besser lokalisieren zu können:


(...)
	if ($result) {
		$categoryIdDevices      = IPSUtil_ObjectIDByPath('Program.IPSLibrary.data.modules.IPSShadowing.Devices');
		$deviceIds              = IPS_GetChildrenIds($categoryIdDevices);
		$oneOrMoreDevicesActive = false;
//Edit---Start---2013-07-01
		$numDevicesActive = 0;
//Edit---Ende---2013-07-01

		foreach($deviceIds as $deviceId) {
			$device = new IPSShadowing_Device($deviceId);
//Edit---Start---2013-07-01
//			$deviceActive = $device->Refresh();
//----
			$deviceActive = $device->Refresh($numDevicesActive);
			$numDevicesActive = $numDevicesActive + $deviceActive;
//Edit---Ende---2013-07-01
			$oneOrMoreDevicesActive = ($oneOrMoreDevicesActive or $deviceActive);
		}

		if (!$oneOrMoreDevicesActive) {
			$refreshTimerId = IPSUtil_ObjectIDByPath('Program.IPSLibrary.app.modules.IPSShadowing.IPSShadowing_RefreshTimer.Refresh');
			IPS_SetEventActive($refreshTimerId, false);
		}
(...)

Im Endeffekt bekommt die Funktion Refresh also einen Parameter übergeben. Dieser stellt die Verzögerung pro Device als ersten (Warte-)Schritt in den anzufahren Positionen ein. Das erste Device bekommt 0 sec Verzögerung. Das zweite 5 sec, das Dritte 10 sec usw.

Simpel - aber es funktioniert. Wäre aus meiner Sicht auch etwas für die Standardauslieferung von IPSShadowing. Kann man ja wunderbar über einen Parameter steuern. Ich habe es aktuell halt einfach fix mit 5 Sekunden hinterlegt.

Werde ich wohl mal ausprobieren.

Sent from my Nexus 5 using Tapatalk

Moin,

ich bin mal wieder richtig gut im nix raffen.
Kann ich irgendwie mit der Callback realisieren, dass mein Licht an geht, sobald der Rollo runter fährt, aber nur dann wenn mein Denon an ist?!

Ich bekomms nicht geregelt. Entweder geht das Licht beim Hoch- und Runterfahren an oder gar nicht :frowning:

Hallo
Ab dem 31.device läuft bei mir die Installation nicht mehr zu Ende, und ich bekomme die folgende Fehlermeldung:

[SUB][/SUB]

Die Einträge in der config scheinen richtig zu sein - die Meldung bleibt gleich, auch wenn ich die Reihenfolge der devices vertausche, und es wird bis device #30 alles installiert. Sobald ich das 31. device aus der config entferne, läuft die Installation problemlos durch.

	 * @return string Liefert Array mit Beschattungs Elementen
	 */
	function get_ShadowingConfiguration() {
		return array(
			c_ShadowingDevice_1 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Wohnzimmer li',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,56412',
           	c_Property_TimeOpening		=> 	28,
				c_Property_TimeClosing		=> 	25,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_2 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Wohnzimmer re',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,26416',
           	c_Property_TimeOpening		=> 	28,
				c_Property_TimeClosing		=> 	25,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_3 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Wohnzimmer Fenster',
           	c_Property_Component		=> 'IPSComponentShutter_FS20reverse,16334',
           	c_Property_TimeOpening		=> 	21,
				c_Property_TimeClosing		=> 	20,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_4 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Marquees,
           	c_Property_Name				=> 'Markise li',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,57047',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_5 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Marquees,
           	c_Property_Name				=> 'Markise re',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,52576',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_6 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'kleines Zimmer',
           	c_Property_Component		=> 'IPSComponentShutter_FS20,41472',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_7 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Küche',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,54224',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_8 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
         	c_Property_Name				=> 'Kuschelzimmer',
           	c_Property_Component		=> 'IPSComponentShutter_FS20,48103',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_9 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'Kuschelzimmer Velux',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,34280 /*[Hardware\Wohnbereich\Belle Etage\Kuschelzimmer\Velux Jalousie\Movement]*/,25032',
           	c_Property_TimeOpening		=> 	40,
				c_Property_TimeClosing		=> 	35,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_10 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'kl Schlafzimmer',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,31698 /*[Hardware\Wohnbereich\Belle Etage\kleines Schlafzimmer\Velux Jalousie\Movement]*/,14298',
           	c_Property_TimeOpening		=> 	40,
				c_Property_TimeClosing		=> 	40,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_11 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Königszimmer',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,39079',
           	c_Property_TimeOpening		=> 	29,
				c_Property_TimeClosing		=> 	27,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
  			 c_ShadowingDevice_12 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Svenja',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,55207',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_13 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
  	        	c_Property_Name				=> 'großes Schlafzimmer',
  	        	c_Property_Component		=> 'IPSComponentShutter_Homematic,31053',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_14 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'Bad',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,57034 /*[Hardware\Wohnbereich\Belle Etage\großes Badezimmer\Velux Jalousie\Movement]*/,48003',
           	c_Property_TimeOpening		=> 	30,
				c_Property_TimeClosing		=> 	30,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_15 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'Empore',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,43655 /*[Hardware\Wohnbereich\Belle Etage\Empore\Velux Jalousie\Movement]*/,48191',
           	c_Property_TimeOpening		=> 	40,
				c_Property_TimeClosing		=> 	40,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_16 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Büro',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,52497',
           	c_Property_TimeOpening		=> 	24,
				c_Property_TimeClosing		=> 	22,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '53827',
				),
			c_ShadowingDevice_17 =>	array(
        		c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			  	c_Property_Name				=> 'Empirezimmer Vorhang',
        	  	c_Property_Component		=> 'IPSComponentShutter_Homematic,37080',
        	  	c_Property_TimeOpening		=> 	35,
				c_Property_TimeClosing		=> 	35,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_18 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Fräsraum',
           	c_Property_Component		=> 'IPSComponentShutter_FS20,58229',
           	c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '56604',
				),	
			c_ShadowingDevice_19 =>	array(
           	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
           	c_Property_Name				=> 'Sauna',
           	c_Property_Component		=> 'IPSComponentShutter_FS20,48082',
           	c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '52391',
				),	
			c_ShadowingDevice_20 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'FENSTER Kuschelzimmer',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,15952 /*[Hardware\Wohnbereich\Belle Etage\Kuschelzimmer\Velux Fenster\Movement]*/,31565',
           	c_Property_TimeOpening		=> 	30,
				c_Property_TimeClosing		=> 	40,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_21 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'FENSTER kl Schlafzimmer',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,24230 /*[Hardware\Wohnbereich\Belle Etage\kleines Schlafzimmer\Velux Fenster\Movement]*/,34868',
           	c_Property_TimeOpening		=> 	30,
				c_Property_TimeClosing		=> 	30,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_22 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			  	c_Property_Name				=> 'FENSTER Bad',
           	c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,51594 /*[Hardware\Wohnbereich\Belle Etage\großes Badezimmer\Velux Fenster\Movement]*/,46509',
           	c_Property_TimeOpening		=> 	35,
				c_Property_TimeClosing		=> 	35,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
			c_ShadowingDevice_23 =>	array(
         	c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
			   c_Property_Name				=> 'FENSTER Empore',
            c_Property_Component		=> 'IPSComponentShutter_HomematicRelay,26807 /*[Hardware\Wohnbereich\Belle Etage\Empore\Velux Fenster\Movement]*/,23068',
           	c_Property_TimeOpening		=> 	35,
				c_Property_TimeClosing		=> 	35,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),	
			c_ShadowingDevice_24 =>	array(
            c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
            c_Property_Name				=> 'Wartebereich',
            c_Property_Component		=> 'IPSComponentShutter_FS20,35136',
            c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '23778',
				),
			c_ShadowingDevice_25 =>	array(
            c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
            c_Property_Name				=> 'Rezeption',
           	c_Property_Component		=> 'IPSComponentShutter_Homematic,38762',
            c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '23778',
				),
			c_ShadowingDevice_26 =>	array(
            c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
            c_Property_Name				=> 'kleiner BH Erker',
            c_Property_Component		=> 'IPSComponentShutter_Homematic,13712',
            c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '39001',
				),
			c_ShadowingDevice_27 =>	array(
				c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
				c_Property_Name				=> 'kleiner BH Fenster',
				c_Property_Component		=> 'IPSComponentShutter_Homematic,25182',
				c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '39001',
				),
			c_ShadowingDevice_28 =>	array(
				c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
				c_Property_Name				=> 'großer BH li',
				c_Property_Component		=> 'IPSComponentShutter_FS20,13234',
				c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor	=> '27881',
				),
			c_ShadowingDevice_29 =>	array(
				c_Property_ShadowingType	=> c_ShadowingType_Shutter,
				c_Property_Name				=> 'großer BH re',
				c_Property_Component		=> 'IPSComponentShutter_FS20,53169',
				c_Property_TimeOpening		=> 22,
				c_Property_TimeClosing		=> 18,
				c_Property_TimePause		=> 1,
				c_Property_TempSensorIndoor	=> '27881',
				),
			c_ShadowingDevice_30 =>	array(
            c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
            c_Property_Name				=> 'Labor',
            c_Property_Component		=> 'IPSComponentShutter_Homematic,47937',
            c_Property_TimeOpening		=> 	22,
				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '37988',
				),
         c_ShadowingDevice_31 =>	array(
            c_Property_ShadowingType	=> 	c_ShadowingType_Shutter,
            c_Property_Name				=> 'Steri',
            c_Property_Component		=> 'IPSComponentShutter_Homematic,53965',
            c_Property_TimeOpening		=> 	22,
 				c_Property_TimeClosing		=> 	18,
				c_Property_TimePause		=> 	1,
				c_Property_TempSensorIndoor => '',
				),
    	   );
	}
?>

Zeile 505 ist dabei: c_ShadowingDevice_31 => array(

Habt Ihr vielleicht eine Idee, wo da der Wurm drin ist
Vorab schon mal vielen Dank
nette Grüße
Sven

Der Text ist oben nicht gut leserlich:
Notice: Use of undefined constant c_ShadowingDevice_31 - assumed ‚c_ShadowingDevice_31‘
Error in Script D:\IP-.Symcon\scripts\IPSLibrary\config\modules\IPSShadowing\IPSShadowing_Configuration.inc.php on Line 505
134 in scripts\IPSLibrary\app\core\IPSLogger\IPSLogger.inc.php

Ach ja - die Meldung schlägt alle 5 min auf

Die TempSensor-Zeile in Deinem Device 31 sieht seltsam aus:

c_Property_TempSensorIndoor => '',    

EDIT: Vergiss es … sorry, der Tag war lang und ich seh’ heute irgendwie doppelt :eek:

ja, korrekt, die Konstanten sind nur bis 30 definiert, nimm einfach einen String dann funktioniert es:


        'Device_31' =>    array(
            c_Property_ShadowingType    =>     c_ShadowingType_Shutter,
            c_Property_Name                => 'Steri',
            c_Property_Component        => 'IPSComponentShutter_Homematic,53965',
            c_Property_TimeOpening        =>     22,
                 c_Property_TimeClosing        =>     18,
                c_Property_TimePause        =>     1,
                c_Property_TempSensorIndoor => '',
                ),
           );

yepp - danke. So funktioniert es. Hätte ich nie alleine herausgefunden

nette Grüße
Sven

Hallo,
erst ein Mal Kompliment für die diese Software-Erweiterung (super Bedienung).

Ich nutze IPSShadowing in Verbindung mit vielen Rollos und möchte diese Rollos auch weiterhin parallel noch über die mechanischen Taster für hoch/runter bedienen.
Meine Rollos liefern leider keine aktuellen Positionen zurück, die ich per Code in IPSShadowing setzen könnte.

Folgende Idee habe ich:
Die Zeitsteuerung von IPSShadowing würde ich gerne von außen starten/stoppen, die ja für die Fahrtdauer und Positionsanzeige verwendet wird:
Aktuell starten die Timer für ja durch ‚Programm-Start‘ oder ‚manuellem Betätigen‘.
Ich möchte diese Timer auch starten/stoppen können über die Ausgänge, die auch den Rollomotor steuern.
D.h. auslösendes Element für die Positionsanzeigenänderung ist immer der fahrende Rollomotor, egal durch wen er angesteuert wurde.

Ist diese Variante aktuell schon umsetzbar oder habe ich noch einen Lofikfehler in meiner Idee?

Grüße
Matthias

Sollte über die manuell Ansteuerung funktionieren, siehe:

http://www.ip-symcon.de/wiki/IPSShadowing#Manuelle_Ansteuerung_eines_Beschattungselementes

Hallo Andreas,

wenn ich die manuelle Ansteuerung nutze, könnte es zu Timing-Problemen kommen, da der Ausgang dann ein 2. Mal aktiviert wird:

a) mechanischer Taster „Hoch“ wird betätigt (Eingang x an SPS)
b) über meine SPS wird der Ausgang y aktiviert (hoch fahren)
c) IP-Symcon bekommt die Zustandsänderung für Ausgang y mit
d) manuelle Ansteuerung IPSShadowing.Rollo mit „c_MovementId_Opened“
e) über IPSShadowing wird der Ausgang y erneut aktiviert (hoch fahren)
f) IPSShadowing: Timer für Rollo-Position läuft an und führt aktuelle Position mit

Ich werde es mal testen, aber ich vermute, dass es Probleme beim schnellen Schalten über den mechanischen Taster gibt, da zwischen b) und c) etwas Zeit vergeht.

Daher kam meine Idee mit den von außen steuerbaren Timern:
a) mechanischer Taster „Hoch“ wird betätigt (Eingang x an SPS)
b) über meine SPS wird der Ausgang y aktiviert (hoch fahren)
c) IP-Symcon bekommt die Zustandsänderung für Ausgang y mit
d) manuelles Starten des Timer für „Rollo hoch“
e) IPSShadowing: Timer für Rollo-Position läuft an und führt aktuelle Position mit

Unabhängig davon wäre es gut, wenn die Positions-Timer nur dann anlaufen würden, wenn der Funktionsaufruf für die Hardwaresteuerung erfolgreich war / true zurück gibt.
Ich hatte nämlich bis vor kurzem Probleme mit meiner Hardwareansteuerung, sodass sich trotz
„public function MoveUp()=false“ die Position innerhalb IPSShadowing verändert hat.

Grüße
Matthias

Ist wohl untergegangen … :rolleyes:

so ungefähr:


	function IPSShadowing_AfterActivateShutter($deviceId, $command) {
		if (    $command==c_MovementId_Down
			 and GetValue($id_of_denon)
			 and $deviceID = 12345/*ID des Devices in IPSShadowing das einen Trigger auslösen soll*/) {
			 SetValue($id_of_light, true);
			 }
	}

Vielen Dank! Werde es heute Abend direkt mal testen.

EDIT: Danke, funzt :slight_smile: Hatte die ein oder andere ähnlich Kombination, aber irgendwie nie die richtige :smiley:

Hallo zusammen,

ich habe das IPSShadowing Modul jetzt seit längerem im Einsatz und bin jetzt aktuell noch mal in den Thread „gestolpert“. Hier wird immer wieder von einem Update geredet ohne die genaue Version zu nennen. Ich habe irgendwie das Gefühl, dass mir nicht die aktuelle Version angezeigt wird. Bei mir steht immer noch die 2.50.9 Version als aktuelle Version drin:

Ist dies die aktuelle Version und wenn nein wie bekomme ich die neue Version?

VG

Thorsten

2.50.21 ist die aktuelle laut meinem Stand. Hast du mal die Repository upgedated!? Wenn ich wieder am PC bin such ich es dir raus … oder du suchst schnell selbst :stuck_out_tongue:

EDIT: http://www.ip-symcon.de/forum/threads/24638-Neue-GitHub-URL-manulle-Korrektur-erforderlich!?p=225371#post225371

Hi Crackpot,

das Script habe ich ausgeführt und nun stehen mir eine Updates zur Verfügung. Der Abend ist wohl gerettet und ich weiß was ich nun tun kann. :wink:

Vielen Dank!

Hallo Christian79,

ich habe die beiden Scripte mal angepasst, aber leider hat sich nichts verzögert, es gehen immer noch alle Rollos zur gleichen Zeit runter.

Habe ich hier noch etwas übersehen?
Fehlermeldung oder so taucht nirgens auf.

lg,
Christian.

Hallo mws,

ich habe gerade Deinen Ansatz für die Steuerung gefunden und finde diesen richtig gut. Die ersten Test verliefen auch wie erwartet, bis auf einen Punkt.

Im Fall das der Griff offen ist wird ja das Rollo hochgefahren, bei mir fährt das Rollo aber nur ca. 2-3 sec und bleibt dann stehen. Das Rollo wird per Homematic angesteuert und verhält sich sonst wie gewünscht.

Hast Du vielleicht eine Idee warum die Funktion „c_MovementId_Opened“ nicht das Rollo ganz hochfährt?

VG

Thorsten

Also ich hab im Moment eine andere Konstellation, weil das so wie ich das wollte nicht ging. Jetzt fährt der Rolladen nicht runter, wenn die Tür auf „Geöffnet“ und sofort runter wenn ich den Griff schließe.
Allerdings geht er nicht hoch wenn er zu ist und ich den Griff öffne. Dazu hatte ich vor einiger Zeit schon mal was geschrieben und das sollte in einem der nächsten Updates auch behoben werden, es geht aber immer noch nicht und ich hatte auch weder Zeit noch Muße mich damit weiter zu beschäftigen.