FB_Jogging - General Information
Type: |
Function block |
Available as of: |
V1.0.3.0 |
Inherits from: |
- |
Implements: |
- |
Versions: |
Current version |
Jogging an axis
The axis is moved to the BOOL inputs i_xJogForw and i_xJogBack in jogging mode.
Thereby the following applies:
oi_xEndless = TRUE: It will run forward (positive counting direction) or backwards (negative counting direction) as long as the input variable i_xJogForw or i_xJogBack = "TRUE".
oi_xEndless = FALSE: It will run forward (positive counting direction) or backwards (negative counting direction) as long as the input variable i_xJogForw or i_xJogBack = "TRUE" and the distance specified in the input variable i_IrMaxDistance has not moved yet.
For the direction specification the following applies:
oi_xJogForw = FALSE and i_xJogBack = FALSE, one of the signals becomes TRUE -> It starts in the direction that is specified with TRUE.
oOne of the signals i_xJogForw or i_xJogBack is TRUE, the other one becomes TRUE -> also, and the motion direction is retained.
oBoth signals i_xJogForw or i_xJogBack are TRUE, one becomes FALSE -> Afterwards it moves in the direction that remains TRUE.
Depending on the condition of the signals i_xJogForw or i_xJogBack a direction change from the condition 'both signals TRUE' or 'both signals FALSE' is possible.
Input |
Data type |
Description |
---|---|---|
i_xEnable |
BOOL |
A rising edge FALSE -> TRUE activates the POU, a falling edge TRUE -> FALSE deactivates the POU. A deactivated POU does not execute any actions. |
i_ifDrive |
IF_Drive |
Input for the axis that shall be controlled. |
i_xJogForw |
BOOL |
Jogging mode „forward“ (positive) |
i_xJogBack |
BOOL |
Jogging mode „backwards“ (negative) |
i_lrPeriod |
LREAL |
With a value of <> 0, the position is kept within the period value (0 … i_lrPeriod). If a period value is too high or two low, the position is manipulated by the period value. Only positive values are valid. |
i_xEndless |
BOOL |
TRUE: The axis can be moved endlessly in both directions. FALSE: Jogging mode active, taking into account the maximum distance in i_lrMaxDistance. |
i_lrMaxDistance |
LREAL |
Maximum jogging mode travel distance if i_xEndless = FALSE. |
i_lrVel |
LREAL |
Velocity (change of position) in units/s. Value changes are taken over by restarting via i_xJogForw or i_xJogBack. |
i_lrAcc |
LREAL |
Acceleration (change of velocity) in units/s2. Value changes are taken over by restarting via i_xJogForw or i_xJogBack. |
i_lrDec |
LREAL |
Deceleration (change of velocity) in units/s2. Value changes are taken over by restarting via i_xJogForw or i_xJogBack. |
i_lrJerk |
LREAL |
Jerk (change of acceleration/deceleration) in units/s3. Value changes are taken over by restarting via i_xJogForw or i_xJogBack. |
Output |
Data type |
Description |
---|---|---|
q_xActive |
BOOL |
TRUE: The POU is active and has to be executed further. FALSE: The POU is inactive. |
q_xReady |
BOOL |
TRUE: The POU is ready to operate and can accept user commands. FALSE: The POU is not ready to accept user commands. |
q_etDiag |
General library-independent statement on the diagnostic. A value not equal to ET_Diag.Ok corresponds to an diagnostic message. |
|
q_etDiagExt |
POU-specific output on the diagnostic. q_etDiag = ET_Diag.Ok -> Status message q_etDiag <> ET_Diag.Ok -> Diagnostic message |
|
q_sMsg |
STRING[80] |
Event-triggered message which gives more detailed information on the diagnostic state. |
q_xMotionInstructionActive |
BOOL |
TRUE: The axis is processing a motion command. The output is also set if the motion command defines that the axis is at stand still. |
q_xStepFinished |
BOOL |
TRUE: The maximum distance i_lrMaxDistance has been traveled. |
q_lrPosition |
LREAL |
Position (RefPosition) of the axis. |
q_etDiag |
q_etDiagExt |
Enumeration value |
Description |
---|---|---|---|
OK |
9 |
The POU is disabled. |
|
OK |
4 |
The POU is being initialized. |
|
OK |
237 |
Jogging mode Backward |
|
OK |
236 |
Jogging mode Forward |
|
OK |
234 |
Waiting for signal to start jogging mode. |
|
OK |
233 |
Waiting for the jogging mode signal to be taken back. |
|
OK |
8 |
Waiting until the POU is deactivated. |
|
OK |
159 |
Waiting until the drive has stopped. |
|
DriveConditionInvalid |
10 |
The drive is not ready for motion commands. |
|
InputParameterInvalid |
12 |
Acc is outside the valid range. |
|
InputParameterInvalid |
13 |
Dec is outside the valid range. |
|
InputParameterInvalid |
3 |
The connected drive is invalid. |
|
InputParameterInvalid |
14 |
Jerk is outside the valid range. |
|
InputParameterInvalid |
235 |
MaxDistance is outside the valid range. |
|
InputParameterInvalid |
201 |
Period is outside the valid range. |
|
SercosConditionInvalid |
19 |
The Sercos bus is not in phase 4. |
|
UnexpectedProgramBehavior |
1 |
An unintended detected error occurred during execution. |
|
UnexpectedProgramBehavior |
2 |
The POU is in an undefined state. |
Enumeration name: |
AccRange |
Enumeration value: |
12 |
Description: |
Acc is outside the valid range. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_lrAcc, an invalid value has been transferred. |
The following must hold: 0 < i_lrAcc < drive parameter MaxAcc For the valid value range for i_lrAcc, see output q_sMsg |
Enumeration name: |
DecRange |
Enumeration value: |
13 |
Description: |
Dec is outside the valid range. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_lrDec, an invalid value has been transferred. |
The following must hold: 0 < i_lrDec < drive parameter MaxAcc For the valid value range for i_lrDec, see output q_sMsg |
Enumeration name: |
Disabled |
Enumeration value: |
9 |
Description: |
The POU is disabled. |
The function block is disabled and executes no actions whatsoever. i_xEnable and q_xActive are set to FALSE
Enumeration name: |
DriveInvalid |
Enumeration value: |
3 |
Description: |
The connected drive is invalid. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_ifDrive, no drive was applied. |
At the input i_ifDrive, a valid drive must be transferred. |
- |
The connected drive does not support all required functionalities. |
Establish which functionalities are not supported by the drive by means of output q_sMsg. Use a drive which supports all required functionalities. |
Enumeration name: |
DriveNotReady |
Enumeration value: |
10 |
Description: |
The drive is not ready for motion commands. |
Issue |
Cause |
Solution |
---|---|---|
- |
The axis is not in position control. |
Verify the state of the axis. |
Enumeration name: |
Initializing |
Enumeration value: |
4 |
Description: |
The POU is being initialized. |
The function block is being initialized and thus is not yet ready to receive commands at its inputs.
The function block will signalize that it is ready for operation with the signal q_xReady = TRUE.
Enumeration name: |
JerkRange |
Enumeration value: |
14 |
Description: |
Jerk is outside the valid range. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_lrJerk, an invalid value has been applied. |
At the input i_lrJerk, a value greater than 0 and smaller than or equal to Gc_lrMaxJerk must be transferred. |
Enumeration name: |
JoggingBackward |
Enumeration value: |
237 |
Description: |
Jogging mode Backward |
The axis is moving backwards.
Enumeration name: |
JoggingForward |
Enumeration value: |
236 |
Description: |
Jogging mode Forward |
The axis is moving forwards.
Enumeration name: |
MaxDistanceRange |
Enumeration value: |
235 |
Description: |
MaxDistance is outside the valid range. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_lrMaxDistance, an invalid value has been applied. |
At the input i_lrMaxDistance, a value greater than or equal to 0 must be transferred. |
Enumeration name: |
PeriodRange |
Enumeration value: |
201 |
Description: |
Period is outside the valid range. |
Issue |
Cause |
Solution |
---|---|---|
- |
At the input i_lrPeriod, a negative value has been applied. |
At the input i_lrPeriod, a value greater than 0 must be transferred. |
Enumeration name: |
SercosNotInPhaseFour |
Enumeration value: |
19 |
Description: |
The Sercos bus is not in phase 4. |
Issue |
Cause |
Solution |
---|---|---|
- |
The parameter State of the SERCOS bus is not 4. |
Set the SERCOS bus parameter PhaseSet to 4. Verify the SERCOS bus for errors. |
Enumeration name: |
UnexpectedFeedback |
Enumeration value: |
1 |
Description: |
An unintended detected error occurred during execution. |
Issue |
Cause |
Solution |
---|---|---|
- |
An error occurred in the internal execution. |
Please inform the support team about this error. |
Enumeration name: |
UnknownState |
Enumeration value: |
2 |
Description: |
The POU is in an undefined state. |
Issue |
Cause |
Solution |
---|---|---|
- |
An error occurred in the internal execution. |
Please inform the support team about this error. |
Enumeration name: |
WaitForJogging |
Enumeration value: |
234 |
Description: |
Waiting for signal to start jogging mode. |
The function block is ready to process start signals for jogging mode.
Enumeration name: |
WaitForJoggingInputsLow |
Enumeration value: |
233 |
Description: |
Waiting for the jogging mode signal to be taken back. |
The inputs i_xJogForw and i_xJogBack both must be FALSE before processing can be continued.
Enumeration name: |
WaitUntilDisabled |
Enumeration value: |
8 |
Description: |
Waiting until the POU is deactivated. |
The function block is disabled. All internal states are reset and connected resources (e.g. axes) are transferred to a safe state. The function block has to be called up continuously until it reports q_xActive = FALSE.
Enumeration name: |
WaitUntilStopped |
Enumeration value: |
159 |
Description: |
Waiting until the drive has stopped. |
The axis is stopped.
Name |
Description |
---|---|
Registering the logger points of the POU in the Application Logger |