ISMCoupledKinematics4 (ITF) ¶ INTERFACE ISMCoupledKinematics4 EXTENDS ISMCoupledKinematics2 Extension interface of ISMCoupledKinematics2 Should be implemented for all coupled kinematics, replaces ISMCoupledKinematics3 . Properties: NumAxes , inherited from MC_KIN_REF_SM3 Methods: GetAxisMapping2 AxesToCartesian , inherited from MC_KIN_REF_SM3 CartesianToAxes , inherited from MC_KIN_REF_SM3 GetPosAndToolKinematics , inherited from ISMCoupledKinematics JoinAxes , inherited from ISMCoupledKinematics2 JoinConfig , inherited from ISMCoupledKinematics2 SplitAxes , inherited from ISMCoupledKinematics2 SplitConfig , inherited from ISMCoupledKinematics2 Structure: GetAxisMapping2 (Method)
ISMCoupledKinematics4.GetAxisMapping2 (METH) ¶ METHOD GetAxisMapping2 This method can be implemented for all coupled kinematics whose axes are irregularly arranged. For example consider a coupled kinematics with 6 axes(a0-a5). The axes a0, a1 and a3 belong to position kinematics and axes a2, a4 and a5 belong to orientation kinematics and hence the axes are irregularly arranged. The system requires information about which axis belongs to which kinematics. This method will provide information to the system about the kinematics type (position/orientation) and the axis number of each axis in the form an array . For the example considered above, the implementation would be as follows: aAxisMapping[0].Axis_Type := Coupled_Kin_Axis_Type.Position; aAxisMapping[0].uAxisNo := 0; aAxisMapping[1].Axis_Type := Coupled_Kin_Axis_Type.Position; aAxisMapping[1].uAxisNo := 1; aAxisMapping[2].Axis_Type := Coupled_Kin_Axis_Type.Tool; aAxisMapping[2].uAxisNo := 0; aAxisMapping[3].Axis_Type := Coupled_Kin_Axis_Type.Position; aAxisMapping[3].uAxisNo := 2; aAxisMapping[4].Axis_Type := Coupled_Kin_Axis_Type.Tool; aAxisMapping[4].uAxisNo := 1; aAxisMapping[5].Axis_Type := Coupled_Kin_Axis_Type.Tool; aAxisMapping[5].uAxisNo := 2; When this method is not implemented, then the default method of the coupled kinematics will be called and the axes will be considered in the following order: Position kinematics followed by orientation kinematics The implementation of this method must match with the implementation of Join/Split Axis of the interface ISMCoupledKinematics2 . InOut: Scope Name Type Comment Inout aAxisMapping ARRAY [0..(SM3M.SMC_MAX_VEC_DIM - 1)] OF Coupled_Kin_Axis_Map Out: Array containing the type of coupled kinematics of each axis (position/orientation)
ISMKinPeriodHandling (ITF) ¶ INTERFACE ISMKinPeriodHandling EXTENDS MC_KIN_REF_SM3 Interface to handle rotary axes. All kinematics that allow to configure the periods of rotary axes in their configuration data need to implement this interface. Properties: NumAxes , inherited from MC_KIN_REF_SM3 Methods: GetPeriods AxesToCartesian , inherited from MC_KIN_REF_SM3 CartesianToAxes , inherited from MC_KIN_REF_SM3 Structure: GetPeriods (Method)
ISMKinPeriodHandling.GetPeriods (METH) ¶ METHOD GetPeriods Returns an array containing the periods of all rotary axes of the kinematic InOut: Scope Name Type Inout Const cd CONFIGDATA Inout aPeriods ARRAY [0..(SM3M.SMC_MAX_VEC_DIM - 1)] OF DINT
Staubli ¶ Kin_Staubli_TS240 (FunctionBlock) Initialize (Method) Kin_Staubli_TS260 (FunctionBlock) Initialize (Method) Kin_Staubli_TS60_S1_D25_L200_floor_R1 (FunctionBlock) Initialize (Method) Kin_Staubli_TX60_S1_R4 (FunctionBlock) fb_init (Method)
Functions ¶ AXISLIMITS_Intersection (Function) AXISPOS_REF_Eq (Function) Coupled_GetAxisMapping (Function) GetCombinedOrientationImage (Function) GetFlangeOriImg (Function) GetKinematicsForAxis (Function) GetPeriods (Function) Initialise_OriImage_dof0 (Function) Initialise_OriImage_dof1 (Function) Initialise_OriImage_dof3 (Function) OrientationSpace_Equals (Function) ProjectRotation1dof (Function)
AXISLIMITS_Intersection (FUN) ¶ FUNCTION AXISLIMITS_Intersection InOut: Scope Name Type Inout lDst AXISLIMITS Inout Const lLhs AXISLIMITS lRhs AXISLIMITS
AXISPOS_REF_Eq (FUN) ¶ FUNCTION AXISPOS_REF_Eq : BOOL InOut: Scope Name Type Inout Const aA AXISPOS_REF aB AXISPOS_REF Return AXISPOS_REF_Eq BOOL
Coupled_GetAxisMapping (FUN) ¶ FUNCTION Coupled_GetAxisMapping : BOOL Returns the mapping of axes to the orientation and position kinematics for coupled kinematics. If kin is not a coupled kinematic, FALSE is returned and no mapping information is written. InOut: Scope Name Type Comment Input kin MC_KIN_REF_SM3 Inout aAxisMapping ARRAY [0..(SM3M.SMC_MAX_VEC_DIM - 1)] OF Coupled_Kin_Axis_Map Out: Array containing the type of coupled kinematics of each axis (position/orientation) Return Coupled_GetAxisMapping BOOL
GetCombinedOrientationImage (FUN) ¶ FUNCTION GetCombinedOrientationImage Given the orientation images of position and orientation kinematics, this function returns the combined orientation image based on the OsPosKin.dof and OsOriKin.dof InOut: Scope Name Type Inout OsCombined OrientationSpace Inout Const OsPosKin OrientationSpace OsOriKin OrientationSpace Input csOriKin MCS_OR_FLANGE