NEU! UPGRADE IP 10 verfügbar!
Optimierte Darstellung von VISU Editor und VISU Client - sowie viele weitere Verbesserungen
Infos im Wiki: https://elabnet.atlassian.net/l/cp/8HzePCm3

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 IP 10
Jetzt werden alle Fragen beantwortet. Das Video: https://youtu.be/_El-zaC2Rrs

[Gelöst] [V1.6 RC6] Ramp-Modul, Intervall wird nicht aktualisiert (WD-1810)

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
Antworten

Ersteller
Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 283 Mal
Danksagung erhalten: 195 Mal

[V1.6 RC6] Ramp-Modul, Intervall wird nicht aktualisiert (WD-1810)

#1

Beitrag von Matze76 »

Hallo zusammen,

ich habe mir ein paar neue Dimm-Logiken gebaut und habe noch ein Problem mit dem Ramp-Modul.

Die Kern-Logik enthält das Ramp-Modul und ist eine exakte Kopie des ersten Beispiel-Bausteins aus dem Einführungs-Thread (viewtopic.php?f=65&t=2025&p=22628&hilit=ramp#p21969)

Die Eingänge "Ziel" (steht auf C) und "Intervall" (steht auf U) dieser Kern-Logik werden durch einen vorgelagerten Custom-Baustein abhängig von verschiedenen Bedingungen "gefüttert". Es soll also je nach Situation mal schneller und mal langsamer in Richtung Zielwert gedimmt werden.

Wenn über die vorgelagerte Logik sowohl der Zielwert als auch der Intervallwert gleichzeitig neu gesetzt werden, werden für die Kern-Logik auf der Oberfläche im Doc-Modus auch beide Eingänge aktualisiert.

Problem: Der neue Intervall-Wert wird trotz Anzeige auf der Oberfläche von der Kern-Logik nicht verarbeitet. D.h. der Dimm-Vorgang läuft weiter mit dem vorher gültigen Intervall-Wert ab.

(Es spielt dabei keine Rolle, ob der Intervall-Eingang auf "U", "C" oder "A" steht.)

Habe ich hier ein Verständnisproblem oder einen Bug gefunden?
Zuletzt geändert von ms20de am Mi Nov 18, 2020 3:50 pm, insgesamt 1-mal geändert.
Grund: Ticketnummer hinzugefügt
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#2

Beitrag von Robert_Mini »

Vermutung: eine Änderung von Intervall wird bei laufender Rampe nicht übernommen.
Du müsstest also zuerst den neuen Interval schicken und dann die Rampe starten.

Lg
Robert

PS: gilt zb auch für Timer, da kann man bei laufendem Timer auch nicht die Dauer ändern (außer re-trigger)
Timberwolf Server 2500 / #117 (VPN offen + reboot nach Rückfrage) / zusätzlich: 3500M/#935, 3500L/#1297

Ersteller
Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 283 Mal
Danksagung erhalten: 195 Mal

#3

Beitrag von Matze76 »

Danke Robert. Ja, das klingt einleuchtend für die laufende Rampe.

Allerdings wird auch bei nicht laufender Rampe ein (vermeintlich) gleichzeitig zum Start-Trigger aktualisierter Intervall-Wert nicht berücksichtigt.

Beispiel:
- Ausgangslage: Rampe läuft nicht. Ziel-Wert = 0, Ist-Wert = 0, Intervall steht auf 2
- Über die vorgelagerte Logik kommen "gleichzeitig" ein neuer Ziel-Wert 100 (triggert die Logik) und der neue Intervall-Wert 25.

Meine Erwartung: Intern wird erst das Intervall auf Update geprüft und ggf. neu gesetzt (hier auf 25) und dann die Rampe gestartet.
Tatsächliches Ergebnis: Rampe läuft an in Richtung neues Ziel 100, aber immer noch mit Intervall 2.
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#4

Beitrag von Robert_Mini »

Hallo Matthias!

Du musst hier etwas umdenken:
Die Logik wird vom Dispatcher versorgt, die passiert Eingang für Eingang sequentiell.

Nachdem es zeitlich nie 2 gleichzeitige Trigger gibt, wird die Logik zuerst mit Eingang 1 => Rampe starten getriggert und danach mit dem neuen Intervall aufgerufen. Zu diesem Zeitpunkt läuft die Rampe bereits, wenn auch nur ein paar ms.

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

Ersteller
Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 283 Mal
Danksagung erhalten: 195 Mal

#5

Beitrag von Matze76 »

Hallo Robert,

danke, das war der entscheidende Denkanstoß!

Dass im Programm eine sequentielle Abarbeitung erfolgt, war mir klar. Aber ich bin davon ausgegangen, dass die aktualisierten Ausgänge einer Logik erst nach dem Durchlauf der Logik "im Paket" abgegeben werden, und so auch von anderen Bausteinen verarbeitet werden können/sollten.

Tatsächlich triggert aber Ausgang 1 von Logik A den Eingang 1 von Logik B schon bevor der Ausgang 2 von Logik A am anderen Eingang von Logik B ankommt.

Die Lösung lag also darin, die Reihenfolge der Ausgänge in der vorgelagerten Logik einfach zu tauschen: Erst den Intervall-Ausgang, dann den Wert-Ausgang. Dann ist in der zweiten Logik das Intervall bereits aktualisiert, wenn der geänderte Zielwert-Eingang die Logik triggert.
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache

Ersteller
Matze76
Reactions:
Beiträge: 314
Registriert: Mo Sep 24, 2018 9:59 am
Hat sich bedankt: 283 Mal
Danksagung erhalten: 195 Mal

#6

Beitrag von Matze76 »

... mein Verständnisproblem bei nicht laufender Rampe ist also gelöst. Bleibt noch die Frage, wie es bei laufender Rampe aussieht:

Ich beschreibe das mal anhand meines konkreten Anwendungsfalls:

- Die Aquarium-Beleuchtung ist tagsüber auf 100%. Zu einem bestimmten Zeitpunkt abends wird die Rampe mit dem Zielwert 0 getriggert (mit einem großen Intervallwert), um ganz langsam über mehr als eine Stunde die Beleuchtung herunterzudimmen.
- Will ich während des laufenden "Sonnenuntergangs" am Aquarium arbeiten, betätige ich einen Taster, wodurch die Logik zuerst den Intervallwert auf 2 und dann den Zielwert wieder auf 100 setzt.

Ergebnis:
1.) Die Rampe kehrt durch den neuen Zielwert um und läuft wieder in Richtung 100% - das passt.
2.) Der neue (kurze) Intervallwert wird dabei aber nicht berücksichtigt. Je nachdem, wie weit schon heruntergedimmt ist, müsste ich also ggf. über eine Stunde warten, bis wieder volle Beleuchtung da ist.

Robert hatte in seiner ersten Antwort ja schon vermutet, dass wohl ähnlich wie beim Timer nur durch re-triggern ein neues Intervall verarbeitet werden kann. Gibt es trotzdem eine Möglichkeit, diese Anforderung auf andere Art "smart" zu lösen?

Ansonsten würde ich auch einen FR für eine Re-Triggerbarkeit etc. der Rampe stellen.
Gruß
Matthias

TWS 2500 ID:110 + PBM, VPN offen, Reboot nach Rücksprache

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

#7

Beitrag von StefanW »

Hallo Matthias,

Stefan, unser Logikspezialist wird sich das noch ansehen

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.

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#8

Beitrag von Robert_Mini »

Lt.. Release Notes in RC7 gelöst.
@Matze76: Kannst du bitte testen und bestätigen, ob das nun so wie gewünscht funktioniert?

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

Robert_Mini
Reactions:
Beiträge: 3744
Registriert: So Aug 12, 2018 8:44 am
Hat sich bedankt: 1171 Mal
Danksagung erhalten: 2076 Mal

#9

Beitrag von Robert_Mini »

Auch wenn schon alt: Ich habe das Verhalten im Zuge der Doku-Prüfung gerade getestet => passt. Alle Parameter können auch während der aktiven Rampe angepasst werden.

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

Zurück zu „Logikengine & Logik-Editor“