FB_BA_MultiCalc_XX

Die Multi-Kalkulations-Bausteine existieren für die Variablentypen LREAL und REAL, haben jedoch alle die gleiche Funktionalität.
Exemplarisch wird hier der Baustein FB_BA_R08 beschrieben.
Der Funktionsbaustein ermittelt im aktivierten Zustand (bEn=TRUE) aus den 8 Eingangswerten r01...r08 folgendes:
- den Maximalwert von allen Eingängen rMax
- den Eingang, an dem dieser Maximalwert anliegt udiMinActv
- den Minimalwert von allen Eingängen rMin
- den Eingang, an dem dieser Minimalwert anliegt udiMinActv
- den Mittelwert aller Eingänge rAvrg
- die Summe aller Eingänge rSum
- die Differenz zwischen dem Maximal- und Minimalwert rDiff
Sollen nicht alle Eingänge zur Berechnung kommen, so lässt sich die Anzahl durch einen Eintrag an udiNum einschränken: mit udiNum=6 beispielsweise werden die Berechnungen nur für die Eingänge r01...r06 durchgeführt.
Ein Eintrag größer als 8 wird automatisch auf 8 limitiert, ein Eintrag kleiner als 1 automatisch auf 1.
Beispiel:
Eingänge | Ausgang |
---|---|
bEn = TRUE | rMax = 32 |
r01 = 32 | udiMaxActv = 1 |
r02 = 17 | rMin = 5 |
r03 = 5 | udiMinActv = 3 |
r04 = 9 | rAvrg = 18.5 |
r05 = 16 | rSum = 111 |
r06 = 32 | rDiff = 27 |
r07 = 25 |
|
r08 = 44 |
|
udiNum = 6 |
|
Bei bEn=FALSE wird an allen Ausgängen 0 ausgegeben.
VAR_INPUT
bEn : BOOL;
r01 : REAL;
r02 : REAL;
r03 : REAL;
r04 : REAL;
r05 : REAL;
r06 : REAL;
r07 : REAL;
r08 : REAL;
udiNum : UDINT;
bEn: Aktivierung der Bausteinfunktion.
r01...r08: Eingangswerte, aus denen berechnet werden soll.
udiNum: Anzahl der Eingangswerte, mit denen gerechnet wird.
VAR_OUTPUT
rMax : REAL;
udiMaxActv : UDINT;
rMin : REAL;
udiMinActv : UDINT;
rAvrg : REAL;
rSum : REAL;
rDiff : REAL;
rMax: Maximalwert von allen Eingängen.
udiMaxActv: Eingang, an dem der Maximalwert anliegt.
rMin: Minimalwert von allen Eingängen.
udiMinActv: Eingang, an dem der Minimalwert.
rAvrg: Mittelwert aller Eingänge.
rSum: Summe aller Eingänge.
rDiff: Differenz zwischen dem Maximal- und Minimalwert.
Voraussetzungen
Entwicklungsumgebung | Erforderliche SPS-Bibliothek |
---|---|
TwinCAT ab v3.1.4024.7 | Tc3_BA ab v1.1.6.0 |