FB_RandomTargetsGenerator - SetTargetMatrixInPlaneRotationList (Methode)
Typ: |
Methode |
Verfügbar ab: |
V1.1.0.0 |
Dieses Kapitel enthält Informationen zu folgenden Aspekten:
Definieren eines Satzes von Einschränkungen zum Generieren einer Matrix mit Zielen
Die Methode SetTargetMatrixInPlaneRotationList ermöglicht Ihnen das Definieren eines Satzes mit Einschränkungen für die Erzeugung zufälliger Ziele, die in einer ausgewählten Arbeitsebene enthalten sind.
Die Rotation der Ziele wird nach dem Zufallsprinzip in der von Ihnen bereitgestellten Liste ausgewählt.
Zum Definieren eines spezifischen Werts für eine Einschränkung, setzen Sie das Minimum und das Maximum auf ein und denselben Wert.
Im Folgenden finden Sie ein Beispiel für die Erzeugung von Zielmatrizen:
Reihenfolge der Erzeugung von Zielen in Übereinstimmung mit der ausgewählten Arbeitsebene:
Reihenfolge der Erzeugung von Zielen gemäß der ausgewählten Arbeitsebene und dem Wert für i_stMatrixElementsStep:
i_alrRotationList[1] := 90.0;
i_alrRorationList[2] := 180.0;
i_alrRotationProbabilityList[1] := 3.5;
i_alrRotationProbabilityList[2] := 1.5;
oIn 1,5/5 (30%) aller Fälle wird der Rotationswert 90,0 verwendet.
oIn 3,5/5 (70%) aller Fälle wird der Rotationswert 180,0 verwendet.
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_udiNumberOfRows |
UDINT |
Anzahl der Zeilen in der Zielmatrix. |
i_udiNumberOfColumns |
UDINT |
Anzahl der Spalten in der Zielmatrix. |
i_etPlane |
Wird für die Auswahl einer Arbeitsebene verwendet (beispielsweise XY, XZ, YZ). Der Wert dieser Eingabe darf nicht ROB.ET_WorkingPlane.None entsprechen. Wenn eine spezifische Arbeitsebene ausgewählt wurde, beschreibt die generierte Darstellung eine Position in der Ebene (die Position entlang der dritten 3D-Achse wird auf 0 gesetzt) und eine Rotation über den Normalvektor mit Bezug auf die Ebene. |
|
i_stMatrixOriginPosition |
Position des Matrizenursprungs. Die Erzeugung der Ziele beginnt an dieser Position. Die Position muss in der ausgewählten Arbeitsebene enthalten sein. |
|
i_stMatrixElementStep |
Positionsschritte entlang der X-, Y- und Z-Achsen, die für die Erzeugung der Positionen in der Matrix verwendet werden. Der hier bereitgestellte Wert muss mit der ausgewählten Arbeitsebene kompatibel sein. |
|
i_alrRotationList |
ARRAY [1... Gc_uiMaxNumberOfRotations] OF LREAL |
Liste der Rotationen. Bei jedem Aufruf der Methode wird ein Rotationswert in Übereinstimmung mit den in i_alrRotationProbabilityList aufgelisteten Werten ausgewählt. |
i_alrRotationProbabilityList |
ARRAY [1... Gc_uiMaxNumberOfRotations] OF LREAL |
Liste für die Definition der Wahrscheinlichkeiten in Zusammenhang mit der zufälligen Auswahl einer Rotation aus i_alrRotationList. Die Wahrscheinlichkeit für jede Rotation wird als Verhältnis zwischen dem Wert, der jedem Element in dem Array zugewiesenen wurde, und der Gesamtsumme der aufgelisteten Werte bewertet. |
i_etOrientationConvention |
Konvention für die Rotationswinkel der Orientierung. |
|
i_alrTargetTypeProbabilityList |
ARRAY [1...Gc_uiMaxNumberOfTargetTypes] OF LREAL |
Jeder Index dieses Arrays ist mit einem spezifischen Zieltyp verbunden und jedes Element enthält einen Wert, der sich auf die Wahrscheinlichkeit der zufälligen Erzeugung eines Ziels mit einem bestimmten Zieltyp auswirkt. Die Wahrscheinlichkeit für jeden Zieltyp wird als Verhältnis zwischen dem Wert, der jedem Element in dem Array zugewiesenen wird, und der Gesamtsumme der aufgelisteten Werte ermittelt. Ein Beispiel: Ein Wert im Feld [1] des Arrays ist mit der Erzeugung von Zielen des Typs 1 verbunden, Feld [2] ist mit dem Typ 2 verbunden usw. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. EinWert ungleich GD.ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
Bausteinspezifischer Ausgang zur Diagnose. q_etDiag = ET_Diag.Ok -> Statusmeldung q_etDiag <> ET_Diag.Ok -> Diagnosemeldung |
|
q_sMsg |
STRING[80] |
Ereignisabhängige Meldung, die detaillierte Informationen zum Diagnosezustand übergibt. |
q_etDiag |
q_etDiagExt |
Enumerationswert von q_etDiagExt |
Beschreibung |
---|---|---|---|
Ok |
0 |
Die Parameter wurden erfolgreich geladen. |
|
InputParameterInvalid |
63 |
Die Anzahl der Zielspalten ist außerhalb des Bereichs. |
|
InputParameterInvalid |
62 |
Die Anzahl der Zielreihen ist außerhalb des Bereichs. |
|
InputParameterInvalid |
54 |
Anzahl der Ziele außerhalb des Bereichs. |
|
InputParameterInvalid |
57 |
Ungültiger Wert des X-Positionsschritts. |
|
InputParameterInvalid |
58 |
Ungültiger Wert des Y-Positionsschritts. |
|
InputParameterInvalid |
59 |
Ungültiger Wert des Z-Positionsschritts. |
|
InputParameterInvalid |
38 |
Ungültige Orientierungskonvention. |
|
InputParameterInvalid |
37 |
Die ausgewählte Arbeitsebene ist ungültig. |
|
InputParameterInvalid |
40 |
Der als Einschränkung für die zufällige Erzeugung bereitgestellte X-Positionsbereich ist ungültig. |
|
InputParameterInvalid |
41 |
Der als Einschränkung für die zufällige Erzeugung bereitgestellte Y-Positionsbereich ist ungültig. |
|
InputParameterInvalid |
42 |
Der als Einschränkung für die zufällige Erzeugung bereitgestellte Z-Positionsbereich ist ungültig. |
|
InputParameterInvalid |
49 |
Die Summe der von Ihnen bereitgestellten Rotationswahrscheinlichkeiten ist gleich Null. |
|
InputParameterInvalid |
48 |
Ein negativer Wert wurde für eine der Wahrscheinlichkeiten in Verbindung mit der Liste möglicher Rotationen bereitgestellt. |
|
InputParameterInvalid |
61 |
Die Summe der Wahrscheinlichkeiten ist Null. |
|
InputParameterInvalid |
60 |
Der Wert einer der Wahrscheinlichkeiten ist negativ. |
|
UnexpectedProgramBehavior |
39 |
Der zufällige Seed-Wert wurde mit einem ungültigen Wert initialisiert. |
Enumerationsname: |
NumberOfColumnsRange |
Enumerationswert: |
63 |
Beschreibung: |
Die Anzahl der Zielspalten liegt außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Anzahl der Zielspalten ist außerhalb des Bereichs. |
Die Anzahl der als Eingabe bereitgestellten Spalten liegt außerhalb des Bereichs [1, Gc_udiMaxNumberOfGeneratedTargets]. |
Prüfen Sie, ob der Wert für die Anzahl der Zeilen innerhalb eines angemessenen Bereichs liegt. |
Enumerationsname: |
NumberOfRowsRange |
Enumerationswert: |
62 |
Beschreibung: |
Die Anzahl der Zielzeilen liegt außerhalb des gültigen Bereichs. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Anzahl der Zielreihen ist außerhalb des Bereichs. |
Die Anzahl der als Eingabe bereitgestellten Zeilen liegt außerhalb des Bereichs [1, Gc_udiMaxNumberOfGeneratedTargets]. |
Prüfen Sie, ob der Wert für die Anzahl der Zeilen innerhalb eines angemessenen Bereichs liegt. |
Enumerationsname: |
NumberOfTargetsRange |
Enumerationswert: |
54 |
Beschreibung: |
Anzahl der Ziele außerhalb des gültigen Bereichs |
Problem |
Ursache |
Lösung |
---|---|---|
Der bereitgestellte Wert liegt außerhalb des Bereichs. |
Das Ziel von i_udiNumberOfRows und i_udiNumberOfColumns ist größer als Gc_udiMaxNumberOfGeneratedTargets. |
Prüfen Sie, ob i_udiNumberOfRows * i_udiNumberOfColumns ≤ Gc_udiMaxNumberOfGeneratedTargets. |
Enumerationsname: |
MatrixElementStepXRange |
Enumerationswert: |
57 |
Beschreibung: |
Ungültiger Wert des Schritts an der X-Position |
Problem |
Ursache |
Lösung |
---|---|---|
Ungültiger Wert des X-Positionsschritts. |
Der X-Positionsschritt des Matrixelements ist ungültig. |
Prüfen Sie, ob i_stMatrixElementsStep.lrX mit der ausgewählten Arbeitsebene kompatibel ist. |
Enumerationsname: |
MatrixElementStepYRange |
Enumerationswert: |
58 |
Beschreibung: |
Ungültiger Wert des Schritts an der Y-Position |
Problem |
Ursache |
Lösung |
---|---|---|
Ungültiger Wert des Y-Positionsschritts. |
Der Y-Positionsschritt der Matrixelemente ist ungültig. |
Prüfen Sie, ob i_stMatrixElementsStep.lrY mit der ausgewählten Arbeitsebene kompatibel ist. |
Enumerationsname: |
MatrixElementStepZRange |
Enumerationswert: |
59 |
Beschreibung: |
Ungültiger Wert des Schritts an der Z-Position |
Problem |
Ursache |
Lösung |
---|---|---|
Ungültiger Wert des Z-Positionsschritts. |
Der Z-Positionsschritt der Matrixelemente ist ungültig. |
Prüfen Sie, ob i_stMatrixElementsStep.lrZ mit der ausgewählten Arbeitsebene kompatibel ist. |
Enumerationsname: |
Ok |
Enumerationswert: |
0 |
Beschreibung: |
Ok |
Die Parameter wurden erfolgreich definiert.
Enumerationsname: |
OrientationConventionInvalid |
Enumerationswert: |
38 |
Beschreibung: |
Ungültige Ausrichtungskonvention |
Problem |
Ursache |
Lösung |
---|---|---|
Die Orientierungskonvention ist ungültig. |
Der Eingabewert i_etOrientationConvention ist ungültig. |
Stellen Sie einen der zulässigen Werte von ROB.ET_OrientationConvention bereit. |
Enumerationsname: |
PlaneInvalid |
Enumerationswert: |
37 |
Beschreibung: |
Die ausgewählte Arbeitsebene ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Die ausgewählte Arbeitsebene ist ungültig. |
Der bereitgestellte Wert identifiziert keine bekannte Arbeitsebene. |
Prüfen Sie, ob der Wert in diesem Satz ausgewählt wurde: oROB.ET_WorkingPlane.XY oROB.ET_WorkingPlane.XZ oROB.ET_WorkingPlane.YZ |
Enumerationsname: |
PositionXRange |
Enumerationswert: |
40 |
Beschreibung: |
Der als Einschränkung für die willkürliche Generierung bereitgestellte X-Positionsbereich ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Der als Einschränkung für die zufällige Erzeugung bereitgestellte X-Positionsbereich ist ungültig. |
Die X-Position des Matrizenursprungs ist ungültig. |
Prüfen Sie, ob i_stMatrixOriginPosition.lrX in der ausgewählten Arbeitsebene enthalten ist. |
Enumerationsname: |
PositionYRange |
Enumerationswert: |
41 |
Beschreibung: |
Der als Einschränkung für die willkürliche Generierung bereitgestellte Y-Positionsbereich ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Der als Einschränkung für die zufällige Erzeugung bereitgestellte Y-Positionsbereich ist ungültig. |
Die Y-Position des Matrizenursprungs ist ungültig. |
Prüfen Sie, ob i_stMatrixOriginPosition.lrY in der ausgewählten Arbeitsebene enthalten ist. |
Enumerationsname: |
PositionZRange |
Enumerationswert: |
42 |
Beschreibung: |
Der als Einschränkung für die willkürliche Generierung bereitgestellte Z-Positionsbereich ist ungültig. |
Problem |
Ursache |
Lösung |
---|---|---|
Der als Einschränkung für die zufällige Erzeugung bereitgestellte Z-Positionsbereich ist ungültig. |
Die Z-Position des Matrizenursprungs ist ungültig. |
Prüfen Sie, ob i_stMatrixOriginPosition.lrZ in der ausgewählten Arbeitsebene enthalten ist. |
Enumerationsname: |
RandomSeedInvalid |
Enumerationswert: |
39 |
Beschreibung: |
Der willkürliche Seed-Wert wurde mit einem ungültigen Wert initialisiert. |
Problem |
Ursache |
Lösung |
---|---|---|
Der zufällige Seed-Wert wurde intern auf einen ungültigen Wert gesetzt. |
- |
Kontaktieren Sie Ihren Schneider Electric-Ansprechpartner. |
RotationProbabilitiesSumInvalid
Enumerationsname: |
RotationProbabilitiesSumInvalid |
Enumerationswert: |
47 |
Beschreibung: |
Die Summe der bereitgestellten Rotationswahrscheinlichkeiten ist null. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Summe der von Ihnen bereitgestellten Rotationswahrscheinlichkeiten ist gleich Null. |
Die Summe der aufgelisteten Wahrscheinlichkeiten in der Eingabe i_alrRotationProbabilityList muss größer sein als 0. |
Prüfen Sie, ob die Summe der bereitgestellten Wahrscheinlichkeiten größer ist als 0. |
Enumerationsname: |
RotationProbabilityRange |
Enumerationswert: |
48 |
Beschreibung: |
Für eine der Wahrscheinlichkeiten in Verbindung mit der Liste der möglichen Rotationen wurde ein negativer Wert bereitgestellt. |
Problem |
Ursache |
Lösung |
---|---|---|
Ein negativer Wert wurde für eine der Wahrscheinlichkeiten in Verbindung mit der Liste möglicher Rotationen bereitgestellt. |
Eine der Wahrscheinlichkeiten innerhalb von i_alrRotationProbabilityList hat einen negativen Wert. |
Vergewissern Sie sich, dass jede Wahrscheinlichkeit entweder eine Null oder einen positiven Wert aufweist. |
TargetTypeProbabilitiesSumInvalid
Enumerationsname: |
TargetTypeProbabilitiesSumInvalid |
Enumerationswert: |
61 |
Beschreibung: |
Die Summe der Wahrscheinlichkeiten ist null. |
Problem |
Ursache |
Lösung |
---|---|---|
Die Summe der bereitgestellten Wahrscheinlichkeiten ist 0. |
Die Summe der aufgelisteten Wahrscheinlichkeiten in der Eingabe i_alrTargetTypeProbabilityList muss größer sein als 0. |
Prüfen Sie, ob die Summe der bereitgestellten Wahrscheinlichkeiten größer ist als 0. |
Enumerationsname: |
TargetTypeProbabilityRange |
Enumerationswert: |
60 |
Beschreibung: |
Der Wert einer der Wahrscheinlichkeiten ist negativ. |
Problem |
Ursache |
Lösung |
---|---|---|
Der Wert einer der Wahrscheinlichkeiten ist negativ. |
Eine der Wahrscheinlichkeiten innerhalb von i_alrTargetTypeProbabilityList hat einen negativen Wert. |
Vergewissern Sie sich, dass jede Wahrscheinlichkeit entweder den Wert 0 oder einen positiven Wert aufweist. |