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

[Frage] [V1.6RC3] Parameter und Timer

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
Ide71
Reactions:
Beiträge: 41
Registriert: Mo Jan 07, 2019 5:32 pm
Hat sich bedankt: 78 Mal
Danksagung erhalten: 14 Mal

[V1.6RC3] Parameter und Timer

#1

Beitrag von Ide71 »

Hallo,
ich bin dabei mir eine Custom-Logik zu erstellen, die ich auch gerne später anderen im Forum bereitstellen will. Dabei bin ich auf zwei Probleme gestoßen, die ich selbst nicht lösen konnte und im Forum bisher hierzu auch nichts gefunden habe.

1. Ich will mit den Eingängen keine Objekte verknüpfen, sondern diese als Parameter haben. Ich kann das zwar auf der Oberfläche nachträglich manuell ändern, wenn ich es anderen weitergebe hätte ich das gerne aber schon von Anfang so. Kann man das bei den Input-Paramtern quasi "Funktion=Parameter" irgendwie vorgeben?

Bisher habe ich den Input-Paramter so hier definiert:

["Sekunde bis","Sekunde bis", "$s_to", "c"]


2. Ich will einen Trigger als Input-Parameter, der die Logik alle X Sekunden triggert. Auch das kann ich natürlich manuell auf der Oberfläche über das "+"-Symbol hinzufügen, hätte das aber gerne schon im Coding vorgesehen. Was muss ich hierfür tun?

Nochmal zur grafischen Erläuterung. So hier sehen meine Eingänge aus, nachdem ich die Logik gespeichert habe:
Logik1.png

Und so hier hätte ich es gerne ohne manuelle Nacharbeit:
Logik2.png

Danke und viele Grüße
Markus
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von Ide71 am Mi Aug 12, 2020 6:13 pm, insgesamt 1-mal geändert.
TWS 950 ID:467, VPN aktiv, Reboot nur nach Rücksprache

Robosoc
Reactions:
Beiträge: 1876
Registriert: Di Okt 09, 2018 9:26 am
Hat sich bedankt: 637 Mal
Danksagung erhalten: 775 Mal

#2

Beitrag von Robosoc »

Ide71 hat geschrieben: Mi Aug 12, 2020 4:30 pm wenn ich es anderen weitergebe hätte ich das gerne aber schon von Anfang so. Kann man das bei den Input-Paramtern quasi "Funktion=Parameter" irgendwie vorgeben?
100% Zustimmung. Das fehlt mir auch. Ist auch nicht nur zum weitergeben wichtig, sondern für mich auch beim erstellen von Logiken. Insbeosndere bei der Entwicklung einer komplexen Logik arbeite ich mich in Iterationsschritten vorwärts. Dabei muss ich manchmal - weil die Änderungen zu komplex gworden sind - eine komplett neue Logikzelle aufbauen. Und auch dafür ist es dann blöd, wenn man alle Parametereingänge immer wieder aufs Neue als solche definieren muss.

Was Du aber natürlich schon jetzt kannst, ist es dem Levenl, in das der Eingang geschrieben wird, eine entsprechenden Default-Wert zu verpassen. Dieser wird dann auch bei den Nutzern genutzt, die Deine Logik kopieren. Auch wenn sie es in der Obfläche nicht sehen. ABER: Schaltet jemand dieses Logik dann in den Doktormodus, so wird dieser Defaultwert anscheinend mit 0 oder false überschrieben. Das habe ich zum Beispiel bei Diskussionen zum Ratio-Baustein und auch in einem anderen Topic zum Trigger-Modul letztens hier gepostet, aber ich weiß nicht, ob das wieter verfolgt wird.
VG, Sven - TWS 950Q ID:335 & 291, VPN offen, Reboot OK

Robosoc
Reactions:
Beiträge: 1876
Registriert: Di Okt 09, 2018 9:26 am
Hat sich bedankt: 637 Mal
Danksagung erhalten: 775 Mal

#3

Beitrag von Robosoc »

Ide71 hat geschrieben: Mi Aug 12, 2020 4:30 pm 2. Ich will einen Trigger als Input-Parameter, der die Logik alle X Sekunden triggert. Auch das kann ich natürlich manuell auf der Oberfläche über das "+"-Symbol hinzufügen, hätte das aber gerne schon im Coding vorgesehen. Was muss ich hierfür tun?
Du kannst (und solltest meines Erachtens) in Customlogiken den Trigger durch das Modul Clocksignal (klicke hier) oder Cron (klicke hier)realisieren. Das sieht man dann aber nicht, so wie Du Dir das eventuell vorstelltst in der Logikzellenansicht. Aber um es dennoch irgendwie sichtbar zu machen und Triggerzeitpunkt auch änderbar zu machen, kannst Du zum Beispiel das Level Period vom Clocksignal ja als Eingangsparameter nach aussen führen. Allerdings mit den Einschränkungen, die Du selber unter 1. bereits beschrieben hast.
VG, Sven - TWS 950Q ID:335 & 291, VPN offen, Reboot OK

Ersteller
Ide71
Reactions:
Beiträge: 41
Registriert: Mo Jan 07, 2019 5:32 pm
Hat sich bedankt: 78 Mal
Danksagung erhalten: 14 Mal

#4

Beitrag von Ide71 »

Robosoc hat geschrieben: Do Aug 13, 2020 12:08 pm
Ide71 hat geschrieben: Mi Aug 12, 2020 4:30 pm 2. Ich will einen Trigger als Input-Parameter, der die Logik alle X Sekunden triggert. Auch das kann ich natürlich manuell auf der Oberfläche über das "+"-Symbol hinzufügen, hätte das aber gerne schon im Coding vorgesehen. Was muss ich hierfür tun?
Du kannst (und solltest meines Erachtens) in Customlogiken den Trigger durch das Modul Clocksignal (klicke hier) oder Cron (klicke hier)realisieren. Das sieht man dann aber nicht, so wie Du Dir das eventuell vorstelltst in der Logikzellenansicht. Aber um es dennoch irgendwie sichtbar zu machen und Triggerzeitpunkt auch änderbar zu machen, kannst Du zum Beispiel das Level Period vom Clocksignal ja als Eingangsparameter nach aussen führen. Allerdings mit den Einschränkungen, die Du selber unter 1. bereits beschrieben hast.
Danke, hab ich hier gleich eingebaut! ;)

Gruß
Markus
TWS 950 ID:467, VPN aktiv, Reboot nur nach Rücksprache

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

#5

Beitrag von StefanW »

Robosoc hat geschrieben: Do Aug 13, 2020 12:02 pm100% Zustimmung. Das fehlt mir auch. Ist auch nicht nur zum weitergeben wichtig, sondern für mich auch beim erstellen von Logiken.
Wenn hier etwas nötig ist, dann bitte einen FR erstellen und dort mit Beispiel usw. beschreiben, so, dass ich das leicht weitergeben kann.

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.
Antworten

Zurück zu „Logikengine & Logik-Editor“