FB_RandomPoseGenerator - SetPoseOrientationList (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 SetPoseOrientationList allows you to define constraints on position and orientation for the generation of a random Cartesian pose.
The orientation of the poses is randomly selected from a list of possible orientations provided by you.
To define a specific value for a constraint, set the minimum and the maximum to the same value.
i_astOrientationList[1].lrZ := 90.0;
i_astOrientationList[2].lrZ := 180.0;
i_alrOrientationProbabilityList[1] := 3.5;
i_alrOrientationProbabilityList[2] := 1.5;
oIn 1.5/5 (30%) of the cases, an orientation of 90 degrees about Z is used.
oIn 3.5/5 (70%) of the cases, an orientation of 180 degrees about Z is used.
Input |
Data type |
Description |
---|---|---|
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 by you. |
|
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 by you. |
|
i_astOrientationList |
ARRAY [1...Gc_udiMaxNumberOfOrientations] OF PDL.ST_Vector3D |
List of orientations expressed as roll, pitch, and yaw angles. The resulting Cartesian pose has an orientation randomly picked from this list accordingly with the values listed in i_alrOrientationProbabilityList. |
i_alrOrientationProbabilityList |
ARRAY [1... Gc_udiMaxNumberOfOrientations] OF LREAL |
List used to define the probabilities related to the random selection of an orientation from i_astOrientationList. The probability of each orientation 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 |
49 |
The sum of the orientation probabilities provided by you is zero. |
|
InputParameterInvalid |
50 |
A negative value for one of the probabilities related to the list of possible orientations was provided. |
|
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. |
|
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. |
OrientationProbabilitiesSumInvalid
Enumeration name: |
OrientationProbabilitiesSumInvalid |
Enumeration value: |
49 |
Description: |
The sum of the orientation probabilities provided is zero. |
Issue |
Cause |
Solution |
---|---|---|
The sum of the provided rotation probabilities is zero. |
The sum of the values contained in i_alrOrientationProbabilityList must be greater than 0. |
Verify that the sum of the provided probabilities is > 0. |
Enumeration name: |
OrientationProbabilityRange |
Enumeration value: |
50 |
Description: |
A negative value for one of the probabilities related to the list of possible orientations was provided. |
Issue |
Cause |
Solution |
---|---|---|
A negative value for one of the probabilities related to the list of possible orientations was provided. |
One of the probabilities inside i_alrOrientationProbabilityList has a negative value. |
Verify that every element of the array has a value of zero or a positive value. |
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. |
Provide a range that respects the following condition: i_stMinPosition.lrX ≤ i_stMaxPosition.lrX |
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. |
Provide a range that respects the following condition: i_stMinPosition.lrY ≤ i_stMaxPosition.lrY |
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. |
Provide a range that respects the following condition: i_stMinPosition.lrZ ≤ i_stMaxPosition.lrZ |
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. |