FB_CSpline - General Information

Overview

Type:

Function block

Available as of:

V1.0.0.0

Inherits from:

-

Implements:

IF_CamReferenceGenerator

NOTICE

COMPLEX FUNCTION

Contact your responsible Schneider Electric contact partner, before using function blocks of this library directly.

Failure to follow these instructions can result in equipment damage.

Other libraries, for example the PD_SmartInfeed are using the PD_SoMotionGenerator internally. It is not necessary to contact your responsible Schneider Electric contact partner when using these librariers.

Task

Generation and calculation of reference values of a cubic spline

Description

This standard function block serves for external calculation of cubical splines (CSpline). In order to generate a CSpline, an instance of the function block must be created within the user program, then one of the two methods for generating a CSpline must be called up.

The method PrepareEqDisX() generates a CSpline with equidistant X values. Using PrepareVarDisX(), a CSpline with discretionary (strictly monotonic increasing) X values is generated.

For execution, a cam job type ET_MotionJobType.ExternalCam must be assigned and this function block must be transferred to the parameter ifCamReferenceGenerator of the structure ST_ExternalCam.

NOTE: POU is not addressable!

The POU must not be called up.

The function block can be used by calling it up over methods and properties.

Methods

Name

Description

Calculate

Calculating the CSpline reference positions is part of the IF_CamReferenceGenerator interface and does not have to be called up by the user. It can be used to issue slave positions, depending on the master positions.

PrepareEqDisX

Generating a CSpline with equidistant X values.

PrepareVarDisX

Generating a CSpline with discretionary X values.

Reset

This method releases the dynamic memory that was used for the last generated CSpline. When a new CSpline is generated this method does not have to be called up. The used dynamic memory is already released automatically. This method has to be called up if no further CSplines have to be generated.