CMC_SIPosiLoop

../_images/8f23bc2408757f410a317d31423e2708

The function block can be used for a simple interpolation. Alternatively, the function block CMC_SInterpolation can be used CMC_SInterpolation.

Behavior of inputs
Enable Stop Behavior
FALSE - Output Position = ActualPosition
TRUE FALSE Interpolates output Position to reach TargetPosition with the given velocity and acceleration.
TRUE TRUE Ramps down to velocity = 0.
Behavior of outputs
InSync Active Behavior
FALSE TRUE Function block is activated, position and velocity is not yet reached.
TRUE FALSE Funciton block is activated, position is reached, output Position = TargetPosition.
FALSE FALSE Funciton block is either disabled or stopped, velocity = 0.

Use in Combination with MC_MoveByExternalReference

This way, a positioning axis can be created with modifying the parameters for positioning “on the fly”, without the need of a certain statemachine to follow.

Use in Combination with MCA_SetDynamicFollower

The function block will smooth the movement when a group has to follow a conveyor. It will create defined ramps to accelerate to the conveyors position and also can be used to prevent a position jump when switching between 2 conveyors or before switching of the follower.

Use to Create a Simple, Basic Positioning Axis

A very basic, simple positioning axis can be created this way. Be aware that there is not additional check if the axis really follows, also no scaling for the position is included. If function block CMC_SIPosiLoop is used, it will check for position or velocity following error.

../_images/dcdfc1f1087240440a317d313775c701

Cycle time which was used for a PM590 when calculating 100 simple axes in a PLC task and priority 10.