@jnicke: Vermutlich haben wir uns missverstanden, denn meiner Meinung nach tut es genau so wie es soll.
Eben mehrmals probiert:
→ Einschaltdauer ist auf 3Min
→ Bewegungsmelder löst aus
→ Zeit zählt von 3min runter
→ nach 30sec geht der Bewegungsmelder aus
→ Licht bleibt Ein und Zeit zählt weiter runter
→ nach 1min löst der Melder nochmals aus
→ Timer springt wieder auf 3 min, Licht bleibt ein
→ nach 3min geht das Licht dann aus
Moin,
habe mal ne Frage zu dem Modul. Ich habe normale BWM die einfach eine Bool Variable darstellen.
Wenn der BWM nun auslöst Springt die Variable auf „true“. Dein Modul schaltet dann vermutlich das Licht an und startet den Timer. Wenn ich nun im Raum bleibe, bleibt der BMW dauerhaft auf true, daher würde dann ja nach 3min das Licht ausgehen da der Timer dann ja abläuft.
Gibt es die Möglichkeit das so einzustellen das bei einem ändern von false → true das Licht angeht und erst bei der Änderung von true-> false der Timer startet?
Servus
Du möchtest also eine reine Abschaltverzögerung haben ? Denke das geht, werde mal schauen.
Fürs erste kommt mir eine Schwierigkeiten in den Sinn:
Wenn du Funk-Melder hast, dann kann es schon mal vorkommen das eine Schaltflanke verlorengeht.
Passiert es bei False-> True dann geht halt das Licht nicht an. Damit kann man leben.
Passiert es aber bei True->False, dann bleibt das Licht auf ewig eingeschaltet. Genau das ist hier bei den diversen anderen Varianten passiert, darum hab ich es so gebaut wie es ist.
Quasi, solltest aber auch nicht zu viel Energie reinstecken, aktuell habe ich das über ein kleines Script mit Script Timer gelöst, interessant ist da halt auch deine Dauerlicht Funktion, die fehlt mir im Script.
if($_IPS['SENDER'] == "TimerEvent") //Timer:
{
if (GetValueBoolean($IDBWM) == true) { //BWM noch an: zurücksetzen:
IPS_SetScriptTimer($_IPS['SELF'], 60);
} else {
RequestAction($IDBool, false); //Lampe aus
IPS_SetScriptTimer($_IPS['SELF'], 0); //BWM aus Timer aus...
}
} else {
if ($_IPS['SENDER'] == "Variable") {
if ($_IPS['VALUE']) { //BWM eingeschaltet also Lampe an
RequestAction($IDBool, true); //Lampe An
} elseif (!$_IPS['VALUE']) { //BMW Aus, also timer an
IPS_SetScriptTimer($_IPS['SELF'], 60); //Timer an...
}
}
}
Ich finde die Idee ganz nett, könnte trotz Funk an der ein oder anderen Stelle einsetzen.
Wenn du aber scripten kannst, dann kannst du es ganz einfach lösen:
Triggere mit dem Bewegungsmelder ein Script.
Dieses schaltet bei:
True - per RequestAction() die Dauerlicht-Variable auf True.
False - per RequestAction() die Dauerlicht-Variable auf False UND die LichtStatus Variable auf True.
Damit bleibt während Bewegung=True das Dauerlicht aktiv, und bei false wird der Abschalttimer aktiv.
Bernhard, genau das ist das Ergebnis, wenn man für jedes Problem ein eigenes Modul macht.
Ich bin immer noch ein Fan von frei konfigurierbaren Modulen ohne Vorgabe des Modulerstellers. Dann kann der Nutzer einstellen, wie das bei ihm laufen soll.
Da es so etwas nicht gibt, baue ich mir das per Skript. (Nein, Module zu bauen interessiert mich selbst nicht)
Ich frag mich nur, warum es die Modulersteller gar nicht interessiert. Es ist doch naheliegend, sich darüber Gedanken zu machen.
Das xte abgewandelte Modul sorgt doch nur für eine unübersichtliche Auswahl und suggeriert einen größeren Fundus.
Da gibts doch diese Logik und Rechenmodule. Viel mehr wirst du unter dem Titel „frei konfigurierbar“ nicht hinbekommen, denn auch „frei“ hat seine Grenzen.
Wohin „frei“ zwangsweise führt siehst du ja beim Ablaufplan, DAS ist ein frei konfigurierbares Modul.
Ich habs auch nicht so sehr mit fremden Modulen, weil oft viel Code drin ist den ich nicht verstehe. Das zu lernen ist mehr Aufwand als es selbst schnell hinzuscripten. 2-3 hab ich ich im Einsatz, davon auch nur das Plugwise so richtig.
Hab aber trotzdem ein paar Sachen für mich gemacht einfach um mich von der Technik nicht selbst nicht ganz abzukoppeln.
Für diese Lichtanwendung finde ichs aus Wartungsgründen schon ganz gut. Hab inzwischen an die 20 Instanzen davon konfiguriert. Es hat sich als sehr viel wartungsfreundlicher rausgestellt als mit meinen alten Scripten.
Von da her hat sich der Aufwand schon mehrfach gelohnt, auch wennst nur selbst dein einziger Anwender bist.
Hi Bernard,
das kann ich absolut aus dieser Perspektive verstehen.
Ich denke ja nur theoretisch aus der Usersicht drüber nach. Als IT-Verantwortlicher unseres Unternehmens und als Controller (ja, merkwürdige Mischung) denke ich immer drüber nach, wie man alle mitnehmen kann.
Da kommt man schnell auf solche Gedanken.
Möchte Dich aber hier nicht bekehren. War nur eine Idee. Hast ja viel Zeit momentan für IPS, wie ich feststelle.
Bin auf der Suche nach etwas, was ich unkompliziert für meine Lichtsteuerung im Haus verwenden kann. Z.B. der Gang oben bei mir, hier habe ich einen Shelly Dimmer, dieser wird ja von meinen normalen Busch Jäger Tastern gesteuert, die ich für die ursprünglichen Schalter angebracht habe.
Bewegungsmelder ist ein Zigbee Gerät, soweit so gut…
Kann ich mit dieser Konstellation sinnvoll dein Modul verwenden? Geschaltet wird bei mrir sowohl über den Bewegungsmelder als auch manchmal über die Taster. Wie ist es hier mit der Restlaufzeit, mal angenommen der Bewegungsmelder schaltet das Licht ein und dann schaltet jemand manuell das Licht am Taster aus, wird die Restlaufzeit/der Timer dann auf null gesetzt?
Oder wenn das Licht per Taster angeschaltet wird, wird dann auch der Timer (z.B. 2 Minuten) gesetzt und nach Ablauf wieder ausgeschaltet?
Was passiert wenn ich das Licht per App oder Webfront einschalte? Läuft dann auch die Uhr runter?
d.h. deine Taster hängen direkt am Dimmer. IPS kriegt den Tasterdruck nicht direkt mit, sondern nur indirekt über Shelly das das Licht an ist. Ist das richtig ?
(ich persönlich hab keine Shelly)
Also das wird nicht funktionieren, weil der Shelly ist ja aus reine Ausgabevariable definiert. Deren Status wird nicht überwacht oder irgendwie rückgeführt.
Würde man den Status des Ausganges wieder rückführen, so muß man sehr vorsichtigt sein und um keine Endlosschleife zu erzeugen.
Werd mir das mal überlegen.
Wenn du per Webfront schaltest dann geht es nur wenn du über die Statusvariable(n) des Moduls nimmst. Wenn du direkt den Shelly schaltest gilt das gleiche wie oben.
Können schon, natürlich.
Die Frage ist aber was soll passieren ? Wenn man nun (d)einen Anwendungsfall einbaut, dann gibt es gleich zig andere Fälle wo genau das nicht passt. d.h. da müsse dann eine Art konfigurierbare Logik rein. Das wird aber komplex und vor allem haben wir dafür ja eh schon die Ablaufpläne.
Da du eh die Taster am Shelly hast, sollte doch eigentlich eh schon alles funktionieren auch ohne Modul. Oder anders gefragt, welche Funktionalität muß es zusätzlich liefern die nicht eh schon durch dein Grundsetup abgedeckt ist.
Schau dir übrigens mal das Anwesenheitsmodul aus SymconMisc an. Das könnte dir auch helfen.
Irgendwas um aus der Kombination aus Schaltern(BW Melder) und Momentkontakten noch mehr rauszuholen werd ich sicher noch einbauen -siehe auch die Anfrage weiter oben.
Wie die aber exakt aussehen wird kann ich noch nicht sagen. Bin noch am überlegen was da am universellsten wäre - und auch mir selbst am meisten bringt
Hallo Bernhardt,
ich kann mich auf den Kopf stellen, aber ich bekomme die Tag/Nachtschaltung nicht zum laufen.
Die Auslösung wird angesprochen, nimmt aber niemals die Lampen mit. Diese bleiben auch laut Debug Protokoll auf false. Das kann ich sowohl mit dem Helligkeitssensor mach als auch mit dem Location Module, der Effekt ist immer derselbe.
kannst Du da mal nachschauen warum kein true an die Lampen gesendet wird?
Bis zum Auslösen der Lampen über die BWM funktioniert das (Sieht man auf dem Debug) aber sobald ich das erweitere geht nix
MfG
Ingo
BTW: Kann es sein das in der Zeile 264 eine 0 fehlt am ende vor den Klammern?
OK, danke für den Hinweis und ausführliche Fehlerbeschreibung.
Schau mir das am Wochenende an. Will auch noch was umbauen, eine Funktion passt mir selbst nicht.