FB_RandomPoseGenerator - SetPoseInPlaneRotationList (Method)
Type: |
Method |
Available as of: |
V1.1.0.0 |
This chapter provides information on:
oTask
Define constraints on position and orientation for the generation of a random Cartesian pose.
The method SetPoseInPlaneRotationList allows you to define constraints on position and orientation for the generation of a random Cartesian pose contained in a selected working plane.
The rotation of the poses is randomly selected from a list of possible rotations provided.
To define a specific value for a constraint, set the minimum and the maximum to the same value.
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%) of the cases, a rotation value of 90.0 is used.
oIn 3.5/5 (70%) of the cases, a rotation value of 180.0 is used.
Input |
Data type |
Description |
---|---|---|
i_etPlane |
Used to select a working plane (for example, XY, XZ, YZ). The value of this input cannot be ROB.ET_WorkingPlane.None. While a specific working plane is selected, any generated pose describes a position contained in the plane (the position along the third 3D axis is set to 0) and a rotation about a vector normal to the plane. |
|
i_stMinPosition |
Minimum position value that a generated pose can take. It can be considered as the minimum Cartesian coordinate contained in a volume defined. |
|
i_stMaxPosition |
Maximum position value that a generated pose can take. It can be considered as the maximum Cartesian coordinate contained in a volume defined. |
|
i_alrRotationList |
ARRAY [1...Gc_uiMaxNumberOfRotations] OF LREAL |
List of rotations. On each call of the method, a rotation value is selected in accordance to the values listed in i_alrRotationProbabilityList. |
i_alrRotationProbabilityList |
ARRAY [1...Gc_uiMaxNumberOfRotations] OF LREAL |
List used to define the probabilities related to the random selection of a rotation from i_alrRotationList. The probability of each rotation is evaluated as the ratio between the value assigned to each element of the array and the total sum of the listed values. |
i_etOrientationConvention |
Convention for the rotation angles of the orientation. |
Output |
Data type |
Description |
---|---|---|
q_etDiag |
General library-independent statement on the diagnostic. A value unequal to GD.ET_Diag.Ok corresponds to a diagnostic message. |
|
q_etDiagExt |
POU-specific output on the diagnostic. q_etDiag = ET_Diag.Ok -> Status message q_etDiag <> ET_Diag.Ok -> Diagnostic message |
|
q_sMsg |
STRING[80] |
Event-triggered message that gives more detailed information on the diagnostic state. |
q_etDiag |
q_etDiagExt |
Enumeration value of q_etDiagExt |
Description |
---|---|---|---|
Ok |
0 |
Ok |
|
InputParameterInvalid |
38 |
Invalid orientation convention. |
|
InputParameterInvalid |
37 |
The selected working plane is invalid. |
|
InputParameterInvalid |
40 |
The X position range provided as constraint of the random generation is invalid. |
|
InputParameterInvalid |
41 |
The Y position range provided as constraint of the random generation is invalid. |
|
InputParameterInvalid |
42 |
The Z position range provided as constraint of the random generation is invalid. |
|
InputParameterInvalid |
47 |
The sum of the rotation probabilities provided is zero. |
|
InputParameterInvalid |
48 |
A negative value for one of the probabilities related to the list of possible rotations was provided. |
|
UnexpectedProgramBehavior |
39 |
The random seed value was initialized to an invalid value. |
Enumeration name: |
Ok |
Enumeration value: |
0 |
Description: |
Ok |
The set of constrains were successfully configured.
Enumeration name: |
OrientationConventionInvalid |
Enumeration value: |
38 |
Description: |
Invalid orientation convention. |
Issue |
Cause |
Solution |
---|---|---|
The orientation convention is invalid. |
The input value of i_etOrientationConvention is invalid. |
Provide one of the permissible values of ROB.ET_OrientationConvention. |
Enumeration name: |
PlaneInvalid |
Enumeration value: |
37 |
Description: |
The selected working plane is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The selected working plane is invalid. |
The provided value does not identify a known working plane. |
Verify that the value is chosen from this set: oROB.ET_WorkingPlane.XY oROB.ET_WorkingPlane.XZ oROB.ET_WorkingPlane.YZ |
Enumeration name: |
PositionXRange |
Enumeration value: |
40 |
Description: |
The X position range provided as constraint of the random generation is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The X position range provided as constraint of the random generation is invalid. |
The provided X position range is invalid. |
oProvide a range that respects the following condition: i_stMinPosition.lrX ≤ i_stMaxPosition.lrX oIf a working plane was selected, verify that i_stMinPosition.lrX and i_stMaxPosition.lrX are contained in the plane. |
Enumeration name: |
PositionYRange |
Enumeration value: |
41 |
Description: |
The Y position range provided as constraint of the random generation is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The Y position range provided as constraint of the random generation is invalid. |
The provided Y position range is invalid. |
oProvide a range that respects the following condition: i_stMinPosition.lrY ≤ i_stMaxPosition.lrY oIf a working plane was selected, verify that i_stMinPosition.lrY and i_stMaxPosition.lrY are contained the plane. |
Enumeration name: |
PositionZRange |
Enumeration value: |
42 |
Description: |
The Z position range provided as constraint of the random generation is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The Z position range provided as constraint of the random generation is invalid. |
The provided Z position range is invalid. |
oProvide a range that respects the following condition: i_stMinPosition.lrZ ≤ i_stMaxPosition.lrZ oIf a working plane was selected, verify that i_stMinPosition.lrZ and i_stMaxPosition.lrZ are contained the plane. |
Enumeration name: |
RandomSeedInvalid |
Enumeration value: |
39 |
Description: |
The random seed value was initialized to an invalid value. |
Issue |
Cause |
Solution |
---|---|---|
The random seed value was internally set to an invalid value. |
- |
Contact your Schneider Electric representative. |
RotationProbabilitiesSumInvalid
Enumeration name: |
RotationProbabilitiesSumInvalid |
Enumeration value: |
47 |
Description: |
The sum of the rotation probabilities provided is zero. |
Issue |
Cause |
Solution |
---|---|---|
The sum of the provided rotation probabilities is 0. |
The sum of the probabilities listed inside the input i_alrRotationProbabilityList must be greater than 0. |
Verify that the sum of the provided probabilities is > 0. |
Enumeration name: |
RotationProbabilityRange |
Enumeration value: |
48 |
Description: |
A negative value for one of the probabilities related to the list of possible rotations was provided. |
Issue |
Cause |
Solution |
---|---|---|
A negative value for one of the probabilities related to the list of possible rotations was provided. |
One of the probabilities inside i_alrRotationProbabilityList has a negative value. |
Verify that every probability has a value of zero or a positive value. |