FC_ProfilePoint

 

FC_ProfilePoint - General Information

Overview

Type:

Function

Available as of:

V1.0.3.0

Versions:

Current version

Task

Determine the slave position, slope, and bend of a curve to any desired slave position.

Description

G-SE-0068889.1.gif-high.gif

 

 

The function FC_ProfilPoint serves to determine the position, gradient and curvature of a cam at any point. The determination is carried out via three points i_lrXPos - (i_lrXFactor / 10000.0), i_lrXPos and i_lrXPos + (i_lrXFactor / 10000.0); gradient and curvature are calculated as the difference of the three points.

i_lrXPos must be at least (i_lrXFactor / 10000.0) away from the edge of the cam.

Interface

Input

Data type

Description

i_diProfileId

DINT

Id of the underlying profile

i_lrXPos

LREAL

Master encoder position for which the slave axis position is to be determined

i_lrXFactor

LREAL

Scaling factor of the master encoder

i_lrYFactor

LREAL

Scaling factor of the slave axis

i_lrXOffset

LREAL

Offset of the master encoder position

i_lrYOffset

LREAL

Offset of the slave axis position

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 an 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_lrYPos

LREAL

Position of the slave axis for the master encoder position i_lrXPos

q_lrM

LREAL

Gradient of the slave axis cam at the master encoder position i_lrXPos

In order to determine the velocity of the slave axis, multiply this value with the velocity of the master axis.

q_lrK

LREAL

Curvature of the slave axis cam at the master encoder position i_lrXPos

In order to determine the acceleration of the slave axis, multiply this value with the square of the velocity of the master axis.

Diagnostic Messages

q_etDiag

q_etDiagExt

Enumeration value

Description

OK

Ok

0

Ok

InputParameterInvalid

ProfileIdInvalid

114

The ProfileId is invalid.

InputParameterInvalid

XFactorRange

115

XFactor is outside the valid range.

UnexpectedProgramBehavior

ProfileAlreadyInUse

116

The profile is already in use.

UnexpectedProgramBehavior

UnexpectedFeedback

1

An unintended detected error occurred during execution.

Ok

Enumeration name:

Ok

Enumeration value:

0

Description:

Ok

The motion data for the slave point have been calculated successfully.

ProfileAlreadyInUse

Enumeration name:

ProfileAlreadyInUse

Enumeration value:

116

Description:

The profile is already in use.

Issue

Cause

Solution

-

The motion profile is already in use.

Verify the motion data.

ProfileIdInvalid

Enumeration name:

ProfileIdInvalid

Enumeration value:

114

Description:

The ProfileId is invalid.

Issue

Cause

Solution

-

The profile does not exist.

Verify the value at the input i_diProfileId.

UnexpectedFeedback

Enumeration name:

UnexpectedFeedback

Enumeration value:

1

Description:

An unintended detected error occurred during execution.

Issue

Cause

Solution

-

An error occurred in the internal execution.

Please inform the support team about this error.

XFactorRange

Enumeration name:

XFactorRange

Enumeration value:

115

Description:

XFactor is outside the valid range.

Issue

Cause

Solution

-

At the input i_lrXFactor, a value 0 has been applied.

i_lrXFactor must not be 0.