SMC_GroupSetAxisLimitFactors (FB)¶
FUNCTION_BLOCK SMC_GroupSetAxisLimitFactors
This function block sets limit factors for the maximum velocity, acceleration, and jerk of each axis. The limits are effective only for movements commanded after this function block returns done.
Calling this function block does not cause any movement and does not influence the ongoing motion of the axis group.
The factors for all axes currently configured in the axis group need to be provided. Each individual factor needs to be positive and not greater than 1.
Initially, all factors are 1. The factors are not reset when the axis group is disabled or enabled. If an axis is removed from the group, the limit factors for this axis are reset. If the axis is added again, later, then the limit factors are 1.
The axis group must not be in state GroupDisabled or GroupErrorStop when this FB receives the rising edge on execute.
The factors can be read with SMC_GroupReadAxisLimitFactors.
The factors are used in combination with the ancillary limits, the global limits, the factors given at the movement function blocks, and the override as follows:
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 this function block,
O: the current override factors, and
A: the ancillary axis limits set with SMC_GroupSetAncillaryAxisLimits.
The effective axis limits L are computed from these inputs as L = O * min(A, M * F * G).
- InOut:
- Scope - Name - Type - Initial - Comment - Inout - AxisGroup- Reference to an axis group - Input - Execute- BOOL- Sets the factors on rising edge. - VelFactors- ARRAY [0..(SMC_RCNST.MAX_AXES - 1)] OF LREAL - The velocity factors for all axes - AccFactors- ARRAY [0..(SMC_RCNST.MAX_AXES - 1)] OF LREAL - The acceleration factors for all axes - JerkFactors- ARRAY [0..(SMC_RCNST.MAX_AXES - 1)] OF LREAL - The jerk factors for all axes - TorqueFactors- ARRAY [0..(SMC_RCNST.MAX_AXES - 1)] OF LREAL - [SMC_RCNST.MAX_AXES(1)] - The torque factors for all axes. A dynamic model must have been set using SMC_GroupSetDynamics for these factors to have an effect. - 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 
