SMC_ReadKinTransformForAxis (FB)ΒΆ
FUNCTION_BLOCK SMC_ReadKinTransformForAxis
This function block returns the kinematic transformation for a given axis.
If a coupled kinematics is used for the axis group, each axis either belongs to the position kinematics, the orientation kinematics, or to no transformation (additional axis).
If no coupled kinematics is used, then each axis that is part of the kinematics (i.e. that is not an additional axis) belongs the the main kinematics.
For example, to test whether a given axis with index i is an orientation or position axis, call the FB with IdentInGroup = i and then test the returned KinTransform:
itfOri : TRAFO.ISMOrientationKinematics;
itfPos : TRAFO.ISMPositionKinematics;
isOriAxis := __QUERYINTERFACE(KinTransform, itfOri);
isPosAxis := __QUERYINTERFACE(KinTransform, itfPos);
- InOut:
Scope
Name
Type
Comment
Inout
AxisGroup
Reference to a group of axis
Input
Enable
BOOL
Gets the kinematic transformation information of the axis continuously while enabled
IdentInGroup
The index of the axis inside the axis group
Output
Valid
BOOL
TRUE
if valid outputs are availableBusy
BOOL
The FB is not finished
Error
BOOL
Signals that an error has occurred within the function block
ErrorID
SMC_ERROR
Error identification
KinTransform
TRAFO.MC_KIN_REF_SM3
The kinematic transformation for the axis
identInKinematics
UDINT
The index of the axis inside KinTransform