MCFB_StepBlock
Function Block - Homing to a physical object, mechanically blocking the movement.
Inputs
Input |
Data Type |
Range |
Unit |
Default |
Description |
---|---|---|---|---|---|
Execute |
BOOL |
FALSE, TRUE |
N/A |
No default |
Request the homing step procedure at the rising edge. Outputs are reset when execute input is FALSE. |
AxisID |
AXIS_REF |
1 to 256 |
N/A |
No default |
Name of a declared instance of the AXIS_REF library function. See AXIS_REF Structure. |
Direction |
DINT |
0 to 1 |
N/A |
No default |
Defines the axis homing direction.
|
Velocity |
LREAL |
No range |
User unit/sec |
No default |
Commanded velocity for the homing move. |
Acceleration |
LREAL |
No range |
User unit/sec2 |
No default |
Commanded acceleration for the homing move. |
Deceleration |
LREAL |
No range |
User unit/sec2 |
No default |
Commanded deceleration for the homing move. |
Jerk |
LREAL |
No range |
User unit/sec3 |
No default |
Commanded jerk for the homing move. If 0 (zero), trapezoidal acc/dec is used. |
TorqueLimit |
LREAL |
No range |
User units |
No default |
Maximum torque applied for the homing move.
|
TimeLimit |
TIME |
No range |
Sec |
No default |
Maximum time for homing move to complete.
|
DistanceLimit |
LREAL |
No range |
User units |
No default |
Maximum distance for homing move to complete.
|
BufferMode |
SINT |
0 to 5 |
N/A |
No default |
Switch state to complete homing.
|
Outputs
Output |
Data Type |
Range |
Unit |
Description |
||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Done |
BOOL |
FALSE, TRUE |
N/A |
Indicates the move completed successfully. |
||||||||||||||
Busy |
BOOL |
FALSE, TRUE |
N/A |
High from the moment the Execute input goes high until the time the move is ended. |
||||||||||||||
Active |
BOOL |
FALSE, TRUE |
N/A |
Indicates this move is the Active move. |
||||||||||||||
CommandAborted |
BOOL |
FALSE, TRUE |
N/A |
Indicates the move was aborted. |
||||||||||||||
Error |
BOOL |
FALSE, TRUE |
N/A |
Indicates either:
|
||||||||||||||
ErrorID |
INT |
Enumerated |
N/A |
Indicates the error if the Error output is set to TRUE. Error identifier:
|
Remarks
- Performs homing against a physical object, mechanically blocking the movement.
- In this mode, there is no limit switch or Reference Pulse.
- Adequate torque limits are required for not damaging mechanics during homing process.
- The StepBlock condition is that we have reached the torque limit and real velocity falls below 5% of demanded.
This image shows the function or function block I/O.
Figure 1: MCFB_StepBlock
Usage
Homing against a physical object, mechanically blocking the movement require adequate torque limits for not damaging mechanics during homing process.
- This function block does not modify the actual position.
- Home is commanded by the user in the designated homing direction at the selected or programmed Velocity.
- The Torque is limited.
- Time and Distance Limits can cause an error if exceeded.
- Process is finished when Torque is in limit condition and real velocity is below 5% of selected Velocity.
Figure 2: MCFB_StepBlock Usage 1
Figure 3: MCFB_StepBlock Usage 2
FBD Language Example
FFLD Language Example
IL Language Example
Not available.
ST Language Example
PositiveDirection :=0;
Velocity :=10000.0;
TorqueLimit :=50.0;
TimeLimit :=T#10s;
DistanceLimit :=10000.0;
Inst_MCFB_StepBlock( True, Axis1, PositiveDirection, Velocity, 1000, 1000, 0, TorqueLimit, TimeLimit, DistanceLimit, 0 );
HomeComplete :=Inst_MCFB_StepBlock.Done;
HomeBusy :=Inst_MCFB_StepBlock.Busy;
HomeActive :=Inst_MCFB_StepBlock.Active;
HomeAborted :=Inst_MCFB_StepBlock.CommandAborted;
HomeError :=Inst_MCFB_StepBlock.Error;
HomeErrorID :=Inst_MCFB_StepBlock.ErrorID;
See Also