FB_CobotController - MoveC (Method)

Overview

Type:

Method

Available as of:

V1.0.1.0

This chapter provides information on:

Task

The function block is used to execute a circular movement for the Lexium Cobot.

Description

This method is used to trigger a circular movement of the Lexium Cobot to a user-defined target pose.

Preconditions to execute this command:

  • The control source of the Lexium Cobot must be Remote. For further information, refer to the method GetControlSource(Method).

  • The Lexium Cobot arm must be enabled. FB_CobotControllerFeedback.rstData.xRobotEnabled reports the value TRUE.

  • A protective stop must be released. FB_CobotControllerFeedback.rstData.xProtectiveStop reports the value FALSE.

  • A collision detection message must be reset. For further information, refer to the method ClearFault(Method).

  • The Lexium Cobot must not be in hand-guide mode. FB_CobotControllerFeedback.rstData.etMode must not report the value ET_Mode.Drag.

  • No jog movement must be active. FB_CobotControllerFeedback.rstData.etMode reports the value ET_Mode.Manual. FB_CobotControllerFeedback.rstData.xInPosition reports the value TRUE.

  • No program must be running. FB_CobotControllerFeedback.rstData.etProgramState must not report the value ET_ProgramState.Running.

The sent command is acknowledged by the Lexium Cobot control either as successful or as unsuccessful.

  • A successful command is reported by the property xCommandAcknowledged.

  • An unsuccessful command is reported by the property xCommandFailed. For detailed information verify the diagnostic outputs of the function block and the log data of FB_CobotControllerFeedback.rstData.stLogData.

Interface

Input Data type Description

i_lrAcceleration

LREAL

Specifies the acceleration.

Unit: [mm/s2]

Value range: i_lrAcceleration > 0.0

i_lrArcTransition

LREAL

Specifies the arc transition for the blending of move commands.

Unit: [mm]

Value range: i_lrArcTransition ≥ 0.0

I_lrSpeed

LREAL

Specifies the maximum speed.

Unit: [mm/s]

Value range: i_lrSpeed > 0.0

i_stCircularPose

GEM.ST_CartesianPose

Specifies a pose of the robot TCP on the circle.

i_stTargetPose

GEM.ST_CartesianPose

Specifies the target pose of the robot TCP.

i_udiCommandId

BOOL

Specifies the identifier of the move command.

It can be retrieved on FB_CobotControllerFeedback.rstData.udiCommandId, if the move command is active.

Output Data type Description

q_xError

BOOL

Value is TRUE if an error was detected. For details, refer to q_etResult and q_sResultMsg.

q_etResult

ET_Result

Provides diagnostic and status information as a numeric value.

If q_xError = FALSE, q_etResult provides status information. If q_xError = TRUE, q_etResult provides diagnostic/error information.

q_sResultMsg

STRING[80]

Provides additional diagnostic and status information as a text value.

Diagnostic Messages

q_xError

q_etResult

Enumeration value

Description

FALSE

Ok

0

The method was called successfully.

TRUE

AccelerationRange

39

The acceleration is out of range.

TRUE

ArcTransitionRange

40

The arc transition is out of range.

TRUE

CommandNotAcknowledged

7

The command is not acknowledged.

TRUE

Disabled

1

The function block is disabled.

TRUE

NotConnected

5

A connection to a Lexium Cobot controller is not established.

TRUE

NotReady

4

The function block is not ready to perform commands.

TRUE

SpeedRange

26

The speed is out of range.

AccelerationRange

Enumeration name:

AccelerationRange

Enumeration value:

39

Description:

The acceleration is out of range.

Issue

Cause

Solution

The method was not called successfully.

The value transferred at the input i_lrAcceleration is not within the valid range.

At the input i_lrAcceleration, a value greater than 0.0 must be transferred.

ArcTransitionRange

Enumeration name:

ArcTransitionRange

Enumeration value:

40

Description:

The arc transition is out of range.

Issue

Cause

Solution

The method was not called successfully.

The value transferred at the input i_lrArcTransition is not within the valid range.

At the input i_lrArcTransition, a value greater than or equal to 0.0 must be transferred.

CommandNotAcknowledged

Enumeration name:

CommandNotAcknowledged

Enumeration value:

7

Description:

The command is not acknowledged.

Issue

Cause

Solution

The method was not called successfully.

The previous triggered command is not acknowledged yet.

The property xCommandAcknowledged reports the value FALSE.

Ensure that the property xCommandAcknowledged reports the value TRUE before calling a new command.

Disabled

Enumeration name:

Disabled

Enumeration value:

1

Description:

The function block is disabled.

Issue

Cause

Solution

The method was not called successfully.

The function block is disabled.

A disabled function block does not execute any actions and all outputs are set to the default value.

Ensure that the function block is enabled.

Enable the function block by setting the input i_xEnable to TRUE. The function block will report TRUE at its outputs q_xActive and q_xReady after the enable routine is successfully finished.

NotConnected

Enumeration name:

NotConnected

Enumeration value:

5

Description:

A connection to a Lexium Cobot controller is not established.

Issue

Cause

Solution

The method was not called successfully.

A connection to a Lexium Cobot controller is not established.

The property etConnectionState does not report the value ET_ConnectionState.Connected.

Ensure that a connection to a Lexium Cobot controller is established.

To establish a connection to a Lexium Cobot controller call the method Connect or ConnectTLS.

NotReady

Enumeration name:

NotReady

Enumeration value:

4

Description:

The function block is not ready to perform commands.

Issue

Cause

Solution

The method was not called successfully.

The function block reports FALSE at the output q_xReady because a detected error is reported.

In case a sent command was acknowledged by the Lexium Cobot controller with a detected error, the property xCommandFailed reports the value TRUE in addition.

Verify the diagnostic outputs of the function block and solve the root cause of the detected error.

A rising edge at the input i_xErrorQuit will reset the detected error.

Ok

Enumeration name:

Ok

Enumeration value:

0

Description:

The method was called successfully.

SpeedRange

Enumeration name:

SpeedRange

Enumeration value:

26

Description:

The speed is out of range.

Issue

Cause

Solution

The method was not called successfully.

The value transferred at the input i_lrSpeed is not within the valid range.

At the input i_lrSpeed, a value greater than or equal to 0.0 must be transferred.