MC_GroupEnable (FB) ¶ FUNCTION_BLOCK MC_GroupEnable This function block changes the state for a group from GroupDisabled to GroupStandby . This is an administrative FB, since no movement is generated. Note The command does not influence the power state of any of the single axes in the group The configuration of the axes (e.g. the dynamic limits) is read on enabling. If the configuration of an axis of the group is changed, these changes are only taken into account if the axis group is disabled and enabled again. InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axes Input Execute BOOL Start the change of state at the rising edge CompatibilityOptions SMC_AXIS_GROUP_COMPATIBILITY_OPTIONS Deprecated, no longer used. This input will be removed in future versions. Output Done BOOL Group is in state GroupStandby Busy BOOL The FB is not finished Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification
MC_GroupReset (FB) ¶ FUNCTION_BLOCK MC_GroupReset This function block makes the transition from the state GroupErrorStop to GroupStandby by resetting all internal group-related errors. This function block also resets all axes in this group like MC_Reset , independently of the current axis group state. Axis errors can, for example, be reset while the axis group is still in state GroupDisabled . InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axis Input Execute BOOL Start the action at rising edge Output Done BOOL Reset for axis group and all axes in this group done Busy BOOL The FB is not finished Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification
MC_GroupSetPosition (FB) ¶ FUNCTION_BLOCK MC_GroupSetPosition Allows to set the position of all axes of an axis group. This function block calls MC_SetPosition for all axes of the group. This function block must be called in state GroupStandby without following a dynamic coordinate system. Must not be commanded in the same cycle after commanding MC_GroupContinue . InOut: Scope Name Type Comment Inout AxisGroup Axis_Group_Ref_SM3 Reference to group of axes Input Execute BOOL Execution starts on the rising edge Position SMC_POS_REF The new position of the axes. Relative BOOL RELATIVE = True, ABSOLUTE = False (Default) CoordSystem SMC_COORD_SYSTEM Applicable coordinate system Output Done BOOL TRUE if position has been set Busy BOOL TRUE if execution of the function block is not finished Error BOOL Signals an error occurred within the function block during execution ErrorID SMC_ERROR Error identification
GeoPrimLine_EvalDerivs (FUN) ¶ FUNCTION GeoPrimLine_EvalDerivs : BOOL InOut: Scope Name Type Inout errCtx SMRE.ErrorContext Inout Const line GeoPrimLine Inout ur SM3M.SMC_DynV3State Input x LREAL Return GeoPrimLine_EvalDerivs BOOL
SMC_KinConfigActivateAutomaticPeriods (FB) ¶ FUNCTION_BLOCK SMC_KinConfigActivateAutomaticPeriods This function block allows activating automatic periods on rotary axes with multiple periods. With automatic periods active, instead of a specific period the closest period to the current position is chosen when e.g. determining the target position of a movement. This function block does not change the state of an the AxisGroup . Instead, a configuration based on KinematicConfigIn , but with activated automatic periods, is prepared and written to KinematicConfigOut . The function block SMC_SetKinConfiguration can be used to change the configuration of the axis group to this value. InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axis Input ConfigDataIn TRAFO.CONFIGDATA The input config data Output ConfigDataOut TRAFO.CONFIGDATA The output config data with activated automatic periods. Input Execute BOOL Converts the config data on rising edge Output Done BOOL The config data has been converted successfully Busy BOOL The FB is not finished Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification
SMC_SetKinConfiguration (FB) ¶ FUNCTION_BLOCK SMC_SetKinConfiguration This function block sets the configuration used in the inverse kinematic transformation. This affects only upcoming movements that are not programmed in ACS-coordinates. InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axis Input Execute BOOL Sets the kinematic configuration on rising edge ConfigData TRAFO.CONFIGDATA The kinematic configuration Output Done BOOL The transformation has been set successfully Busy BOOL The FB is not finished Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification
SMC_GroupPrepareTrigger (FB) ¶ FUNCTION_BLOCK SMC_GroupPrepareTrigger This function block prepares a trigger for the next commanded movement. Note Prepared triggers are attached to the movement commanded by the next movement function block that is called with a rising edge on its Execute input. Movement function blocks that are called without a rising edge are ignored. The movement has to be commanded in the same cycle as this function block. Otherwise, the trigger will be aborted. Prepared triggers will be attached to the next commanded movement, irregardless of whether it will be accepted. Triggers cannot be prepared for wait ( SMC_GroupWait ), halt ( MC_GroupHalt ) or stop ( MC_GroupStop ) movements. An error will be reported for any trigger that is prepared when one of those movements is commanded. The maximum number of triggers per movements is can be configured by changing the library parameter MAX_NUM_TRIGGERS_PER_MOVEMENT of SM3_CPKernelDefaults. Either Prepared or Error will be reported immediately after calling this function block with a rising edge on the Execute input. InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axis Input Execute BOOL A rising edge starts the function block. PositionType SMC_TriggerPositionType Determines how the trigger position is to be interpreted. Position SMC_TriggerPosition The position of the trigger. Output Done BOOL The trigger has been successfully attached to a movement Busy BOOL The function block is not finished Prepared BOOL The trigger has been successfully prepared and will be attached to the next commanded movement. CommandAborted BOOL The trigger has been aborted Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification TriggerId SMC_TRIGGER_ID The trigger id. Only valid if the function block is ´´Done´´
GeoPrimLineAS_EvalAxes (FUN) ¶ FUNCTION GeoPrimLineAS_EvalAxes : BOOL InOut: Scope Name Type Inout errCtx SMRE.ErrorContext Inout Const ef ElemFun aRef TRAFO.AXISPOS_REF Inout v SM3M.SMC_Vec Input x LREAL t LREAL bApplyARef BOOL Return GeoPrimLineAS_EvalAxes BOOL
SMC_GroupReadTrigger (FB) ¶ FUNCTION_BLOCK SMC_GroupReadTrigger Function block for reading the status of a trigger that was prepared with SMC_GroupPrepareTrigger and assigned to a movement. InOut: Scope Name Type Comment Inout AxisGroup AXIS_GROUP_REF_SM3 Reference to a group of axes Input Enable BOOL While set to TRUE, the function block continuously reads the status of the trigger. TriggerId SMC_TRIGGER_ID The id of the trigger returned by SMC_GroupPrepareTrigger . Output Busy BOOL The function block is not finished Error BOOL Signals that an error has occurred within the function block ErrorID SMC_ERROR Error identification TriggerInfo SMC_TRIGGER_INFO Information on the trigger with id TriggerId .
SMC_TRIGGER_ID (ALIAS) ¶ TYPE SMC_TRIGGER_ID : ULINT