OBIO_PWMMotionKernel (FB)
FUNCTION_BLOCK OBIO_PWMMotionKernel EXTENDS CMC_BASIC_KERNEL
This function block extends the basic motion kernel functionality, so that it can be used for the eco PWM outputs and connect a stepper drive.
8 axes are possible in total. We recommend to use the fast PWM axes. Each axis needs one instance of this kernel block called.
Different parameters related to the PWM can be adjusted in OBIO_PWM_Motion_Parameter
It is possible to use either the stepper pulses as actual position, or connect a seperate value to Drive_ActualPosition
Note
Adjust PWM related parameter in OBIO_PWM_Motion_Parameter
The function block behaves as follows:
If the input Drive_InOperation is not connected, the required state is created internally.
If a drive delivers a corresponding signal, the Drive_Release/Drive_InOperation sequence can be used as with CMC_Basic_Kernel.
If the input Drive_ActualPosition is not connected, the stepper pulses can be used instead.
The input Drive_ActualPosition can be connected to an external encoder position value. (configure in OBIO_PWM_Motion_Parameter)
Note
the block connects internally to the PWM outputs. The PWM configuration for the output is required, but no seperate FB to use PWM outputs.
Note
PTO parameters and input Enable_Virtual is not recommended to change on the fly or running system. This can lead to unexpected behavior of the system.
Note
This function block supports the visualization “CMC_VISU_FB_Basic_Kernel” from the ABB_MotionControl_AC500 library. User needs to manually map the instance of function block in Visualization reference.
- InOut:
Scope
Name
Type
Initial
Comment
Inherited from
Input
EnableBOOLRelease of function block. Enable has to be set before new control parameters are released by CMC_Axis_Control_Parameter.
zCMC_Kernel_Base
Drive_Ref_OkBOOLIndication for homing
zCMC_Kernel_Base
Drive_InOperationBOOLIndication that drive is running. The drive is switched on and is active
zCMC_Kernel_Base
Drive_ActualPositionDINTActual Position in incremenets
zCMC_Kernel_Base
Inout
AxisAxis_RefReference to the axis to be controlled
zCMC_Kernel_Base
Control_ParameterCMC_Axis_Control_ParameterParameters for configuration and adjustment of the control loop
zCMC_Kernel_Base
IOCMC_Axis_IOBy the structure IO (CMC_Axis_IO), some binary inputs are provided. The PLC program has to define a variable of type CMC_Axis_IO and to assign the inputs.
zCMC_Kernel_Base
Output
ErrorBOOLSignals that an error has occurred within the function block.
zCMC_Kernel_Base
ErrorIdERROR_ID- The error codes ErrorId also sets the output-bit Error=TRUE and sets the axis in state ERROR_STOP. To allow a new movement the error-codes ErrorId require that either the axis is disabled/enabled by MC_Power or the error reset is disabled/enabled by MC_Reset.
The error codes ErrorID_WARNING will not set Error = TRUE, and will not set the axis to ERROR_STOP. The error codes ErrorID_WARNING do not require the MC_Reset or MC_Power. It is possible the axis is stopped and ongoing motion is aborted by a WARNING. The value will be shown until: + An other error or warning occurs + MC_Reset or MC_Power is used
zCMC_Kernel_Base
Drive_Reset_FaultBOOLBinary signal to be used for resetting the drive error, if applicable
zCMC_Kernel_Base
Drive_ReleaseBOOLActivate the drive
zCMC_Kernel_Base
Drive_Set_RefBOOLActivate homing
zCMC_Kernel_Base
Drive_Set_PositionDINTPosition to be used at homing
zCMC_Kernel_Base
Speed_ReferenceDINTReference value for the drive
zCMC_Kernel_Base
Position_ReferenceDINTPosition reference for the drive in increments
zCMC_Kernel_Base
Input
Enable_VirtualBOOLUse the axis as virtual axis. Block inputs which are usualy received from the real axis are ignored. Required values are generated internally
CMC_Basic_Kernel
Output
PWM_ErrorIDAC500_OnboardIO.Error_ID0
Error code. For error details refer to AC500_OnboardIO library Enum Error_ID
DirectionBOOLMoving direction, connect this to a binary output
Inout
PWM_Motion_ParameterSpecific parameter set for PWM axis