Step (Modulbaustein)

Vereinfacht Zahlenänderungen auf vorgegebene Schrittweiten

Inhalt dieser Seite
richtet sich an
Experten

 

Syntax

["Step","$InF","$OutF","$Stepped","$Absolute","$Relative"]

Funktion

Mit diesem Modulbaustein kann ein Signalverlauf in eine Stufenfunktion verändert werden, d.h. der Eingangswert wird erst an den Ausgang übergeben, wenn eine definierte Differenz zur letzten Stufe überschritten wird; mithin wird eine Mindeständerung des Eingangswerts vor dem erneutem Senden erzwungen.
Zudem enthält der Modulbaustein auch einen optionalen logischen Ausgang, der anzeigt, ob beim letzten Trigger eine der Bedingungen erfüllt war und somit der Ausgang verändert wurde.

Der Wert von $InF wird an $OutF übernommen, wenn eine der folgenden vier Bedingungen erfüllt sind:

  • $Absolute >= 0 UND

    • $InF >= ($OutF + $Absolute)

    • $InF <= ($OutF - $Absolute)

  • $Relative >= 0 UND

    • $InF >= ($OutF + |$OutF * $Relative|)

    • $InF <= ($OutF - |$OutF * $Relative|)
      (Hinweis für mathematisch wenig geübte Leser: mit |$OutF * $Relative| wird ein Absolutbetrag, d.h. ein nicht negativer Wert, dargestellt)

Eingänge

  • "$InF"(float): zu prüfender Wert

  • "$Absolute"(float): geforderte Mindestveränderung als absoluter Wert

  • "$Relative"(float): geforderte Mindestveränderung als relativer Wert

Ausgänge

  • "$OutF"(floatl): Ergebnis der Berechnung

  • "$Stepped"(bool): Wird TRUE, sofern beim aktuellen Logikdurchlauf eine der vier Bedingungen erfüllt war, d.h. der Ausgang $OutF verändert wurde.

Besonderheiten

  • Zulässige Übergabe des Zahlenwerts 0:

    • Wird anstelle von "$Absolute" oder "$Relative" der Zahlenwert 0 übergeben, wird diese Bedingung nicht ausgewertet.

    • Wird der Ausgang "$Stepped" nicht benötigt, kann ebenfalls anstelle der Variablen der Zahlenwert 0 verwendet werden.

    • Beispiel: ["Step","$LamellePosOut","$LamellePosStpOut",0,"$LamellePosStep",0]: Weil am Eingang "$Relative" der Wert 0 steht, werden nur absolute Schritte und keine relativen Schritte ausgewertet; zudem wird der Ausgang "$Stepped" nicht ausgewertet.

Praktische Anwendungsbeispiele

  • Ausgabe der Behanghöhe in 10% Schritten, wenn die Berechnung in float feinere Werte liefert.  

Entsprechendes Logik-Modul

 Das Modul Step ist nicht als eigener Modulbaustein verfügbar.

 

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