UPGRADE IP 9 verfügbar!
Timberwolf VISU jetzt mit NEUEM Layout Editor
Freie Anordnung, Reihenfolge und Größe der Widgets - viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/06SeuHRJ

NEU! Insider & Leistungsmerkmale FÜR ALLE freigeschaltet
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

[NEUHEIT] Ankündigung: Neues Leistungsmerkmal - Persistente Logikengine

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
StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

Ankündigung: Neues Leistungsmerkmal - Persistente Logikengine

#1

Beitrag von StefanW »

Verehrte Kunden und Interessenten,
verehrte Kunden,

wir freuen uns sehr, ein neues Leistungsmerkmal präsentieren zu können:

==> Persistente Logikengine

Überblick:
Die Logikengine speichert künftig Ihren kompletten internen Status persistent. Das bedeutet, selbst beim Durchstarten der Logikengine (was ohnehin nur sehr selten notwendig ist, aber bei einem Update vorkommen kann) speichert die LE alle internen Stati und arbeitet beim Wiederstart an der gleichen Stelle weiter. Selbst Timer berücksichtigen dabei die Off-Time und werden ggfls nachgeholt.


Einsatzszenario:
Das ist eine sehr leistungsstarke Funktion, insbesondere für Werte / Stati die nur selten eintreffen / gesendet werden! Die LE macht also nach einem Neustart einfach ansatzlos weiter, als wäre nichts gewesen. Damit lassen sich insbesondere seltene Ereignisse, Werte Statusmeldungen persistent speichern, weil man diese nun nur einfach über die Logik führen muss. Damit werden nicht nur Umschaltungen von Sommer auf Winter oder Tag auf Nacht persistent gehalten, sondern auch am Bedienfeld eines Smarthomes gemachte Aufgaben und Vorgänge oder einmalige Statustelegramme (EnOcean Funktelegramme, hier ist keine Abfrage beim Neustart möglich).

Damit das ganze auch bei Stromausfall funktioniert, werden auch neue Stati zwischen gespeichert, wenn dieser sich in den letzten 10 Minuten geändert hat. Eine kleine Lücke von 10 Minuten verbleibt damit bei Stromausfall, aber wir wollen auch den Flash schonen - und Stromausfall ist eher selten.


Bedienung:
Ein Knopf genügt. Selbstverständlich kann man dieses Verhalten für jede Logikzelle einzeln einschalten, dafür gibt es einen neuen Button, rechts oben im "Zellkern" sowie eine Statusanzeige links beim Namen:

Bild


Wunscherfüllung:
Es gab ja schon länger die Wünsche der Kunden nach persistenten Objekten (so wie das auch der Wettbewerb hat). Wir haben darüber beraten. Aber eigentlich wollen wir alles so einfach wie möglich für Euch machen. Wieso also erst persistente Objekte anbieten, die dann Benutzer dann auch erst mal angesprochen werden müssen und weitere Mappings notwendig macht. Nur dass bei persistenten Objekten immer noch der innere Zustand der Logik fehlt und die Timer / Trigger ohnehin.

Damit lag es auf der Hand, das aller einfachste für die Kunden ist, wenn die Logik selbst persistent ist. Ein kleiner Knopfdruck genügt und dieses wunderbare neue Leistungsmerkmal entfaltet für seine Logikzelle mit allen Stati seine Wirkung. Ich denke schon, dass dies ein toller Meilenstein ist!


Zusammenfassung der neuen Eigenschaften des Leistungsmerkmal "persistente Logik":
  • Persistent: Speicherung der Zustände über Reboots von Servern und / oder der Logikengine hinweg
  • Frische Stati alle 10 Minuten: Bei der ersten Berechnung einer "persistenten" Logikzelle nach dem Start, wird der Status gespeichert. Und jedes mal wieder dann, wenn nach einer erneuten Berechnung (weil ein Trigger ausgelöst wurde) mindestens 10 Minuten gegenüber dem letzten Zwischenspeichern vergangen ist.
  • Aktuelle Stati bei Shutdown: Bei einem kontrolliertem Shutdown - also wenn die Logik-Engine kontrolliert heruntergefahren / durchgestartet wird, dann wird der aktuelle Status der mit "Persistenz" markierten Logikzellen ebenfalls abgespeichert. Gewinner sind hier insbesondere die Kunden mit einem Timberwolf Server 2600, weil durch die integrierte USV bei Stromausfall kontrolliert heruntergefahren wird, wodurch dieses Leistungsmerkmal auch hier bei Ausfall der - ohnehin dualen - Spannungsversorgung besonders zur Geltung kommt.
  • Granular: Dieses Zwischenspeichern wird für jede Logikzelle einzeln vorgenommen. Die Speicherung bei Statuswechsel, sofern mehr als 10 Minuten seit der letzten Speicherung vergangen sind, werden ebenfalls PRO Logikzelle vorgenommen.
  • Zeitmaschine I: Die Off-Time der Zelle wird bei den Timern berücksichtigt. Würde also ein Timer in 8 Minuten "ablaufen" (also einen Trigger initiieren) und wäre der Server komplett in dieser Zeit durchgestartet worden (was 3 Minuten in diesem Beispiel dauert), dann würde beim Neustart der Timer neu berechnet und stünde nun auf "in 5 Minuten", die Zeitpunkte werden also weiterhin eingehalten.
  • Zeitmaschine II: Zwischenzeitlich (während der Off-Time) nachgeholte Trigger werden NACHGEHOLT. Das sollte man bedenken, wenn die Gefahr besteht, dass ein Server längere Zeit Off sein könnte, nicht dass die Rolladen dann 10x hintereinander fahren. Aber darum kann man das auch pro Logikzelle einschalten.


Bereitstellung:
Ursprünglich war dieses Leistungsmerkmal für eine spätere Version vorgesehen, aber da es früher fertig geworden ist und bei unseren Tests sehr gut funktioniert hat, geben wir es gleich frei. Gleich heißt, es kommt sehr voraussichtlich mit der RC5 (geplant für heute) - zumindest falls es nicht noch Probleme in letzter Minute gibt, dann würde es eben mit der RC6 in ca. drei Wochen erscheinen. Also auf jeden Fall ziemlich bald.

Persönliche Anmerkung: Ich bin sehr begeistert von dem neuen Leistungsmerkmal. Damit machen wir die Logik Engine noch nützlicher und einfacher in der Handhabung, weil selbst ein kurzes Durchstarten der Engine kaum zu Wiederanlaufproblemen im Haus führt. Das ist schon ein sehr sehr großer Unterschied zum Wettbewerb.


Danksagung:
Ich hoffe, ihr teilt meine Begeisterung und von mir aus einen fetten Beifall für das Team, hier insbesondere für Stefan K. :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap: :clap:


lg

Stefan
Zuletzt geändert von StefanW am Do Sep 12, 2019 1:37 pm, insgesamt 6-mal geändert.
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.

blaubaerli
Reactions:
Beiträge: 2308
Registriert: Sa Sep 15, 2018 10:26 am
Wohnort: Kerpen
Hat sich bedankt: 884 Mal
Danksagung erhalten: 677 Mal

#2

Beitrag von blaubaerli »

Hi Stefan,

das hört sich ja echt super an. Freue mich drauf und macht bei mir einen weiteren Anwendungsfall für den Plugin-Container überflüssig!

:text-thankyouyellow: :happy-wavemulticolor:

Beste Grüße
Jens
wiregate1250 & timberwolf168 (2600er), VPN offen, Reboot nach Vereinbarung

Ersteller
StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

#3

Beitrag von StefanW »

Hallo Jens,
blaubaerli hat geschrieben: Do Sep 12, 2019 11:58 amdas hört sich ja echt super an. Freue mich drauf und macht bei mir einen weiteren Anwendungsfall für den Plugin-Container überflüssig!
danke, erzähl uns doch mehr. Es ist sicher für Mitleser spannend zu lesen, was damit erschlagen wird, weil man daraus sicher lernen kann.

lg

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.

danik
Reactions:
Beiträge: 391
Registriert: Mo Sep 10, 2018 8:40 pm
Hat sich bedankt: 256 Mal
Danksagung erhalten: 266 Mal

#4

Beitrag von danik »

Coole Sache die Ihr Euch da ausgedacht habt. Es erfordert sicher ein umdenken, so wie bei anderen Punkten auch, aber ich denke damit hat man ein mächtiges Instrument wenn man damit umzugehen weis.

Ich freue mich darauf diese neuen Möglichkeiten zu nutzen.

Vielen dank
Dani

:clap: :clap: :clap:
TW 3500L (#882) + TW 950Q (#321, im Moment inaktiv), VPN offen, Reboot nach Rücksprache

blaubaerli
Reactions:
Beiträge: 2308
Registriert: Sa Sep 15, 2018 10:26 am
Wohnort: Kerpen
Hat sich bedankt: 884 Mal
Danksagung erhalten: 677 Mal

#5

Beitrag von blaubaerli »

Hi Stefan,

ich hatte mir ein Plugin gebastelt, mit dem ich dann die Werte einiger GA's in der Plugin-Variable gespeichert habe. Bei Neustart des Containers kann das Teil dann dann bei Bedarf die gespeicherten Werte senden, oder eben z.B. auch auf READ-Requests der Visu reagieren. Das braucht es dann ja nicht mehr.

Wir hatten nur noch irgendwo nen Defect, dass ein und derselbe Level (Variable) nicht zeitgleich sowohl als Eingang, als auch als Ausgang genutzt werden konnte. Wäre schön, wenn der dann auch vom Tisch wäre. :violence-duel:

Beste Grüße
Jens
Zuletzt geändert von blaubaerli am Do Sep 12, 2019 12:56 pm, insgesamt 1-mal geändert.
wiregate1250 & timberwolf168 (2600er), VPN offen, Reboot nach Vereinbarung

DeLaDope
Reactions:
Beiträge: 245
Registriert: Mo Sep 03, 2018 2:26 pm
Hat sich bedankt: 122 Mal
Danksagung erhalten: 97 Mal

#6

Beitrag von DeLaDope »

@StefanW und ans Team...das ist klasse und wird mir in Zukunft viel Ärger ersparen. Danke! :handgestures-thumbupright: :handgestures-thumbupright:
TWS 2500 ID:134 + 2 x PBM ID:833/789, VPN offen, Reboot nach Rücksprache

Ersteller
StefanW
Elaborated Networks
Reactions:
Beiträge: 9689
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 4831 Mal
Danksagung erhalten: 7633 Mal
Kontaktdaten:

#7

Beitrag von StefanW »

Hallo Dani,
danik hat geschrieben: Do Sep 12, 2019 12:30 pmCoole Sache die Ihr Euch da ausgedacht habt.
Jep, das ist schon eine tolle Erweiterung.

danik hat geschrieben: Do Sep 12, 2019 12:30 pmEs erfordert sicher ein umdenken, so wie bei anderen Punkten auch, aber ich denke damit hat man ein mächtiges Instrument wenn man damit umzugehen weis.
Richtig, wobei das jetzt nicht soviel Aufwand zum Nachdenken machen sollte, denn wir wollen die Dinge ja einfach halten.

Ansich muss man unsere Logik ohnehin nie neu starten, aber für künftige Beta-Tests (mit freiwilligen Beta-Testern), bei Major-Upgrades und wenn jemand seine Elektrik umbaut und den Server dafür kurzzeitig außer Betrieb nehmen muss, nimmt diese Persistenzfunktion fast alle Schmerzen des WIederanlaufes weg, die es bei allen Event-basierten Logiken gibt. Hier also eine starke Vereinfachung.

Bei längerer Offtime in Verbindung mit Triggern sollte man nachdenken, was passiert, wenn Dinge nachgeholt werden oder die Logik mit einem veralteten Status startet. Daher bei wichtigen oder teuren Dingen hier besser die Logikzelle aus der Persistenz herausnehmen, so dass immer nur mit aktuellen Werten gearbeitet wird. Aber das liegt nun in Eurer Hand.


Das Thema "Read-Request" bei Initialisierung ist dann noch eine tolle Ergänzung, aber dafür müssen wir die Architektur ein wenig aufrüsten, weil es soll ja nicht nur mit dem KNX funktionieren, sondern auch mit anderen Bussystemen. Es würde dann auch beim Initialisieren einer neu geschriebenen Logik helfen.

danik hat geschrieben: Do Sep 12, 2019 12:30 pmIch freue mich darauf diese neuen Möglichkeiten zu nutzen.
Danke, sehr, das idas größte Kompliment an uns, wenn der Kunde sich über eine neue Funktion freut.

==> Bitte seid so lieb und tragt das auch in andere Foren. Viele Interessenten für Smarthome wissen nichts von den neuen technischen Möglichkeiten, die wir beim Timberwolf Server bieten und warum diese Leistungsmerkmale so wichtig sind.

lg

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.

danik
Reactions:
Beiträge: 391
Registriert: Mo Sep 10, 2018 8:40 pm
Hat sich bedankt: 256 Mal
Danksagung erhalten: 266 Mal

#8

Beitrag von danik »

StefanW hat geschrieben: Do Sep 12, 2019 1:27 pm Richtig, wobei das jetzt nicht soviel Aufwand zum Nachdenken machen sollte, denn wir wollen die Dinge ja einfach halten.
Ich hatte da vor allem an folgendes gedacht: Ich habe einen Status "Abwesend". Dieser wird über KNX gesetzt und lässt sich in den Logiken nun auch persistent speichern. Wenn ich den Server neu starte, starte ich auch CometVisu neu. Und diese kennt dann den korrekten/gespeicherten Wert nicht mehr. Dieses KNX-Objekt muss dann über eine Logik geführt werden (wo dann persistent gespeichert wird) und mit einem Timer (oder Flag) wieder auf den Bus gesendet werden, damit die Anzeige in CV stimmt. Gedanklich sollte dies dann so passen.

Gruss
Dani
TW 3500L (#882) + TW 950Q (#321, im Moment inaktiv), VPN offen, Reboot nach Rücksprache

Robert_Mini
Reactions:
Beiträge: 3741
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1164 Mal
Danksagung erhalten: 2058 Mal

#9

Beitrag von Robert_Mini »

Ja, nur dass die Option „Trigger after reboot“ noch als Eingangsoption bei den Eingängen fehlt.

Lg
Robert
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297

terseek
Reactions:
Beiträge: 265
Registriert: Mi Sep 05, 2018 1:09 pm
Hat sich bedankt: 492 Mal
Danksagung erhalten: 119 Mal

#10

Beitrag von terseek »

StefanW hat geschrieben: Do Sep 12, 2019 11:46 am ... und Stromausfall ist eher selten. ...
Das lese ich immer wieder und wollte schon lange mal etwas dazu schreiben, sorry Stefan, daß es nun gerade Dich trifft.

Diese Aussage mag in vielen Fällen zutreffen, es gibt jedoch auch viele Leute, die auf dem Dorf wohnen mit nicht so stabilen Netzen. Bei mir zum Beispiel ist Stromausfall etwas ganz normales; wenn es nur einmal im Monat vorkommt, dann freue ich mich, in der Regel ist es häufiger.

Der Strom ist meistens nur kurz unterbrochen, einige Sekunden oder einige Minuten; es kommt jedoch auch oft vor, daß ich eine Stunde oder sogar länger keinen Strom habe.

Daher freue ich mich auch sehr auf die persistente Logikengine, wird mir bestimmt viel helfen.
TWS 2600 ID:186 + 3 PBM, VPN offen, Reboot nach Vereinbarung
TWS 3500L ID:895 + 1 PBM, VPN offen, Reboot nach Vereinbarung
Antworten

Zurück zu „Logikengine & Logik-Editor“