SMC_EstimateDeadTime (FB)

FUNCTION_BLOCK SMC_EstimateDeadTime

This function block estimates the dead time between the fActPosition and the fSetPosition at the beginning of this bus task cycle.

To use it, move the axis with constant velocity, e.g. with MC_MoveVelocity. Once the drive has reached the velocity, the output DeadTimeCycles contains an estimate of the dead time, measured in bus task cycles.

Note

  • Taking the average or median value over several value results in a more accurate estimate. You can use the “Statistics” command of the trace editor. Add the output DeadTimeCycles to a trace object, record a few seconds while the drive is moving with constant velocity, then select this range in the trace using two cursors. The “Statistics” command can be found in the context menu inside the trace editor (right click on a diagram), or in the trace menu.

  • The value computed here can be configured as the dead time in the basic page of the SoftMotion drive configuration editor. It is the value that is stored in Axis.fSetActTimeLagCycles.

InOut:

Scope

Name

Type

Comment

Inout

Axis

AXIS_REF_SM3

Reference to axis

Input

Enable

BOOL

Only outputs an estimate if enabled

Output

Valid

BOOL

Whether the dead time is valid.

DeadTimeCycles

LREAL

The estimated dead time in cycles. Measured between the fActPostion, and the fSetPosition at the beginning of the cycle.