ENCODER_REF_CAN_SM3.CommunicationStateMachine (METH) ¶ METHOD CommunicationStateMachine : BOOL InOut: Scope Name Type Return CommunicationStateMachine BOOL
GlobalTextList (Text List) ¶
SMC_VECTORDIR (ENUM) ¶ TYPE SMC_VECTORDIR : This enumeration variable is used as an input variable at SMC_CalcDirectionFromVector to define if the angle of the vector itself, its inverse or one of the two perpendiculars shall be used. InOut: Name Initial Comment SMC_tangential 0 No offset; tangential direction SMC_orthogonal_r -90 Offset -90; orthogonal direction clockwise SMC_orthogonal_l 90 Offset 90; orthogonal direction counterclockwise SMC_opp_tangential 180 Offset 180; opposite direction Input eDir indcates, whether the direction is calculated parallel to the path tangent ( MC_tangential ), opponent ( SMC_opp_tangent ) or orthogonal ( SMC_orthogonal_r = right of the path tangent, SMC_orthogonal_l = left of the path tangent).
SMC3_CAN ¶ SDOStartupChecker SMC_CAN_IsSDOInStartupList (Function) SMC3_CAN_ExecuteReadCommand (FunctionBlock) prv_Abort (Method) prv_CyclicAction (Method) prv_ResetOutputs (Method) prv_Start (Method) SMC3_CAN_ExecuteWriteCommand (FunctionBlock) prv_Abort (Method) prv_CyclicAction (Method) prv_ResetOutputs (Method) prv_Start (Method) SMC3_CAN_ReadParameter (FunctionBlock) SMC3_CAN_SLAVE_REF (Struct) SMC3_CAN_SlaveId (Struct) SMC3_CAN_WriteParameter (FunctionBlock) visu templates
SDOStartupChecker ¶ SMC_CAN_IsSDOInStartupList (Function)
SM_Trafo_POUs ¶ The objects in the folders below SM_Trafo_POUs ➔ SoftMotion Transformations are used for axis control and for transformation from GEO coordinates to positions of the axes and vice versa. This collection encloses function blocks that control the axes with respect to target values. They are kept under surveillance by the dand, at the same time, the module will detect possible jumps within the path. Forward and inverse transformation ¶ There are modules for mathematic forward and inverse transformation for some usual kinematics. Modules referring to a special kinematics problem belong together in pairs, whereby the module named SMC_TRAFO_<kinematics> performs an inverse transformation (i.e. from geo coordinates to coordinates related to the axes positions) and the one named SMC_TRAFOF_<kinematics> performs a forward calculation (i.e. from the axes point of view in geo coordinates). Each instance of a SMC_TRAFOF_<kinematics>-module can be connected to a visualization template named SMC_VISU_<kinematics> . Note Instances of the forward transformation modules can be connected with the also provided visualization-templates allowing an immediate and simple visualization. SMC_TRAFOV_ ¶ Additionally, some of the inverse transformations will make use of the path velocity and the path direction to control the axes. The name of these transformation modules starts with SMC_TRAFOV_ instead of SMC_TRAFO_ . As further inputs the modules are passed the path tangent ( v ) and path velocity ( dVel ) by the interpolator. Both the target positions and the target velocities ( dvx / dvy / dvz ) are returned by these modules. The advantage of this method is that the lag error in the drive can be minimized by doing an anticipatory control of the velocity, assuming the drive supports this method. For this reason each axis should be controlled by the modules SMC_ControlAxisByPos or SMC_ControlAxisByPosVel . SoftMotion Transformations Gantry systems SMC_TRAFOF_5Axes (FunctionBlock) SMC_TRAFOF_Gantry2 (FunctionBlock) SMC_TRAFOF_Gantry2Tool1 (FunctionBlock) SMC_TRAFOF_Gantry2Tool2 (FunctionBlock) SMC_TRAFOF_Gantry3 (FunctionBlock) SMC_TRAFOF_Gantry3D (FunctionBlock) SMC_TRAFOF_GantryCutter2 (FunctionBlock) SMC_TRAFOF_GantryCutter3 (FunctionBlock) SMC_TRAFOF_GantryH2 (FunctionBlock) SMC_TRAFOF_GantryT2 (FunctionBlock) SMC_TRAFOF_GantryT2_O (FunctionBlock) SMC_TRAFOV_Gantry2 (FunctionBlock) SMC_TRAFOV_Gantry3 (FunctionBlock) SMC_TRAFOV_GantryCutter2 (FunctionBlock) SMC_TRAFOV_GantryCutter3 (FunctionBlock) SMC_TRAFOV_GantryH2 (FunctionBlock) SMC_TRAFOV_GantryT2 (FunctionBlock) SMC_TRAFOV_GantryT2_O (FunctionBlock) SMC_TRAFO_5Axes (FunctionBlock) SMC_TRAFO_Gantry2 (FunctionBlock) SMC_TRAFO_Gantry2Tool1 (FunctionBlock) SMC_TRAFO_Gantry2Tool2 (FunctionBlock) SMC_TRAFO_Gantry3 (FunctionBlock) SMC_TRAFO_GantryCutter2 (FunctionBlock) SMC_TRAFO_GantryCutter3 (FunctionBlock) SMC_TRAFO_GantryH2 (FunctionBlock) SMC_TRAFO_GantryT2 (FunctionBlock) SMC_TRAFO_GantryT2_O (FunctionBlock) Parallel Systems Bipod_Arm SMC_TRAFOF_Bipod_Arm (FunctionBlock) SMC_TRAFO_Bipod_Arm (FunctionBlock) Tripod SMC_TRAFOF_Tripod (FunctionBlock) SMC_TRAFO_Tripod (FunctionBlock) Tripod_Arm SMC_TRAFOF_Tripod_Arm (FunctionBlock) SMC_TRAFO_Tripod_Arm (FunctionBlock) Tripod_Lin SMC_TrafoF_Tripod_Lin (FunctionBlock) SMC_Trafo_Tripod_Lin (FunctionBlock) Robot Kinematiks SMC_TrafoF_4AxisPalletizer (FunctionBlock) SMC_TrafoF_ArticulatedRobot_6DOF (FunctionBlock) SMC_Trafo_4AxisPalletizer (FunctionBlock) SMC_Trafo_ArticulatedRobot_6DOF (FunctionBlock) Scara System SMC_TRAFOF_Polar (FunctionBlock) SMC_TRAFOF_Scara2 (FunctionBlock) SMC_TRAFOF_Scara3 (FunctionBlock) SMC_TRAFO_Polar (FunctionBlock) SMC_TRAFO_Scara2 (FunctionBlock) SMC_TRAFO_Scara3 (FunctionBlock) additional FBs SMC_CalcDirectionFromVector (FunctionBlock)
SMC_CAN_IsSDOInStartupList (FUN) ¶ FUNCTION SMC_CAN_IsSDOInStartupList : BOOL Returns whether the SDO startup list contains an entry with the given index and subindex. InOut: Scope Name Type Comment Input pConnectorAxis POINTER TO IoConfigConnector The connector of the SoftMotion axis index UINT The index of the object subIndex USINT The subindex of the object Return SMC_CAN_IsSDOInStartupList BOOL
SMC3_CAN_ExecuteReadCommand (FB) ¶ FUNCTION_BLOCK SMC3_CAN_ExecuteReadCommand EXTENDS FB_Template_EdgeAbort InOut: Scope Name Type Initial Comment Inherited from Input xExecute BOOL Rising edge: Starts action. Falling edge: Resets outputs. If a falling edge occurs before the function block has completed its action, the outputs operate in the usual manner and are only reset if either the action is completed or in the event of an error. In this case, the corresponding output values ( xDone , xError , eError ) are present at the outputs for exactly one cycle. FB_Template_Edge Output xDone BOOL TRUE : Action has been successfully completed. FB_Template_Edge xBusy BOOL TRUE : Function block in operation. FB_Template_Edge xError BOOL TRUE : Error has occurred. Function block aborts action. FALSE : No error FB_Template_Edge eError WORD Local library error ID FB_Template_Edge Input xAbort BOOL TRUE : The action is stopped immediately and all outputs are reset to their initial values. FB_Template_EdgeAbort uiIndex UINT usiSubIndex USINT pAxis POINTER TO AXIS_REF_CAN_SM3 pEncoder POINTER TO ENCODER_REF_CAN_SM3 pSlaveId POINTER TO SMC3_CAN_SlaveId Output dwValue DWORD 0 usiDataLength USINT 4 dwError DWORD 0 dwErrorCode DWORD 0 Methods: prv_Abort prv_CyclicAction prv_ResetOutputs prv_Start Structure: prv_Abort (Method) prv_CyclicAction (Method) prv_ResetOutputs (Method) prv_Start (Method)
SoftMotion Transformations ¶ Gantry systems SMC_TRAFOF_5Axes (FunctionBlock) SMC_TRAFOF_Gantry2 (FunctionBlock) SMC_TRAFOF_Gantry2Tool1 (FunctionBlock) SMC_TRAFOF_Gantry2Tool2 (FunctionBlock) SMC_TRAFOF_Gantry3 (FunctionBlock) SMC_TRAFOF_Gantry3D (FunctionBlock) SMC_TRAFOF_GantryCutter2 (FunctionBlock) SMC_TRAFOF_GantryCutter3 (FunctionBlock) SMC_TRAFOF_GantryH2 (FunctionBlock) SMC_TRAFOF_GantryT2 (FunctionBlock) SMC_TRAFOF_GantryT2_O (FunctionBlock) SMC_TRAFOV_Gantry2 (FunctionBlock) SMC_TRAFOV_Gantry3 (FunctionBlock) SMC_TRAFOV_GantryCutter2 (FunctionBlock) SMC_TRAFOV_GantryCutter3 (FunctionBlock) SMC_TRAFOV_GantryH2 (FunctionBlock) SMC_TRAFOV_GantryT2 (FunctionBlock) SMC_TRAFOV_GantryT2_O (FunctionBlock) SMC_TRAFO_5Axes (FunctionBlock) SMC_TRAFO_Gantry2 (FunctionBlock) SMC_TRAFO_Gantry2Tool1 (FunctionBlock) SMC_TRAFO_Gantry2Tool2 (FunctionBlock) SMC_TRAFO_Gantry3 (FunctionBlock) SMC_TRAFO_GantryCutter2 (FunctionBlock) SMC_TRAFO_GantryCutter3 (FunctionBlock) SMC_TRAFO_GantryH2 (FunctionBlock) SMC_TRAFO_GantryT2 (FunctionBlock) SMC_TRAFO_GantryT2_O (FunctionBlock) Parallel Systems Bipod_Arm SMC_TRAFOF_Bipod_Arm (FunctionBlock) SMC_TRAFO_Bipod_Arm (FunctionBlock) Tripod SMC_TRAFOF_Tripod (FunctionBlock) SMC_TRAFO_Tripod (FunctionBlock) Tripod_Arm SMC_TRAFOF_Tripod_Arm (FunctionBlock) SMC_TRAFO_Tripod_Arm (FunctionBlock) Tripod_Lin SMC_TrafoF_Tripod_Lin (FunctionBlock) SMC_Trafo_Tripod_Lin (FunctionBlock) Robot Kinematiks SMC_TrafoF_4AxisPalletizer (FunctionBlock) SMC_TrafoF_ArticulatedRobot_6DOF (FunctionBlock) SMC_Trafo_4AxisPalletizer (FunctionBlock) SMC_Trafo_ArticulatedRobot_6DOF (FunctionBlock) Scara System SMC_TRAFOF_Polar (FunctionBlock) SMC_TRAFOF_Scara2 (FunctionBlock) SMC_TRAFOF_Scara3 (FunctionBlock) SMC_TRAFO_Polar (FunctionBlock) SMC_TRAFO_Scara2 (FunctionBlock) SMC_TRAFO_Scara3 (FunctionBlock) additional FBs SMC_CalcDirectionFromVector (FunctionBlock)
SMC3_CAN_ExecuteReadCommand.prv_Abort (METH) ¶ METHOD prv_Abort : BOOL InOut: Scope Name Type Return prv_Abort BOOL