FB_ConveyorWidthBalancing - SetData (Method)
Type: |
Method |
Available as of: |
V1.4.1.0 |
This chapter provides information on:
oTask
Set the additional information required by the algorithm to assign an owner to a target.
The method SetData, sets the additional information required by the algorithm to assign an owner to a target.
Input |
Data type |
Description |
---|---|---|
i_ifTargetsHandler |
Implementation of an IF_TargetsHandler interface that contains a list of targets. |
|
i_astRobotWidthRange |
ARRAY [ET_SystemEntity.Robot1...ET_SystemEntity.RobotOffset+Gc_udiMaxNumberOfRobots] OF ST_ValueRange |
List containing the minimum and maximum position along the width of the conveyor for each robot. |
i_aetRobotList |
ARRAY [1...Gc_udiMaxNumberOfRobots] OF ET_SystemEntity |
List of the robots to be considered by the algorithm. NOTE: No duplicated entries are allowed (for example, it is not possible to have two or more fields in the list with a value equal to Robot1) |
i_udiNumberOfRobots |
UDINT |
Number of robots in the list i_aetRobotList. |
i_astTrackingConstraints |
ARRAY [ET_SystemEntity.Robot1...ET_SystemEntity.RobotOffset+Gc_udiMaxNumberOfRobots] OF ST_RobotTrackingConstraints |
List of tracking constraints for each robot and for each tracking system. |
i_xAccuratePositionCalculation |
BOOL |
If set to TRUE, in case of a targets handler with slots, the algorithm considers the present position of the single slots to determine if they are or not inside the area described by the tracking constraints. If set to FALSE, even in case of a targets handler with slots, the algorithm considers the pose of the container target to determine if the slots are or not inside the area described by the tracking constraints. For more information, refer to IF_TargetsHandler - ConfigureSlotList. |
i_udiMaxNumberOfAssignmentsPerCall |
UDINT |
Limits the number of owner assignments per call to a specific number. The limit also includes those targets which owner is assigned to the next available number when i_xAssignNextOwner is set to TRUE. To prevent a high number of targets to be processed, limit the number of assignments per cycle. |
i_xAssignNextOwner |
BOOL |
If set to TRUE, every time a target in the list is not reachable by its owner, the target owner is automatically assigned to the next robot in the list i_aetRobotList (if available). |
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 |
160 |
The selected Cartesian direction is invalid. |
|
InputParameterInvalid |
122 |
A provided interface is invalid. |
|
InputParameterInvalid |
169 |
The value of the max number of assignments per call is out of range. |
|
InputParameterInvalid |
165 |
Number of robots out of range. |
|
InputParameterInvalid |
162 |
The values defined for a position range are not valid. |
|
InputParameterInvalid |
137 |
A robot entity already exists with the same ID. |
|
InputParameterInvalid |
120 |
A provided target ID refers to a container target. |
|
InputParameterInvalid |
161 |
The selected working plane is invalid. |
Enumeration name: |
CartesianDirectionInvalid |
Enumeration value: |
160 |
Description: |
The selected Cartesian direction is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_astTrackingConstraints contains an invalid direction value. |
Ensure that the Cartesian direction for each tracking system contains one of the following values: oROB.ET_RobotComponent.CartesianX oROB.ET_RobotComponent.CartesianY oROB.ET_RobotComponent.CartesianZ Refer to Robotic Library - ET_RobotComponent. |
Enumeration name: |
InterfaceInvalid |
Enumeration value: |
122 |
Description: |
A provided interface is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_ifTargetsHandler contains a null interface. |
Ensure that i_ifTargetsHandler contains a valid interface. |
MaxNumberOfAssignmentsPerCallRange
Enumeration name: |
MaxNumberOfAssignmentsPerCallRange |
Enumeration value: |
169 |
Description: |
The value of the max number of assignments per call is out of range. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_udiMaxNumberOfAssignmentsPerCall contains an invalid value. |
Ensure that i_udiMaxNumberOfAssignmentsPerCall > 0. |
Enumeration name: |
NumberOfRobotsRange |
Enumeration value: |
165 |
Description: |
Number of robots out of range. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_udiNumberOfRobots contains an invalid value. |
Ensure that i_udiNumberOfRobots <= Gc_udiMaxNumberOfRobots. |
Enumeration name: |
Ok |
Enumeration value: |
0 |
Description: |
Ok |
Status message: The data is successfully set.
Enumeration name: |
PositionRangeInvalid |
Enumeration value: |
162 |
Description: |
The values defined for a position range are not valid. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_astTrackingConstraints contains one or more entries for which the described minimum position is greater than the maximum position. |
Ensure that for each tracking system, the minimum position is set to a value equal or smaller than the maximum position. |
Enumeration name: |
RobotIdDuplicated |
Enumeration value: |
137 |
Description: |
A robot entity already exists with the same ID. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_aetRobotList contains two or more entries with the same value. |
Ensure that i_aetRobotList does not contain duplicated entries, and correct if necessary. |
Enumeration name: |
RobotIdInvalid |
Enumeration value: |
120 |
Description: |
A provided robot ID has an invalid value. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_aetRobotList contains one or more invalid robot IDs. |
Ensure that all the entries of i_aetRobotList are in the range [ET_SystemEntity.Robot1...ET_SystemEntity.Robot10.] |
Enumeration name: |
WorkingPlaneInvalid |
Enumeration value: |
161 |
Description: |
The selected working plane is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The data was not successfully set. |
i_astTrackingConstraints contains an invalid working plane value. |
Ensure that the working plane for each tracking system contains one of the following values: oROB.ET_WorkingPlane.XY oROB.ET_WorkingPlane.XZ oROB.ET_WorkingPlane.YZ Refer to, Robotic Library - ET_WorkingPlane. |