MC_MoveSuperImposedExt

MC_MoveSuperImposedExt 1:

Relative positioning is carried out with the function block MC_MoveSuperImposedExt.

The function block is an extended version of the MC_MoveSuperImposed block.

Application samples with MC_MoveSuperimposed.

VAR_INPUT

VAR_INPUT
    Execute         : BOOL;
    Mode            : E_SuperpositionMode;
    Distance        : LREAL; 
    VelocityDiff    : LREAL; 
    Acceleration    : LREAL;
    Deceleration    : LREAL;
    Jerk            : LREAL; 
    VelocityProcess : LREAL; 
    Length          : LREAL; 
END_VAR

Execute: The command is executed with rising edge.

ModeMode determines the type of the superimposed motion.

Distance: Relative distance to catch up (<>0).

VelocityDiff: Maximum velocity increase during travel (absolute value > 0).

Acceleration : Acceleration (≥0). If the value is 0, the standard acceleration from the axis configuration in the System Manager is used.

Deceleration : Deceleration (≥0). If the value is 0, the standard deceleration from the axis configuration in the System Manager is used.

Jerk : The jerk value is not used.

VelocityProcess: Mean process velocity during the constant velocity phase (absolute value > 0).

Length: Distance over which the catching up process may occur (absolute value > 0). Mode defines the interpretation of Length.

VAR_OUTPUT

VAR_OUTPUT
    Done               : BOOL;
    Busy               : BOOL;
    CommandAborted     : BOOL;
    Error              : BOOL;
    ErrorId            : UDINT;
    ActualVelocityDiff : LREAL; 
    ActualDistance     : LREAL; 
    ActualLength       : LREAL; 
END_VAR

Done: Becomes TRUE once the superposition move finished.

Busy: Becomes TRUE during catching up travel.

CommandAborted: Becomes TRUE, if the command could not be fully executed. The reason may be an error, a stop or a superimposed travel command.

Error: Becomes TRUE, as soon as an error occurs.

ErrorID: Supplies the error number when the Error output is set.

Note: The block returns error 4243hex (16963) if the compensation was incomplete due to the parameterization (distance, velocity etc.). In this case compensation is implemented as far as possible. The user has to decide whether to interpret this error message within his application as a proper error or merely as a warning.

ActualVelocityDiff: Actual velocity difference during the superimposed motion (ActualVelocityDiff = VelocityDiff).

ActualDistance: Actual superimposed distance. The block tries to reach the full Distance as specified. This distance may not be reached fully, depending on the parameterization (VelocityDiff, Acceleration, Deceleration, Length, Mode). In this case the maximum possible distance is superimposed. (ActualDistance=Distance).

ActualLength: Actual travel during superimposed motion (ActualLenght=Length).

VAR_IN_OUT

VAR_IN_OUT
    Axis : NCTOPLC_AXLESTRUCT;
END_VAR

Axis : Axis structure.

Requirements

Development environment

Target system type

PLC libraries to be linked

TwinCAT v2.9 from build 1025

PC (i386)

TcMC.Lib