FB_Robot - General Information

Overview

Type:

Function block

Available as of:

V1.0.0.0

Inherits from:

-

Implements:

oIF_Robot

oIF_DiagManager (no user interface)

oIF_RobotState (no user interface)

Versions:

Current version

NOTE: License points are required to use the function block FB_Robot.

License points are only required for library versions earlier than V2.6.1.0. For more information on license points, refer to License Model for PacDrive Software Packages.

Number of license points: 30

License string: ROB.Robot

The license points are requested during a successful call of a configuration method of a transfor­mation of IF_RobotConfiguration.

This chapter provides information on:

oTask

oDescription

oMethods

oProperties

oDiagnostic Messages

Task

POU to control robots.

Description

Central POU to control robot kinematics. The configuration and motion programming is performed via the interface IF_RobotConfiguration or IF_RobotMotion. The states of the robot kinematics can be determined via the IF_RobotFeedback interface.

The POU must be implemented in the user program. The POU is controlled via its properties.

Methods

Name

Description

RegisterLoggerPoint

Register the FB_Robot to the Application Logger.

Properties

Name

Data type

Accessing

Description

etDiag

GD.ET_Diag

Read

General library-independent statement on the diagnostic.

A value unequal to GD.ET_Diag.Ok corresponds to a diagnostic message.

etDiagExt

ET_DiagExt

Read

POU-specific output on the diagnostic.

q_etDiag = GD.ET_Diag.Ok -> Status message

q_etDiag <> GD.ET_Diag.Ok -> Diagnostic message

ifConfiguration

IF_RobotConfiguration

Read

Interface for the robot configuration.

ifFeedback

IF_RobotFeedback

Read

Interface with return values.

ifJogging

IF_RobotJogging

Read

Interface for manual motion of the robot.

ifMotion

IF_RobotMotion

Read

Interface for motion programming.

ifWarmStart

IF_RobotWarmStart

Read

Interface to access the warm start interface of the robot.

sMsg

STRING[80]

Read

Event-triggered message that gives more detailed information on the diagnostic state.

xActive

BOOL

Read

TRUE: The POU is active and has to be executed further.

FALSE: The POU is inactive.

xDiagQuit

BOOL

Read/Write

A rising edge FALSE -> TRUE acknowledges the following diagnostic messages:

etDiag = GD.ET_Diag.ConfigurationFailed

etDiagExt = ET_DiagExt.ConfigInvalid

xEnable

BOOL

Read/Write

A rising edge FALSE -> TRUE activates the POU, a falling edge TRUE -> FALSE deactivates the POU.

A deactivated POU does not execute any actions.

xReady

BOOL

Read

TRUE: The POU is ready to operate and can accept user commands.

FALSE: The function block is not ready to accept user commands.

xStart

BOOL

Read/Write

TRUE: Motion commands issued via the IF_RobotMotion interface are started.

FALSE: Active motions are stopped and can be continued by setting xStart: = TRUE again. The robot can be positioned via the IF_RobotJogging interface.

xWsSelect

BOOL

Read/Write

TRUE: A warm start motion is pre-selected.

xWsStart

BOOL

Read/Write

TRUE: If xWsSelect = TRUE, the robot moves to the last detected path position.

To perform a warm start, it is necessary to re-enable the FB_Robot by setting xEnable to FALSE and TRUE again.

Diagnostic Messages

q_etDiag

q_etDiagExt

Enumeration value

Description

OK

CommandProcessing

57

The robot is processing a command.

Disabled

51

Disabled

Initializing

19

Initializing

Jogging

47

Jogging

WaitForNewCommand

56

The robot is waiting for a new command.

WaitForStart

55

The robot is waiting for start.

WaitForVelOverride

145

The robot is waiting for VelOverride.

WaitUntilColdStartFinished

2

The robot is performing a cold start.

WaitUntilDisabled

122

The robot is going to be disabled.

WaitUntilWarmStartFinished

46

The robot is performing a warm start.

WarmStartWaitForWsStart

62

The robot will perform a warm start.

ConfigurationFailed

ConfigInvalid

1

The configuration is invalid.

SchneiderElectricRobotFailed

157

Executing a Schneider Electric robot was not successful.

DiagActive

SchneiderElectricRobotFailed

157

Executing a Schneider Electric robot was not successful.

DriveConditionInvalid

DriveInvalid

92

The drive is invalid.

DriveNotReady

85

A drive is not ready.

ExecutionAborted

AxisPositionRange

103

Axis position range exceeded.

ComponentNotConfigured

198

The component is not configured.

NotOnPath

63

The robot is not on the path.

OutsideWorkspace

104

Outside of workspace.

PathPositionEndExceeded

29

The end position on the path was exceeded.

SetPosDetected

174

A SetPos has been detected.

WarmStartNotPossible

173

A warm start is not possible.

DriveNotConfigured

65

The drive is not configured.

AuxiliaryAxisNotConfigured

127

The auxiliary axis is not configured.

ExternalPositionSourceConfigured

205

The external position source is configured.

LimitReached

ExcessiveTrackingDeviationLimitExceeded

121

The tracking deviation limit was exceeded.

WorkEnvelope

159

Diagnostic message concerning the work envelope is active.

UnexpectedProgramBehavior

LicenseCheckFailed

6

The license check was not successful.

RefPositionInvalid

90

The Ref position is invalid.

UnexpectedFeedback

13

A feedback value was invalid.

UnexpectedMovement

82

The movement was invalid.

UnexpectedValue

111

The value was invalid.

AuxiliaryAxisNotConfigured

Enumeration name:

AuxiliaryAxisNotConfigured

Enumeration value:

127

Description:

The auxiliary axis is not configured.

Issue

Cause

Solution

Usage of additional transformation axes was not successful.

A position value unequal to zero of an unconfigured auxiliary axis was calculated and transferred to the robot.

Ensure that a position value equal to zero is transferred the not configured auxiliary axis.

AxisPositionRange

Enumeration name:

AxisPositionRange

Enumeration value:

103

Description:

Axis position range exceeded.

Issue

Cause

Solution

The robot is not ready for operation.

A movement of the robot leads to one or more axes being outside the operation zone of the robot.

Ensure that the movement of the robot is inside the operation zone of the robot.

CommandProcessing

Enumeration name:

CommandProcessing

Enumeration value:

57

Description:

The robot is processing a command.

The robot is ready for operation.

The robot is processing motion commands that were issued with the IF_RobotMotion interface.

ComponentNotConfigured

Enumeration name:

ComponentNotConfigured

Enumeration value:

198

Description:

The component is not configured.

Issue

Cause

Solution

Using additional transformation TCP was not successful.

A position value unequal to zero of an unconfigured TCP component was calculated and transferred to the robot.

Ensure that a position value equal to zero is transferred to the not configured TCP component.

ConfigInvalid

Enumeration name:

ConfigInvalid

Enumeration value:

1

Description:

The configuration is invalid.

Issue

Cause

Solution

The robot is not ready for operation.

The configuration of the robot has not been completed yet.

A valid transformation, for example IF_RobotConfiguration.Delta3Ax, has to be configured.

Valid emergency parameters have to be set by calling the method IF_RobotConfiguration.SetEmergencyParameter.

In order to complete the configuration of the robot, the method IF_RobotConfiguration.ConfigDone has to be called.

If the configuration was successfully completed, then IF_RobotConfiguration.xConfigDone is set to TRUE.

Disabled

Enumeration name:

Disabled

Enumeration value:

51

Description:

Disabled

The robot is deactivated, no actions are executed.

FB_Robot.xEnable and FB_Robot.xActive have the value FALSE.

Set FB_Robot.xEnable to TRUE to enable the robot.

DriveInvalid

Enumeration name:

DriveInvalid

Enumeration value:

92

Description:

The drive is invalid.

Issue

Cause

Solution

The robot is not ready for operation.

A drive that was transferred at the input i_ifDrive (or i_ifDriveA, i_ifDriveB, ...) is invalid.

Ensure that a valid drive is transferred at the input i_ifDrive.

DriveNotConfigured

Enumeration name:

DriveNotConfigured

Enumeration value:

65

Description:

The drive is not configured.

Issue

Cause

Solution

Usage of additional transformation axes was not successful.

A position value unequal to zero of an unconfigured robot axis was calculated and transferred to the robot.

Ensure that a position value equal to zero is transferred to the not configured robot axes.

DriveNotReady

Enumeration name:

DriveNotReady

Enumeration value:

85

Description:

A drive is not ready.

Issue

Cause

Solution

The robot is not ready for operation.

At least one drive of the robot is not ready.

Ensure that the drives are ready before enabling the robot.

ExcessiveTrackingDeviationLimitExceeded

Enumeration name:

ExcessiveTrackingDeviationLimitExceeded

Enumeration value:

121

Description:

The tracking deviation limit was exceeded.

Issue

Cause

Solution

The robot is not ready for operation.

The tracking deviation of a robot component is greater than the value tracking deviation limit multiplied by the tracking deviation factor set by IF_RobotConfigurationAdvanced.SetTrackingDeviationLimit.

Verify the maximum velocity and/or acceleration of the robot movement in connection with the product that is moved.

ExternalPositionSourceConfigured

Enumeration name:

ExternalPositionSourceConfigured

Enumeration value:

205

Description:

The external position source is configured.

Issue

Cause

Solution

The motion job was aborted.

An external position source for the robot components cartesian, orientation and auxiliary axes is configured.

Do not set the motion parameter for the component VelOverride. Setting the VelOverride is not possible when an external position source for the robot components is configured.

Initializing

Enumeration name:

Initializing

Enumeration value:

19

Description:

Initializing

The robot is being initialized.

FB_Robot.xEnable was set to TRUE.

The value of FB_Robot.xActive is TRUE.

The robot is being initialized. Wait until FB_Robot.xReady is also set to TRUE.

Jogging

Enumeration name:

Jogging

Enumeration value:

47

Description:

Jogging

Jogging is active.

The robot is manually moved with the IF_RobotJogging interface.

LicenseCheckFailed

Enumeration name:

LicenseCheckFailed

Enumeration value:

6

Description:

The license check was not successful.

The robot is not ready for operation.

NotOnPath

Enumeration name:

NotOnPath

Enumeration value:

63

Description:

The robot is not on the path.

Issue

Cause

Solution

The robot is not ready for operation.

IF_RobotJogging.Start with ET_RobotComponent.Path selected while robot is not on the path.

Perform a warm start to get back on the path before executing IF_RobotJogging.Start with ET_RobotComponent.Path.

FB_Robot.xStart is set to TRUE while robot is not on the path.

Perform a warm start to get back on the path before setting FB_Robot.xStart to TRUE.

OutsideWorkspace

Enumeration name:

OutsideWorkspace

Enumeration value:

104

Description:

Outside of workspace.

Issue

Cause

Solution

The robot is not ready for operation.

A movement of the robot leads to a cartesian coordinate being outside the operation zone of the robot.

Ensure that the movement of the robot is inside the cartesian operation zone of the robot.

PathPositionEndExceeded

Enumeration name:

PathPositionEndExceeded

Enumeration value:

29

Description:

The end position on the path was exceeded.

The robot is not ready for operation.

RefPositionInvalid

Enumeration name:

RefPositionInvalid

Enumeration value:

90

Description:

The Ref position is invalid.

The robot is not ready for operation.

SchneiderElectricRobotFailed

Enumeration name:

SchneiderElectricRobotFailed

Enumeration value:

157

Description:

Executing a Schneider Electric robot was not successful.

Issue

Cause

Solution

The robot is not ready for operation.

The configuration method IF_RobotConfiguration.SchneiderElectricRobot has been called not successfully.

The configuration method IF_RobotConfiguration.SchneiderElectricRobot has to be called successfully in case of a Schneider Electric robot.

SetPosDetected

Enumeration name:

SetPosDetected

Enumeration value:

174

Description:

A SetPos has been detected.

Issue

Cause

Solution

The robot is not ready for operation.

A SetPos was detected on a logical encoder of a configured linear tracking system.

Do not perform a SetPos on any logical encoder of a configured linear tracking system.

UnexpectedFeedback

Enumeration name:

UnexpectedFeedback

Enumeration value:

13

Description:

A feedback value was invalid.

The robot is not ready for operation.

UnexpectedMovement

Enumeration name:

UnexpectedMovement

Enumeration value:

82

Description:

The movement was invalid.

The robot is not ready for operation.

UnexpectedValue

Enumeration name:

UnexpectedValue

Enumeration value:

111

Description:

The value was invalid.

The robot is not ready for operation.

WaitForNewCommand

Enumeration name:

WaitForNewCommand

Enumeration value:

56

Description:

The robot is waiting for a new command.

The robot is ready for operation.

The robot is waiting for commands that can be issued with the IF_RobotMotion interface.

WaitForStart

Enumeration name:

WaitForStart

Enumeration value:

55

Description:

The robot is waiting for start.

The robot is ready for operation.

FB_Robot.xReady has the value TRUE.

The system is waiting for FB_Robot.xStart to be set to the value TRUE.

WaitForVelOverride

Enumeration name:

WaitForVelOverride

Enumeration value:

145

Description:

The robot is waiting for VelOverride.

The robot is ready for operation.

The value IF_RobotMotion.lrVelOverride is set to 0.

Set the value of IF_RobotMotion.lrVelOverride greater than 0.

WaitUntilColdStartFinished

Enumeration name:

WaitUntilColdStartFinished

Enumeration value:

2

Description:

The robot is performing a cold start.

The robot is ready for operation.

The robot is performing a cold start. FB_Robot.xReady is FALSE until the cold start is finished.

WaitUntilDisabled

Enumeration name:

WaitUntilDisabled

Enumeration value:

122

Description:

The robot is going to be disabled.

The robot is not ready for operation.

FB_Robot.xEnable was set to FALSE. The robot is going to be disabled.

WaitUntilWarmStartFinished

Enumeration name:

WaitUntilWarmStartFinished

Enumeration value:

46

Description:

The robot is performing a warm start.

The robot is ready for operation.

FB_Robot.xWsSelect and FB_Robot.xWsStart were set to the value TRUE. The robot is executing a warm start.

WarmStartNotPossible

Enumeration name:

WarmStartNotPossible

Enumeration value:

173

Description:

A warm start is not possible.

Issue

Cause

Solution

The robot is not ready for operation.

A warm start of the robot is not possible. Request to change the coordinate system are sent.

Perform a cold start of the robot.

A warm start of the robot is not possible. The robot was in tracking before disable.

Perform a cold start of the robot.

WarmStartWaitForWsStart

Enumeration name:

WarmStartWaitForWsStart

Enumeration value:

62

Description:

The robot will perform a warm start.

The robot is ready for operation.

When activating the robot (FB_Robot.xEnable FALSE -> TRUE), FB_Robot.xWsSelect was set to the value TRUE.

The system waits for FB_Robot.xWsStart to be set to the value TRUE to perform a warm start.

WorkEnvelope

Enumeration name:

WorkEnvelope

Enumeration value:

159

Description:

Diagnostic message concerning the work envelope is active.

Issue

Cause

Solution

The robot is not ready for operation.

The robot detected a disturbance of the valid work envelope and stopped in front of it.

Ensure that the robot movement is always inside the valid work envelope of the robot.