IF_FastMove - FastMoveSExtended (Method)

Overview

Type:

Method

Available as of:

V2.11.0.0

Versions:

Current version

This chapter provides information on:

Task

Calculate an extended elliptic pick and place spline.

Description

This method can be used to calculate an extended elliptic pick and place spline and issue the respective move command. It can only be used for a Schneider Electric P-Series robot and in combination with the library SchneiderElectricRobotics.

  • The motion parameters are automatically calculated dependent on the payload to achieve a high performance. The values can be capped using the methods ROB.IF_Motion.SetMotionParameters, ROB.IF_Motion.SetMaxAcceleration, ROB.IF_Motion.SetMaxDeceleration and ROB.IF_Motion.SetMaxVelocity. If the calculated values are greater than the set values, the motion parameters are limited to the set values.

  • Internally, the methods FB_EllipticSpline.CalcFullSplineExtended is used to calculate the spline and the method IF_RobotMotion.MoveS is used to send the move command.

  • The start of the spline is the last target position (refer to Robotic Library Guide – IF_RobotFeedback.rstLastTarget). The zone of the internal MoveS is set to zero, so a blending into another move command after the FastMoveS is not possible.

Interface

Input

Data type

Description

i_stTarget

PDL.ST_Vector3D

Target position coordinates of the motion job in three-dimensional space.

i_udiSegmentId

UDINT

ID of the motion job. The ID of a motion job in a connected path must be unique.

Value range: i_udiSegmentId > 0

i_lrAbsHeight

LREAL

Absolute height of the elliptic spline apex.

Value range for full spline:

  • i_lrAbsHeight > stStart.lrZ AND

  • i_lrAbsHeight > i_stTarget.lrZ

Value range for half spline:

  • i_lrAbsHeight > stStart.lrZ AND

  • i_lrAbsHeight = MAX(stStart.lrZ, i_stTarget.lrZ)

i_udiNumberOfSplinePoints

UDINT

Number of spline points for the elliptic spline to be calculated.

Value range: 3 ≤udiNumberOfSplinePoints≤ 98

In_Out

Data type

Description

iq_stSplineConfiguration

ROB.ST_CalcSplineExtendedConfiguration

Additional configuration parameters for the extended elliptic spline to be calculated.

Output

Data type

Description

q_etDiag

GD.ET_Diag

General, library-independent statement on the diagnostic.

A value not equal to ET_Diag.Ok corresponds to a diagnostic message.

q_etDiagExt

ROB.ET_DiagExt

POU-specific output for 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 additional information on the diagnostic state.

q_stSplineFeedback

ROB.ST_CalcSplineExtendedFeedback

Feedback data of a successful calculation of an extended elliptic spline.

Diagnostic Messages

NOTE: The method may also return the diagnosis from the methods MoveS and FB_EllipticSpline.CalcSplineExtended.

q_etDiag

q_etDiagExt

Enumeration value

Description

OK

Ok

0

Successful

ExecutionAborted

NoSchneiderElectricRobot

222

The configured robot is not a Schneider Electric robot.

ExecutionAborted

FastMoveNotConfigured

223

The FastMove functionality is not configured.

Ok

Enumeration name:

Ok

Enumeration value:

0

Description:

Successful

The motion job was successful.

NoSchneiderElectricRobot

Enumeration name:

NoSchneiderElectricRobot

Enumeration value:

222

Description:

The configured robot is not a Schneider Electric robot.

Issue

Cause

Solution

The motion job was aborted.

The configured robot is not a Schneider Electric P-Series robot.

Use FastMoveSExtended only in combination with a Schneider Electric P-Series robot.

FastMoveNotConfigured

Enumeration name:

FastMoveNotConfigured

Enumeration value:

223

Description:

The FastMove functionality is not configured.

Issue

Cause

Solution

The motion job was aborted.

The configured robot is not a Schneider Electric P-Series robot.

Use FastMoveSExtended only in combination with a Schneider Electric P-Series robot.

The FastMove functionality is not configured.

Make sure that the method FB_RobotPSeries.Configure was called successfully for the robot.