SMC_CheckVelocities (FB)ΒΆ
FUNCTION_BLOCK SMC_CheckVelocities
This function block checks the track speed of the particular path segments. If the OutQueue has not been created by the editor, but by the IEC program (e.g. by SMC_NCInterpreter), this function block has to be called straight before each call to the interpolator.
The main task of this function is to check the path for sharp bends and to reduce the velocity to zero at these bends.
- InOut:
Scope
Name
Type
Initial
Comment
Input
bExecuteBOOLExecution starts on the rising edge.
bAbortBOOLIf
TRUE, the current processing of this function block is abortedpoqDataInPOINTER TO SMC_OUTQUEUE
This input points to the SMC_OUTQUEUE structure object, which describes the SMC_GEOINFO objects of the path; typically it points to the output
poqDataOutof the preceding module (e.g. SMC_NCDecoder / SMC_SmoothPath ).dAngleTolLREAL0.001
This input describes the tolerance angle (angle leeway) up to which at a sharp bend of the path no stop shall be executed.
bCheckAddAxVelJumpBOOLSee SMC_SmoothPath
dMaxAddAxVelDifferenceLREALSee SMC_SmoothPath
dDryRunVelocityLREALActivation of dry run. If the value is greater than zero, dry run is active. This means that the effective maximum velocity during interpolation (including the override) is limited to the given value. If the value is zero, dry run is deactivated. Values less than zero lead to an error. A new value of the input is applied only on a rising edge of bExecute.
Output
bBusyBOOLTRUE, while execution of function block is not finished and the process on the path object is still runningbErrorBOOLSignals, that an error has occurred within the function block
wErrorIDSMC_ERRORError identification
poqDataOutPOINTER TO SMC_OUTQUEUE
This output points on the SMC_OUTQUEUE structure object, which contains the path with the permissible velocity values and should now be fed to the interpolator.
Structure: