PLCopen Registration

Registration is a technique used to maintain the positional accuracy in repetitive processes.

Decide which Function Blocks to Use for Registration

These are the methods to set up Registration, each using a different set of function blocks.

Method 1 is easy to set up, thus we recommend trying it first.

 

Method 1: 

Using MC_TouchProbe

Method 2:

Using MC_MarkRegist or MC_MachRegist

Key Function Blocks

Details

This method incorporates:

  • MC_TouchProbe to capture the drive position using the high speed capture engine in the drive.
  • The Trigger_Ref structure is used to set up the drive's capture engine.
  • MC_TouchProbe outputs a signal when a capture has occurred and also the position captured.
  • Additional code is created to make motion corrections (typically with MC_TouchProbe) based on the captured position value compared to a reference position or distance.

This method incorporates:

  • MC_MarkRegist or MC_MachRegist which, in addition to capturing a position from a drive, automatically calculates the position correction.
  • This can either:
    • Make the offset move (linear acceleration / deceleration).
    • Outputs the calculated position correction to be done by another function block (typically with MC_TouchProbe).
  • The Trigger_Ref structure is used to set up the drive's capture engine.

Advantages

Basic implementation.
  • Fast to develop due to having fewer input values to determine .
  • Simple function block functionality leads to less debug time.
Incorporates additional functionality including:
  • Automatically calculates the number of good and bad registration marks.
  • The option to only make corrective moves based on a good registration mark.
  • Automatically make the corrective motion (linear acceleration / deceleration only).
  • Position scaling differences are internally calculated if the axis in which the position is captured and the axis in which the motion compensation is made are different.

Example

PLCopen Registration Example Project

Rotary Knife Simulated Application

Master/Slave Registration

Master/slave registration is performed on an axis running a master/slave move (e.g., MC_CamIn or MC_GearIn).

  • It can be performed by tracking the position of the master axis (Master Registration) or tracking the position of the slave axis (Slave Registration) or both.
  • This type of registration:
    • Adjusts the positional relationship between the master and slave axes to accommodate for variations in the distance between products.
    • Keeps the process synchronized to the product over many repetitions.

Master Registration

Master registration is performed by having the Fast Input switch trigger on a registration mark controlled by the master axis.

  • When the Fast Input latches the position of the master axis at this mark, the distance between this position and the position of the previous mark is compared to an expected distance.
  • This difference is added to the slave axis's master offset to adjust the position of the slave axis with respect to the position of the master.

Slave Registration

Slave registration is performed by having the Fast Input switch trigger on a registration mark controlled by the slave axis.

  • When the Fast Input latches the position of the slave axis at this mark, the distance between this position and the position of the previous mark is compared to an expected distance.
  • This difference is added to the slave axis's slave offset to adjust the position of the slave axis with respect to the position of the master.

This Registration image is an example of a printing application using registration.

Registration

Figure 1: Registration

  • The axis controlling the web is the master and the axis controlling the print head is the slave.
    • When the photo eye detects a registration mark on the web, the master position is latched.
  • The amount of registration compensation required is calculated by comparing the actual distance between the marks to the expected distance.
    • That difference is added to the slave axis’s master offset.
    • This adjusts the positional relationship between the web and the print head so that each print on the web is placed accurately.

Single-Axis Registration

Single-axis registration is performed on an axis running a discrete move such as MC_MoveAbsolute or MC_MoveRelative.

  • When the Fast Input latches the position of the product, the axis position is reset, typically to 0 (zero).
  • This resets the axis's coordinates for each product to accommodate for variations in the distance between products and keep the process synchronized to the product over many repetitions.