SMC_SetDynCoordTransformEx (FB)¶
FUNCTION_BLOCK SMC_SetDynCoordTransformEx
This FB sets a dynamic product coordinate system (PCS). A movement commanded in this dynamic PCS will automatically “track” this coordinate system. Simple examples are PCS that are fixed to a conveyor belt or a rotary table.
This FB may be called with a new rising edge on Execute only after the
configured dynamic coordinate system is no longer in use by any movement,
otherwise error SMC_AXIS_GROUP_PCS_STILL_IN_USE will be returned.
See output InUse.
Note
For special cases of a dynamic PCS, the function blocks, MC_SetDynCoordTransform, MC_TrackConveyorBelt and MC_TrackRotaryTable can be used.
This FB does not start a movement (administrative FB). The movement is initiated by a command in the defined PCS.
The PCS is defined in world coordinates, i.e.
dynPCSreturns the current pose of the PCS relative to the WCS.
- InOut:
Scope
Name
Type
Comment
Inout
AxisGroupReference to a group of axis
Input
ExecuteBOOLSets the coordinate transformation on rising edge
dynPCSSMRB.ICoordinateSystemThe dynamic coordinate transformation. It returns the current pose of the PCS relative to the WCS. The FB that implements
SMC_IDynamicCSshall not be changed as long as it is used by active or upcoming movements. (See outputInUse.)CoordSystemWhich PCS is to be set (PCS_1 or PCS_2)
StrInstancePathSTRINGThe instance path for error logging (if not set
StrInstancePathadopts the instance path of this FB)Output
DoneBOOLThe transformation has been set successfully
BusyBOOLThe FB is not finished
InUseBOOLSignals that the axis group still needs the referenced dynamic coordinate system. A new rising edge of
Executewill lead to the errorSMC_AXIS_GROUP_PCS_STILL_IN_USE. For this information to be up-to-date, the function block has to be called continuously (even if alreadyDone). A dynamic coordinate system becomesInUsewhen a movement to a position in the coordinate system is commanded. It remainsInUseuntil the target position of a movement to a different coordinate system has been reached.ErrorBOOLSignals that an error has occurred within the function block
ErrorIDSMC_ERRORError identification
Methods:
Structure: