Part 5 - Homing Procedures and Blocks
A. Homing Procedures
The homing
functionality was originally seen as a separate sequence in the start up
phase of a machine or axis. The sequence for an axis was: power on, homing,
and move ‘something’. The whole homing procedure itself was hidden to
the user. However, some users needed more control on the homing
functionality itself. For this reason, a set of building blocks have been
identified to be able to define dedicated homing procedures. This procedure
can be encapsulated in a dedicated homing function block, which can be added
to the library and used for this specific procedure. As examples, several
possible homing procedures are defined:
·
HomeAbsSwitch - Absolute
Switch homing plus limit switches
·
HomeLimitSwitch - Homing
against limit switches
·
HomeBlock - Homing against
hardware parts blocking movement
·
HomeRefPulse - Homing using
encoder reference pulse “Zero Mark”
·
HomeRefPulseSet - Homing
using a set of encoder reference pulses “Zero Mark”
·
HomeDirect - Static Homing,
forcing a position from a user reference
·
HomeAbsolute - Static Homing,
forcing a position from an absolute encoder
B. Homing Step Function Blocks
To make these
procedures available to the user, a toolkit is defined with additional
Function Blocks, FBs. By using one or more connected function blocks one can
create complex homing sequences. With these, a user can create its own
homing procedure in more detail, and even create own, user specific, homing
procedures. Additionally, these function blocks include advanced homing
process error reporting, evaluating time, distance and torque limits.
The
following defined FBs match the homing procedures and are issued in or
change the state to the Homing state:
·
MC_StepAbsSwitch - Absolute
Switch homing plus limit switches
·
MC_StepLimitSwitch - Homing
against limit switches
·
MC_StepBlock
- Homing against hardware parts blocking movement
·
MC_StepRefPulse - Homing
using encoder reference Pulse “Zero Mark”
In
this way, any combination sequence is possible without the need of
predefining hundreds of homing methods. The individual adjustments for
torque limit, time limit and distance limit provide control of the sequence
error conditions.
The following FBs
lead to a final position and leave the homing state to ‘StandStill’:
·
MC_HomeDirect - Static Homing
forcing a position from a user reference
·
MC_HomeAbsolute - Static
Homing forcing a position from an absolute encoder
·
MC_FinishHoming - Finishes
the homing procedure with the possibility to do a relative move to the
operational area.
In addition, the
homing functionality is needed while the machine is operating, i.e. not in
the state Homing. This ‘homing-on-the-fly’ is called passive homing.
They have no effect on State Diagram, like the administrative FBs, and can
be called in any movement state. They consist of:
·
MC_StepReferenceFlyingSwitch
·
MC_StepReferenceFlyingRefPulse
·
MC_AbortPassiveHoming
|