SMC_ObjectSplitter (FB)ΒΆ
FUNCTION_BLOCK SMC_ObjectSplitter
This function can be used if a velocity optimizer (like SMC_LimitDynamics ) is applied to the queue. The limitation of SMC_LimitDynamics always affects a complete object. This means that, the smaller the objects, the better the result of the limitiation. Objects without geometrical expansion (like M-functions) or geometrical curvature (like straight lines) remain unchanged.
With eMode, it is defined, how the division is done:
- if
FIXis set, every curved object is divided inso many objects as defined in
dSplittingParameter.
- if
LENGTHis set, every object is divided so,that it has the length
dSplittingParameterat most.
- InOut:
Scope
Name
Type
Initial
Comment
Input
bExecuteBOOLFALSE
Execution starts on the rising edge.
bAbortBOOLFALSE
bAppendBOOLFALSE
poqDataInPOINTER TO SMC_OUTQUEUE
NULL
Input path queue
eModeSplitting mode
dSplittingParameterLREAL1
Parameters for
eModenSizeOutQueueUDINT0
The size of
pbyBufferOutQueuein bytespbyBufferOutQueuePOINTER TO ARRAY [0..0] OF SMC_GEOINFO
NULL
Output
bDoneBOOLFALSE
This output will be set to
TRUEas soon as the input path has been processed completely.bBusyBOOLFALSE
TRUE, while execution of function block is not finishedbErrorBOOLFALSE
It signals that an error has occurred within the function block
wErrorIDSMC_ERROR0
Error identification
poqDataOutPOINTER TO SMC_OUTQUEUE
NULL
Structure: