FB_EntitiesHandler - AddRobot (Method)

Overview

Type:

Method

Available as of:

V1.4.1.0

This chapter provides information on:

oTask

oDescription

oInterface

oDiagnostic Messages

Task

Add a new robot entity to the function block.

Description

The method AddRobot is used to add a new robot entity to the function block.

Once a robot has been stored with a specific ID, it is not possible to use such ID to store a new robot entity since every entity ID must be unique in the system.

The function block stores the value inside i_stData.stKinematicParameters but does not perform any validation of them.

Interface

Input

Data type

Description

i_stData

ST_RobotEntityData

Structure containing a description of a robot entity and the ID that is used to identify it inside the system.

Output

Data type

Description

q_etDiag

GD.ET_Diag

General library-independent statement on the diagnostic. A value unequal to GD.ET_Diag.Ok corresponds to a diagnostic message.

q_etDiagExt

ET_DiagExt

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.

Diagnostic Messages

q_etDiag

q_etDiagExt

Enumeration value of q_etDiagExt

Description

Ok

Ok

0

Ok

ExecutionAborted

MaxNumberOfRobotsExceeded

135

The maximum number of configurable robots is reached.

InputParameterInvalid

OrientationConventionInvalid

38

Invalid orientation convention.

InputParameterInvalid

RobotIdDuplicated

137

A robot entity already exists with the same ID.

InputParameterInvalid

RobotIdInvalid

120

A provided robot ID has an invalid value.

InputParameterInvalid

RobotNameInvalid

138

The name assigned to a robot entity is invalid.

MaxNumberOfRobotsExceeded

Enumeration name:

MaxNumberOfRobotsExceeded

Enumeration value:

135

Description:

The maximum number of configurable robots is reached.

Issue

Cause

Solution

A robot has not been added to the list.

It is not possible to add a new robot to the function block because the maximum number of robot Gc_udiMaxNumberOfRobots has been already stored.

Ensure to add a maximum of Gc_udiMaxNumberOfRobots robots to the function block.

Ok

Enumeration name:

Ok

Enumeration value:

0

Description:

Ok

Status message: A robot has been added successfully to the list.

OrientationConventionInvalid

Enumeration name:

OrientationConventionInvalid

Enumeration value:

38

Description:

Invalid orientation convention.

Issue

Cause

Solution

A robot has not been added to the list.

oi_stData.stBasePose.etOrientationConvention contains an invalid orientation convention value.

oi_stData.stBasePose.stModifiedCoordinateSystem contains an invalid orientation convention value

Ensure that the orientation convention has one of the following values:

oROB.ET_OrientationConvention.XYZ

oROB.ET_OrientationConvention.ZYX

Refer to Robotic Library - ET_OrientationConvention.

RobotIdDuplicated

Enumeration name:

RobotIdDuplicated

Enumeration value:

137

Description:

A robot entity already exists with the same ID.

Issue

Cause

Solution

A robot has not been added to the list.

The ID i_stData.etSystemId has already been assigned to another configured robot.

Ensure that every robot has a unique ID.

RobotIdInvalid

Enumeration name:

RobotIdInvalid

Enumeration value:

120

Description:

A provided robot ID has an invalid value.

Issue

Cause

Solution

A robot has not been added to the list.

i_stData.etSystemId does not contain a valid robot ID.

Ensure that i_stData.etSystemId contains a value in the range ET.SystemEntity.Robot1...ET_SystemEntity.Robot10.

RobotNameInvalid

Enumeration name:

RobotNameInvalid

Enumeration value:

138

Description:

The name assigned to a robot entity is invalid.

Issue

Cause

Solution

A robot has not been added to the list.

i_stData.sName contains an empty string.

Ensure that i_stData.sName does not contain an empty string.

i_stData.sName contains a string already assigned to another configured robot

Ensure that each robot has a unique name.