SMC_GroupJog2 (FB)¶
FUNCTION_BLOCK SMC_GroupJog2
Activates coordinated jogging of the axis group. This is the recommended function block to jog an axis group. It replaces SMC_GroupJog.
Jogging is performed in the coordinate system defined by input
CoordSystem. To jog in machine coordinates, for example, use MCS here.
Setting ABC_as_ACS allows to use a mixed interpretation of the
reference axes, X/Y/Z as cartesian position and A/B/C as axis positions
of the tool kinematics.
Jogging can be triggered by one or more rising edges in the Forward
and Backward inputs.
The function block will move all axes i whose inputs
(Forward[i] XOR Backward[i]) evaluate to TRUE.
Jogging can be stopped by one or more falling edges in the Forward
and Backward inputs.
Note
A rising edge that results in both Backward[i] and Forward[i] being TRUE is interpreted as a falling edge.
If both rising and falling edges are detected, the former prevail.
Warning
Please make sure to set the inputs VelFactor, AccFactor, and
JerkFactor to safe values. These values are crucial when jogging
in the ACS or when jogging the orientation. In these cases, the movement
of the axes may be limited only by the global axis limits muliplied by
these factors. When setting the factors to 1 (corresponding to 100%),
a very fast movement may result, which is not desirable for jogging.
(Of course, the ancillary limits, axis limits set by
SMC_GroupSetAxisLimitFactors, and the override are also considered.)
- InOut:
Scope
Name
Type
Initial
Comment
Inout
AxisGroupReference to a group of axes
Input
EnableBOOLEnables coordinated jogging of the axis group.
ForwardARRAY [0..(SMRB.MAX_KIN_AXES - 1)] OF BOOL
Input to jog the respective coordinate forward.
BackwardARRAY [0..(SMRB.MAX_KIN_AXES - 1)] OF BOOL
Input to jog the respective coordinate backward. Input to jog the respective additional axis forward.
AdditionalAxesForwardARRAY [0..(ANY_TO_LINT(SMRB.MAX_ADD_AXES) - 1)] OF BOOL
AdditionalAxesBackwardARRAY [0..(ANY_TO_LINT(SMRB.MAX_ADD_AXES) - 1)] OF BOOL
Input to jog the respective additional axis backward.
MaxLinearDistanceLREALThe maximum linear distance a coordinate is jogged while no new rising edge is detected on the Forward/Backward inputs. The distance must be positive, otherwise an error is reported.
MaxAngularDistanceLREALThe maximum angular distance a coordinate is jogged while no new rising edge is detected on the Forward/Backward inputs. The distance must be positive, otherwise an error is reported.
VelocityLREALMaximum path velocity [u/s]. Always positive. Not necessarily reached.
AccelerationLREALMaximum path acceleration [u/s²]. Always positive. Not necessarily reached.
DecelerationLREALMaximum path deceleration [u/s²]. Always positive. Not necessarily reached.
JerkLREALMaximum path jerk [u/s³]. Always positive. Not necessarily reached.
VelFactorLREALThe maximum velocity of each axis is multiplied by this factor, which must be in the range ]0, 1]. The default is 0, which results in an error.
AccFactorLREALThe maximum acceleration of each axis is multiplied by this factor, which must be in the range ]0, 1]. The default is 0, which results in an error.
JerkFactorLREALThe maximum jerk of each axis is multiplied by this factor, which must be in the range ]0, 1]. The default is 0, which results in an error.
TorqueFactorLREAL1
The maximum torque of each axis is multiplied by this factor, which must be in the range ]0, 1]. A dynamic model must have been set using SMC_GroupSetDynamics for this factor to have an effect.
CoordSystemSMC_COORD_SYSTEMThe coordinate system in which to jog. Jogging in dynamic coordinate systems (e.g. while tracking a conveyor belt) is not supported.
ABC_as_ACSBOOLMixed jogging. The position is jogged in cartesian space, the orientation axes are jogged in axis space. If the input CoordSystem equals ACS, then this input is ignored. Otherwise, if the input CoordSystem is a cartesian coordinate system, the orientation is jogged in ACS, while the position is jogged in the cartesian coordinate system.
Forward/Backward[3..5] control the axis positions of the orientation axes. Forward/Backward[0..2] control the (X,Y,Z) position of the TCP. When jogging the orientation axes, the robot will perform a compensating movement so that the TCP remains stationary.
If TRUE, the axis group’s kinematic transformation must be a so called coupled kinematics, composed of a positioning and an orientation kinematics. It must support SMC_ORIENTATION_MODE.Axis. If not, the error
SMC_CP_AXIS_ORIENTATION_IPO_OFFSET2_NOT_IMPLEMENTEDorSMC_CP_KIN_DOES_NOT_SUPPORT_AXIS_ORIENTATION_IPOis returned. The FB does not have to be restarted to clear this error, instead the input ABC_as_ACS can be set to FALSE.If FALSE, then, depending on the input CoordSystem, either all axes are jogged in axis coordinates (ACS) or the position and orientation are jogged in cartesian space. In this case, Forward/Backward[3..5] rotate the TCP around the X-/Y-/Z-Axis of the cartesian coordinate system.
NameSTRING‘SMC_GroupJog2’
The name of the movement.
Output
ActiveBOOLThe FB is currently in control of the axis group.
BusyBOOLThe FB is not finished
ErrorBOOLSignals that an error has occurred within the function block
ErrorIDSMC_ERRORError identification
CurrentPositionThe current position of the axis group
CurrentAdditionalAxesPositionsSMC_ADDITIONAL_AXES_VALUES_ARRAYCurrent positions of the group’s additional axes.