NEU! UPGRADE IP 10 verfügbar!
Timberwolf VISU jetzt mit Graphic V Upgrade
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
Damit kann nun jeder das Upgrade vornehmen und VISU & IFTTT testen. Alle Info hier: viewtopic.php?f=8&t=5074

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

4.6.7.7_ CUSTOM: IF-THEN (ELSE) Lösungen

Beschreibung: CUSTOM: IF-THEN (ELSE) Lösungen

Kategorie: Logiken

Link zu diesem Beitrag: Alles auswählen

[url=https://forum.timberwolf.io/app.php/kb/viewarticle?a=116&sid=fd904e060bcc68248f65438f41b9e101]Knowledge Base - 4.6.7.7_ CUSTOM: IF-THEN (ELSE) Lösungen[/url]

Wiki: https://elabnet.atlassian.net/wiki/spac ... -THEN-ELSE

Der Logikeditor des Timberwolfservers ist stark an die bekannten Bausteine in der Schaltungstechnik angelehnt und hier gibt es keine Wenn-Dann-
Sonst Blöcke. Dennoch lassen sich solche Konstrukte, die aus Hochsprachen oder so manchen graphischen Logikeditoren bekannt sind, im Timberwolflogikeditor sehr leicht und zum Teil sogar mit weniger Aufwand realisieren.

Wenn es sich nicht um rein binäre Logiken handelt muss jedoch zwischen Standard-Logiken und Custom-Logiken unterschieden werden. In diesem Beitrag wird der Ersatz einer IF-THEN (ELSE) / Wenn-Dann (Sonst) Logik mit einem Standardbaustein erklärt. Für Standard-Logiken schlagen Sie bitte in Kapitel 4.6.1 IF-THEN (ELSE) Lösungen nach.

Die Module innerhalb einer Custom-Logik kennen keine Eingangs-Schwellwerte oder Ausgangs-Mappings, daher müssen innerhalb einer Custom-Logik unterschiedliche Bausteine verwendet werden, wenn es sich um binäre oder numerische Vergleiche und Zuweisungen geht:

Binär lässt sich vermutlich immer eine AND-Logik verwenden. Numerisch kann man die Aufgaben mit folgenden Modulen sinnvoll lösen:
KonstruktRealisierung
IF THEN"Latch"
IF THEN ELSE"Multiplexer" (mit bool Switch, aber nicht verwechseln mit BinärMultiplexer)
SWITCH CASE DEFAULT"Limiter", siehe viewtopic.php?f=24&t=1585&p=16639#p16639
Weitere Details können hier entnommen werden:
viewtopic.php?f=24&t=1585




Hier einmal ein Beispiel:
Ich möchte bei mir wegen Fensteranzeigen 4 Binärausgänge abhängig vom Zahlenwert (0-3) schalten.
$In ist ein Integer-Eingang mit möglichen Werten von 0 bis 3.
$Offen, $Gekippt, $Geschlossen, $Störung sind boolsche Ausgänge.

Die folgende Logik schaltet immer alle 4 Ausgänge true oder false (überlege mal wieviele Zeilen Code das bei If-then wären, da ist das hier schneller getippt.

Code: Alles auswählen

["Multiplexer",["$true", 0, 0, 0],"$Offen","$In“],
["Multiplexer",[0, "$true", 0, 0],"$Gekippt","$In“],
["Multiplexer",[0, 0, "$true", 0],"$Geschlossen","$In“],
["Multiplexer",[0, 0, 0, "$true"],"$Stoerung","$In“]