SMC_GroupSetAncillaryAxisLimits (FB)¶
FUNCTION_BLOCK SMC_GroupSetAncillaryAxisLimits
This function block configures so called ancillary dynamic axis limits for an axis group, that is ancillary limits for the velocity, acceleration, deceleration, and jerk of each axis.
The ancillary limits allow an easy programming of different operating modes of a robot, for example a manual mode in which the robot may only move slowly for safety reasons.
Initially, all ancillary limits are infinite. The limits are not reset when the axis group is disabled or enabled. If an axis is removed from the group, the ancillary limits for this axis are reset. If the axis is added again, later, then the ancillary limits are infinite.
The effective dynamic limits for a movement are built from the following inputs:
G: the global axis limits stored in the axis configuration,
M: the factors given at the movement function blocks (inputs VelFactor, AccFactor, …),
F: the factors set with SMC_GroupSetAxisLimitFactors,
O: the current override factors, and
A: the ancillary axis limits.
The effective axis limits L are computed from these inputs as L = O * min(A, M * F * G).
Note
- This function block may not be called in the states - GroupDisabledor- GroupErrorStop, and, if- ExecutionModeequals- Immediately, no MC_GroupStop may be active.
- No axis limit may be zero or negative. Otherwise, the function block returns an error. 
- MC_GroupStop ignores ancillary limits. 
- InOut:
- Scope - Name - Type - Comment - Inout - AxisGroup- Reference to an axis group - Input - Execute- BOOL- Sets the limits on rising edge. - ExecutionMode- Describes when the new limits become active. - Limits- ARRAY [0..(SMC_RCNST.MAX_AXES - 1)] OF SMC_DYN_LIMITS - The ancillary dynamic limits - Output - Done- BOOL- The limits have been set successfully. - Busy- BOOL- The FB is not finished. - Error- BOOL- Signals that an error has occurred within the function block. - ErrorID- SMC_ERROR- Error identification