IPSShadowing - eine Beschattungssteuerung

Hast du ein Sonnenstandprofil welches dann nicht mehr aktiv ist ?

@onkeldirk

In IPSShadowing_Device.class.php gibt es am Ende ein Logging des aktuellen Profilinfos bzw. Programminfos:


...
			echo "$deviceName -> $programInfo, $profileInfo 
";
...

Bau Dir dort ein Logging in ene Datei (zB IPSLogger), dann kannst Du nachvollziehen, wieso welches Programm über den Tag gewählt wurde. Eventuell hat ja auch einfach eine manuelle Bedienung stattgefunden …

@proxima

Werde ich mir bei Gelegenheit mal ansehen…

Hallo,

Den Sonnenstand habe ich noch auf Standart stehen.

Damit ich das Richtig einstellen kann, muss ich das erstmal verstehen. Ich habe hier noch nicht wirklich etwas gefunden was wofür steht. Kannst du es mir mal erklaren wo ich die werte herbekomme?

gruß Dirk

Hallo
Kann dir nicht sagen was „Standart“ ist .
Bei mir funktioniert das so.
Hab mehrere Sonnenstandprofile. Hier als Beispiel Osten (bei mir).
Von Azimuth 65Grad bis Azimuth155Grad scheint die Sonne von Osten auf mein Haus.
Damit wird dieses Profil aktiv.
Temperaturprofil und Sonnenstand sind „UND“-verknuepft.
Wenn also dein Temperaturprofil sagt lass noch unten ,aber die Sonne ist zB im Westen , faehrt
der Rolladen wieder hoch.
Beispiel:

Hallo
Irgendetwas hat sich geaendert bei neuerer IPS-Version.
Hab das gleiche Problem bei anderen Modulen auch.
Bei der Installation funktioniert folgendes nicht mehr.

		DeleteWFCItems($WFC_ConfigId, $WFC_TabPaneItem);

Folgendes funktioniert aber

		DeleteWFCItems($WFC_ConfigId, $WFC_TabPaneItem);
    IPS_ApplyChanges($WFC_ConfigId);

Also neuerdings muss ein IPS_ApplyChanges folgen.
Vielleicht kann man das direkt in der Library aendern , dann braucht man
nicht alle Installationsscripte aendern.

Hab das IPS_ApplyChanges mal in die Funktion DeleteWFCItem hinzugefügt.
Das Profile für Step hab ich auch erweitert …

Danke.
Getestet, sieht gut aus.

Hallo,

wo ist der o.g. Parameter zu finden ???

Gruß Proxima

Noch nicht vorhanden. Einfach
in IPSShadowing_Configuration.inc.php schreiben.

	define ("IPSSHADOWING_PROGRAM_DELAY ",				30);

Hallo,

ahh, OK. Ich dachte, der Parameter wurde vielleicht beim letzten Update direkt mit angelegt.

Vielen Dank.

Gruß Proxima

Hallo Andreas,

habe heute über die GUI alle Updates installiert die da waren. Kam mir fast vor wie beim MS-Patchday :D.

Bis auf Shadowing hat auch alles wunderbar funktioniert.

Beim Installationsschritt wird mir die komplette Visualisierung gelöscht was ja auch noch in Ordnung sein kann, aber leider nicht mehr angelegt.

Im IPSLogger ist nur ein Eintrag zu sehen. (Anhang1)

Im Objektbaum wird mir nur „IPSShadowing“ angelegt. Mehr nicht. (Anhang2)

Meine Installationskonfig habe ich Dir beigelegt. (Anhang3)

Hoffe Du hast eine Idee für mich.

So wie es aussieht läuft alles, nur die Visu ist wech.

Anhang2.png

Hallo Andreas,

abhaken.

Ein IPS-Update bzw. dessen Neustart durch das Update hat das Problem behoben.

Eine anschließende Installation brachte die Visu wieder zu Tage.

OK, gut, hab mir die Stelle im Code mal kurz angesehen, Fehler tritt auf wenn die WFC Konfigurator Instanz keine Items zurückliefert :


		$ItemList = WFC_GetItems(57215);
		foreach (false as $Item) {
....

Bin mir leider nicht sicher ob es an der Version oder einfach dem Neustart lag.

Hallo,
ich erhalte unter Windows nachfolgende Fehlermeldung:

Das erste Mal kam die Fehlermeldung beim Klick auf „Updaten Aller Module“. Auch bei manueller Installation erhalte ich die Fehlermeldung.

Der Pfad ist jedoch vorhanden:

Und auch richtig konfiguriert:

Schau mal hier. KLICK

oder hier

  • TabPane „ShadowingTP“ löschen (mit Unterobjekten)
  • im Objektbaum unter „\Visualization\Webfront“ -> „IPSShadowing“ löschen (mit Unterobjekten)
  • im Objektbaum unter „\Visualization\Mobile“ -> „Beschattung“ löschen (mit Unterobjekten)

… dann funzt die Installation/Update. Keine Angst, wird alles beim Installieren wieder angelegt!

Cheers

Hallo Uwe,
vielen Dank für deine Hilfe!
Funktioniert wieder. :cool:

Hallo zusammen.
Nachdem ich meine Homematic CCU auf 2.0 geupgratet haben, kann ich mich nun auch mal ohne viele Fehlermeldungen wieder dem Shadowing Projekt zuwenden.
Ich habe das Problem, das die Lamellenposition nicht exaxt angefahren wird.
der Grund hierfür scheint zu sein, dass nicht wie bei Brownson und dessen Lamellensteuerung die Lamellen über den unteren Totpunkt hinaus erst dann in die Lamellenposition Gerade fahren, sondern das bei mir die Untere Stellung (Geschlossen) auch die Endstellung ist. Zum kippen der Lamellen muss ich dann wieder ein Stück in Richtung öffnen fahren.

Leider passt dann die Eingabe der Sekunden im Konfigurationsscript nicht. Ich probiere schon die Ganze Zeit. es klappt einfach nicht. :confused:
Hat eventuell jemand das Gleiche Problem und eine Lösung dazu?
Danke Henry

Hi Henry,

ich habe das gleiche Thema. Mit den Vorgaben aus IPS Shadowing kann ich die Lamellen nicht sauber in die Beschattungsposition fahren.

Die komplette Wendung dauert bei mir 2,6 Sekunden. Wende ich auch der Position „Geschlossen“ nur eine Sekunde nach oben öffnen die Lamellen nicht ausreichend. Lasse ich eine Laufzeit von zwei Sekunden zu, kommt zuviel Licht durch die Lamellen.

Habe es daher so gelöst:

Erst 3 Sekunden nach oben (dann ist in jedem Fall die Lamelle komplett gewendet) und dann eine Sekunde nach unten. Damit steht die Lamelle dann bei einer Wendungszeit von 2,6 Sekunden bei 1,6 Sekunden (aus der Gegenrichtung gesehen) und damit ziemlich genau waagerecht.

In >90% aller Fälle passt es so. In den übrigen Fälle ärgere ich mich - kann es aber auch nicht abstellen…

Steuere ich die Aktoren mit dem nativen HomeMatic-Befehl in IPS an kommt auch nicht immer der richtige Wert durch. Keine Ahnung woran das liegt. Ein „HM_WriteValueFloat(12345, „LEVEL“, 0.2)“ führt nicht immer zu einem Resultat von 20% im Aktor. Ein Wert von +/- 0,5 ist in gut der Hälfte der Fälle möglich. Aber das ist ein anderes Thema…

Ändern musst Du es im Skript IPSShadowing_Device und dort in der Funktion CalcNextSteps…

Hier mal ein Codeschnipsel von mir:


(...)
				} elseif ($ToBeMoved==c_MovementId_Shadowing) {
//Edit---Start---2013-07-01
//-- ausgelieferte Logik
/*
					$this->AddNextStep($StepsToDo, c_MovementId_Down, $SecTotal-$SecNullToPos, null, $SecTotal, $SecNullToPos);
					$this->AddNextStep($StepsToDo, c_MovementId_Stop, 1, "$Position%", null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Up,    $DeviceConfig[$DeviceName][c_Property_TimeDimoutUp], 'Beschattung (Hoch)', null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Stop, $DeviceConfig[$DeviceName][c_Property_TimePause],  'Beschattung (Stop)', null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Shadowing, 1,  null, null, null);
*/
//-- eigene Logik
					$Up    = $DeviceConfig[$DeviceName][c_Property_TimeDimoutUp];
					$Down  = $DeviceConfig[$DeviceName][c_Property_TimeDimoutDown];
					$Pause = $DeviceConfig[$DeviceName][c_Property_TimePause];
					$this->AddNextStep($StepsToDo, c_MovementId_Down, $SecTotal-$SecNullToPos, null, $SecTotal, $SecNullToPos);
					$this->AddNextStep($StepsToDo, c_MovementId_Stop, $Pause, "$Position%", null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Up,   $Up,    "Beschattung (Hoch)", $SecTotal, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Stop, $Pause, "Beschattung (Pause)", null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Down, $Down,  "Beschattung (Runter)", $SecTotal, $SecTotal-$Up);
					$this->AddNextStep($StepsToDo, c_MovementId_Stop, $Pause, "Beschattung (Stop)", null, null);
					$this->AddNextStep($StepsToDo, c_MovementId_Shadowing, 1,  null, null, null);
//Edit---Ende---2013-07-01
(...)

Habe noch ein paar andere Funktionen eingebaut. Diese ganzen Anpassungen muss ich leider nach einem Update immer händisch nachziehen. Das ist unschön - anders geht es aber wohl leider nicht.

Hatte vor gut einem Jahr auch mal Kontakt zu Brownson um meine Anpassungen über das Github bereitzustellen. Hat aber irgendwie bei mir nicht funktioniert. Am Ende fehlt - wie so oft im Leben - die Zeit… :frowning:

VG Christian

Hallo Christian
Schön, dass es nicht nur mir so geht. IPS Shadowing und Homematic Funk Aktoren funktionieren überhaupt nicht zusammen. Je mehr Aktoren du hast, umso mehr kommt das Ganze durcheinander mit der Zeit für Hoch, Runter, Pause, Gerade u.s.w… Jede einzeln funtioniert. Aber alle zusammen nicht. da werden utopische Positionen angefahren das ich fast 10 Minuten benötige um alle wieder auszurichten.
Ich habe die automatische Sache relativ einfach gelöst per Script und astronomischen oder zyklischem Ereignis. Fertig. Und wenn ich mal eine Jalousie per Hand steuern möchte benutze ich das Shadowing.

hier das Schript dazu:
LEVEL 0.02 sind normale Fenster mit ca. 35S öffnungszeit. LEVEL 0,015 sind größere mit ca 80S Fahrzeit.
Am Abend fahren alle mit LEVEL 0 zu und am Morgen dann mit diesem Script wieder in die geöffnete Stellung.

<?
HM_WriteValueFloat(41060 /*[Alle\Geräte\Jalousie\Jalousie Melli Strasse]*/, "LEVEL", 0.02);
IPS_Sleep(500);
HM_WriteValueFloat(59710 /*[Alle\Geräte\Jalousie\Jalousie Schlafzimmer]*/, "LEVEL", 0.02);
IPS_Sleep(500);
HM_WriteValueFloat(50181 /*[Alle\Geräte\Jalousie\JALOUSIE SPA]*/, "LEVEL", 0.02);
IPS_Sleep(500);
HM_WriteValueFloat(51737 /*[Alle\Geräte\Jalousie\Jalousie Bad (Vater)]*/, "LEVEL", 0.02);
IPS_Sleep(500);
HM_WriteValueFloat(27149 /*[Alle\Geräte\Jalousie\Jalousie Küche (Vater)]*/, "LEVEL", 0.017);
IPS_Sleep(500);
HM_WriteValueFloat(21705 /*[Alle\Geräte\Jalousie\Jalousie Schlafzimmer (Vater)]*/, "LEVEL", 0.017);
IPS_Sleep(500);
HM_WriteValueFloat(39998 /*[Alle\Geräte\Jalousie\Jalousie Treppe (Vater)]*/, "LEVEL", 0.017);
IPS_Sleep(500);
HM_WriteValueFloat(16367 /*[Alle\Geräte\Jalousie\Jalousie Wohnzimmer (Vater)]*/, "LEVEL", 0.017);
IPS_Sleep(500);
HM_WriteValueFloat(40511 /*[Alle\Geräte\Jalousie\Jalousie Turm Hofseite]*/, "LEVEL", 0.015);
IPS_Sleep(500);
HM_WriteValueFloat(30221 /*[Alle\Geräte\Jalousie\Jalousie Turm Strassenseite]*/, "LEVEL", 0.015);
?>