NEU! UPGRADE IP 11 verfügbar!
NEU! LICHTWIDGET - DPT 7.600 - Logik Manager Update - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/B9MUEJj2

Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Ab sofort kann jeder die neue VISU & IFTTT testen. Info: viewtopic.php?f=8&t=5074

Release V 4 am 15. Juni 2024
Es gibt nun einen fixen Termin. Info: viewtopic.php?f=8&t=5117

NEU! Ausführliches Video Tutorial zur VISU
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

[Problem] [TWS 1.6.0] Logik für Außenleuchten (Uhrzeit + Helligkeit)

Informationen und Diskussionen über Logik-Engine und Logik-Editor
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln

Ersteller
tinom86
Reactions:
Beiträge: 22
Registriert: Mo Apr 08, 2019 3:03 pm
Hat sich bedankt: 7 Mal
Danksagung erhalten: 3 Mal

[TWS 1.6.0] Logik für Außenleuchten (Uhrzeit + Helligkeit)

#1

Beitrag von tinom86 »

Hallo zusammen,

ich habe leider noch wenig Erfahrung mit dem Logikeditor, arbeite bisher lediglich mit reinen Zeitschaltuhren und einer Astro-Logik für meine Rollläden. Könnt ihr mir bitte einen Tipp geben wie ich folgendes umsetzen kann:

- Schalten der Außenbeleuchtung zwischen 17:00 und 0:00
- Einschalten ab 17:00 && wenn Helligkeit < 100 Lux
- Ausschalten immer um 0:00 Uhr (d.h. Lampen sind in jedem Fall zwischen 0:00 Uhr und 17:00 Uhr ausgeschalten)

Ich hatte mir drei Logik-Bausteine überlegt:

#1: Logik mit Time-Trigger -> Einschalten um 17:00 Uhr -> sendet um 17 Uhr ein True an #3
#2: Logik mit Time-Trigger -> Ausschalten um 0:00 Uhr -> sendet Ausschaltsignal direkt an die Lampe
#3: Logik mit 2 Eingängen -> Eingang 1: Helligkeitssensor < 100 | Eingang 2: Output von Logik #1 -> sendet Einschaltsignal direkt an die Lampe wenn beide Eingänge den Wert True annehmen (Wie bekomme ich Logik #1 dazu, dass sie um 0:00 Uhr auf False umschaltet?)

Habt ihr noch Tipps für mich? Ginge das so? Kann ich es auch in einem einzigen Baustein abbilden?

Danke euch und VG
Tino
Zuletzt geändert von tinom86 am Sa Mai 30, 2020 2:05 pm, insgesamt 2-mal geändert.
Timberwolf Server 534 # Wartungs VPN offen # Neustart ok

StefanW
Elaborated Networks
Reactions:
Beiträge: 9775
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4879 Mal
Danksagung erhalten: 7820 Mal
Kontaktdaten:

#2

Beitrag von StefanW »

Hallo Tino,

bitte die SW-Version präzisieren.

Es gibt derzeit keine "V 1.6.0". Das wäre eine Hauptversion und diese ist noch nicht veröffentlicht.

Was wir derzeit anbieten ist für Teilnehmer am Insider Programm die Version "V 1.6 IP 2", also die Insider Preview 2 zur Version 1.6. Das ist also nicht das gleiche, auch wenn es in einigen Wochen die Version 1.6 geben soll.

==> Daher bitte genau angeben, ob Du die IP 1 oder die IP 2 der V 1.6 hast.

Merci

Stefan
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

fechter65
Reactions:
Beiträge: 207
Registriert: Mo Aug 13, 2018 10:44 am
Hat sich bedankt: 195 Mal
Danksagung erhalten: 143 Mal

#3

Beitrag von fechter65 »

tinom86 hat geschrieben: Sa Mai 30, 2020 1:43 pm
#1: Logik mit Time-Trigger -> Einschalten um 17:00 Uhr -> sendet um 17 Uhr ein True an #3
#2: Logik mit Time-Trigger -> Ausschalten um 0:00 Uhr -> sendet Ausschaltsignal direkt an die Lampe
#3: Logik mit 2 Eingängen -> Eingang 1: Helligkeitssensor < 100 | Eingang 2: Output von Logik #1 -> sendet Einschaltsignal direkt an die Lampe wenn beide Eingänge den Wert True annehmen (Wie bekomme ich Logik #1 dazu, dass sie um 0:00 Uhr auf False umschaltet?)

Habt ihr noch Tipps für mich? Ginge das so? Kann ich es auch in einem einzigen Baustein abbilden?
Hallo Tino

Für das Verständnis der Logikfunktion des TWS ist es wichtig, dass man zur Kenntnis nimmt, dass eine Logik nur rechnet, wenn sie ausgelöst wird. Dazu braucht es einen Trigger. Der Trigger kann bspw. ein Signal am Eingang einer Logik sein (d.h. der Eingang ist gleichzeitig der Trigger), oder ein zeitlich gesteuerter Auslöser (den Du über einen Trigger-Eingang definieren kannst).

An Deinem Konzept - das Du Dir schon gut zurecht gelegt hast - sehe ich folgendes Problem: Die zeitliche Bedingung am Einschaltteil wird nur einmal, nämlich um 17:00 Uhr getriggert. Wenn in diesem Zeitpunkt der Helligkeitswert nicht unterschritten ist, wird nichts passieren und zwar die ganze Nacht nicht mehr, weil die Logik nicht mehr ausgeführt wird.

Ich schlage Dir vor folgendes Konzept auszuprobieren, wobei ich mir - aus didaktischen Gründen - erlaube, die einzelnen Schritte zu erläutern:
1.) Um die Sache einfach zu halten, empfehle ich Dir, mit zwei Logiken zu arbeiten: eine, die die Beleuchtung einschaltet und eine, die sie ausschaltet. Natürlich wäre es auch möglich, alles in eine einzige Custom-Logik zu verpacken; dieses Vorgehen wäre jedoch - zumindest, wenn man am Anfang der Lernkurve in der Logikfunktion des TWS steht - etwas komplexer.

2) Die Ausschaltlogik ist einfach umzusetzen, ich würde mit folgendem Ansatz arbeiten: Nimm ein AND-Logik-Modul mit einem Ausgang, der mit dem KNX-Schaltobjekt verbunden wird und mit zwei Eingängen, beide aber ohne Verbindung zu einem Objekt.
Der erste Eingang ist ein Input-Eingang, dem Du als Parameter den Wert "FALSE" gibst.. Damit sendet die Logik in jedem Fall "FALSE", mithin einen Ausschaltbefehl. Der zweite ist ein Trigger-Eingang mit der Source "Zeit" . Als Zeitpunkt definierst Du "0:00" an jedem Wochentag.

3.) Auch die Einschaltlogik würde ich über ein AND-Logik-Modul realisieren. Sein Ausgang wird mit dem entsprechenden KNX-Objekt verbunden.
Um den Helligkeitswert an die Logik zu übergeben, brauchst Du einen "Input-Eingang", den Du mit dem KNX- oder 1-Wire-Objekt, das die Helligkeit "meldet", verbindest. Diesem Input-Eingang gibst Du die Funktion "Schwellwert unter" und definierst als Wert "100; somit sendet die Logik TRUE, wenn ein Eingangsignal ankommt, das unter dem Schwellwert von 100 liegt.
Solange dieser Input-Eingang eine Triggerfunktion hat, wird beim Eintreffen eines Helligkeitssignals die Logik ausgelöst und zwar entweder jedesmal (always, Eingang mit "A" gekennzeichnet) oder nur wenn eine Wertänderung (on change, Eingang mit "C" gekennzeichnet) vorliegt. Da Dein Helligkeitssensor wahrscheinlich während der ganzen Nacht senden wird, würde dies dazu führen, dass die Beleuchtung beim Eintreffen eines Eingangsignals nach 0:00 wieder eingeschaltet würde. Um dies zu vermeiden, musst Du die Triggerfunktion dieses Eingangs ausschalten, indem Du den Eingang mit "U" (update-only) kennzeichnest. Damit stellt dieser Eingang der Logik nur seinen Wert zur Verfügung, löst die Logik aber nie aus.
Weil nun kein Auslöser mehr vorhanden ist, benötigt die Logik nun einen Trigger-Eingang. Dieser soll nicht - wie bei der Ausschaltlogik - nur zu einem bestimmten Zeitpunkt, sondern während einem bestimmten Zeitintervall, auslösen. Diese Funktionalität erreichst Du, in dem Du dem Triggereingang als Source "Zeit" und dort als Typ "Cron Syntax" zuordnest. Die Cron Syntax muss dann wie folgt lauten: "0 0/5 17-22 * * 0,1,2,3,4,5,6". Entscheidend sind dabei die Felder "0/5" und "17-22". Sie legen fest fest, dass während den Stunden 17-22 ab der 0-Minute alle fünf Minuten ein Trigger ausgelöst wird. Mehr zur Cron Syntax findest Du hier: app.php/kb/viewarticle?a=95
Mit dieser Lösung wird höchstens im Zeitraum zwischen 17 und 23 Uhr ein Einschaltbefehl gesendet.



Ich hoffe, dass ich mich verständlich ausgedrückt habe und dass meine Überlegungen richtig sind (ich habe sie nicht getestet).
Schöne Pfingsten
Gruss, Diego

Edit: In der ersten Zeile "sendet" durch "rechnet" ersetzt.
Zuletzt geändert von fechter65 am So Mai 31, 2020 6:20 pm, insgesamt 2-mal geändert.
TW2600 / TW-ID: 87/ VPN offen, booten jederzeit erlaubt
TW2600 / TW-ID: 173/ VPN offen, booten nach Rücksprache

gbglace
Reactions:
Beiträge: 3614
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1272 Mal
Danksagung erhalten: 1674 Mal

#4

Beitrag von gbglace »

Ahh gut beschrieben, bräuchte zwar zwei Durchläufe, aber so ist das mit neuen Sachen.

Eine für mich spannende Frage bei den Timern/Triggern, wie bildet man so ein Zeitfenster 17 Uhr bis 2 Uhr in der Nacht ab? Ich hab da immer mit dem 0:00 Wechsel ne Blockade im Kopf, weil das ja, befreit vom Datum, nicht mehr linear vorwärts ausschaut.

So eine ZSU wäre natürlich wieder ein Träumchen an der Stelle. Wobei das hier mit dem Bedarf von drei vier Logiken für Deko und Außenlicht auch so geht.
OT an der Stelle: zeitlich begrenzte Zugangssteuerungen mit Haustür Finger Kombination am Ekey macht Ekey? Ich hab ja keine Ekeys und Putzfrau aber das wäre da mir ein Anwendungsfall.
Zuletzt geändert von gbglace am So Mai 31, 2020 9:25 am, insgesamt 1-mal geändert.
Grüße
Göran

#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#3 PBM 3 Kanäle, #4 Modbus-Extension

S. Kolbinger
Elaborated Networks
Reactions:
Beiträge: 588
Registriert: Mi Aug 15, 2018 11:34 am
Hat sich bedankt: 82 Mal
Danksagung erhalten: 559 Mal

#5

Beitrag von S. Kolbinger »

Vorschlag:

- Zeitfenster mittels Tiimer (länge) und Cron-Trigger (Startzeitpunkt)
- Und mit Schwellwert (gleich mit Hysterese, damit es nicht flackert bei Werten um 100)
Screenshot from 2020-05-31 10-42-01.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Gruß,
Stefan K.

fechter65
Reactions:
Beiträge: 207
Registriert: Mo Aug 13, 2018 10:44 am
Hat sich bedankt: 195 Mal
Danksagung erhalten: 143 Mal

#6

Beitrag von fechter65 »

gbglace hat geschrieben: So Mai 31, 2020 9:24 am Eine für mich spannende Frage bei den Timern/Triggern, wie bildet man so ein Zeitfenster 17 Uhr bis 2 Uhr in der Nacht ab? Ich hab da immer mit dem 0:00 Wechsel ne Blockade im Kopf, weil das ja, befreit vom Datum, nicht mehr linear vorwärts ausschaut.
Hallo Göran


Mit meinem Anfängerwissen glaube ich, dass dies die Cron Syntax ist, die Du suchst (nicht getestet):

Ab 17.00 Uhr alle 5 Minuten, letztmals um 01:55.

Code: Alles auswählen

0 0/5 0-1,17-23 * * *
Oder genauer gesagt:
Feld 1: In der 0. Sekunden
Feld 2: In der 0. Minuten / danach alle 5 Minuten
Feld 3: In der 17.-23. Stunde und in der 0.-1. Stunde.
Feld 4-6: Keine Einschränkungen für Tag des Monats, Monat und Wochentag


Gruss
Diego
Zuletzt geändert von fechter65 am So Mai 31, 2020 4:28 pm, insgesamt 1-mal geändert.
TW2600 / TW-ID: 87/ VPN offen, booten jederzeit erlaubt
TW2600 / TW-ID: 173/ VPN offen, booten nach Rücksprache

Ersteller
tinom86
Reactions:
Beiträge: 22
Registriert: Mo Apr 08, 2019 3:03 pm
Hat sich bedankt: 7 Mal
Danksagung erhalten: 3 Mal

#7

Beitrag von tinom86 »

Vielen lieben Dank euch allen für die Tipps,

ich habe es jetzt mit 2 Logik-Bausteinen (AND und Timer) gelöst, siehe Anhang.

@ Diego
Vielen Dank für die ausführliche Erklärung - das hat im Hinblick auf das Verständnis geholfen.

VG
Tino
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Timberwolf Server 534 # Wartungs VPN offen # Neustart ok

blaubaerli
Reactions:
Beiträge: 2323
Registriert: Sa Sep 15, 2018 10:26 am
Wohnort: Kerpen
Hat sich bedankt: 898 Mal
Danksagung erhalten: 700 Mal

#8

Beitrag von blaubaerli »

Hi Stefan @S. Kolbinger,

gehört in deinem Beispiel im Post 5 nicht in der AND-Logik noch der "Input 1" invertiert?

Ich hatte gerade mal rumgespielt und war irritiert... :confusion-scratchheadyellow:

Beste Grüße

Jens
wiregate1250 & timberwolf168 (2600er), VPN offen, Reboot nach Vereinbarung
Bitte WIKI lesen.

gbglace
Reactions:
Beiträge: 3614
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1272 Mal
Danksagung erhalten: 1674 Mal

#9

Beitrag von gbglace »

Hi Diego

OK das Ding verträgt also eine Auflistung von Zeitpunktfenstern durch Komma getrennt.
Die Welt kann so einfach sein.
Grüße
Göran

#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#3 PBM 3 Kanäle, #4 Modbus-Extension

S. Kolbinger
Elaborated Networks
Reactions:
Beiträge: 588
Registriert: Mi Aug 15, 2018 11:34 am
Hat sich bedankt: 82 Mal
Danksagung erhalten: 559 Mal

#10

Beitrag von S. Kolbinger »

Hallo Jens,
blaubaerli hat geschrieben: So Mai 31, 2020 7:57 pm gehört in deinem Beispiel im Post 5 nicht in der AND-Logik noch der "Input 1" invertiert?
stimmt, das habe ich in der Eile ganz übersehen.
Input1 muss noch invertiert werden.

Danke
Gruß,
Stefan K.
Antworten

Zurück zu „Logikengine & Logik-Editor“