[Modul] Rollladensteuerung (BlindControl)

Hallo Burkhardt,

erstmal danke für dieses Super Modul und Gratulation zum ersten Platz bei den Downloads im Store! Ich hätte 2 Fragen:

  1. Ist die Helligkeitsvariable für die Beschattung nach Sonnenstand eher für die Helligkeit im Zimmer gedacht, um diese konstant zu halten oder für die Helligkeit draußen um quasi ab einer bestimmten Helligkeit die Beschattung zu beginnen?

  2. Warum kann man die Behanghöhe bei der Extremtemperatur über 30Grad nicht selbst einstellen? Ich habe ein Problem damit wenn das Rollo bei mir fest auf nur 10% fährt bei über 30 Grad. Dann ist es stockdunkel.

Ich Frage mich das deshalb, weil du ja z.B. bei der Beschattung nach Sonnenstand die Range der Behanghöhe auch frei einstellen lässt auf einen tiefen Wert und einen hohen Wert. Es wäre cool wenn man das auch für die Extremtemperaturen zur Beschattung frei einstellen könnte. Dies würde das Modul auch nicht wirklich komplexer in der Bedienung machen. Ansich hätte ich die Einstellung als einfacher User als logisch empfunden. Ich glaube dies wurde in diesem Thread auch schonmal angesprochen.

Beste Grüße
Matthias

Ich nehme an, du nimmst die Statusvariable „LEVEL“ des Kanals 4. Dann muss in der Instanz 4 „Status emulieren“ deaktiviert sein.

Siehe auch https://www.symcon.de/service/dokumentation/modulreferenz/homematic (Stichpunkt „Status emulieren“)

zu 1: Es ist die Helligkeit draußen gemeint. Die Beschattung dient dem Wärmeschutz, Pflanzenschutz, Möbelschutz und was auch immer :slight_smile:

zu 2: da ist heute eine feste Regel eingebaut. Du könntest aber vielleicht mit einem Kontakt arbeiten, den du bei einer von dir definierten Hitze setzt.

Die Komplexität würde ich nur ungern weiter erhöhen.

Hallo Burkhradt,

ich muss nochmal wegen dem OFFset nerven.
Entweder wir reden aneinander vorbei, oder ich habe die Funktion noch nicht verstanden.
Ich kann mir auch nicht vorstellen, das ich der einzige bin, der dieses „Problem“ hat.

Also ich habe wie von die vorgeschlagen, ein Offset im Location Control angelegt.

Dieses Offset kann ich im Modul aber nicht nutzen. Das Module will eine Variable mit Boolean, und kein Integer, richtig?
Also muss ich eine zusätzliche „Ist es Tag“ Variable anlegen.
Dies kann man leider nicht im Location Control anlegen, zumindest bei mir nicht.
neue Variable.JPG

Also muss ich irgendwo im Objektbaum diese Variable anlegen.
Und mich per Script drum kümmern, das diese richtig gesetzt wird.

Ist das alles richtig so, oder habe ich da irgendwo einen Denkfehler?
Bin ich wirklich der einzige, der solch einen Offset braucht?
Und wäre es nicht einfacher, wenn man den Offset ist Module packen könnte?

Du musst im Location Control der Eigenschaft „Tagesende“ noch dein Offset zuordnen.
Dann erst wirkt es auf die „Ist es Tag“ Variable.

Hallo Burkhradt,

ich glaube hier liegt das Mißverständnis:
Ich will und kann die „Ist es Tag“ Variable im Location Control nicht ändern.
Die brauche ich für andere automations Sachen, die muss bleiben.

Vom Location Control kannst du beliebig viele haben :slight_smile:

Also legst du dir für deine Rollläden, die ein besonderes Offset haben sollen ein eigenes Location Control an. Dann hast du deine individuelle „Ist es Tag“ Variable.

Guten Tag,

gestern morgen gingen unsere Rollos nichtmehr automatisch hoch. Eigentlich laufen die BlindController Module seit Monaten zuverlässig. Wenn ich so darüber nachdenke hatte ich vielleicht 1 oder 2 mal das Problem, dass die Automatik nicht funktionierte und ich die Rollos manuell gefahren habe. Habe mir aber bisher nichts dabei gedacht.

Nach gestern habe ich mal ins Logfile geschaut und versucht herauszufinden was passiert ist.
Merkwürdig finde ich die unzähligen Einträge dazu. Ist das korrekt oder schaltet sich hier irgendwas ein Paar mal hin und her bis es sich fängt?
An den Tagen, wo die Rollos tatsächlich gefahren sind treten übrigens dieselben Einträge auf und auch nicht nur für die Rollos im Bad OG, sondern auch an den übrigen. Hier im Bsp. ist 7 das Netzrelais und 8 die Richtung. Aber wie gesagt das dürfte irrelevant sein, da das Modul eigentlich in 99% der Fälle Zverlässig läuft.

	Line 24730: 10/05/20 05:59:01 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = false
	Line 24731: 10/05/20 05:59:01 | 29478 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24735: 10/05/20 05:59:01 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 2
	Line 24736: 10/05/20 05:59:01 | 16577 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Shutter Control - Bad OG\Position] = 0
	Line 24743: 10/05/20 05:59:01 | 55843 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = true
	Line 24744: 10/05/20 05:59:01 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24748: 10/05/20 05:59:01 | 47192 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 0
	Line 24749: 10/05/20 05:59:01 | 16577 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Shutter Control - Bad OG\Position] = 0
	Line 24791: 10/05/20 05:59:03 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = true
	Line 24792: 10/05/20 05:59:03 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24796: 10/05/20 05:59:03 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 0
	Line 24804: 10/05/20 05:59:04 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = true
	Line 24805: 10/05/20 05:59:04 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24809: 10/05/20 05:59:04 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 0
	Line 24827: 10/05/20 05:59:04 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = true
	Line 24828: 10/05/20 05:59:04 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24832: 10/05/20 05:59:04 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 0
	Line 24957: 10/05/20 05:59:23 | 55843 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = false
	Line 24958: 10/05/20 05:59:23 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24962: 10/05/20 05:59:23 | 47192 | MESSAGE | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 2
	Line 24981: 10/05/20 05:59:26 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = false
	Line 24982: 10/05/20 05:59:26 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 24986: 10/05/20 05:59:26 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 2
	Line 24997: 10/05/20 05:59:30 | 55843 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 7 (0, 12)\Status] = false
	Line 24998: 10/05/20 05:59:30 | 29478 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\Relais 8 (0, 12)\Status] = false
	Line 25002: 10/05/20 05:59:30 | 47192 | DEBUG   | VariableManager      | [02_Physikalische Zuordnung\Unterverteilung HWR\Schlafz._&_LED_WZ ID12\Relais\RM Bad OG\LCN Shutter - Bad OG\Action] = 2
	

Das war der entscheidende TIP! :wink:
Danke für deine Geduld. Jetzt funktioniert es.

Das kann ich nicht beurteilen. Das passiert außerhalb des Moduls.

Moin Burkhard,
ich stehe grade auch vor dem Wald und bin zu doof.
Kannst du mal ein Bild(Sreenshot) für einen Blinden zeigen, vielleicht sehe ich dann meinen Denkfehler.

Grüße, Uwe

Du legst eine weitere Instanz vom Typ Location Control an (zum Beispiel indem du die bestehende kopierst). Dann gibst du der Instanz einen hübschen Namen (z.B. „LC Rollladen Südseite“). In der Instanz legst du ein Offset an für die gewünschte Verschiebung an und ordnest das Offset dem Tagesende zu. Das ist alles. Dann verschiebt sich das Tagesende um den Offset.

Burkhard

Baum fällt - danke :loveips:

Ich habe jetzt auch das Modul am Laufen.
Danke für die Arbeit.

Steuerung passiert über die Helligkeitssensoren von Homematic, nicht durch Location.

Ein Punkt, bin ich mir nicht sicher, ob das geht, bzw. wenn ja, wie.

Ich habe eine Terassentür, deren Rolladen aufgehen soll, wenn die Tür geöffnet wird, bzw. erst gar nicht runterfahren soll, wenn sie auf ist. Das funktioniert soweit ganz gut.

Jetzt kommt aber bald der Sommer und da hätte ich gerne bei zu viel Helligkeit den Rolladen auf 50% gefahren.
Auch das geht hervorragend.

Ich will aber, dass so eine Stellung nicht durch die Tür beeinflusst wird.
D. h. zu Hell runter, acuh wenn Tür auf, bzw. nicht hoch, wenn Tür aufgeht.

Ist etwas paradox, oder?
Geht das?

Danke
Mic

Du möchtest also die Türkontakterkennung außer Kraft setzen, wenn die Beschattung aktiv ist.
Da die Kontakte immer Vorrang haben, musst du dafür sorgen, dass bei Beschattung die Kontaktvariable auf false bleibt.
Das erreichst du, indem du dir eine Hilfsvariable (z.B. „Rollladen hochfahren“) anlegst, die du in Abhängigkeit des Türkontaktes und der Rollladenstellung setzt.
Diese Hilfsvariable nimmst du dann als Kontakt.

Danke für die schnelle Antwort.
Klingt nach einem Plan :wink:

Ok, der Betreff hört sich vielleicht erstmal ein bisschen schizophren an… :wink: aber ich erkläre es mal…

Ich hab alle meine Rollos über das Modul automatisiert… funktioniert auch alles wunderbar…

Meine Schlafzimmerrollos möchte ich aber nicht automatisieren… die sollen lediglich übers Webfront, über den Schalter oder per Script gesteuert werden… Ich möchte aber auch, dass das Logging bei denen wie bei allen anderen funktioniert… Sprich… das Modul soll genutzt werden, aber das Modul soll nicht viel machen… ;-))

Geht das irgendwie?

Könnte vielleicht klappen wenn du keine automatischen Fahrten durchführen lässt und die „Zeit der Deaktivierung nach manueller Fahrt“ auf 0 setzt.

Hallo
Nach dem Update auf die neueste Ninja Version bekomme ich im
Sekundentakt folgende Fehlermeldung:

26.06.2020, 09:56:36 | PHP | Error: Notice: Trying to access array offset on value of type null
Error in Script C:\ProgramData\Symcon\modules.store\de.bumaas.blindcontrol\BlindController\module.php on Line 370
134 in scripts\IPSLibrary\app\core\IPSLogger\IPSLogger.inc.php (call IPSLogger_Out)
45 in scripts\IPSLibrary\app\core\IPSLogger\IPSLogger_PhpErrorHandler.inc.php (call IPSLogger_Err)
370 in modules.store\de.bumaas.blindcontrol\BlindController\module.php (call IPSLogger_PhpErrorHandler)
4015 in scripts__generated.inc.php (call ControlBlind)
1 in C:\Windows\System32- (call BLC_ControlBlind)

Welche Version des Moduls hast du im Einsatz? Aktuell ist die 2.10 build 6. Kannst du die einmal ausprobieren?

Edit: Ich kann es mit 5.5 bei mir nachvollziehen. Das Thema gehört dann wohl in den Beta Bereich.

Ursache ist wohl eine Änderung in PHP 7.4.7. Da scheint noch eine Reihe anderer Module betroffen zu sein. Bei mir sind es :

  • IPSymconEchoRemote
  • iCal-Calender (da ist eine eingebundene externe Bibliothek betroffen)
  • Sonos

Letzte Erkenntnis:

unter 7.3.16 funktioniert folgendes Skript:

<?php

$arr = null;

$a = $arr['a'];

In der aktuellen Version gibt es die Fehlermeldung:

Notice:  Trying to access array offset on value of type null in C:\ProgramData\Symcon\scripts\11912.ips.php on line 5