Funktionsbaustein: Skalierung
Der Skalierungsbaustein dient zur Umrechnung numerischer Eingangswerte auf eine neue Skala.
Er unterstützt zwei Verfahren: min/max-Normalisierung und lineare Skalierung nach einer Geradengleichung.
Funktionsweise
Der Baustein verarbeitet numerische Eingangswerte (FLOAT oder INT) und gibt einen entsprechend skalierten Wert zurück.
1. Min/Max-Skalierung (procedure = min_max)
- Der Eingabewert wird auf einen Bereich zwischen
minundmaxbegrenzt. - Anschließend erfolgt eine Skalierung auf einen Integer-Wertbereich von 0 bis 65535.
- Werte außerhalb des definierten Bereichs werden automatisch auf
minbzw.maxbegrenzt.
Formel:
output = (input - min) \* (65535 / (max - min))
2. Lineare Skalierung (procedure = linear)
- Der Eingangswert wird gemäß der linearen Gleichung
y = m·x + bskaliert. - Diese Methode eignet sich zur Umrechnung in beliebige Einheiten oder Bereiche.
Parameter
| Parameter | Beschreibung | Gilt für |
|---|---|---|
procedure |
Skaliermethode: min_max oder linear |
beide |
min |
Minimalwert für Skalierung (untere Grenze) | nur min_max |
max |
Maximalwert für Skalierung (obere Grenze) | nur min_max |
m |
Steigung für lineare Funktion | nur linear |
b |
Achsenabschnitt der linearen Funktion | nur linear |
Eingabe / Ausgabe
- Eingang: numerischer Wert (FLOAT oder INT)
- Ausgang:
min_max→ INT (0 … 65535)linear→ FLOAT
Nicht-numerische Eingaben führen zu einem Fehler.
Anwendungsbeispiele
- Normierung von Messwerten (z. B. Temperatur 0–100 °C → 0–65535)
- Umrechnung von physikalischen Einheiten (z. B. Spannung → Prozent)
- Anpassung von Steuergrößen für externe Systeme
Der Skalierungsbaustein ist ideal für alle Anwendungen, bei denen Eingangsdaten
in eine gewünschte Zielgröße transformiert werden müssen – z. B. zur Weiterverarbeitung oder Anzeige.