Modulbausteine für Custom-Logiken

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.

 

Verwendete Symbole

Zeit

Text

Umwandlung

Licht und Farbe

Binäre Logik

Mathematik

Liste der Modulbausteine

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

Astro (Modulbaustein)
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 (Modulbaustein)
Aus n binären Eingängen wird ein Integer-Wert mit 2n möglichen Zuständen berechnet.
["BinaryDemultiplexer","$Eingang",["$bit0","$bit1","$bit2",...]],

BinaryMultiplexer (Modulbaustein)
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 (Modulbaustein)
Wertet den Zustand von mehreren Binäreingängen statistisch aus.
["BinaryStatistic",["$VAR<Input!>"],"$MoreTrue","$FalseCount","$TrueCount"],

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

Calc Formula (Modulbaustein)
Führt mathematische Rechnungen mit einer freier Eingabe aus.
["CalcFormula",["$Eingang_Eins","$Eingang_Zwei","...","$Eingang_n"], "$Result", "$Formula"],

Clocksignal (Modulbaustein)
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 (Modulbaustein)
Schwellwertschalter in 2 Varianten mit/ohne Hysterese:
- ["Comparator" , "$Input_Wert" , "$Output" , "$Schwellwert"],
- ["Comparator" , "$Input_Wert" , "$Output" , ["$UntereSchwelle","$ObereSchwelle"]],

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

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

HEX->INT (Modulbaustein)
Zeichenkette mit Hexadezimalwert in eine Zahl umwandeln
["HEX->INT","$In", $Out, $ByteSwap, $WordSwap],

HSV->RGB (Modulbaustein)
Konvertiert Farbwerte aus dem HSV-Farbraum Farbton (0-360), Sättigung (0-1), Helligkeit (0-1) in den RGB-Farbraum Rot (0-1), Grün(0-1), Blau (0-1)
["HSV->RGB", "$In_H", "$In_S", "$In_V", "$Out_R", "$Out_G", "$Out_B"]

HSV100->RGB255 (Modulbaustein)
Konvertiert Farbwerte aus dem HSV-Farbraum Farbton (0-360), Sättigung (0-100), Helligkeit (0-100) in den RGB-Farbraum Rot (0-255), Grün(0-255), Blau (0-255)
["HSV100->RGB255", "$In_H", "$In_S", "$In_V", "$Out_R", "$Out_G", "$Out_B"]

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 (Modulbaustein)
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 (Modulbaustein)
Interpoliert zwischen den nächstgelegenen Stützpunkten den Funktionswert einer punktweise definierten Kennlinie.
["Interpolation","$In", "$Out", [ [x1,y1] , [x2,y2] , ... , [xn,yn ] ] ],

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

Limiter (Modulbaustein)
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 (Modulbaustein)
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 (Modulbaustein)
Der Tiefpass glättet Zeitsignale. Die Stärke der Glättung wird mit $Time_const bestimmt.
["Lowpass","$In_val","$Out_val","$Time_const"],

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

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

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

Polynomial (Modulbaustein)
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 (Modulbaustein)
Rampenfunktion zum schrittweisen Annähern an einen neuen Zielwert.
["Ramp","$In","$Out","$Active","$Step","$Period"],

Regex (Modulbaustein)
Eine Zeichenkette auftrennen oder auf bestimmten Inhalt prüfen.
["Regex","$In","$Expression", "$HasMatch", "$Match", "$Group1", "$Group2", "$Group3", "$Group4", "$Group5"],

RGB->HSV (Modulbaustein)
Konvertiert Farbwerte vom RGB-Farbraum Rot (0-1), Grün (0-1), Blau (0-1) in den HSV-Farbraum Farbton (0-360), Sättigung (0-1), Helligkeit (0-1)
["RGB->HSV", "$In_R", "$In_G", "$In_B", "$Out_H", "$Out_S", "$Out_V"]

RGB255->HSV100 (Modulbaustein)
Konvertiert Farbwerte vom RGB-Farbraum Rot (0-255), Grün (0-255), Blau (0-255) in den HSV-Farbraum Farbton (0-360), Sättigung (0-100), Helligkeit (0-100)
["RGB255->HSV100", "$In_R", "$In_G", "$In_B", "$Out_H", "$Out_S", "$Out_V"]

Printf (Modulbaustein)
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 (Modulbaustein)
Berechnet das Verhältnis von 2 Zahlenwerten (Division).
["Ratio", "$Input_Zähler", "$Output_Verhältnis", "$Input_Nenner"],

Send Explicit (Modulbaustein)
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)],

SendToSimple (Modulbaustein)
Eine neue Nachricht erstellen und versenden.
["SendToSimple", "$Inhibit", "$Channel", "$Title", "$Message", "$Cateogry", "$Priority"]

SingleDigitCounter (Modulbaustein)
Ermitteln wie oft jede Ziffer (0–9) in einer beliebigen Anzahl von jeweils einstelligen Ganzzahlen vorkommt.
["SingleDigitCounter", ["$In1", "$In2",... ,"$InN"], "$Count0", ..., "$Count9"]

sRGB->xyY (Modulbaustein)
["sRGB->xyY", "$In_R", "$In_G", "$In_B", "$Out_x", "$Out_y", "$Out_Y"]
Konvertiert Farbwerte vom sRGB-Farbraum Rot (0-1), Grün (0-1), Blau (0-1) in den CIE 1931 xyY-Farbraum Koordinaten (0-1), Helligkeit (0-1)

sRGB255->xyY100 (Modulbaustein)
["sRGB255->xyY100", "$In_R", "$In_G", "$In_B", "$Out_x", "$Out_y", "$Out_Y"]
Konvertiert Farbwerte vom sRGB-Farbraum Rot (0-255), Grün (0-255), Blau (0-255) in den CIE 1931 xyY-Farbraum Koordinaten (0-1), Helligkeit (0-100)

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

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

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

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

StrLen (Modulbaustein)
Die Länge einer Zeichenkette ermitteln.
["StrLen","$In", "$Out", "$enableUTF8Count"]

STR->FLOAT (Modulbaustein)
Zeichenkette mit Dezimalzahl mit Nachkommastellen in eine Fließkommazahl umwandeln.
["STR->FLOAT","$In", $Out]

STR->INT (Modulbaustein)
Zeichenkette mit Dezimalzahl ohne Nachkommastellen in ganze Zahl umwandeln.
["STR->INT","$In", $Out]

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

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

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

Xor (Modulbaustein)
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"],