PLCopen Registration

Registration is a technique used to maintain the positional accuracy in repetitive processes. It uses a Fast InputClosedThe inputs are taken into account at each cycle depending on the system periodicity (for example each millisecond). Under certain circumstances this can be insufficient when more accuracy is needed, or if a quick response is required from the system. To fill the gap, a drive may have some Fast Input connections (generally one or two). When an event happens that triggers a Fast Input (e.g. when a sensor sends a rising edge), the detection of a signal occurs faster (which can be 1000 times more accurate than the system periodicity). Then the timestamp associated with this input can be provided to the IPC to take corrective action switch, typically a photo eye, to measure product position and adjust the axis (or axes) to compensate for variations. There are two basic forms of registration: single-axis registration and master/slave registration.

Deciding Which Function Blocks to Use for Registration

There are two good methods by which 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 MC_TouchProbe, Trigger_Ref structure, and MC_MoveSuperimp MC_MarkRegist or MC_MachRegist, Trigger_Ref structure, MC_MoveSuperimp, and MC_ReadParam
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 and can either make the offset move (linear acceleration / deceleration) or 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

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 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.

Master/Slave Registration

Master/slave registration is performed on an axis running a master/slave move such as MC_GearIn or MC_CamIn. 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 and keep 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.

The figure Registration below shows an example of a printing application using 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.

Registration

Figure 7-21: Registration