FC_DistanceTwoPolytopes

 

FC_DistanceTwoPolytopes - Allgemeine Informationen

Übersicht

Typ

Funktion

Verfügbar ab:

V1.0.3.0

Versionen:

Aktuelle Version

Aufgabe

Berechnung des Abstands zweier konvexer Polytope.

Beschreibung

Berechnet den Abstand der konvexen Polytope iq_stPolytope1 und iq_stPolytope2. Hierfür wird ein Iterationsverfahren verwendet.

Schnittstelle

Eingang

Datentyp

Beschreibung

i_lrAccuracy

LREAL

Maximal zulässiger Fehler für den berechneten Abstand.

Das Iterationsverfahren bricht ab, wenn der berechnete Abstand der Polytope um weniger als diesen Wert vom exakten Abstand abweicht. Je kleiner dieser Wert, desto genauer das Ergebnis und desto größer die Anzahl der erforderlichen Iterationsschritte.

Wertebereich > 0,0

Ausgang

Datentyp

Beschreibung

q_etDiag

GD.ET_Diag

Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose.

Ein Wert ungleich ET_Diag.Ok entspricht einer Diagnosemeldung.

q_etDiagExt

ET_DiagExt

POU-spezifischer, diagnosebezogener Ausgang.

q_etDiag = ET_Diag.Ok -> Statusmeldung

q_etDiag <> ET_Diag.Ok -> Diagnosemeldung

q_lrDistance

LREAL

Berechneter Abstand zwischen iq_stPolytope1 und iq_stPolytope2. Dieser Wert weicht maximal um i_lrAccuracy vom Abstand ab.

q_diNumberOfIterations

DINT

Anzahl der Iterationsschritte, die zur Abstandsberechnung erforderlich waren.

Ein-/Ausgang

Datentyp

Beschreibung

iq_stPolytope1

ST_Polytope

Konvexes Polytop 1

iq_stPolytope2

ST_Polytope

Konvexes Polytop 2

Diagnosemeldungen

q_etDiag

q_etDiagExt

Enumerationswert

Beschreibung

OK

Ok

0

OK

ExecutionAborted

MaxNumberOfIterationsExceeded

96

Die maximale Anzahl an Interationsschritten wurde überschritten.

InputParameterInvalid

AccuracyRange

118

Accuracy ist außerhalb des gültigen Bereichs.

InputParameterInvalid

NumberOfVerticesPolytope1Range

56

NumberOfVertices des Polytops 1 ist außerhalb des gültigen Bereichs.

InputParameterInvalid

NumberOfVerticesPolytope2Range

57

NumberOfVertices des Polytops 2 ist außerhalb des gültigen Bereichs.

UnexpectedProgramBehavior

UnknownState

2

Die POU befindet sich in einem undefinierten Zustand.

AccuracyRange

Enumerationsname:

AccuracyRange

Enumerationswert:

118

Beschreibung:

Accuracy ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

Am Eingang i_lrAccuracy wurde eine Zahl kleiner als Gc_lrZeroTolerance angelegt.

Es muss ein Wert größer als null angegeben werden.

MaxNumberOfIterationsExceeded

Enumerationsname:

MaxNumberOfIterationsExceeded

Enumerationswert:

96

Beschreibung:

Die maximale Anzahl an Interationsschritten wurde überschritten.

Problem

Ursache

Lösung

-

i_lrAccuracy wurde zu klein gewählt. Das numerische Annäherungsverfahren konvergiert nicht in weniger als Gc_diMaxNumberOfIterations Iterationsschritten auf ein solch genaues Ergebnis.

Es muss ein größerer Wert für i_lrAccuracy gewählt werden.

NumberOfVerticesPolytope1Range

Enumerationsname:

NumberOfVerticesPolytope1Range

Enumerationswert:

56

Beschreibung:

NumberOfVertices des Polytops 1 ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

 Am Eingang iq_stPolytope1.diNumberOfVertices wurde ein Wert kleiner als 1 oder größer als Gc_diMaxNumberOfVertices angelegt.

iq_stPolytope1.diNumberOfVertices muss zwischen 1 und Gc_diMaxNumberOfVertices gewählt werden.

NumberOfVerticesPolytope2Range

Enumerationsname:

NumberOfVerticesPolytope2Range

Enumerationswert:

57

Beschreibung:

NumberOfVertices des Polytops 2 ist außerhalb des gültigen Bereichs.

Problem

Ursache

Lösung

-

 Am Eingang iq_stPolytope2.diNumberOfVertices wurde ein Wert kleiner als 1 oder größer als Gc_diMaxNumberOfVertices angelegt.

iq_stPolytope2.diNumberOfVertices muss zwischen 1 und Gc_diMaxNumberOfVertices gewählt werden.

Ok

Enumerationsname:

Ok

Enumerationswert:

0

Beschreibung:

OK

Der Abstand wurde erfolgreich berechnet.

UnknownState

Enumerationsname:

UnknownState

Enumerationswert:

2

Beschreibung:

Die POU befindet sich in einem undefinierten Zustand.

Problem

Ursache

Lösung

-

Der interne Zustand der POU kann nicht bestimmt werden.

Bitte informieren Sie Ihren Schneider Electric-Ansprechpartner über diesen Fehler.