MAX_2D_ARRAY-Baustein

Kurz-Information

NameMAX_2D_ARRAY_LINT, MAX_2D_ARRAY_ULINT, MAX_2D_ARRAY_LREAL
→POE-Typ→Funktion
KategorieIEC-Baustein, NumericEnh, Baustein mit interner Fehlerdiagnose
Konform zur →IEC-Norm

(plus) nicht in IEC-Norm vorgesehen

Grafische Schnittstelle

, ,

Verfügbar ab
  • Version 1.45.0 (für logi.CAD 3 ) – Anfangsvariante
  • Version 2.0.9 (für Bibliothek Standard) – grafische Schnittstelle mit Ein-/Ausgangsvariable

Funktionalität

Der Baustein liefert den größten aller Werte eines Arrays mit 2 Dimensionen, das über den Eingang A eingegeben ist. Dabei werden nur die ersten M Zeilen und N Spalten berücksichtigt. Das Array muss mindestens M Zeilen und N Spalten enthalten.

Eingänge, Ergebniswert

MAX_2D_ARRAY_LINTBezeichner→DatentypBeschreibung
Ein-/Ausgänge
(VAR_IN_OUT):
A
ARRAY [*,*] OF SINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_SIGNED
Array von variabler Länge
Eingänge:MUINTAnzahl der zu berücksichtigenden Zeilen
NUINTAnzahl der zu berücksichtigenden Spalten
Ergebniswert:LINT
  • Maximalwert
  • 0 im Fehlerfall oder wenn M oder N = 0
MAX_2D_ARRAY_ULINTBezeichner→DatentypBeschreibung
Ein-/Ausgänge
(VAR_IN_OUT):
A
ARRAY [*,*] OF USINTUINTUDINT oder ULINT
(entspricht dem →allgemeinen Datentyp ANY_UNSIGNED
Array von variabler Länge
Eingänge:MUINTAnzahl der zu berücksichtigenden Zeilen
NUINTAnzahl der zu berücksichtigenden Spalten
Ergebniswert:ULINT
  • Maximalwert
  • 0 im Fehlerfall oder wenn M oder N = 0
MAX_2D_ARRAY_LREALBezeichner→DatentypBeschreibung
Ein-/Ausgänge
(VAR_IN_OUT):
A
ARRAY [*,*] OF REAL, LREAL
(entspricht dem →allgemeinen Datentyp ANY_REAL
Array von variabler Länge
Eingänge:MUINTAnzahl der zu berücksichtigenden Zeilen
NUINTAnzahl der zu berücksichtigenden Spalten
Ergebniswert:LREAL
  • Maximalwert
  • 0.0 im Fehlerfall oder wenn M oder N = 0

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Interne Fehlerdiagnose für Baustein

Der Baustein prüft, ob die Größe des Arrays mindestens M Zeilen und N Spalten beträgt. Ist dies nicht der Fall, wird der Ausgang ENO des Bausteins auf Wert FALSE (oder eine Entsprechung) zurückgesetzt.

Beispiel für Verwendung im ST-Editor

FUNCTION_BLOCK ExampleMax2DArray
    VAR
        inputArray : ARRAY [1..2, -1..1] OF LINT := [2( [1, 2, 3])];
        result1, result2 : LINT;
        enoCheck1, enoCheck2 : BOOL;
    END_VAR
    
    result1 := MAX_2D_ARRAY_LINT(A := inputArray, M := 2, N := 3, ENO => enoCheck1);
    // 'result1' evaluates to value '3'. 'enoCheck1' evaluates to 'TRUE'.
    ENO := AND(result1 = 3, enoCheck1);
    
    result2 := MAX_2D_ARRAY_LINT(A := inputArray, M := 3, N := 2, ENO => enoCheck2);
    // 'enoCheck2' evaluates to 'FALSE' because 'inputArray' has only 2 rows.
    // 'result2' evaluates to '0'.      
    ENO := AND(ENO, result2 = 0, NOT(enoCheck2));
    
END_FUNCTION_BLOCK

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.