Modulbausteine für Custom-Logiken

Diese Seite listet alle vorhandenen Modulbausteine in alphabetischer Reihenfolge auf und erläutert kurz die für den Aufruf eines Modulbausteins verwendete Syntax. Unter dem Modulnamen ist jeweils eine noch detailliertere Beschreibung zu jedem Modulbaustein verlinkt.

Liste der Modulbausteine

And
Gibt am Ausgang 1 aus, wenn alle Eingänge ungleich 0 sind.
["And",["$Variable1","$Variable2",... ,"$Variable_n"],"$Output"],

Astro
Berechnet Sonnenstand und verschiedene Zeitpunkte wie zB. Sonnenauf- bzw. Sonnenuntergang
[["Astro",0,0],"$Altitude","$Azimute","$Transit","$Sunrise","$Sunset","$Civil_dawn","$Civil_dusk","$Naut_dawn","$Naut_dusk","$Astro_dawn","$Astro_dusk","$Alt_moon",$Azi_moon"]],

BinaryDemultiplexer
Aus n binären Eingängen wird ein Integer-Wert mit 2n möglichen Zuständen berechnet.
["BinaryDemultiplexer","$Eingang",["$bit0","$bit1","$bit2",...]],

BinaryMultiplexer
Aus n binären Eingängen wird ein Integer-Wert mit 2n möglichen Zuständen berechnet.
["BinaryMultiplexer",["$In_D","$In_E","$In_F"],"$Output"],

BinaryStatistic
Wertet den Zustand von mehreren Binäreingängen statistisch aus.
["BinaryStatistic",["$VAR<Input!>"],"$MoreTrue","$FalseCount","$TrueCount"],

Break
Bricht die weitere Ausführung einer Logikzelle ab, sobald mindestens ein "True" am Break-Eingang anliegt.
["Break", ["$Eingang1","$Eingang2"]],

“CalcFormula”
Führt mathematische Rechnungen mit einer freier Eingabe aus.
["CalcFormula",["$Eingang_Eins","$Eingang_Zwei,"...","$Eingang_n"], "$Result", "$Formula"],

Clocksignal
Erzeugt einen zyklischen Trigger der in Kombination mit den Sendenoptionen die Ausführung der Logikzelle und das Senden auslöst.
["Clocksignal","$ConstTRUE","$Clk","$Period"]

Comparator
Schwellwertschalter in 2 Varianten mit/ohne Hysterese:
- ["Comparator" , "$Input_Wert" , "$Output" , "$Schwellwert"],
- ["Comparator" , "$Input_Wert" , "$Output" , ["$UntereSchwelle","$ObereSchwelle"]],

Concat
Fügt mehrere Zeichenketten zur einer langen Zeichenkette zusammen.
["Concat",["$Eingang_Eins","$Eingang_Zwei,"...","$Eingang_n"], "$Result"],

Cron
Triggert eine Logik zu definierten Zeitpunkten, die mittels Cron-String definiert werden.
["Cron","$Start","$Alarm","$NextTrigger","$CronExpr"],

Error
Die Errorhandling-Funktion ist kein eigenständiges Modul. Es ermöglicht das Ausgeben eines boolschen Wertes in Abhängigkeit davon, ob die Logik aufgrund eines Errors abgebrochen wurde oder nicht. Dies ergibt vor allem im Zusammenhang mit freien Formeln (CalcFormula), aber auch mit dem Baustein Ratio, Sinn (Division durch 0 = Fehler). Es wird kein Eintrag im Abschnitt MODULE benötigt, dafür aber ein Eintrag im Abschnitt LEVEL und ein Eintrag im Abschnitt OUTPUT.

HobbsMeter
Der Hobbsmeter ist ein Betriebsstundenzähler mit Resetfunktion.
["HobbsMeter","$State","$Time","$Reset"],

If-Then-Else
Der Logikeditor des Timberwolf Server orientiert sich stark an elektrischer Schaltungstechnik, in der es einen solchen Baustein so nicht direkt gibt. Siehe "Mit Bedingungen arbeiten".

Interpolation
Interpoliert zwischen den nächstgelegenen Stützpunkten den Funktionswert einer punktweise definierten Kennlinie.
["Interpolation","$In", "$Out", [ [x1,y1] , [x2,y2] , ... , [xn,yn ] ] ],

Latch
Ein Latch dient zum Zwischenzuspeichern eines Wertes zu einen bestimmten Zeitpunkt.
["Latch","$Eingang","$Ausgang","$Trigger",TriggerOption],

Limiter
Begrenzt den Eingangswert mit Minimal- und Maximalwert, dazwischen wird der Eingangswert auf den Ausgang geschrieben. $Val_ok liefert 1, wenn der Wert innerhalb liegt, sonst 0.
["Limiter","$In_val","$Out_val","$Val_ok",["$Min", "$Max"]],

Localtime
Mit diesem Baustein kann die aktuelle Linux-Zeit bzw. einzelne Komponenten ausgelesen werden.
["Localtime",0,"$Utime","$Sec","$Min","$Hour","$Mday","$Mon","$Year","$Wday","$Yday","$IsDst"]

Lowpass
Der Tiefpass glättet Zeitsignale. Die Stärke der Glättung wird mit $Time_const bestimmt.
["Lowpass","$In_val","$Out_val","$Time_const"],

Monoflop
Timer mit Verzögerungszeit und verschiedenen Triggeroptionen (0..7)
["Monoflop","$Trigger","$Reset","$Ausgang","$Verzögerungszeit",TriggerOption (0-7)],

Multiplexer
Mit diesem Baustein können mehrere Eingänge selektiv auf einen Ausgang gelegt werden.
["Multiplexer",["$KonstNull","$KonstEins","$KonstZwei","$KonstDrei"],"$Out","$Select"],

Or
Gibt am Ausgang 1 aus, sobald einer der Eingänge ungleich 0 ist.
["Or" , ["$Variable1" , "$Variable2",... ,"$Variable_n"], "$Output"],

Polynomial
Berechnet den Funktionswert eines Polynoms der Form: f(x)=A0 + A1 * X + A2 * X^2 + ... + An * X^n
["Polynomial", "$Variable_X", "$Ergebnis",["$A0", "$A1", "$A2", ..., "$An"]],

Ramp
Rampenfunktion zum schrittweisen Annähern an einen neuen Zielwert.
["Ramp","$In","$Out","$Active","$Step","$Period"],

Printf
Wandelt eine Ganz- oder Gleitkommazahl in eine Zeichenkette um, mit der Möglichkeit zusätzlichen Text wie Einheiten hinzuzufügen.
["Printf","$In","$StringFormat", "$out"],

Ratio
Berechnet das Verhältnis von 2 Zahlenwerten (Division).
["Ratio", "$Input_Zähler", "$Output_Verhältnis", "$Input_Nenner"],

SendExplicit
Mit diesem Modul lässt sich für ein (Ausgangs-)Level explizit festlegen, ob es gesendet werden soll.
["SendExplicit","$SendCond","$Out_val",SendeOption(0-3)],

Statemachine
Zustandsautomat mit optionalem Timeout-Timer.
["Statemachine", [Zustandsübergangstabelle], "$State"],

Statistic
Liefert Min./Max./Median/Mittelwert aus mehreren Eingängen.
["Statistic",[ "Input1","Input2","Input3" ],"$Min","$Max","$Mean", "$Median"],

Step
Mit dieser Funktion kann ein Signalverlauf in eine Stufenfunktion verändert werden.
["Step","$Input","$Output","$Stepped","$Absolute","$Relative"],

Stringcompare
Ermöglicht den Vergleich von Zeichenketten auf verschiedene Arten.
["Stringcompare", "$In", "$Out", "$CompareTo", "$Mode"]

Stopwatch
Stopwatch erlaubt die Zeitmessung zw. Start ($In = 1) und Stop ($In = 0).
["Stopwatch","$In", "$Time"],

Triggered
Erlaubt die Auswertung, welcher Eingang die Auswertung der Logikzelle getriggert hat.
["Triggered","$Input","$Touched"],

Wakeup
Mittels Wake-up wird ein Trigger (Wecker) zu einem bestimmten Zeitpunkt erzeugt.
["Wakeup","$Utime_start","$Status"],

Xor
Exklusive Oder-Verknüpfung: Gibt am Ausgang TRUE aus, sofern die Anzahl der Eingänge, an denen ein TRUE anliegt, eine ungerade Zahl ist.
["Xor", ["$InB1", "$InB2",... ,"$InB_n"], "$OutB"],

2019 - 2023 by Elaborated Networks GmbH / Impressum / Datenschutzerklärung