Block ahead limiting on the basis of the number of blocks

Definition of limiting

Limiting is achieved by defining the number of NC blocks by which the decoder may be ahead of interpolation.

This user can make this definition:

As a result the CNC provides each decoded CNC row with a unique number (block count).

Status display

When decoding reaches the block ahead limit, the waiting state of the decoder is indicated by the following status bit.

The status bit is cancelled when decoding is continued. The display datum can be indicated in the diagnostic data.

0x00100000        BLOCK_AHEAD_LOCK_ACTIVE

Internal sequence

For every NC block output, the decoder saves the associated block count and an associated output count in an internal table.

During the program run, the decoder determines the related delta of the output count (block ahead) using the block count signalled by the interpolator.

If this delta is greater than the permitted defined limit, the decoder interrupts processing. Before continuing the decoding function, the decoder waits until the interpolator again undershoots the defined limit, i.e. it catches up.

Checking the decoder/interpolator block ahead limit function
Checking the decoder/interpolator block ahead limit function

In the figure the delta of the block ahead limit is 26-3 = 23, i.e. decoding is continued since the block ahead limit of 25 is not yet reached.