0% found this document useful (0 votes)
281 views544 pages

Jx6 Con Move Ba 30001 Manual

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
281 views544 pages

Jx6 Con Move Ba 30001 Manual

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 544

Operator's Manual

Article #
JX6-CON-Move: 100000258
JX6-CON-Move-BP: 100000259

Article # 608 641 19 / Rev. 3.000.1 January 2004 / Printed in Germany


JetWeb

Edition 3.000.1

Jetter AG reserves the right to make alterations to its products in the interest of
technical progress. These alterations need not be documented in every single case.

This manual and the information contained herein have been compiled with due
diligence. However, Jetter AG assumes no liability for printing or other errors or
damages arising from such errors.

The brand names and product names used in this document are trademarks or
registered trademarks of the respective title owner.

2 Jetter AG
JX6-CON-Move(-BP) Module

How to Contact us:


Jetter AG
Gräterstraße 2
D-71642 Ludwigsburg
Germany

Phone - Switchboard: +49 7141 2550-0


Phone - Sales: +49 7141 2550-433
Phone - Technical Hotline: +49 7141 2550-444

Telefax: +49 7141 2550-425


E-Mail - Sales: [email protected]
E-Mail - Technical Hotline: [email protected]
Internet Address: http://www.jetter.de

This Operator's Manual is an Integral


Part of the JX6-CON-Move(-BP)
Module:
Type:
Serial No:
Year of Manufacture:
Order No:

To be entered by the customer:


Inventory No:
Place of operation:

© Copyright 2004 by Jetter AG. All rights reserved.

Jetter AG 3
JetWeb

History
Edition Comment

1.00 History has been integrated beginning from edition 3.00.1

2.00 History has been integrated beginning from edition 3.00.1

3.00 Amplifier register JetMove 6xx

3.000.1 See “Recent Revisions” on page 535.

4 Jetter AG
JX6-CON-Move(-BP) Module

Jetter AG 5
Table of Contents JetWeb

Contents
1 Operator's Manual 11
2 Safety Instructions 15
3 Overview 19
4 Hardware Description 21
4.1 Technical Data 21
4.1.1 Physical Dimensions 21
4.1.2 Technical Data 23
4.1.3 Operating Parameters 25
4.2 Configurations 30
4.2.1 Various Rack Models 30
4.2.2 Module Types 30
4.2.3 Submodules 32
4.2.4 JX6-SB Submodule 34
4.2.5 Number of Axes 37
4.3 Description of Connections 38
4.3.1 Component Mounting Diagram 38
4.3.2 Connection Diagram 39
4.3.3 Power Supply 40
4.3.4 Digital Inputs 42
4.3.5 Digital Outputs 43
4.3.6 Interface Connection with the Servo Amplifier 44
4.4 Function of LEDs 47
5 General Information 49
5.1 Principle of a Control Loop 49
5.2 Mode of Operation of a Servo Control Loop 51
5.3 Elements of the Servo Control Loop 53
5.3.1 Position Controller 58
5.3.2 Servo amplifier 62
5.3.3 Acquisition of Actual Values 64
5.4 Machine Referencing 76
6 Description of Registers 83
6.1 Numbering of Axes and Registers 83
6.2 General Registers 85
6.2.1 Status Register 85
6.2.2 Command Registers 89
6.2.3 Control Register 97
6.2.4 Amplifier Status Register 99
6.3 General Configuration Registers 101

6 Jetter AG
JX6-CON-Move(-BP) Module Table of Contents

6.4 General Axis Registers 104


6.4.1 Position Registers for Axes 105
6.4.2 Velocity Registers for Axes 111
6.5 Position Control Registers 116
6.6 Amplifier register JetMove 2xx 119
6.6.1 Registers containing status information 119
6.6.2 Registers for Operating Modes 129
6.6.3 Tracking error 132
6.6.4 Position Control Registers 134
6.6.5 Registers for the Digital Speed Controller 135
6.6.6 Configuration Registers for Axes 139
6.6.7 Registers containing parameter information 141
6.7 Amplifier Register JetMove 6xx 150
6.7.1 Registers containing status information 151
6.7.2 Tracking error 171
6.7.3 Position Control Registers 173
6.7.4 Registers for the Digital Speed Controller 174
6.7.5 Configuration Registers for Axes 178
6.7.6 Registers containing parameter information 180

7 Positioning Functions 183


7.1 Basic Positioning Types 183
7.1.1 Absolute Positioning 183
7.1.2 Relative Positioning 184
7.1.3 Comparison of Positioning Types 186
7.1.4 Overview of Registers: Absolute and Relative Positioning 188
7.1.5 Description of Registers: Absolute and Relative Positioning 189
7.1.6 Overview of Commands: Absolute and Relative Positioning 191
7.2 Relative Positioning with Start Input 192
7.2.1 Overview 192
7.2.2 Overview of Registers: Relativ Positioning with Start Input 194
7.2.3 Description of Registers: Relative Positioning with Start Input 195
7.2.4 Overview of Commands: Relative Positioning with Start Input 197
7.3 Endless Positioning 198
7.3.1 Overview 198
7.3.2 Overview of Registers: Endless Positioning 202
7.3.3 Description of Registers: Endless Positioning 203
7.3.4 Overview of Commands: Endless Positioning 204
7.4 Capturing Position with Input Signal 205
7.4.1 Overview 205
7.4.2 Overview of Registers: Capture Position with Input Signal 210
7.4.3 Description of Registers: Capture Position with Input Signal 211

Jetter AG 7
Table of Contents JetWeb

8 Continuous Path Controls 213


8.1 Linear Interpolation 215
8.1.1 Overview 215
8.1.2 Linear Interpolation Using the JX6-CON-Move(-BP) Module 217
8.1.3 Configurations 219
8.1.4 Programming Rules 230
8.1.5 Overview of Registers: Linear Interpolation 239
8.1.6 Description of Registers: Linear Interpolation 241
8.1.7 Overview of Commands: Linear Interpolation 252
8.2 Circular interpolation with 2 axes 253
8.2.1 Overview 253
8.2.2 Circular interpolation using 2 axes and the
JX6-CON-Move(-BP) module 255
8.2.3 Configurations 257
8.2.4 Programming Rules 266
8.2.5 Overview of Registers: Circular interpolation with 2 axes 273
8.2.6 Description of Registers: Circular interpolation with 2 axes 275
8.2.7 Overview of Commands: Circular interpolation with 2 axes 283
8.3 Circular interpolation with 3 axes 284
8.3.1 Overview 284
8.3.2 Circular interpolation using 3 axes and the
JX6-CON-Move(-BP) module 284
8.3.3 Configurations 288
8.3.4 Programming Rules 291
8.3.5 Overview of Registers: Circular interpolation with 3 axes 296
8.3.6 Description of Registers: Circular interpolation with 3 axes 298
8.3.7 Overview of Commands: Circular interpolation with 3 axes 313
8.4 Combined circular and linear interpolation 314
8.4.1 Overview 314
8.4.2 Combined interpolation with the JX6-CON-Move-BP module 314
8.4.3 Configurations 316
8.4.4 Programming Rules 327
8.4.5 Overview of Registers: Combined circular and linear interpolation 335
8.4.6 Description of Registers: Combined circular and linear interpolation 337
8.4.7 Overview of Commands: Combined circular and linear interpolation 351
8.5 Consecutive interpolation 352
8.5.1 Overview 352
8.5.2 Consecutive interpolation with the JX6-CON-Move(-BP) module 352
8.5.3 Configurations 356
8.5.4 Programming Rules 361
8.5.5 Overview of Registers: Consecutive interpolation 375
8.5.6 Description of Registers: Consecutive interpolation 378
8.5.7 Overview of Commands: Consecutive interpolation 398
8.6 Spline interpolation 399
8.6.1 Overview 399
8.6.2 Spline interpolation with the JX6-CON-Move(-BP) module 399
8.6.3 Configurations 406

8 Jetter AG
JX6-CON-Move(-BP) Module Table of Contents

8.6.4 Programming Rules 409


8.6.5 Overview of Registers: Spline interpolation with 3 axes 413
8.6.6 Description of Registers: Spline interpolation with 3 axes 415
8.6.7 Overview of Commands: Spline interpolation with 3 axes 424

9 Follower Control 425


9.1 Follower with Static Transmission Ratio 427
9.1.1 Overview 427
9.1.2 Configurations 430
9.1.3 Programming Rules 440
9.1.4 Follower Control (Electric Gearbox) in Endless Mode 444
9.1.5 Overview of Registers: Follower Control (electric gearbox) 449
9.1.6 Description of Registers: Follower Control (electric gearbox) 451
9.1.7 Overview of Commands: Follower Control (electric gearbox) 463
9.2 Follower Control with Dynamic Transmission Ratio 464
9.2.1 Overview 464
9.2.2 Structure and Handling of the Table 467
9.2.3 Configurations 473
9.2.4 Programming Rules 485
9.2.5 Follower Control (table mode) in Endless Mode 490
9.2.6 Time-controlled follower mode (table mode) 496
9.2.7 Overview of Registers: Follower (Table Mode) 500
9.2.8 Description of Registers: Follower (Table Mode) 502
9.2.9 Overview of Commands: Follower (Table Mode) 515

List of Appendices
Appendix A: Brief Overview of Status Registers 517
Appendix B: Brief Overview of Control Registers 518
Appendix C: Brief Overview of Commands 519
Appendix D: Brief Overview of Registers 522
Appendix E: Errors and alarms of the JetMove 2xx amplifier 531
Appendix F: Errors and Alarms of the JetMove 6xx Amplifier 533
Appendix G: Recent Revisions 535
Appendix H: List of Abbreviations 536
Appendix I: Index of Illustrations 539
Appendix J: Index 541

Jetter AG 9
Table of Contents JetWeb

10 Jetter AG
JX6-CON-Move(-BP) Module 1 Operator's Manual

Contents 1 Operator's Manual

Meaning
This manual is an integral part of the JX6-CON-Move(-BP) module

• and must be kept in a way that it is always at hand until the module will be
disposed of.
• Pass this manual on if the module is sold or loaned/leased out.

In any case you encounter difficulties to clearly understand the manual, please
contact the manufacturer. We would appreciate any suggestions and contributions
on your part and would ask you to contact us. This will help us to produce manuals
that are more user-friendly and to address your wishes and requirements.

This manual contains important information on how to transport, erect, install,


operate, maintain and repair the JX6-CON-Move(-BP) module.
Therefore, any person who has to deal with this module must carefully read,
understand and observe this manual, and especially the safety instructions.

Missing or inadequate knowledge of the manual results in the loss of any claim of
liability on part of Jetter AG. Therefore, the operating company is recommended to
have the instruction of the persons concerned confirmed in writing.

Usage as Agreed Upon


Usage as agreed upon includes operation in accordance with the operating
instructions.
The JX6-CON-Move(-BP) module is used to control machinery such as conveyors,
special purpose machines, and handling machines.
The JX6-CON-Move(-BP) module is a controller module and can logically be
operated and controlled only in conjunction with a CPU-module.

To provide the module with power, a 24 V power supply unit is required. The
operating voltage of DC 24 V is classified as SELV (safety extra low voltage) and is
therefore not subject to the EU Low Voltage Directive. The use of other power supply
modules is not permitted.

Usage Other Than Agreed Upon


The JX6-CON-Move(-BP) module must not be used in technical systems which to a
high degree have to be fail-safe.
If the JX6-CON-Move(-BP) module is to be run under surrounding conditions, which
differ from the conditions mentioned in chapter 4.1.3: "Operating Parameters", page
25 , the manufacturer is to be contacted beforehand.

Jetter AG 11
1 Operator's Manual JetWeb

Who is permitted to operate the JX6-CON-Move(-BP)


Module?
Only instructed, trained and authorized persons are permitted to operate the JX6-
CON-Move(-BP) module.

Transport: Only by personnel with knowledge in handling


electrostatically sensitive components.
Installation: Only by specialists with training in electrical
engineering.
Commissioning: Only by specialists with extensive knowledge of and
experience with electrical engineering / drive
technology.

Maintaining the JX6-CON-Move(-BP) Module


The module as such is maintenance-free. Therefore, no inspection or maintenance
works are required for the operation of the module.

Repairing the JX6-CON-Move(-BP) Module


Since the JX6-CON-Move(-BP) module does not contain any operator serviceable
parts, it must not be repaired by the operator.
If it is necessary to repair the JX6-CON-Move(-BP), please send it to Jetter AG.

Decommissioning and Disposing of the JX6-CON-


Move(-BP) Module
Decommissioning and disposing of the module are subject to the environmental
legislation of the respective country in effect for the operating company’s premises.

12 Jetter AG
JX6-CON-Move(-BP) Module 1 Operator's Manual

Descriptions of Symbols

This sign is to indicate a possible impending danger of serious injury or death.

Warning

This sign is to indicate a possible impending danger of light injury.


This sign is also to warn you of material damage.

Caution

This sign is to indicate a possible impending situation which might bring damage
to the product or to its surroundings.

Important

You will be informed of various possible applications and will receive further
useful suggestions.

Note

· / - Enumerations are marked by full stops, strokes or scores.

Operating instructions are marked by this arrow.

Automatically running processes or results to be achieved are marked by this


arrow.

Illustration of PC and user interface keys.

Jetter AG 13
1 Operator's Manual JetWeb

14 Jetter AG
JX6-CON-Move(-BP) Module 2 Safety Instructions

2 Safety Instructions

General Information
This controller module complies with the applicable safety regulations and
standards. Special emphasis was given to the safety of the users.

Of course, the user should adhere to the following regulations:


• relevant accident prevention regulations,
• accepted safety rules,
• EU guidelines and other country-specific regulations.

Ensure Your Own Safety


Isolate the JX6-CON-Move(-BP) module from the mains if maintenance works have
to be carried out. By doing so, you will prevent accidents resulting from electric
voltage and moving parts.

Safety and protective devices, e.g. the barrier and cover of the terminal box must not
in any case be shunted or by-passed. Dismantled safety equipment must be
reattached prior to commissioning and checked for proper functioning.

Modifications and Alterations to the Module


For safety reasons, no modifications and alterations to the JX6-CON-Move(-BP)
module and its functions are allowed. Any modifications to the module not expressly
authorized by the manufacturer will result in a loss of any liability claims to Jetter AG.

The original parts are specifically designed for the JX6-CON-Move(-BP) module.
Third-party parts and equipment are not tested on our part, and are therefore not
released by us. The installation of such parts may impair the safety and the proper
functioning of the controller module.

Any liability of Jetter AG for any damages resulting from the use of non original parts
and equipment is excluded.

Have works on the electric and electronic system performed by qualified personnel
only.

Malfunctions
Malfunctions or other damages are to be reported to an authorized person
immediately.
Safeguard the JX6-CON-Move(-BP) module against misuse or accidental use.
Only qualified experts are allowed to carry out repairs.

Jetter AG 15
2 Safety Instructions JetWeb

Information Signs and Labels


Markings, information signs, and labels always have to be observed and kept
readable.
Damaged or unreadable information signs and labels are to be exchanged.

16 Jetter AG
JX6-CON-Move(-BP) Module 2 Safety Instructions

Instructions on EMI
In terms of emitted interference the JX6-CON-Move(-BP) module is a product
belonging to EMC class A. This module can causes radio interferences in residential
areas. This module is operated at the operator's own risk.

The noise immunity of a system corresponds to the weakest component of the


system. For this reason, correct wiring and shielding of the cables is important.

Important !

Measures for increasing immunity to interference:

Screw the JX6-CON-Move(-BP) module tightly to the enclosure of the


JX6 module.

Follow the instructions given in Application Note 016 "EMC-Compatible


Installation of the Electric Cabinet" published by Jetter AG.

The following instructions are excerpts from Application Note 016:

It is of great importance that the JX6 housing is screwed down to a


highly conductive mounting plate.

On principle, physical separation should be maintained between signal


and power lines. We recommend spacings greater than 20 cm. Cables
and lines should cross each other at an angle of 90°.

Shield cables on both ends.

Unshielded wire ends of shielded cables should be as short as


possible.

The entire shield must be drawn behind the isolation, and then be
clamped under an earthed strain relief with the greatest possible
surface area.

When connecting the signal line to the terminal block

it is important that the strain relief is directly connected to a grounded


surface with the greatest possible surface area.

Jetter AG 17
2 Safety Instructions JetWeb

When male connectors are used:

only use metallized connectors, e.g. SUB-D with metallized housing.


Make sure that the strain relief is directly connected with the housing
here as well (see figure below).

Male/Female SUB-D Connectors 9, 15 or 25 Pins with Metallized


Housing

Fig. 1: Shielding in Conformity with EMC Standards

Important !

To avoid malfunctions the following must be ensured:

The shielding must be clamped under a strain relief with the greatest
possible surface area.

The connection between the housing and the shielding must be


electrically conducting.

The distance between unshielded conductor ends must be as short as


possible.

18 Jetter AG
JX6-CON-Move(-BP) Module 3 Overview

3 Overview
The JX6-CON-Move and JX6-CON-Move-BP modules are expansion modules
which can be connected to the JetControl controller. Both module types are controller
modules mainly used to control servo axes.
This manual describes the module's function as servo controller.

Controlled systems are realized by means of servo axes. In a controlled system,


feedback about the actual state of the parameter to be modified is acquired,
evaluated, and processed.

The actual state is acquired by an appropriate sensor and this information is returned
to the controller. Resolvers or Hiperfaces are commonly used in conjunction with the
JX6-CON-Move(-BP) module.

Basically, mechanical or electric drives can be employed in connection with a


controller module. The JX6-CON-Move(-BP) module is mainly used in connection
with servo motors.

Each JX6-CON-Move(-BP) controller module is equipped with its own processor.


Thus, they are intelligent modules due to the local microprocessor.
Certain functions, such as acceleration/deceleration ramps, or path control are
realized within the submodule.

These functions are activated by macro instructions, such as the positioning


instruction.
Elements of the positioning instruction:
POS [axis=<axis number>, Pos=<set position>, v=<set velocity>].

Program Sequence:

THEN

POS (21, 10000, 500)

Jetter AG 19
3 Overview JetWeb

The JX6-CON-Move(-BP) module is used in connection with the JX6-SB module to


realize axis functions.

All parameters necessary for the axes are stored in registers. These parameters can
be accessed in various ways by means of register commands:

The registers are read • to determine the actual position


• for visualization purposes
• for diagnostics and fault location
• to obtain information about values calculated
internally by the controller module

The registers are written • to define basic settings


• to modify parameters.

The following block diagram provides an overview of functions:

Fig. 2: Block diagram of the JX6-CON-Move(-BP) Module

20 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4 Hardware Description
The hardware description comprises technical data, configuration possibilities,
descriptions of connections and interfaces, and the function of display elements.

4.1 Technical Data


The technical data listed in this chapter apply both to the JX6-CON-Move and JX6-
CON-Move-BP modules.

4.1.1 Physical Dimensions


The following figures (not true to scale) show all necessary technical dimensions of
the JX6-CON-Move(-BP) module.

Fig. 3: Physical Dimensions JX6-CON-Move(-BP) Front Panel

Jetter AG 21
4 Hardware Description JetWeb

173,0

165,0

54,6

110,5

172,3

185,7

Fig. 4: Physical Dimensions JX6-CON-Move(-BP) Board

22 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.1.2 Technical Data


Technical Specification of the JX6-CON-Move(-BP) Module

General Technical Data


JX6-CON-Move(-BP) Module
Front panel Aluminium

Dimensions (H x W x D in mm) Board:


Front panel: 261.8 x 50.5 x

Weight 350 g

Installation Plugged and screwed in the JetControl-


JX6 housing

Rated voltage DC 24 V (-15 % .. +20 %)

Voltage range DC 20 .. 30 V

Residual ripple <= 5 % 2 A

Voltage dips Duration of voltage dips <= 10 ms,


Time interval between two voltage
dips >=1 s, acc. to severity level PS2
(DIN EN 61131-2)

Technical data JX6-CON-Move(-BP) module in


conjunction with the JetMove200 module
Positioning range -8.388.608 .. +8.388.607

Positioning accuracy ± 1 increment

Max. encoder speed 12,000 rpm

Acceleration/deceleration ramp Sine square / linear, steepness is


programmable

Cycle times Current controller: 62.5 µs


Speed controller: 125 µs
Position controller: 250 µs
Setpoint generator: 2 ms

Jetter AG 23
4 Hardware Description JetWeb

Technical Specifications of Digital Inputs and Outputs of the JX6-


CON-Move(-BP) Module

Technical Data of Digital Inputs


Amount 16

Rated voltage DC 24 V

Voltage range 15 .. 27 V

Input current approx. 8 mA

Input resistance 3.0 kΩ

Input delay time approx. 3 ms

Signal voltage ON min. 15 V

Signal voltage OFF max. 10 V

Electrical isolation None

Technical Data of Digital Outputs


Amount 16

Type Transistor, pnp

Rated voltage DC 24 V

Voltage range 20 .. 30 V

Load current min. 10 mA and max. 0.5 A / output

Electrical isolation None

Protective circuits against Overload, overvoltage,


overtemperature

Protection against inductive loads Yes

Signal voltage ON typically Vsupply -0.5 V

24 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.1.3 Operating Parameters


Environmental Parameters

Parameter Value Reference


Operating 0 .. +50 °C
temperature range

Storage -25 .. +70 °C DIN EN 61131-2,


temperature range DIN EN 60068-2-1,
DIN EN 60068-2-2

Air humidity 5 .. 95 % (non-condensing) DIN EN 61131-2

Pollution degree 2 DIN EN 61131-2

Corrosion No special protection against


immunity/chemical corrosion. Ambient air must be free
resistance from higher concentrations of acids,
alcaline solutions, corrosive agents,
salts, metal vapours, or other
corrosive or electroconductive
contaminants.

Atmospheric max. 2000 m above sea level DIN EN 61131-2


pressure

Important !

Please observe the operating and environmental conditions as well as the


following measures to avoid damages in transit and storage:

Transport in original packing only.

Monitor and ensure storage and operating conditions, e.g. through


heating/cooling or ventilating.

Observe the instructions on installation and wiring.

Jetter AG 25
4 Hardware Description JetWeb

Mechnical Parameters

Parameter Value Reference


Free falls Height of fall (units within packing): DIN EN 61131-2,
withstanding test 1m DIN EN 60068-2-32

Vibration resistance 10 Hz .. 57 Hz: with an amplitude of DIN EN 61131-2,


0.0375 mm for continuous operation DIN EN 60068-2-6
(peak amplitude of 0.075 mm);
57 Hz .. 150 Hz: 0.5 constant
acceleration for continuous
operation or 1 g constant
acceleration occasionally; 1 octave/
min,
10 frequency sweeps (sinusoidal),
all three spatial axes

Shock resistance 15 g occasionally, 11 ms, sinusoidal DIN EN 61131-2,


half-wave, 2 shocks in all three DIN EN 60068-2-27
spatial axes

Degree of Mounted in housing correctly: IP20 DIN EN 60529


protection

Mounting position vertical position (input and output


terminals upward)

Parameters - Electrical Safety

Parameter Value Reference


Protection class III DIN EN 61131-2

Dielectric test Functional ground is connected to DIN EN 61131-2


voltage chassis ground internally.

Overvoltage II DIN EN 61131-2


category

26 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

EMI Parameters: Emitted interference

Parameter Value Reference


Enclosure Frequency range 30 .. 230 MHz: DIN EN 50081-2,
limit 30 dB (µV/m) at 30 m distance DIN EN 55011
Frequency range 230 .. 1,000 MHz:
limit 37 dB (µV/m) at 30 m distance
class A

EMI Parameters: Enclosure Immunity to Interference

Parameter Value Reference


RF Field, Frequency range 26 .. 1.000 MHz, DIN EN 61131-6,
amplitude- test field strength 10 V/m DIN EN 61000-4-2,
modulated AM 80 % with 1 kHz, criterion A DIN EN 61000-3-2

Electromagnetic RF Frequency band 900 MHz ± 5 MHz, DIN EN 50082-4,


Field, pulse- test signal strength 10 V/m, DIN EN 61000-2-3
modulated 50 % ON period, repetition rate 200
Hz, criterion A

Magnetic field with 50 Hz, 30 A/m DIN EN 61000-6-2,


mains frequency DIN EN 61000-4-8

ESD Discharge through air: Test peak DIN EN 61131-6,


voltage 8 kV; DIN EN 61000-4-2,
Contact discharge: Test peak DIN EN 61000-2-2
voltage 4 kV; criterion A

Jetter AG 27
4 Hardware Description JetWeb

EMI Parameters: Interference Immunity of Signal and Data Lines

Parameter Value Reference


Asymmetric RF, Frequency range 0.15 .. 80 MHz, DIN EN 61000-6-2,
amplitude- test voltage 10 V, DIN EN 61000-4-6
modulated AM 80 % with 1 kHz,
Source impedance 150 Ω, criterion A

Burst (fast Test voltage 1 kV, tr/tn 5/50 ns, DIN EN 61000-6-2,
transients) Repetition rate 5 kHz, criterion A DIN EN 61131-2,
DIN EN 61000-4-4

Test with damped Damped sinusoidal oscillation: DIN EN 61131-4,


oscillation Frequency 1 Mhz, DIN EN 61000-2-12
Source impedance 200 Ω, repetition
rate 400/s
Test voltage 1 kV

Surge voltages, tr/tn 1.2/50 ns DIN EN 61000-6-2,


asymmetrical (line No-load voltage 1 kV DIN EN 61000-4-5
to earth)

EMI Parameters: Immunity of process, measuring and control


lines

Parameter Value Reference


Asymmetric RF, Frequency range 0.15 .. 80 MHz, DIN EN 50082-2,
amplitude- test voltage 10 V, DIN EN 61000-4-6
modulated AM 80 % with 1 kHz,
Source impedance 150 Ω, criterion A

Burst (fast Test voltage 2 kV, tr/tn 5/50 ns, DIN EN 50082-2,
transients) Repetition rate 5 kHz, DIN EN 61131-2,
criterion A DIN EN 61000-4-4

28 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

EMI Parameters: Interference immunity of Mains Inputs and


Outputs, AC and DC

Parameter Value Reference


Asymmetric RF, Frequency range 0.15 .. 80 MHz, DIN EN 61000-6-2,
amplitude- test voltage 10 V, DIN EN 61000-4-6
modulated AM 80 % with 1 kHz,
Source impedance 150 Ω, criterion A

Burst (fast Test voltage 2 kV, tr/tn 5/50 ns, DIN EN 61000-6-2,
transients) Repetition rate 5 kHz, DIN EN 61131-2,
criterion A DIN EN 61000-4-4

Test with damped Damped sinusoidal oscillation: DIN EN 61131-2,


oscillation Frequency 1 Mhz, DIN EN 61000-4-12
Source impedance 200 Ω, repetition
rate 400/s
Test voltage 1 kV

Surge voltages, tr/tn 1.2/50 µs DIN EN 61000-6-2,


asymmetrical (line No-load voltage 0.5 kV DIN EN 61000-4-5
to earth),
symmetrical (line to
earth)

EMI Parameters: Interference Immunity of Functional Earth


Connections

Parameter Value Reference


RF, asymmetric Frequency range 0.15 .. 80 MHz, DIN EN 61000-6-2,
test voltage 10 V, DIN EN 61000-4-6
AM 80 % with 1 kHz,
Source impedance 150 Ω, criterion A

Bursts Test voltage 1 kV, tr/tn 5/50 ns, DIN EN 61000-6-2,


Repetition rate 5 kHz, DIN EN 61000-4-4
criterion A

Jetter AG 29
4 Hardware Description JetWeb

4.2 Configurations
4.2.1 Various Rack Models
There are 4 different JetControl-JX6 racks.

Fig. 5: Slots in a JetControl-JX6 Rack

4.2.2 Module Types


Different types of modules exist for the JetControl-JX6 controller.
Apart from the CPU module, a different number and type of modules can be
integrated as expansions depending on the rack and the number of slots.
The following modules are available:

Fig. 6: JX6 Module

30 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

Up to three submodules can be plugged in an expansion module of the type JX6-


CON-Move or JX6-CON-Move-BP.

Fig. 7: JX6-CON-Move(-BP) Controller Module

Unlike the JX6-CON-Move controller module, functions across the slots can be
realized when using the JX6-CON-Move-BP module.
Which expansion module is used depends on the application task to be realized.

Jetter AG 31
4 Hardware Description JetWeb

4.2.3 Submodules
Arrangement of Submodules
The figure below shows the physical arrangement of submodules on a JX6-CON-
Move(-BP) controller module:

Fig. 8: Arrangement of Submodules

Available Submodule Types


As submodule 1, a JX6-SB module is integrated permanently. This module realizes
the connection to the system bus and is required for axis connection. For more
details on the JX6-SB module, please refer to the following chapter.

The following types are available as submodule 2 and (/) 3:

Type Application

AD 8 8 analog inputs, also for PID controllers

DA 4 4 analog outputs, also for PID controllers

SV Fast dual-channel counter

32 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

Possible combinations
The combination possibilities of submodules on a JX6-CON-Move(-BP) controller
module are variable - with some restrictions.
Since the module is commonly used as servo axis (together with an amplifier,
JetMove2xx or JetMove 6xx module), the number of required axes is taken as basis.
The following modules can be combined:

Submod Submod Submod Function


ule 1 ule 2 ule 3
(bottom) (center) (top)

JX6-SB must be must be 3 axes


empty empty

JX6-SB must be AD 8 2 axes + 8 analog inputs


empty

JX6-SB must be DA 4 2 axes + 4 analog outputs


empty

JX6-SB must be SV 2 axes + fast counter


empty

JX6-SB AD 8 AD 8 one 1st axis + 16 analog inputs


(2 x 8)

JX6-SB AD 8 DA 4 one 1st axis +8 analog inputs +


4 analog outputs

JX6-SB AD 8 SV one 1st axis + 8 analog inputs + fast


counter

JX6-SB DA 4 DA 4 one 1st axis + 8 analog outputs


(2 x 4)

JX6-SB DA 4 SV one 1st axis + 4 analog outputs + fast


counter

JX6-SB SV SV one 1st axis + 2 fast counters

If the physical axis 2 is used instead of the 1st axis, then submodule socket 2 must
remain empty.

Jetter AG 33
4 Hardware Description JetWeb

4.2.4 JX6-SB Submodule


As already mentioned, the JX6-SB module is integrated permanently on the JX6-
CON-Move(-BP) module as submodule 1. This module realizes the connection to the
system bus and is required for axis connection.

U E
I R

Fig. 9: Front View JX6-SB Module

The JX6-SB module is equipped with 4 LEDs which serve to indicate various
operating and status conditions.
The following overview lists all LEDs and their meaning:

LED Meaning
I I = initialization
LED is lit yellow during initialization of the slave module
(until at least one slave has been detected)

R R = ready
LED is lit green when at least one slave was detected
during initialization

U U = update
LED is lit yellow and changes its state with each register
access

E E = error
LED is lit red when an error has occurred;
Possible errors: Time limit exceeded during register access
or during cyclic transfer of setpoint values

34 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

The following figures (not true to scale) specify the configuration of the JX6-SB
module.

Fig. 10: Physical dimensions JX6-SB module

Jetter AG 35
4 Hardware Description JetWeb

Fig. 11: Component Mounting Diagram JX6-SB Module

36 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.2.5 Number of Axes


In many applications, the controller module is used to control servo axes.
The maximum number of configurable axes is listed in the following table. It is
assumed that the max. possible number of axes was designed on each plugged JX6-
CON-Move(-BP) module (i.e. 3).

JetControl JX6 Max. number of JX6-CON- Max. number of axes


rack with Move(-BP) modules

1 slot no JX6-CON-Move(-BP) 0
module can be plugged

2 slots 1 3

4 slots 3 9

8 slots 7 21

For a detailed description of the individual configuration possibilities for special


functions, e.g. path control or follower, please refer to the relevant chapters.

Jetter AG 37
4 Hardware Description JetWeb

4.3 Description of Connections


4.3.1 Component Mounting Diagram
Component mounting diagram of the JX6-CON-Move module Rev. 06 [0].

Fig. 12: Component Mounting Diagram JX6-CON-Move

38 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.3.2 Connection Diagram


The following figure shows the basic connection diagram for an axis 1 with a resolver.

Fig. 13: Connection Diagram

Jetter AG 39
4 Hardware Description JetWeb

4.3.3 Power Supply


The JX6-CON-Move(-BP) module has its own connection for the 24 V power supply
in the form of power supply terminals located on the top side of the module.
Power is supplied by a 24 V DC-power supply unit (SELV), which must meet the
following requirements:

Voltage range: DC 20 V .. DC 30 V

Filtered: Residual ripple 5 %

Rating: approx. 7 W (without options)

Important !

• The maximum supply voltage must not exceed DC 30 V since a higher supply
voltage may cause damages to the JX6-CON-Move(-BP) controller.
• If the JX6-CON-Move(-BP) is not supplied with sufficient power (undervoltage),
Caution malfunctions may occur.

Note!

Protection against polarity reversal:


The JX6-CON-Move(-BP) module is protected against polarity reversal. As a
test, a voltage of 24 volt with reversed polarity is applied to the test object for 10
s.

40 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

Arrangement of power supply terminals on the top side of the JX6-CON-Move(-BP)


module:

Fig. 14: Power Supply

The 24 V signal is available at all 16 inputs and all 16 outputs. The respective 0 V
signal is connected to the 0 V terminal of the electric cabinet.

Jetter AG 41
4 Hardware Description JetWeb

4.3.4 Digital Inputs


As standard, the JX6-CON-Move(-BP) module is provided with 16 digital inputs.
The inputs can be assigned by the user.

The inputs on the JX6-CON-Move(-BP) module are numbered according to the


following pattern:

Input Number
Input 1 Slot number x 100 + 1

Input 2 Slot number x 100 +2

... ...

Input 16 Slot number x 100 +16

The following figure depicts the connection of digital inputs:

Fig. 15: Connection Details for Digital Inputs

42 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.3.5 Digital Outputs


Optionally, the JX6-CON-Move(-BP) module is provided with 16 additional digital
outputs.

The outputs on the JX6-CON-Move(-BP) module are numbered according to the


following pattern:

Output Number
Output 1 Slot number x 100 + 1

Output 2 Slot number x 100 +2

... ...

Output 16 Slot number x 100 +16

Connection of digital outputs:

Fig. 16: Connection Details for Digital Outputs

Jetter AG 43
4 Hardware Description JetWeb

4.3.6 Interface Connection with the Servo


Amplifier
As standard, a JX6-SB module is plugged in submodule socket 1 of the JX6-CON-
Move(-BP) module. An interface (9-pin SUB-D) is integrated into this module. Data
communication with the system bus is realized via this interface.
Via this interface, the JX6-CON-Move(-BP) module receives information about the
actual value of the parameter to be controlled. The module then evaluates this
information and calculates new set values.
Next, these position set values are passed to the servo amplifier via the above
mentioned interface. The function of the servo amplifier will then be released or
enabled accordingly.

The interface between the JX6-


CON-Move(-BP) module and the
JetMove amplifiers (servo controller
and amplifier) is realized via the 9-
pin SUB-D connectors of the JX6-
SB module.

A SUB-D female connector is


integrated in the JX6-SB module on
the front panel of the JX6-CON-
Move(-BP) module. The cable of the
JetMove servo amplifier is
connected to this connector.

Fig. 17: Interface between Servo Controller and JX6-CON-Move(-BP) Module

44 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

Important !

Please observe the following specification for the connecting cable:

The max. cable length is 30 m.

Shielding the cable:

• Connect the shield with the greatest possible surface area


• Use metallised housings
• Shielding according to the following diagram:

Jetter AG 45
4 Hardware Description JetWeb

Pin Arrangement and Pin Assignment:

SUB-D male connector: Cable of the servo


amplifier (JetMove 2xx module)
SUB-D female connector: on the side of the
JX6-CON-Move(-BP) module

Fig. 18: Interface to the servo amplifier (9-pin SUB-D connector)

Pin Signal Comment


1 CMODE0 Mode 0

2 CANL Signal level CAN-low

3 Gnd Power supply

4 CMODE1 Mode 1

5 Unassigned

6 Unassigned

7 CANH Signal level CAN-high

8 Unassigned

9 Unassigned

In the connector, pins 3 (Gnd) and 5 (TERM) are connected with each other.

46 Jetter AG
JX6-CON-Move(-BP) Module 4 Hardware Description

4.4 Function of LEDs


Three LEDs blocks are located on the front panel of the JX6-CON-Move(-BP)
module to indicate various operating states and conditions.

24 V ERR2
1 2 1 2
3 4 3 4
5 5
7 8 7 8
9 10 9 10
11 12 11 12
13 14 13 14
15 16 15 16
IN OUT

S1 S2
S3 S4
S5
S7 S8

Fig. 19: LEDs

The following overview lists all LEDs and their meaning:

LED Meaning
IN 1 .. 16 Digital inputs 1 through 16
LEDs are lit yellow when the respective input is active
(24 V are present)

OUT 1 .. 16 Digital outputs 1 through 16


LEDs are lit yellow when the respective output is set (24
V are switched)

24 V LED is lit green when the power voltage of the digital


outputs it O.K.

ERR2 LED is lit red when an error occurred at the digital output
drivers.
Such errors could be: overload, overtemperature, or
cable breakage of one or more outputs

Jetter AG 47
4 Hardware Description JetWeb

LEDs S1 through S8 serve to diagnose axis conditions. Generally, all LEDs are
switched via software. Therefore, no "real" hardware conditions are indicated.

LED Meaning
S1 LED is lit yellow when the positive limit switch of axis
1 was activated or is still activated

S2 Axis 1 has reached the desired position;


LED is lit yellow as soon as axis 1 has reached the
destination window; the LED goes out as soon as a
new positioning run is started

S3 LED is lit yellow when the positive limit switch of axis


1 was activated or is still activated

S4 LED is lit yellow when the positive limit switch of axis


2 was activated or is still activated

S5 Axis 2 has reached the desired position;


LED is lit yellow as soon as axis 2 has reached the
destination window; the LED goes out as soon as a
new positioning run is started

S6 LED is lit yellow when the positive limit switch of axis


2 was activated or is still activated

S7 LED is lit yellow when the positive limit switch of axis


3 was activated or is still activated

S8 Axis 3 has reached the desired position;


LED is lit yellow as soon as axis 3 has reached the
destination window; the LED goes out as soon as a
new positioning run is started

There are additional indication modes for LEDs which indicate the states of limit
switches:

Is lit permanently: The hardware limit switch is activated; the axis


has reached the limit switch.

Flashes at irregular The software limit switch was activated.


intervals:

48 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

5 General Information
This chapter provides general technical and function-specific information on servo
controllers.

5.1 Principle of a Control Loop


A control loop mainly consists of a controller and a controlled system. A control loop
can be open or closed. In connection with servo controllers, only the closed loop is
relevant.

A closed loop always works according to the following principle:


• A set input value (reference value) is compared with an actual output value
(control variable),
• The deviation (setpoint-actual value difference) is determined, which was caused
by a disturbance variable or by a modified reference variable,
• A new output value is calculated (manipulated variable) by means of according
control loop algorithms. This signal is then output to the controlled system.

Fig. 20: Closed Control Loop

Legend: Signals in a closed control loop

w = Set input value


= Desired state
= Reference variable

x (x) = Actual output value


= Actual state
= Controlled variable

y = Output value
= Manipulated variable

z = Disturbance variable

Jetter AG 49
5 General Information JetWeb

The characteristic feature of the closed control loop is that an actual value is reported
back and is then evaluated.
The aim is to have the controlled variable realize modifications of the reference
variable quickly and accurately. Due to the inertia of the controller itself as well as of
the entire system, a time offset occurs until the controlled variable is able to respond
to a modified reference variable. This offset is also referred to as phase shift.

Compared to open control loops, the operating principle of a closed control loop
offers two main advantages:
• it is possible to react more precisely to a modified reference variable, and
• faster response times upon a modified reference variable are achieved.

The disadvantage of a closed control loop is that it might become instable relatively
easily and starts to chatter if the control loop is not adjusted properly.

In practice this means simplified:


It is important to adjust a controller in such a way that the control loop remains stable
and is still able to respond quickly to disturbance variables.

The following three types of controllers are distinguished according to their control
characteristics due to their internal electronic design:

Proportional-action controller: P-controller


Characteristics of the P-controller is that the output value equals the (amplified)
difference of set value and actual value.

Integral-action controller: I-controller


Characteristics of the I-controller is that the output value equals the integral of the
difference of set value and actual value.

Proportional plus integral-action controller: PI-Controller


Characteristics of the PI-controller is that the output value comprises the amplified
difference of the integral of set value and actual value.

50 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

5.2 Mode of Operation of a Servo


Control Loop
A drive controlled by a servo control loop is called servo drive.
Servo drives serve to realize the function of axes. For this purpose, a separate servo
control loop is assigned to each individual axis. Position, speed and current for the
axis are controlled in this servo control loop.

The servo control loop itself features a cascade closed loop control, which means
that the tasks of closed-loop control are distributed among various control loops
subordinated to a closed-loop control device. On the one hand, this allows to control
and limit internal state variables within the overall closed-loop control and, on the
other hand, helps to optimize the overall control response.

Fig. 21: Principle of a Servo Control Loop

Jetter AG 51
5 General Information JetWeb

The figure on the previous page gives an overview of a basic, simplified structure of
a closed-loop control system for servo axes. Simplified because in practice, a special
torque controller is usually not used.
Only the current creating the torque and thus a current controller is used.
The coordination controllers control the interaction of the individual servo control
loops (cascades) since in many cases several axes are to be operated in a
production plant.

The servo control loop for the axis comprises the following function elements:
• servo module with position controller (for positioning control),
• servo amplifier with speed controller (to control the speed) and torque (current)
controller including commutation (to control the current), as well as
• appropriate measuring equipment to acquire actual values.

The position controller compares the present actual position of the axis with the
specified or calculated set position, and thus obtains a deviation of the position within
a positioning process.
This deviation of position is converted into a set velocity by means of certain
algorithms, and is passed to the servo amplifier as analog output voltage. The
voltage is proportional to the velocity. This specifies the set velocity of the axis.

The servo amplifier delivers power for the motor and thus makes the axis move.
The servo amplifier compares the set velocity (output of the position controller) with
the actual velocity, which is determined by a tachogenerator. The tacho is mounted
directly at the moving axis. The discrepancy to the set velocity is converted in the
speed controller and is output to the torque (current) controller as set current. The
current is proportional to the torque. The current controller compares the set current
with the current measured at the motor, and provides the set value for the motor-axis
combination.
The correlation between speed offset and motor control constitutes the
"amplification".

The measuring equipment for the acquisition of actual values must ensure that all
necessary data are available for the various comparisons.
Feedback is necessary about actual position, actual speed and actual current.

The individual function elements are described in detail in the following chapters.

52 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

5.3 Elements of the Servo Control Loop


When using the JX6-CON-Move(-BP) and JetMove 2xx or JetMove 6xx modules, the
structure of the control loop looks as follows:

Fig. 22: Structure of the Control Loop

Jetter AG 53
5 General Information JetWeb

Signals from the JX6 controller Feedback signals (actual values)


(1) Steepness of the ramp (11) Actual current

(2) Limitation of speed (12) Actual speed

(3) Set position (13) Actual position before


evaluation

(4) Current limitation (14) Actual position

Signals in the control loop


(5) Present set position

(6) Set speed prior to the


limitation

(7) Set speed

(8) Set current prior to the


limitation

(9) Set current

(10) Set value for the motor-axis


combination

54 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Operating principle:
The position controller receives the following parameters as input signals:
– the present set position (5) from the path control via the ramp control, and
– the actual position (14) from the position encoder evaluation.
By means of these parameters, the position controller determines the set speed
value as set speed (6) and passes it to the speed limiter.

The speed limiter combines this signal with a limit value for the speed (2). This limit
value is obtained from the JX6 controller. A speed signal is provided as output and
is passed to the speed controller.

The speed controller processes this signal and the actual speed (12) from the
resolver, generates the set current value (8) and passes it to the current limiting
controller.

In this conventional control loop, the current limiting is defined via the servo amplifier.
Thus, the signal for the set current (9) is passed directly to the current controller.

The current controller combines this incoming signal and the actual current acquired
at the motor (11) and passes the result (10) to the motor.

This control loop structure basically determines the overall behavior of how axes
move.

Jetter AG 55
5 General Information JetWeb

Description of Signals for the Control Loop Structure

Signals from the JX6 controller:

(1) Steepness of the ramp


The parameters for acceleration and deceleration ramps are set in
registers. A pre-selection is made as to whether sine-square shaped or
linear ramps are used.

(2) Limitation of speed


This value is also set via registers and indicates the max. value for the
permissible speed (corresponds to a max. velocity).

(3) Set Position


This value is provided by the program and specifies the target position
of the axis.

(4) Current limitation


This value is set via registers and indicates the max. value for the
permissible current (corresponds to a max. torque).

Signals in the control loop:

(5) Present set position


This output signal from the ramp control provides the position controller
with the present set position.

(6) Set speed prior to the limitation


This output signal from the position controller represents the set velocity
value in the form of a set speed. However, this value is unlimited and
must be adjusted to the existing technical conditions in the subsequent
limiter.

(7) Set speed


This signal is the output signal from the speed limiter. A digital signal is
output, which triggers the axis motion.

56 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

(8) Set current prior to the limitation


This output signal from the speed controller specifies the set current for
the torque controller. The current is proportional to the torque. The value
output here is also unlimited.

(9) Set current


This signal is the output signal from the current limiter. In this variant, the
current is limited internally by the servo amplifier. This means that the
user cannot influence the current limitation via the program.

(10) Set value for the motor-axis combination


This signal is the actual output signal from the control loop. It is the result
of all operations and controls the axis motion.

Feedback signals (actual values):

(11) Actual current


The actual current is determined directly at the motor by means of
appropriate measuring instruments and is reported back to the current
controller.

(12) Actual speed


The actual speed represents the actual velocity value and is reported
back to the speed controller. This value is provided by the data
acquisition device (e.g. resolver, tachogenerator, incremental encoder
or absolute encoder) and is processed accordingly in the position
encoder evaluation.

(13) Actual position prior to the evaluation


The actual position is provided by the resolver and is first reported to the
position encoder evaluation where it is converted into usable signals.

(14) Actual position


This value is the present position, i.e. the position of the axis at this
moment. The signal is reported back to the position controller.

All actual values are transferred to the JX6 controller where they can be read from
the respective registers.

Jetter AG 57
5 General Information JetWeb

5.3.1 Position Controller


The position feedback controller is also often referred to as position controller. The
position controller compares the present actual position of the axis with the set
position previously calculated or specified by the program. If a discrepancy of set
position and actual position is detected during a positioning run, adjustment takes
place during the normal process until the set position is reached.

The position controller is the slowest controller in the servo system. Its gain is
determined by the dynamic performance of the drive.

Usually, the position controller is designed as mere P-controller. The reason is the
operating principle of the entire servo control loop. The output signal of the position
controller (set speed) is at the same time the input signal for the speed controller (via
speed limiter). If the position controller has identified the present actual position as
desired target position and this position is to be maintained, then a 0 (as new set
value) must be output to the subsequent speed limiter immediately. This procedure
can only be carried out using a P-controller.

Two general operating modes to operate a position controller are distinguished:


• without full position control, and
• with full position control.

58 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Without Full Position Control


Short definition: Without full position control means that control is carried out only
when the positioning run is completed, i.e. when the set position is reached the first
time.

The motion of an axis without full position control looks as follows:

Fig. 23: Without Full Position Control

It is assumed that the set velocity that is output via the analog voltage value is
reached precisely. The profile of the analog value is identical with the desired speed
profile. If problems occur during the positioning run and the desired speed is not
reached, then the resulting tracking error will not be compensated.
The tracking error indicates the discrepancy between set and actual positions during
a positioning run. The position controller is only activated again when the set position
was reached once. The axis is controlled towards the set position by means of the
P-gain of the controller.

Jetter AG 59
5 General Information JetWeb

Full Position Control


Short definition: In the case of full position control, the axis is controlled towards the
set position during the entire positioning run.

Axis motion with full position control looks as follows:

Fig. 24: Full Position Control

A theoretical set position can be calculated at any time during the positioning run. If
the set position deviates from the present actual position, then this discrepancy (=
tracking error) is compensated immediately by modifying the P-gain of the position
controller. Thus, full position control is carried out during the entire positioning run.
This operating mode is, for instance, important to perform circular interpolation. Else
a circle might easily turn into an ellipsis.

60 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

The following applies to the JX6-CON-Move(-BP) module in connection with the


JetMove 2xx module:
Over the whole distance covered, complete position feedback control is realized.
The present set position, and thus the discrepancy between set and actual
positions, is calculated at any time.
The product with the P-gain defines the set speed value. The present set position is
calculated with the help of a software or virtual axis, which, by mathematical means,
"covers" the desired speed profile.

For notes concerning programming and parameterizing the necessary registers,


please refer to the description of registers in chapter 6.5: "Position Control
Registers", page 116.

Jetter AG 61
5 General Information JetWeb

5.3.2 Servo amplifier


The servo amplifier comprises speed controller and current controller. They control
the speed for the axis to be moved.
Both controllers can be regarded as independent control loops within the servo
control loop. In most cases, these controllers have a PI-structure.

Speed controller
The speed controller basically receives the following input signals:
• actual speed from the resolver or from the encoder system (via position control
evaluation) as feedback signal, and
• set speed from the position controller, or the subsequently connected speed
limiter respectively, as signal from the control loop.
The following correlation applies:

Output signal from the speed Motor speed


limiter
+10 V set value positive max. speed

0V Standstill

-10 V set value negative max. speed

The speed controller compares these two signals and generates a new value for the
set current which is passed to the subsequent current controller.

A servo speed controller serves to ensure consistency of speed according to the


desired set speed both under idle condition and full-load condition. In practice it is
desired that the speed varies around max. 5 % in case of load change. The basic
value is the actual speed.

The following applies in general: the speed controller must be adjusted carefully
according to the manufacturer's instructions. If the speed controller operates
properly, position control will not be a problem.
Concerning large masses it is important to know that they act like an I-component of
the speed.

Note!

In the JetMove 2xx module, the position controller transfers the set speed
digitally to the speed controller.

62 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Current controller
The current controller is the most important controller in the entire system. This very
fast controller can be designed as analog or digital controller.
The JetMove 2xx module works with a digital current controller of the PI controller
type. It is possible to influence the control factors.

The current controller receives the following input signals:


• actual current from the motor as feedback signal,
• set current from the speed controller, or the subsequently connected current
limiter, as signal from the control loop.

The current controller compares these two signals and calculates a new set value for
the motor-axis combination. The setpoint value is limited by the set max. output
current.

This enables the current controller to protect the drive from overload. If the current
flowing in the motor exceeds the specified set value, then the current controller must
decrease its output value to the motor.
Additionally, the current controller has the task to increase the dynamic performance
of the control system.

Jetter AG 63
5 General Information JetWeb

5.3.3 Acquisition of Actual Values


The servo control loop processes feedback information about actual values,
compares their deviation from the specified set values, and generates new set values
for the controller and the axis.
Feedback is necessary about actual position, actual speed and actual current.

Measuring Equipment
The measuring equipment for the acquisition of actual values must ensure that all
necessary data are available for the various comparisons. Here the guideline applies
that a measuring accuracy of 1/1.000 mm is necessary if a positioning accuracy of 1/
100 is to be achieved.
The measurement systems used must be very robust since they often have to
operate in harsh environments (e.g. high temperatures, dust, dirt, humidity,
vibrations, electric interference).

Important !

To ensure proper functioning of the measurement systems, it is necessary that


connectors with metallized housing are used and that both ends of the cables are
connected to GND with the greatest possible surface area.

Application possibilities of some sensors to acquire actual values:

Sensor Technology Application


Hall-effect sensor Commutation

Tacho Speed

Resolver Commutation, speed, position

Incremental Encoders Speed, position

Absolute Encoders Speed, position

Hiperface Commutation, speed, position

64 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Determining Actual Values


The actual current is measured in the amplifier itself and is processed in the current
controller.

The actual speed corresponds to the actual speed value and is determined as
follows:

• the speed controller receives this signal as analog value directly from the tacho-
generator,
• the signal is provided by an incremental encoder or absolute encoder and is
processed in the position encoder evaluation before it is reported back to the
speed controller.
• The signal is obtained from the resolver, is processed and is then reported back
to the speed controller as sine or cosine signal.
• A Hiperface acquires this signal and passes it to the speed controller.

An essential aspect is the feedback about the actual position. Therefore, this aspect
will be described in more detail.

An actual position indicator is a device that acquires the mechanical position of the
axis and converts it into an electric position signal.
Common indicators are for example
• incremental encoders, designed as rotary encoders or glass scales,
• absolute encoders,
• resolvers,
• Hiperfaces.

Absolute encoders generate an electric signal that corresponds to the present


position of the axis.
Incremental encoders generate digital pulses which correspond to the motion of the
axis.
Both types of encoders are optical encoders, i.e. opto-electronic devices that convert
linear or rotary motion into digital electric signals.

Resolvers are rotary encoders generating electrical signals which correspond to the
motion of the axis.

Hiperfaces are modern encoder systems that generate analog signals as position
feedback signals and allow multiple evaluation of pulses.

In conjunction with the JX6-CON-Move(-BP) module, resolvers are commonly used.


The use of Hiperfaces for this purpose is in preparation.

Jetter AG 65
5 General Information JetWeb

Resolver
A resolver is often referred to as rotary encoder or rotary resolver. The resolver is a
device that converts mechanical input signals (motion) into electrical output signals
(voltage).
For this purpose, an analog, electromagnetic, rotary feedback device is used for
absolute position measurement. The signals are processed in the evaluation
electronics and are converted into sine and cosine signals.

Basically, a resolver consists of a rotor with one coil and a stator with two coils. Since
resolvers do not contain electronic components, they are relatively inexpensive and
not very susceptible to interference. A resolver is mounted directly on the motor
shaft.

Fig. 25: Coils of the resolver

A coil is located on the rotor and inductively, i.e. in a contacless manner supplied by
the evaluation electronics with an excitation signal of a frequency range between
1 kHz and 10 kHz. The signal is transferred by means of a rotary transformer. A
short-circuit current flows in the rotor winding and, as a result, a pulsating magnetic
field is generated.

The stator has two measuring coils displaced by 90° with this magnetic field going
through them. The magnetic field induces electric voltages in the stator coils that
pulsate with the same frequency and phase position as the excitation signal.
However, the amplitudes of these voltages depend on the present position of the
rotor winding in relation to the stator coil. If rotor and measuring winding are
positioned at a right angle to each other, no voltage will be induced in the respective
stator coil. If rotor and measuring winding are positioned in parallel to each other, the
max. possible voltage will be induced in the respective stator coil.
Consequently, the amplitude of the induced voltage describes a sine function
depending on the angular position of rotor winding and measuring winding. The
procedure is the same for both stator coils. However, since the second stator coil is
offset by 90°, the amplitude of the induced voltage for this stator coil describes a
cosine function, again depending on the angular position of stator winding and
measuring winding.

66 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

In the evaluation electronics, the signals are acquired, processed, converted, and
filtered. As result, the calculated position angle α is provided. This allows to exactly
reproduce the position during one revolution.

Fig. 26: Signals in the Resolver

Jetter AG 67
5 General Information JetWeb

Resolvers can be distinguished by the number of pole pairs:


• Resolvers with one pole pair
• Resolvers with multiple pole pairs

Multipole resolvers provide several sine-cosine curves with one mechanical


revolution of the motor shaft (0° to 360°). In order to achieve this, several individual
windings are integrated into the rotor winding. These individual windings are twisted
with respect to each other of fixed measure.
The typical signal waveform will then roughly look as follows:

0° 360°

Fig. 27: Signal waveform of a multipole resolver

In practice, so-called "one-revolution" resolvers are used. These resolvers provide a


sine-cosine curve of one mechanical revolution of the shaft.
Typical signal waveform:

0° 360°

Fig. 28: Signal waveform of the "one-revolution" resolver

68 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

The accuracy and the possible resolution of the resolver signals depends on a series
of factors. Among these factors are, for instance, the rotational speed of the shaft,
the feasible sampling time and the type of the signal converter.

Standard resolvers use a 12-bit resolution. One revolution of the shaft is regarded as
circle, which is divided into 4.096 increments. This corresponds to the 12 bits.

In conjunction with the JX6-CON-Move(-BP) and JetMove 2xx modules, standard


resolvers are used.
This means, a position signal is given by the resolver, which, during one revolution,
calculates the position of the angle, yet does not provide any information about the
motor revolutions already completed. For this reason it is necessary, even if a
resolver is functioning as a position encoder in a positioning drive, to carry out a
reference run after power-up of the device.
The reference point is defined as the point where reference switch pulse and 0-
pulse coincide. To ensure that the reference point is always the same position, the
reference switch should always be approached from the same side.
For detailed information, refer to chapter 5.4: "Machine Referencing", page 76.

Important !

In order to minimize interference, twisted-pair cables should be used for signal


and excitation lines which should be extensively shielded on both ends. Correct
shielding is the basis for highly reliable signal transmission.

Jetter AG 69
5 General Information JetWeb

HIPERFACE
HIPERFACE is a registered trade mark of the Max Stegmann GmbH.

HIPERFACE is an interface module allowing to transmit all data required for the
speed controller (commutation, speed, position).
A total of only 8 lines is needed for this purpose.

Various encoder types (incremental or absolute encoders) can be connected to the


HIPERFACE. This offers a broad spectrum of application possibilities.

The HIPERFACE can transmit and evaluate up to 1,024 sine periods per shaft
revolution. This corresponds to an 18-bit resolution. Thus, considerably higher
resolutions can be achieved when using this module compared to resolvers
(depending on the connected encoder). This in turn, allows improved speed control
which leads to higher accuracy and better dynamic performance of the drive.

A HIPERFACE is equipped with a bus-capable parameter channel and a real-time


processor data channel.
Data transmission is controlled by means of a defined protocol and can be
parameterized according to the requirements.
HIPERFACE not only allows to transmit and process encoder data. By standard,
many additional functions are implemented. These functions are stored in the
module as program routines and are called using commands.

For more information refer to http://www.stegmann.de

70 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Incremental Encoders
A typical incremental encoder to acquire rotary motion consists of a glass disk with
transparent, colored, narrow, radial lines printed on it. A glass scale is used to
acquire linear motion. The operating principle is the same.
The glass disk rotates between a light emitter (LED) and a light receiver. By doing
so, the ray of light is let through and blocked in turns when it reaches one of the
printed lines. The electronic system connected to the light receiver converts this
information into electric square-wave signals. These signals are fed to a counter
(required counting direction: forewards and backwards) in order to acquire the
relative position of the axis.

Often, 3-channel incremental encoders are used. The three channels of such an
incremental encoder are called "K1", "K2", and "K0". Channels K1 and K2 serve to
determine the position. Channel K0 generates a pulse per rotation and is used for
machine referencing.

Incremental encoders (with connected


counter) are able to detect a change of
K1 position.
The actual position is a relative position
with respect to an arbitrary reference
point.
After switching on the system, the
reference point must be determined
K2
first.

Usually, the reference is set at the


position where the reference switch
pulse and the K0 pulse coincide. This
K0 K0 pulse is sent by the encoder once
per revolution. Thus, the control system
can independently set the set and
actual positions to zero.
To ensure that the reference point is
Ref always the same position, the
reference switch should always be
approached from the same side.

Fig. 29: Incremental Encoder Signals

Jetter AG 71
5 General Information JetWeb

Note!

If the reference point is to be determined without using the K0 pulse, then K0


must be connected with K1 or K2 with respect to hardware. Else, no start signal
will be generated to determine the reference point.

Either 24 V signals or 5 V differential signals are used in the incremental encoder.


Generally, 5 V differential encoders are preferred because they are more immune to
interference.
This is illustrated by the following figure:

Fig. 30: Differential signal of an incremental encoder

In the case of 5 V differential signal encoders, two signals inverted to each other are
sent across two lines. Since these lines are running in parallel, potential interferences
that might occur are probably identical on both lines. Thus the difference between
both voltages remains the same.

72 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

From the pulses of channels K1 and K2, the logic of the controller module can detect
information about position as well as direction. The pulses of the two channels have
a phase shift of 90 degrees (quarter period).

Usually, the number of increments indicated on the encoder is evaluated four times.
Each edge of the encoder results in a change of the actual position. In the case of
single evaluation, only every fourth edge is counted.

Fig. 31: Evaluating an Incremental Encoder

Basically, single, double or quadruple evaluation of incremental encoder signals is


possible.

Example for evaluation:


If the number of increments indicated on the encoder is 500, then the following
applies:

Single evaluation 500 increments (steps) per revolution

Double evaluation 1,000 increments (steps) per revolution

Quadruple evaluation 2,000 increments (steps) per revolution

It is not possible to further increase the resolution of the digital incremental encoder
signals electronically.
Incremental encoders are commonly used because they are relatively inexpensive.

Jetter AG 73
5 General Information JetWeb

Absolute Encoders
Unlike incremental encoders, absolute encoders always provides the exact, absolute
position of the axis - even immediately after switching on the system. Consequently,
machine referencing is not required to determine the reference point.

A certain numerical value is assigned "absolutely" to each possible position. These


numerical values are printed on a glass disk as code pattern (alternating transparent
and colored radial lines of different length).
Like the incremental encoder, the disk with the code pattern rotates between a light
emitter (LED) and a light receiver. By doing so, the ray of light is let through and
blocked in turns when it reaches one of the printed lines. The electronic system
connected to the light receiver receives this information, amplifies the signals and
processes the signal shape by means of Schmitt triggers.

Usually, Gray code is used to encode the positions. With this code, only a bit changes
from one increment to the next. Thus, the error of the transition from one position to
the next is max. 1 increment.

The number of possible positions depends on the resolution of the absolute encoder.
Two categories of encoders are distinguished:

Single-turn encoder
– with a resolution of only one revolution (max. 360 degrees). The second
revolution starts at 0 again.

Multi-turn encoder
– with a resolution of several revolutions (max. 4,096 degrees), then start at 0
again.

Multi-turn encoders consist of several code disks connected by mechanical gears.


These disks are made of glass and have a speed reduction ratio of 16 : 1 each. Thus,
the following max. resolutions are possible:

Number of code disks Revolutions Max. Word Size


Resolution
1 (Single-Turn) 1 4.096 12 bits

2 (Multi-Turn) 16 65.536 16 bits

3 (Multi-Turn) 16 x 16 1.048.576 20 bits

4 (Multi-Turn) 16 x 16 x 16 16.777.216 24 bits

74 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

In practice, SSI absolute encoders prevail.


SSI means "Synchronous Serial Interface" and is a patented interface for absolute
shaft encoders.
The procedure for the acquisition, conversion and transmission of signals is clearly
defined. A further essential advantage of this interface is that the controller can
determine when and how fast data is transmitted. This provides high transmission
reliability.

The baud rates for data transmission depend on the cable length. The following
values are recommended for SSI absolute encoders:

Line Length (in mm) Baud Rate (in kHz)

< 50 < 400

< 100 < 300

< 200 < 200

< 400 < 100

Important !

To ensure proper functioning of the SSI absolute encoder, it is necessary that


connectors with metallized housing are used and that both ends of the cables are
connected to GND with the greatest possible surface area.

Jetter AG 75
5 General Information JetWeb

5.4 Machine Referencing


After having switched on the system, only some states are defined, i.e. always the
same initial situation exists for the operation of the plant due to default values set in
the registers. This way, for instance certain modes of operation and functions are
already defined from the start. However, all registers containing feedback
information about actual values and actual states are not valid anymore. These
registers usually still contain the values that were valid before the system was
switched off.

The controller needs a reference point, i.e. a defined position of the axis in order to
calculate its motion. This point is referred to as "reference point". During machine
referencing, the reference point of the mechanical position of the axis is searched
and then stored in a register.

Important !

After switching on the system, the content of registers with actual states is not
defined. Operation of machinery in such an undefined state may result in
damages to the machines.
The following applies to each axis in the system: machine referencing must be
carried out prior to the first positioning run.

Usually, the following hardware configuration is used:

Fig. 32: Location of the Reference Switch

The reference switch is located somewhere within the positioning range between the
two limit switches, usually near a limit switch.
Machine referencing is always carried out according to a defined procedure. The
direction of motion where the reference switch is searched for must be determined.
The limit switches serve as limit positions where the direction of motion is reversed.

76 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

In practice, one of the limit switches is sometimes also used as reference switch. For
this purpose, the inputs of the limit switch and the reference switch are bridged. In
this case, the polarities of the limit and reference switches need to be adjusted if they
differ.

Machine Referencing with the JX6-CON-Move(-BP)


Module
There are several possibilities to carry out machine referencing for an axis with the
JX6-CON-Move(-BP) module:
• A program can be written by means of programming instructions to allow
automatic search for reference.
• Instead, the already existing default routines can be used for machine
referencing. These are described in the next section.

Various versions of automatically running program routines that realize machine


referencing are available. They are started or configured by entering the respective
command in the command register 1xy001.
Information about successful or failure conditions can be queried from the status
register 1xy000.

The following commands are relevant for machine referencing:

Command # Meaning
3 Set reference
The reference point is set at the present position of the
axis; at the same time, the actual and set positions of the
axis are set to "0"

4 Clearing the reference


The reference point of the axis is cleared; if an incremental
encoder is used, the axis is referenced again when the axis
is positioned next time exactly at the moment when
reaching the reference switch and the presence of the K0
signal, or the 0-signal (when a resolver is used) coincide.

9 Automatic machine referencing


Start in positive direction by taking into account the
reference switch immediately

10 Automatic machine referencing


Start in negative direction by taking into account the
reference switch immediately

11 Automatic machine referencing


Start in positive direction by taking into account the limit
switch first and then the reference switch.

Jetter AG 77
5 General Information JetWeb

12 Automatic machine referencing


Start in negative direction by taking into account the limit
switch first and then the reference switch.

22 Stop at the reference point - ON


During referencing, the axis stops at the reference point

23 Stopping at reference point - OFF


During referencing, the axis does not stop at the reference
point

The following bits in the status register 1xy000 are relevant for machine referencing:

Bit # Meaning
0 Home position set
The axis has found its reference point; the reference point
for absolute positioning is defined

6 Reference switch is active


The reference switch was reached, which defines the
reference point of the axis with respect to hardware.

12 Machine referencing error


An error has occurred during automatic search for
reference of the axis

13 BUSY
The controller module is "busy"; this signal is output when
automatic machine referencing is carried out.

78 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Further registers relevant for machine referencing:

Reg. #: Contents
1xy002 Set position of the axis

1xy003 Set velocity of the axis

1xy009 Actual position of the axis

1xy071 Set actual and set positions simultaneously

Machine Referencing Routines:

Command 3 Set reference

The reference point is set at the present axis position.


This position is absolute without taking into account limit and reference switches.
The registers with the actual and set positions of the axis are set to "0".
Expansion of this function:
If register 1xy071 is used, it is also possible to redefine a reference point. If, for
instance, the value "100" is written into this register, then the new reference point
is immediately the absolute position 100 (increments) and not at position 0 as
would be the case when using command 3.

Command 4 Search for reference

The currently defined reference point of the axis is cleared.


The axis is referenced again when the axis is positioned next time exactly at the
moment when reaching the reference switch and the the presence of the K0 pulse
(of the incremental encoder) or the 0-signal (if a resolver is used) coincide.
This allows that the axis can search for reference again. Usually, search for
reference is only possible when switching on the system. However, under certain
conditions it might be necessary to reference axes several times during the entire
process, or to modify the reference point.

Jetter AG 79
5 General Information JetWeb

Automatic Machine Referencing Routines


The following applies in general:

• Automatic machine referencing is carried out at the set velocity specified in


register 1xy003,
• During automatic machine referencing, bit 13 (BUSY) is set in status register
1xy000,
• reaching the hardware reference switch is signaled in the status register 1xy000
bit 6 (reference switch is active); However, bit 8 (limit switch is or was active) is
not activated during this procedure.
• After successfully completed automatic machine referencing, the registers for set
position (1xy002) and actual position (1xy009) are refreshed and bit 0 in the
status register (reference set) is activated.
• If an error occurs during automatic machine referencing, then bit 12 (machine
referencing error) is set in status register 1xy000.

Command 9 Automatic machine referencing in positive direction with the


reference switch immediately be taken into account

Machine referencing in positive direction is started from the present position If


the positive hardware limit switch is activated first, the axis reverses its direction
and continues to move in negative direction, until
• either the reference switch is found:
– if command 22 was issued before, the axis stops at the reference
point, the set position and the actual position are set to "0", and the
status register bit 0 is set.
– if command 23 was issued before, the axis activates the reference
switch, the actual position is set to "0", the value of the set position
remains the same, the status register bit 0 is set, and the axis
continues to move towards the negative limit switch,
• Or the negative hardware limit switch is activated without having found the
reference switch:
– in this case machine referencing is stopped, the set position is set
internally equal to the actual position, the controller is switched off,
and error bit 12 in the status register is set.

80 Jetter AG
JX6-CON-Move(-BP) Module 5 General Information

Command 10 Automatic machine referencing in negative direction with the


reference switch immediately be taken into account

Machine referencing is started in negative direction from the present position If


the negative hardware limit switch is activated first, then the axis reverses its
direction and continues to move in positive direction, until
• either the reference switch is found:
– if command 22 was issued before, the axis stops at the reference
point, the set position and the actual position are set to "0", and the
status register bit 0 is set.
– if command 23 was issued before, the axis activates the reference
switch, the actual position is set to "0", the value of the set position
remains the same, the status register bit 0 is set, and the axis
continues to move towards the positive limit switch
• or the positive hardware limit switch is activated without having found the
reference switch:
– in this case machine referencing is stopped, the set position is set
internally equal to the actual position, the controller is switched off,
and error bit 12 in the status register is set.

Command 11 Automatic machine referencing in positive direction by taking into


account the limit switch first and then the reference switch.

Machine referencing in positive direction is started from the present position


and is continued up to the positive limit switch. If the reference switch is
reached on the way, it is ignored. At the positive limit switch, the axis reverses
its direction and moves in negative direction until
• either the reference switch is found:
– if command 22 was issued before, the axis stops at the reference
point, the set position and the actual position are set to "0", and the
status register bit 0 is set.
– if command 23 was issued before, the axis activates the reference
switch, the actual position is set to "0", the value of the set position
remains the same, the status register bit 0 is set, and the axis
continues to move towards the negative limit switch,
• Or the negative hardware limit switch is activated without having found the
reference switch:
– in this case machine referencing is stopped, the set position is set
internally equal to the actual position, the controller is switched off,
and error bit 12 in the status register is set.

Jetter AG 81
5 General Information JetWeb

Command 12 Automatic machine referencing in negative direction by taking into


account the limit switch first and then the reference switch.

Machine referencing is started in negative direction from the present position


and is continued up to the positive limit switch. If the reference switch is
reached on the way, it is ignored. At the negative limit switch, the axis reverses
its direction and moves in positive direction until
• either the reference switch is found:
– if command 22 was issued before, the axis stops at the reference
point, the set position and the actual position are set to "0", and the
status register bit 0 is set.
– if command 23 was issued before, the axis activates the reference
switch, the actual position is set to "0", the value of the set position
remains the same, the status register bit 0 is set, and the axis
continues to move towards the positive limit switch
• or the positive hardware limit switch is activated without having found the
reference switch:
– in this case machine referencing is stopped, the set position is set
internally equal to the actual position, the controller is switched off,
and error bit 12 in the status register is set.

The advantage of the latter two variants (commands 11 and 12) is that the reference
switch is always approached from the same side. This allows to clearly determine the
reference signal.

82 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6 Description of Registers
Apart from the basic specifications with respect to the numbering of axes and
registers, this description also comprises the functional description of the general
registers necessary for the operation and programming of axes. Special functions
are described separately in the subsequent chapters.

6.1 Numbering of Axes and Registers


Axis Numbers
The first digit defines the slot number where the JX6-CON-Move(-BP) expansion
module is plugged. The second digit defines the number of the axis which is to be
addressed on the JX6-CON-Move(-BP) module. The following diagram illustrates the
numbering of axes:

Fig. 33: Coding of the axis number

Jetter AG 83
6 Description of Registers JetWeb

Register Numbers
The registers are addressed with the help of a 6 digit number. The first digit ("1") is a
fixed definition followed by slot number, axis number and register number. The
following diagram illustrates the numbering of registers:

Fig. 34: Coding of Register Numbers

84 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.2 General Registers


The registers are divided into system registers and user registers.
User registers are data registers that can be assigned by the user according to the
special programming requirements.
System registers serve to control the entire functions of the JX6 controller. One part
of these registers only serves monitoring and verification purposes. Another part of
these registers can be written. This allows to directly influence the control process.
This chapter describes the system registers.

The appendix provides a brief overview of these registers.

Note!

All registers available in the JX6 controller are 24-bit registers.


In general, the theoretical value range of -8.388.608 through +8.388.607 results
from the data format of the registers.
In the following, the value range is usually given in the functional context.

6.2.1 Status Register

Register 1xy000: Status Register


Function Description

Read Present state

Write New status settings

Value range Bit-coded, bit 0 .. bit 23

Value after reset 1,024 (= bit 10 is set)

The current status of the JX6-CON-Move(-BP) module can be read from this register.
This means that the state of important system functions is indicated.
Some functions can be enabled or disabled by writing individual bits of these
registers. The meaning of individual bits (usually for the case that the bit is set, i.e. =
1) is explained in the following.

The appendix provides a brief overview of the structure of the status register.

Jetter AG 85
6 Description of Registers JetWeb

Meaning of Status Bits:

Bit 0: Home position set


The axis has found its reference point;
the reference point for absolute positioning is defined.

Bit 1: AXARR = the position has been reached


The bit is cleared each time a positioning process is started;
it is set when the destination window has been reached.

Bit 2: The axis is in the destination window


The axis is within the previously defined destination window range;
the axis continues to move towards the specified set position.

Bit 3: Reserved
Bit 4: Negative limit switch is active
The limit switch, which limits the negative direction of motion of the axis
with respect to hardware, was reached.
The bit is set as long as the axis remains on the limit switch position.

Bit 5: Positive limit switch is active


The limit switch, which limits the positive direction of motion of the axis
with respect to hardware, was reached;
The bit is set as long as the axis remains on the limit switch position.

Bit 6: Reference switch is active


The reference switch, which defines the reference point of the axis with
respect to hardware, was reached.

Bit 7: Software limit switch is or was active


The software limit switch was reached during a positioning run;
The axis has continued to move or has stopped at this position.

Bit 8: The hardware limit switch is or was active


The hardware limit switch was reached during a positioning run;
The axis has continued to move or has stopped at this position.

Bit 9: Position controller is active


The position controller is active.

Bit 10: Control function at the destination position is enabled


(*)

86 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

The mode, which allows that the position of the axis is controlled after
the set position has been reached, is active;
(*) this mode is the default setting.

Bit 11: Axis enable


The servo controller was enabled by the JX6-CON-Move(-BP) module;
Only now positioning of the axis is possible.

Bit 12: Machine referencing error


An error has occurred during automatic search for reference of the
axis.

Bit 13: BUSY


the controller module is "busy";
this signal is output when automatic machine referencing is carried out
at the moment (applies to commands 9 through 12), or when the
procedure "remove axis from interpolation or the bus" is active (applies
to command 42).

Bit 14: The function software limit switch is active


Monitoring of the paths to be covered by the axes via software limit
switch is active;
This function is activated by writing "1".

Bit 15: The axis is in the acceleration ramp


The axis is currently in the first phase of the positioning run and is
being accelerated.

Bit 16: The axis is in the deceleration ramp


The axis is currently in the last phase of the positioning run and is
being decelerated before it reaches the set position.

Bit 17: Reserved


Bit 18: Reserved
Bit 19 Amplifier malfunction
The amplifier has signaled an error. The error can be read from
registers 1xy380 and 1xy382 as well as from the error indication table.

Bit 20: Amplifier alarm


The amplifier has signaled an alarm. The type of alarm can be read
from registers 1xy380 and 1xy382 as well as from the alarm signal
table.

Bit 21: Pulse enabling of amplifier


Hardware enabling of the amplifier (24 V are present)

Jetter AG 87
6 Description of Registers JetWeb

Bit 22: Errors during consecutive interpolation


The controller module is unable to carry out precalculations because
the path segments are too short.

Bit 23: Reserved

88 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.2.2 Command Registers

Register 1xy001: Command Registers


Function Description

Read Present command or command issued last

Write Starts executing a new command

Value range 0 .. 255

Value after reset 0

Writing values between 0 and 255 into this register starts the execution of a function
specified by a respective command.
A command is active until a contrary command is issued.
The assignment of command and function is described in the following.
An "(*)" sign next to the command function indicates that this function is the default
setting after a reset.

The appendix provides a brief overview of available commands.

Description of Commands

0: AXARR with deceleration ramp


The axis stops according to the deceleration time defined in the
deceleration ramp register;
Exceptions:
• If the command is issued when the remaining distance is shorter
than the deceleration ramp, then no ramp is used.
• As long as interpolations are active, the command does not apply
to the individual axes.
If the positioning functions "endless positioning" or "relative
positioning" were selected, then these selections are cleared when
command 0 is issued.

1: Activate enable relay and controller


Issues the controller enable signal and activates all controllers.

2: Deactivate enable
Enabling the controllers is deactivated with the controllers remaining to
be switched on.

Jetter AG 89
6 Description of Registers JetWeb

3: Set reference
The reference point is set at the current axis position;
at the same time, actual and set positions of the axis are set to zero.

4: Search for reference


The reference is cleared, the axis has no reference position anymore;
The axis is referenced again when the axis is positioned next time
exactly at the moment when reaching the reference switch and the
presence of the K0 signal from the incremental encoder, or the 0-signal
from the resolver, coincide.

5: AXARR with position control


The axis is stopped immediately at the current position and the position
is controlled.
If the positioning functions "endless positioning" or "relative
positioning" were selected, then these selections are cleared when
command 5 is issued.

6 - 8: Reserved

In general, the following applies to commands 9 through 12 (automatic machine


referencing):

• Automatic machine referencing is carried out at the set velocity


defined in register 1xy003.
• During automatic machine referencing, bit 13 (BUSY) is set in
status register 1xy000,
• reaching the hardware reference switch is signaled in the status
register 1xy000 bit 6 (reference switch is active); However, bit 8
(limit switch is or was active) is not activated during this procedure.
• After successfully completed automatic machine referencing, the
registers for set position (1xy002) and actual position (1xy009) are
refreshed and bit 0 in the status register (reference set) is activated.
• If an error occurs during automatic machine referencing, then bit 12
(machine referencing error) is set in status register 1xy000.

90 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

9: Automatic machine referencing in positive direction


with the reference switch immediately be taken into
account
Machine referencing is started in positive direction; reaching the
reference switch is taken into account immediately;
If the positive hardware limit switch is activated on the way, the axis will
reverse its direction and continues to move in negative direction, until
• either the reference switch is found (depending on the parameter
assignment using command 22 or 23, the registers of set and
actual positions are refreshed and status bit 0 is set),
• or the negative hardware limit switch is activated without finding the
reference switch (in this case machine referencing is stopped, the
set position is set equal to the actual position, and the error bit is set
in the status register).

10: Automatic machine referencing in negative direction


with the reference switch immediately be taken into
account
Machine referencing is started in positive direction; reaching the
reference switch is taken into account immediately;
If the negative hardware limit switch is activated on the way, the axis
will reverse its direction and continues to move in positive direction,
until
• either the reference switch is found (depending on the parameter
assignment using command 22 or 23, the registers of set and
actual positions are refreshed and status bit 0 is set),
• or the positive hardware limit switch is activated without finding the
reference switch (in this case machine referencing is stopped, the
set position is set equal to the actual position, and the error bit is set
in the status register).

11: Automatic machine referencing in positive direction


with the limit switch be taken into account first, and
then the reference switch.
Machine referencing is started in positive direction and the positive
hardware limit switch is reached (reaching the reference switch is
ignored). The direction is then reversed and the axis moves in negative
direction until
• either the reference switch is found (depending on the parameter
assignment using command 22 or 23, the registers of set and
actual positions are refreshed and status bit 0 is set),
• or the negative hardware limit switch is activated without finding the
reference switch (in this case machine referencing is stopped, the
set position is set equal to the actual position, and the error bit is set
in the status register).

Jetter AG 91
6 Description of Registers JetWeb

12: Automatic machine referencing in negative direction


with the limit switch be taken into account first, and
then the reference switch.
Machine referencing is started in negative direction and the positive
hardware limit switch is reached (reaching the reference switch is
ignored). The direction is then reversed and the axis moves in positive
direction until
• either the reference switch is found (depending on the parameter
assignment using command 22 or 23, the registers of set and
actual positions are refreshed and status bit 0 is set),
• or the positive hardware limit switch is activated without finding the
reference switch (in this case machine referencing is stopped, the
set position is set equal to the actual position, and the error bit is set
in the status register).

13-14: Reserved
15: Stop searching for reference
This command serves to disable the function "find reference"
(command 4).

16: Reserved
17: Relative positioning
In this positioning mode, the last set position is the reference point for
the next positioning run (not the reference position).

18: Absolute positioning (*)


In this positioning mode, always the reference position is the reference
point for the next positioning run.

19: Resuming motion after interrupted relative positioning


A relative positioning process interrupted by an AXARR instruction is
resumed; the latest set position is defined in register 1xy068.

20: Relative positioning with start input - ON


A signal at the start input starts relative positioning.

21: Relative positioning with start input - OFF (*)


Positioning mode by means of start input is disabled again.

22: Stop at the reference point - ON (*)


During machine referencing, the axis stops at the reference point.

92 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

23: Stopping at reference point - OFF


During machine referencing, the axis does not stop at the reference
point.

24: Appending the next interpolation


The next interpolation is added to the ongoing one without interruption.

25: Combined circular and linear interpolation


The next circular interpolation is combined with a linear interpolation.

26-29: Reserved
30: Follower: Master sends actual position to external
slaves
This command defines the axis configuration in follower mode;
The master sends its actual position to the bus.

31: Follower: The slave reads the actual position of the


master
The axis reads the actual position of the master from the bus.

32: Axis 1 is slave


The physical axis 1 is the slave in a linear or circular interpolation.

33: Axis 2 is slave


The physical axis 2 is the slave in a linear or circular interpolation.

34-37: Reserved
38: Master-slave configuration 1 for linear interpolation
Only axes 1 and 2 of the master module are involved in linear
interpolation.

39: Master-slave configuration 2 for linear interpolation


only axes 1 and 2 of the master module and further external axes are
involved in the linear interpolation.

40: Master-slave configuration 3 for linear interpolation


Axis 2 of the master module and further external axes are involved in
the linear interpolation.

Jetter AG 93
6 Description of Registers JetWeb

41: Start interpolation


Linear, circular, combined or consecutive interpolation is started.

42: Remove the axis from the interpolation and from the
bus
The interpolation mode of the axis is cancelled and an AXARR
instruction is executed; the command must be issued individually for
each axis involved;
The command is also used to deactivate bus communication, e.g. in
follower mode.

43: Master-slave configuration 4 for linear interpolation


Axis 1 of the master module and further external axes are involved in
the linear interpolation.

44: Follower control via factor/divisor - ON


The follower mode via factor/divisor is activated;
The definition of the set position for the slave axis following the master
is controlled by a fixed factor/divisor ratio.

45: Follower control via factor/divisor - OFF (*)


Follower mode via factor/divisor is disabled and an AXARR instruction
is executed at the same time.

46: Follower control via table - ON


Follower mode via factor/divisor is enabled;
A table is used to specify the set position for the axis following the
master. This table is processed by means of the incremental encoder.

47: Follower via table - OFF (*)


Follower mode via table is disabled and an AXARR instruction is
executed at the same time.

48-51: Reserved
52: Follower: Table with time index - ON
Follower mode via table with time index is enabled;
A table is used to specify the set position for the axis following the
master. In this case, the table is processed by means of a time base,
which is defined in register 1xy075.

53: Follower: Table with time index - OFF (*)


Follower mode via table with time index is disabled.

54: Follower: Do not correct slave in case of overflow


The slaves are not corrected in case of master overflow.

55: Follower: Correct slave in case of overflow (*)


The slaves are corrected in case of master overflow.

94 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

56: Endless positioning in positive direction


Endless positioning in positive direction is started.

57: Endless positioning in negative direction


Endless positioning in negative direction is started.

58-61: Reserved
62: FIFO delays starting "axis 42"
This command realizes a wait cycle when consecutive interpolations
are being executed.

63-77: Reserved
78: Linear ramps - ON
Acceleration and deceleration ramps have linear character.

79: Sine-square ramps - ON (*)


Acceleration and deceleration ramps are sine-squared ramps.

80-93: Reserved
94: Master-slave configuration 5 for linear interpolation
all 3 axes of a JX6-CON-Move(-BP) module are involved in linear
interpolation.

95 - Reserved
106:
107: 3D circular interpolation mode - ON
This command is used to enable the 3D circular interpolation mode.

108: 3D circular interpolation mode - OFF (*)


The 3D circular interpolation mode is disabled again.

109: Spline interpolation: Starting the spline calculation


The command starts calculating the axis motion during a spline
interpolation. The duration of this calculation depends on the number
of spline points ( 1 - 10 seconds). During this time, the axes cannot be
moved.

110: Spline interpolation: Starting a spline movement


This command is used to start the spline motion of the axes.

111 - Reserved
112:
113: 3D circular interpolation: Starting the calculation
using teach values

Jetter AG 95
6 Description of Registers JetWeb

The command starts calculating the axis motion during a 3D circular


interpolation using 3 teach values.

114: Reserved
115: 3D circular interpolation: Starting the motion
(calculated using 3 teach values)
This command starts the 3D circular interpolation motion of the axes
already calculated by using 3 teach values.

116: 3D circular interpolation: Starting the motion


(calculated using 3 angles)
This command starts the 3D circular interpolation motion of the axes
already calculated before, using 3 angles.

117 - Reserved
124:
125: Follower: Virtual axis - ON
The virtual axis for the follower function is activated.

126: Follower: Virtual axis - OFF (*)


The virtual axis for the follower function is deactivated.

127 - Reserved
138:
139: Follower: Scaling of the table - ON
Scaling of the table for follower in mixed mode 3 is active.

140: Follower: Scaling of the table -OFF (*)


The scaling function of the table is deactivated again.

141: Reserved
142: Spline interpolation: Recalculation of the spline length
This command starts recalculating the spline length. This procedure is
necessary if a previously calculated spline interpolation was modified.

143 - Reserved
255:

96 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.2.3 Control Register

Register 1xy004: Control Register


Function Description

Read Present settings

Write New settings and selected functions

Value range Bit-coded, bit 0 .. bit 23

Value after reset 3

This register serves to set certain configurations and to preselect functions or enable/
disable them.
This register is bit-coded.
The meaning of individual bits for the set state (bit = 1) as well as for the non-set state
(bit = 0) is explained in the following.
The asterisk "(*)" sign indicates the default setting after a reset.

The appendix provides a brief overview of the structure of the control register.

Meaning of control bits:

Bit 0: Reference switch


0 = reference input 0 V- active
1 = reference input 24 V- active (*)

Bit 1: Limit switch


0 = limit switch 0 V - active
1 = limit switch 24 V - active (*)

Bit 2: Reserved
Bit 3: Direction of revolution of the motor shaft
0 = direction of revolution clockwise (*)
1 = direction of revolution counterclockwise

Bit 4: Follower Control via Table


0 = the entire table is covered
1 = only the upper half of the table is covered (*)

Jetter AG 97
6 Description of Registers JetWeb

Bit 5 Reserved
...
Bit 9
Bit 10: Machine Referencing
0 = machine referencing taking into account the 0-signal from the
resolver and the reference switch (*)
1 = machine referencing by taking into account the reference switch
only

Bit 11 Reserved
...
Bit 23:

98 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.2.4 Amplifier Status Register

Number of initialized
Register 1x1247:
JetMove amplifiers
Function Description

Read Current number of initialized JetMove amplifiers

Write Illegal

Value range 0 .. 3

Value after reset 0

The number of detected, and thus initialized JetMove amplifiers, can be read from
this register.

Jetter AG 99
6 Description of Registers JetWeb

Register 1x4000: Global control register


Function Description

Read Present status of the JX6-CON-Move(-BP)


module

Write Illegal

Value range Bit-coded, bit 0 .. bit 15

Value after reset 0

Global status information can be read from this register.

Meaning of Status Bits:

Bit #: Meaning
0 Initialization error:
• no JetMove amplifier detected
• illegal submodule configuration detected

1-6 Reserved

7 Timeout systembus (a timeout occurred on the system bus


card).

8 Timeout amplifier 1

9 Timeout amplifier 2

10 Timeout amplifier 3

11 - 15 Reserved

100 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.3 General Configuration Registers


The general configuration registers are also system registers and serve to realize
organizational basic functions.

Position of the positive software


Register 1xy014:
limit switch
Function Description

Read Value of the present position

Write New position for the positive software limit switch


(in increments)

Value range -8.388.608 .. +8.388.607

Value after reset +8.388.607

This register contains the position at which the software limit switch in positive
direction becomes active. The numerical value is stored in increments. As soon as
the limit switch is activated, the axis is stopped.

The monitoring function "software limit switch" can be activated by setting bit 14 of
status register 1xy000. The function then applies to both limit switches, i.e. in positive
and negative direction.
The status of the positive and negative software limit switches can be checked by
querying bit 7 of the status register. If bit 7 is set, one of the two software limit
switches is or was active.
The following figure shows the positions of the software limit switches:

Fig. 35: Limit Switch Positions

Jetter AG 101
6 Description of Registers JetWeb

The monitoring function via software limit switches should be enabled in any case
because this adds safety and is especially important when axes are moved in manual
mode.

Position of the negative


Register 1xy015:
software limit switch
Function Description

Read Value of the present position

Write New position for the negative software limit


switch (in increments)

Value range -8.388.608 .. +8.388.607

Value after reset -8.388.608

This register contains the position at which the software limit switch in negative
direction becomes active. The numerical value is stored in increments. As soon as
the limit switch is activated, the axis is stopped.

The monitoring function "software limit switch" can be activated by setting bit 14 of
status register 1xy000. The function then applies to both limit switches, i.e. in positive
and negative direction.
The status of the positive and negative software limit switches can be checked by
querying bit 7 of the status register. If bit 7 is set, one of the two software limit
switches is or was active.

102 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Version number of the operating


Register 1x1099:
system
Function Description

Read Current version number of the operating system

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset Current version number of the operating system

The version number of the operating system of the JX6-CON-Move(-BP) module can
be read from this register.
Please have this number available when asking for technical support.

Interpreting the register content:


If, for instance, the value 2.900 is written into register 1x1099, then the version
number is 2.900.

Note!

This register is only available for the physical axis 1 of a JX6-CON-Move(-BP)


module.

Jetter AG 103
6 Description of Registers JetWeb

6.4 General Axis Registers


The general axis registers are system registers and are needed to carry out basic
axis functions.
During commissionning, they serve to realize desired presettings in order to being
able to determine the behavior of how the axes move. These registers are also used
during normal operation to carry out positioning runs of any kind.

These registers and the related functions are described in more detail in the following
sections.

The appendix provides a brief overview of all registers.

104 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.4.1 Position Registers for Axes


This chapter describes the registers relevant for axis positions. Registers connected
with the tracking error are depending on the amplifier. Therefore, a description is
given in chapter 6.6.3, and chapter 6.7.2.

Register 1xy002: Set Position


Function Description

Read Value of the present set position of the axis

Write New set position for the axis. At the same time,
positioning towards the new position is started.

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register serves different purposes:


• it either serves to specify a new set position for an axis (in inc = increments),
• or the register content is used for visualization purposes.

Important !

This register can be modified at any time during the positioning process. In this
case, the new value applies to the ongoing positioning run immediately. The axis
does not stop during this process.
Therefore, caution is necessary when carrying out modifications during an
ongoing positioning run.

Jetter AG 105
6 Description of Registers JetWeb

Here some short examples to illustrate how this register can be used:

Example 1)
Absolute THEN
positioning REGISTER_LOAD (1xy002, 10000)

Starts positioning the axis to the (absolute) position 10,000 inc.

Example 2)
Relative THEN
positioning REGISTER_LOAD (1xy002, 100)

Starts positioning the axis to the (relative) position 100, i.e. continues to move
another 100 increments.
Prerequisite: Beforehand, the relative positioning mode must have been set in
the command register.

Example 3)
Displaying THEN
the set position DISPLAY_REG (0, 1, 1xy002]

The present set position of the axis is displayed top left on the display.

106 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy007: Destination window


Function Description

Read Value of the present destination window range

Write New destination window range in increments

Value range 0 .. +8.388.607 (theoretical value, see *)

Value after reset 5

Faster program flow can be achieved by using the destination window range.
Without the destination window parameter, the axis moves to its set postion and only
then bit 1 (AXARR = position is reached) is set in status register 1xy000. Next, the
program can be continued.
If the destination window is used now, then bit 1 is set in the status register as soon
as the actual position of the axis has reached this destination window.
Thus, the usual condition for enabling the next step

WHEN

AXARR

is already given before the exact set position has been reached. However, the
position controller still attempts to reach the set position.

The following figure illustrates this function:

If "5" is specified as
destination window
parameter, then the
destination window
range (when the set
position = 100
increments) covers
95 to 105 increments.
Within this range, bits
1 and 2 of the status
register are set if the
axis is present in this
range.

Fig. 36: Destination window

Jetter AG 107
6 Description of Registers JetWeb

A new definition is effective as soon as the parameter is stored.

Therefore, if the destination window is selected greater than 0, this function can be
used to smooth motions.

* Value range:

The value for the destination window range should not be too high, else
functional problems might occur. In practice, values from 20 - 40 are often
used for this register, always depending on the desired function in the
application.

108 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy009: Actual position of the axis


Function Description

Read Present actual position in increments

Write Illegal

Value range -8.388608 .. +8.388.607

Value after reset 0

The present actual position of the axis can be read from this register. The unit is given
in increments.
The register value is often used as condition to enable the next step.

Example:

WHEN

REG 1xy009
>
2000

THEN

A3
....

Output A 3 is set as soon as the content of register 1xy009 exceeds 2,000.

Jetter AG 109
6 Description of Registers JetWeb

Setting actual and set positions


Register 1xy071:
simultaneously
Function Description

Read Value of the present set and actual positions

Write New set and actual positions in increments

Value range -8.388.608 .. +8.388.607

Value after reset 0

The axis stops when the register is written and adopts the new positions immediately.

Important !

This register should only be used during standstill of the axis because the
reference point is redefined.

The following functions are performed internally:

• Register 1xy002 (set position of the axis) adopts the register content of register
1xy071.

Register1xy002 ≡ Register1xy071

• The content of register 1xy009 (actual position of the axis) is recalculated using
the following formula, and is written into the register:

Register1xy009 = OldActualPosition + ( RegisterContent1xy071 – OldSetPosition

This way, a new reference position is defined without loosing increments.

110 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.4.2 Velocity Registers for Axes


This chapter describes all registers related to axis velocities.

Register 1xy003: Set velocity of the axis


Function Description

Read Value of the present max. set velocity of the axis

Write New set velocity for the axis

Value range 0 .. 1,000 (depending on register 1xy021)

Value after reset 300 ‰

The set velocity parameter specifies the velocity at which the axis should move. At
the same time, the value limits the permissible velocity to a maximum.
The new value is effective immediately. Depending on the the present state of axis
motion, the result is as follows:

1.) There is no motion of the axis at the moment, the axis is


standing still:
The new value is saved for the next positioning and applies when the next
positioning run starts.

2.) Positioning is ongoing


The new value is adopted immediately as new maximum set velocity. This
means that the previous max. value is increased or decreased to meet the
new value. The value is not modified abruptly but by taking into account the
acceleration and deceleration ramps defined in register 1xy005.
These ramps delay the transition to a faster or slower max. velocity.

In this context, register 1xy021 is of crucial importance. The reference value for the
max. set velocity is defined in this register. Thus, the value range for register 1xy003
is also defined here. This means:
• depending on how the register 1xy021 is parameterized, the unit for the max. set
velocity is indicated in ‰, % or rpm.

Jetter AG 111
6 Description of Registers JetWeb

Reference value related to the


Register 1xy021:
set velocity of the axis
Function Description

Read Present reference value related to the set velocity


of the axis (for register 1xy003)

Write New reference value for the max. set velocity of


the axis

Value range 0 .. 32.767

Value after reset 6.000

The reference value (scaling) for the max. set velocity is defined in this register.
Thus, the value range for register 1xy003 is also defined here.

Here an overview of the most common parameter assignments:

Register Value Meaning / Result


1.000 • The values in register 1xy003 are given per thousand
of the max. set velocity.
• 1,000 ‰ corresponds to the maximum velocity of the
axis

100 • The values in register 1xy003 are given in per cent of


the max. set velocity
• 100% correspond to the max. velocity of the axis

1xy021 = 1xy018 • The values in register 1xy003 are given in rpm


(Setting after reset) • Register 1xy018 contains the max. velocity of the servo-
motor combination in rpm

It is also possible to define other reference values in register 1xy021.

112 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Examples to illustrate the use of the two registers 1xy003 and 1xy021:

Example 1)
Set velocity in ‰ THEN
REGISTER_LOAD (1xy021, 1000)

Causes that per thousand is set as reference value for the set velocity.
THEN
REGISTER_LOAD (1xy003, 20)

This leads to creep speed at approximately 20 ‰ of the max. velocity.

Example 2)
Set velocity in ‰ The settings and parameter assignments used in example 1 still apply.
THEN
REG 1xy003
=
REG 1xy003
+
80

This program sequence increases the axis velocity to 100 ‰ (= 10 %) of the max.
velocity. The value results from the addition of 80 ‰ to the 20 ‰ already
programmed in example 1.

Example 3)
Set velocity in % THEN
REGISTER_LOAD (1xy021, 100)

Causes that per cent is set as reference value for the set velocity.
THEN
REGISTER_LOAD (1xy003, 2)

This leads to creep speed at approximately 2 % of the maximum velocity. This


parameter assignment is an alternative programming to example 1. The result is
the same.

Jetter AG 113
6 Description of Registers JetWeb

Example 4)
Set speed in rpm Register 1xy018 contains the max. speed of the servo-motor combination with
6,000 rpm. This value is written into register 1xy021.
THEN
REGISTER_LOAD (1xy003, 6000)

The set velocity of the axis is equal to the max. speed of the servo-motor
combination (here 6,000 rpm).

Register 1xy005: Acceleration ramp


Function Description

Read Present time value of the acceleration ramp

Write New time value for the acceleration ramp in ms

Value range 0 .. 32.767

Value after reset 1,000 ms

The acceleration ramp represents the delay time with which the axis reaches the
max. velocity starting from stillstand. At lower velocities, the time until standstill will
decrease linearly, i.e. the ramp becomes shorter the lower the max. velocity is.
If not preset otherwise, sine-square shaped ramps are used (command 79).
If linear ramps are to be used, command 78 must have been issued before in
command register 1xy001.

If register 1xy005 is modified during an ongoing positioning run, then the new value
for the acceleration ramp is stored but does not apply to the ongoing process.
The new value for the acceleration ramp is
• only used when the next positioning run starts, i.e when writing to register xy002
or when a POS instruction is issued,
• or next time when the velocity changes, i.e. when writing to register 1xy003.

The following figure illustrates the correlation of register value and acceleration ramp:

Fig. 37: Acceleration ramp

114 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

The value 0 is a theoretical value because acceleration without delay is physically


impossible. Besides, a smooth start without jerks is desired in practice.

Register 1xy006: Deceleration ramp


Function Description

Read Present time value of the deceleration ramp

Write New time value for the deceleration ramp in ms

Value range 0 .. 32.767

Value after reset 1,000 ms

The deceleration ramp is the equivalent to the acceleration ramp and is relevant
when decelerating an axis. The same definitions apply here as well.
The deceleration ramp represents the delay time with which the axis reaches
standstill when decelerating from the max. velocity. If the velocity is lower than max.
velocity, then the time until standstill decreases linearly, i.e. the ramp becomes
shorter with lower max. velocity.
If not preset otherwise, sine-square shaped ramps are used (command 79).
If linear ramps are to be used, command 78 must have been issued before in
command register 1xy001.

If register 1xy006 is modified during an ongoing positioning run, then the new value
for the deceleration ramp is stored but does not apply to the ongoing process.
The new value for the acceleration ramp is
• only used when the next positioning run starts, i.e when writing to register xy002
or when a POS instruction is issued,
• or next time when the velocity changes, i.e. when writing to register 1xy003.

The following figure illustrates the correlation of register value and deceleration
ramp:

Fig. 38: Deceleration ramp

The value 0 is a theoretical value because acceleration without delay is physically


impossible. Besides, smooth deceleration without jerks is desired in practice.

Jetter AG 115
6 Description of Registers JetWeb

6.5 Position Control Registers


This chapter describes the registers which are connected with the position controller
and and in no way depend on the amplifier. For a description of the structure and
operating principle of the position controller, please refer to chapter 5.3.1: "Position
Controller", page 58.

The appendix provides a brief overview of all registers.

Set speed of the position


Register 1xy011:
controller
Function Description

Read Value of the present set speed of the position


controller

Write New set speed for the position controller

Value range -16.384 .. +16.383

Value after reset 0

This register serves to set the set speed of the position controller.
Specifying a value in this register allows limitation.
Operating mode 2 (only speed and current controller are active) must have been pre-
selected in register 1xy372.

116 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Actual speed of the position


Register 1xy012:
controller
Function Description

Read Value of the current max. speed of the position


controller in rpm

Write Illegal

Value range -12.000 .. +12.000

Value after reset 0

The present actual speed of the position controller can be read from this register.

Smoothing constant for the


Register 1x1013: actual speed of the position
controller
Function Description

Read Present value of the smoothing constants for the


actual speed of the position controller in ms

Write New value for the smoothing constant for the


actual speed of the controller

Value range 1 .. +255

Value after reset 12 ms

This register is used to influence the actual speed of the position controller.

Note!

This register is only available for the physical axis 1 of a JX6-CON-Move(-BP)


module.

Jetter AG 117
6 Description of Registers JetWeb

Mode selection for position


Register 1xy098:
control
Function Description

Read Value of the present position control mode

Write Define a new position control mode

Value range 0, 2

Value after reset 2

The JX6-CON-Move(-BP) module can be operated in different position feedback


control modes.

The following applies:


• Parameterize register 1xy098 with 0: corresponds to position control mode 0,
• Parameterize register 1xy098 with 2: corresponds to position control mode 2.

For JetMove axes only mode 2 is allowed. In this case, mode 2 is contained in
register 1xy098 as default.

Position control Position control mode 0 represents the operating mode "without full position
mode 0 control".
The axis travels towards the set position at a constant speed outside the
acceleration and deceleration ramps. After having reached the target position,
the position is controlled towards the set position. For this purpose, the
discrepancy between set and actual positions is multiplied by the P-gain of the
position controller.

Position control In position control mode 2, full position control is realized over the entire distance
mode 2 to be covered. The present set position, and thus the discrepancy between set
and actual positions, is calculated at any time. The product with the P-gain
defines the set speed value. The present set position is calculated by using a
software or virtual axis, which, by mathematical means, "covers" the desired
speed profile.

118 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.6 Amplifier register for JetMove 2xx


The JX6-CON-Move(-BP) module is used in connection with the JetMove 2xx
amplifier module to realize axis functions. Communication or data exchange,
respectively, between both modules is necessary to ensure safe operation and error-
free interaction of both modules.
Among others, register area 1xy300 through 1xy399 is used for this purpose on the
side of the JX6-CON-Move(-BP) module. On the one hand, these registers contain
status information obtained from the JetMove 2xx module. On the other hand they
contain information on operating modes and parameterizing to be transmitted to the
JetMove 2xx module.

These registers are described in the following.

The appendix provides a brief overview of all registers.

6.6.1 Registers containing status information


From perspective of the JX6-CON-Move(-BP) module, registers containing status
information can generally not be written.
They contain information generated by the JetMove 2xx module. This information is
available in the JX6-CON-Move(-BP) module for further processing, mainly for
diagnostic purposes. From these registers, the user can read most of the values
describing the status of the amplifier and can, for instance, draw conclusions with
respect to the load of the amplifier.

Register 1xy300: Rated voltage of the device


Function Description

Read Value of the present rated voltage of the device in V

Write Illegal

Value range 230, 400

Value after reset Corresponds to the specifications on the rating


plate of the device

The rated voltage of the device can be read from this register.

Jetter AG 119
6 Description of Registers JetWeb

Register 1xy301: Rated current of the device


Function Description

Read Value of the present rated current of the device in


0.1 A effective

Write Illegal

Value range 30, 40, 60, 100, 150

Value after reset Corresponds to the specifications on the rating


plate of the device

The rated current of the device can be read from this register. The value read from
the register must be multiplied by the factor 0.1 to obtain the real value.

Register 1xy360: DC link voltage


Function Description

Read Value of the present DC link voltage in V

Write Illegal

Value range 0 .. 640

Value after reset 0V

The present actual DC link voltage can be read from this register.

120 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy361: Actual current value


Function Description

Read Present actual current value

Write Illegal

Value range -16.384 .. +16.383

Value after reset 0

The actual current value can be read from this register.

Register 1xy362: Motor temperature


Function Description

Read Present value of the motor temperature or switch


position

Write Illegal

Value range 0 .. +150

Value after reset Present motor temperature or switch position

This register is used for the parameter "motor temperature".


If the motor is equipped with an analog temperature sensor, then the present motor
temperature in °C can be read from this register.
If the motor is equipped with a digital thermal relay, then 2 values are output in this
register:
• Value 100: Relay closed
• Value 140: Relay open.

Jetter AG 121
6 Description of Registers JetWeb

Register 1xy363: Device temperature


Function Description

Read Present value of the device temperature in °C

Write Illegal

Value range 0 .. +150

Value after reset 0 °C

The present device temperature can be read from this register.

Register 1xy364: Ballast utilization


Function Description

Read Present value of the ballast load in %

Write Illegal

Value range 0 .. 100

Value after reset 0%

The present ballast work load can be read from this register.

122 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy365: Motor shaft position


Function Description

Read Present position of the motor shaft in °

Write Illegal

Value range -32.768 .. +32.767 (corresponds to -180° ..


+180°)

Value after reset 0°

The present position of the motor shaft can be read from this register.

Register 1xy375: Status word


Function Description

Read Present status of the status word

Write Illegal

Value range Bit-coded, bit 0 .. bit 15, unsigned integer

Value after reset 0

Status information can be read from this register. Each bit of the register represents
a certain function.

Meaning of the status bits:

Bit # Status Meaning


0 0 Brake locked

0 1 Brake released (in manual and automatic mode)

Jetter AG 123
6 Description of Registers JetWeb

The following applies to registers 1xy380, 1xy382 and 1xy383:


Errors and alarms are indicated on the 7-segment display of the JetMove 2xx module
with their corresponding error or alarm number, and are transmitted as message (bit
is set) into the above-mentioned registers of the JX6-CON-Move(-BP) module. A
warning is displayed as a blinking dot. By assigning a unique bit and error/alarm
number and reference list (see the appendix for an additional overview of errors and
alarms), an occurred error/alarm can also be identified in the JX6-CON-Move(-BP)
module.

Register 1xy380: Error 1


Function Description

Read Present state of the fatal error

Write Illegal

Value range Bit-coded, bit 0 .. bit 15, unsigned integer

Value after reset 0

A bit is set in this register, if a fatal error has occurred. At the same time, bit 19
"amplifier malfunction" is set in status register 1xy000.
Meaning of error bits:

Bit #: Error #: Meaning


0 F00 General hardware error

1 F01 Internal voltage supply error

2 F02 One mains phase has failed (only possible with 3-phase
voltage supply; phase monitoring can be activated using
register 1xy340)

3 F03 Motor cable breakage

4 F04 Overvoltage DC link (>470 V)

5 F05 Overcurrent (>2.5 * rated current of the device)

6 F06 Device-internal ballast resistor was overloaded

7 F07 Shutdown threshold for device temperature is approx.


85 °C (device-specific)

8 F08 Shutdown threshold for device temperature is approx.


135 °C (device-specific)

9 F09 Encoder breakage or initialization error (SinCos)

10 F10 Overspeed (actual speed is >1.25 * register 1xy018)

124 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Bit #: Error #: Meaning


11 F11 Measuring range of the AD converter (current) has been
exceeded

12 F12 Ground fault

13 F13 Erronous initialization data record from the device


(appears in connection with error # F00)

14 F14 Timeout during communication between controller and


power amplifier (appears in connection with error # F00)

15 F15 Missing pulse enabling signal


(On issuing command 1 or 2 the pulse enabling hardware
signal and/or DC link voltage is missing)

Register 1xy382: Error 2


Function Description

Read Present state of the error

Write Illegal

Value range Bit-coded, bit 0 .. bit 15, unsigned integer

Value after reset 0

A bit is set in this register when an error has occurred. At the same time, bit 19
"amplifier malfunction" is set in status register 1xy000.

Meaning of error bits:

Bit #: Error #: Meaning


0 F16 The input voltage of the device is too high.

1 F17 Software limit switch has bee reached or exceeded.

2 F18 Hardware limit switch has bee reached or exceeded.

3 F19 Error response from the controller (which is on a higher


level than the drive) did not arrive in time.

4 F20 Undervoltage of DC link circuit with adjustable minimum


value

5 F21 Overvoltage of DC link circuit with adjustable maximum


value

Jetter AG 125
6 Description of Registers JetWeb

Bit #: Error #: Meaning


6 F22 Drive blocked (trigger time for blocking monitoring can be
set using register 1xy346)

7 F23 Tracking error (the tracking error has exceeded the limit
value defined in register 1xy019 and the time defined in
register 1xy342)

8 F24 DC 24 V power supply too low

9 F25 DC 15 V power supply too low (internally)

10 F26 DC 5 V power supply too low (internally)

11 F27 AVR power supply too low (internally)*)


AVR is a controller located on the power unit

*) AVR is a controller located on the power unit

The appendix provides a brief overview of errors and alarms.

126 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy383: Alarms


Function Description

Read Present alarm state

Write Illegal

Value range Bit-coded, bit 0 .. bit 15, unsigned integer

Value after reset 0

A bit is set in this register when an alarm signal was issued. At the same time, bit 20
"amplifier alarm" is set in status register 1xy000.

Meaning of the alarm signal bits:

Bit #: Alarm #: Meaning


0 16 Alarm threshold for ballast 90 %

1 17 Alarm threshold for device temperature approx. 70 °C


(device-specific)

2 18 Alarm threshold for motor temperature approx. 100 °C


(device-specific)

3 19 Overload PFC (DC link voltage <340 V if PFC is


active)

4 20 The input voltage of the device is too high.

5 21 The sensor located on the board indicates


temperature overrange

The appendix provides a brief overview of errors and alarms.

Jetter AG 127
6 Description of Registers JetWeb

Register 1xy399: Software version


Function Description

Read Current version number of the JetMove 2xx


amplifier software

Write Illegal

Value range 0 .. 16.383

Value after reset Delivered condition

The version number of the JetMove 2xx software can be read from this register.
Please have this number available when asking for technical support.

128 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.6.2 Registers for Operating Modes


Using this group of registers allows to modify the operating-mode settings of the
JetMove 2xx module from perspective of the JX6-CON-Move(-BP) module.

Register 1xy340: Operating mode


Function Description

Read Currently selected operating mode

Write New operating mode

Value range Bit-coded, bit 0 .. bit 23

Value after reset 7 (automatic mode of brake and fan)

The operating mode for the JetMove 2xx module can be preset in this register.

Meaning of bits currently being used:

Bit #: Status Meaning


0 =0 Manual mode of the motor brake

= 1 (*) Automatic Mode of the motor brake

1 =0 Amplifier fan in continuous operation

= 1 (*) Automatic mode of power stage fan (fan works


thermostat-controlled)

2 = 1 (*) Used internally

3 = 0 (*) Phase monitoring inactive (setting for the operation


of 230 V devices)

=1 Phase monitoring active (setting for the operation of


400 V devices since only useful for 3-phase supply)

4 = 0 (*) Motor cable test inactive

=1 Motor cable test active (the motor cable test is


performed when the axis is enabled for the first time
after a hardware reset)

5 = 0 (*) Used internally

(*) => Default setting after a reset

Jetter AG 129
6 Description of Registers JetWeb

Operating mode
Register 1xy341:
of the 7-segment display
Function Description

Read Currently selected operating mode for the


7-segment display

Write New operating mode for the 7-segment display

Value range 0 .. 1

Value after reset 0

The operating mode for the 7-segment display of the JetMove 2xx module can be
preset in this register.

The following operating modes can be selected:

Register Value Meaning


(= Mode #)
0 Status information for normal operation

1 Starting-up function for the speed controller

130 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy372: Operating mode


Function Description

Read Currently selected operating mode

Write New operating mode

Value range 1 .. 3

Value after reset 3

Various operating modes for the JetMove 2xx module can be preset using this
register.

The following operating modes can be selected:

Register Value Meaning


(= operating mode
number)
1 Only the current controller is active (the current
setpoint is defined in register 1xy025)

2 Only speed and current controllers are active (the


speed setpoint is defined in register 1xy011)

3 Position, speed, and current controllers are active

Note!

Entries in these registers may only be modified when control is deactivated.

Jetter AG 131
6 Description of Registers JetWeb

6.6.3 Tracking error

Register 1xy019: Tracking error


Function Description

Read Present tracking error in increments

Write Illegal

Value range -8.388.608 .. +8.388.607


(theoretical value, see *)

Value after reset 0

The content of this register indicates the difference between set and actual values of
the axis motion, i.e. by how many increments the actual position of the axis deviates
from the set position.

*) Value range:

In practice, the limit value for tracking errors is reached at about 2,000
increments. This means: if the tracking error indicated in register 1xy019
exceeds this value, the system needs to be checked.
The reason might be e.g. an encoder problem, or the dimensioning of the
motor was not calculated correctly.

The tracking error should be as small as possible to ensure high accuracy of axis
motion. It should be maintained around 0, i.e. should never be only negative or only
positive.

Note!

Tracking error evaluation is realized outside the JX6-CON-Move(-BP) module.


Refer to the following page, description of register 1xy020 "Tracking error limit".

132 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy020: Tracking error limit


Function Description

Read Value of the actual tracking error limit in


increments

Write New tracking error limit

Value range 0 .. +8.388.607

Value after reset 8.388.607

This register is directly related to register 1xy019 and defines starting from which
value the tracking error recognition is to respond. A tracking error is detected when
the value in register 1xy019 exceeds the value in register 1xy020.

The following applies to the interaction of JX6-CON-Move(-BP) and JetMove 2xx


modules:
The controller module JX6-CON-Move(-BP) passes information about the tracking
error (register contents 1xy019 and 1xy020) to the amplifier JetMove 2xx where this
information is processed and evaluated. If an error is interpreted, error number 23
will be activated and bit 7 in register 1xy382 of the JX6-CON-Move(-BP) module will
be set as acknowledgement. At the same time, bit 19 "amplifier malfunction" is set in
status register 1xy000.

Window time of the tracking


Register 1xy342:
error
Function Description

Read Present value of the window time of the tracking


error in ms

Write New value for the window time of the tracking


error

Value range 0 .. 32.767

Value after reset 5 ms

Monitoring of tracking errors can be set in this register by preselecting a time.

Jetter AG 133
6 Description of Registers JetWeb

6.6.4 Position Control Registers

Register 1xy010: P-gain of the position controller


Function Description

Read Value of the present P-gain of the position


controller

Write New value for the P-gain of the position controller

Value range 0 .. 65.535

Value after reset 160

Position control can be influenced by means of this register.


The value of this register is calculated according to the following formula:

Register 1xy010 = K V × 16

A modified P-gain value becomes effective immediately, i.e. already applies to the
ongoing positioning run.

134 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.6.5 Registers for the Digital Speed Controller


This chapter describes all registers relevant for the digital speed controller. For a
description of the structure and operating principle of the speed controller, please
refer to chapter 5.3.2: "Servo amplifier", page 62.

The appendix provides a brief overview of all registers.

The following signals are relevant for the digital speed controller:

Fig. 39: Signals of the Digital Speed Controller

(4) Current limitation

(7) Set speed

(8) Set current prior to the limitation

(9) Set current

(12) Actual speed

A PI-controller is used as speed controller. The P-gain and the I-component can be
set individually.

Jetter AG 135
6 Description of Registers JetWeb

P-gain of the digital speed


Register 1xy024:
controller
Function Description

Read Value of the actual P-gain of the digital speed


controller

Write New value for the P-gain of the digital speed


controller

Value range 0 .. +32.767

Value after reset 2,560 (corresponds to KP = 10)

This register serves to set the P-gain KP of the digital speed controller. When
modifying the register value, the new setting becomes effective immediately, i.e.
already applies to the ongoing positioning run.
The entire control performance of the digital speed controller is influenced by the
interaction with the I-component parameterization.

The register value is calculated as follows:

RegisterContent1xy024 = K P × 256

Current setpoint of the digital


Register 1xy025:
speed controller
Function Description

Read Present setpoint value for the current

Write New setpoint value for the current

Value range -16.384 .. +16.383

Value after reset 0

The desired current of the digital speed controller can be parameterized in this
register.
Operating mode 1 (only speed controller is active) must have been pre-selected in
register 1xy372.

136 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

I-gain of the digital speed


Register 1xy026:
controller
Function Description

Read Value of the actual I-gain of the digital speed


controller

Write New value for the I-gain of the digital speed


controller

Value range 0 .. +32.767

Value after reset 4,096 (Tn = 20 ms, when KP = 10)

This register serves to set the I-gain KI of the digital speed controller.
The interaction with the set P-gain determines the control performance of the speed
controller.

The register value is calculated as follows:

RegisterContent1xy026 = K I × 8.192

K
with: K I = ------P-
Tn

Current limiting in the digital


Register 1xy027:
speed controller
Function Description

Read Value of the present current limiting

Write New current limiting

Value range 0 .. +16.384

Value after reset +16.384

In the servo control loop, the current limiter is subsequently connected to the speed
controller. This register allows to limit the output current from the digital speed
controller.
Since the current is proportional to the torque, the user can influence the torque of
the motor via controller.

Jetter AG 137
6 Description of Registers JetWeb

Preset value for the speed


Register 1xy306:
controller
Function Description

Read Present preset value of the speed control

Write New preset value for the speed controller

Value range -16.384 .. +16.383

Value after reset 0

This parameter is for compensating the load torque of a suspended load.


If the brake is released for an axis, the following effect usually occurs: the load drops
until the I-component of the speed controller has been increased to reach the
respective value. This undesired effect can be avoided by parameterizing the speed
controller with a preset value. The preset value is determined emperically and
contains the connection of static load torque and current setpoint (when the load is
at stillstand and the controller is enabled, read the current setpoint from register
1xy025 and use it as preset value). The load can be prevented from dropping by
correctly setting this value.

138 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.6.6 Configuration Registers for Axes


The configuration registers for axes are used for basic hardware-related parameter
assignments.

Register 1xy016: Commutation offset


Function Description

Read Value of the actual commutation offset

Write New value for the commutation offset

Value range 0 .. +65.535

Value after reset 0

Note!

Register 1xy016 is reserved for special applications. If required, the register


value is defined by the manufacturer.

Register 1xy017: Encoder resolution


Function Description

Read Value of the present encoder resolution per


revolution

Write Illegal

Value range 0 .. +32.768

Value after reset Present value of the encoder resolution

The encoder resolution of the resolver module can be read from this register.
After a reset, this register should contain the value 4.096.

For more information on encoders and their operating principle, please refer to the
description in chapter 5.3.3: "Acquisition of Actual Values", page 64.

Jetter AG 139
6 Description of Registers JetWeb

Maximum speed of the servo/


Register 1xy018:
motor combination
Function Description

Read Value of the actual max. speed in rpm

Write New max. speed for the servo-motor comination


in rpm

Value range 120 .. 12.000

Value after reset 6,000 rpm

This register must always be parameterized to adjust a servo axis.


The peak speed that can be reached by the servo-motor combination must be written
into this register.

Note!

The product resulting from registers 1xy017 und 1xy018 must not exceed the
value 61,346,000.

Register 1xy023: Pole pair number of the motor


Function Description

Read Value of the present pole pair number

Write New pole pair number

Value range 1 .. 12

Value after reset 3

This register is used to set the pole pair number of the motor.

140 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.6.7 Registers containing parameter


information
This group of registers allows to directly influence the control behavior of the amplifier
(JetMove 2xx module). To do so, the desired values are written into these registers
on the side of the JX6-CON-Move(-BP) module.

Max. output current of the


Register 1xy302:
device
Function Description

Read Value of the present max. output current of the


device in A

Write New value for the max. output current of the


device

Value range 0,5 .. 2.0 * rated current of the device

Value after reset 60, 80, 120, 200, 300 A (2 * rated current of the
device)

The max. output current of the amplifier is limited in this register. For this purpose,
the rated current of the device (from register 1xy301) is multiplied with a factor
between 0.5 and 2.0.

Jetter AG 141
6 Description of Registers JetWeb

KP value of the current


Register 1xy303:
controller
Function Description

Read Value of the present P-gain of the current


controller

Write New value for the P-gain of the current controller

Value range 0 .. 32.767

Value after reset Specific value depending on the amplifier

The P-gain of the current controller is calculated according to the following formula:

I effMotor × L Motor
K P = --------------------------------------------
2 × Tσ × U DCLink

The following applies to the operands:

• T σ = 37 µs

• I effMotor = I Neff × OverloadFactor

• The following parameters are relevant to the DC link voltage UDCLink:

Module Connection type UDC link value


JM2xx/230 3-phase 325 V

2-phase 390 V (PFC)

JM2xx/400 3-phase 560 V

• The values for IN and Lmotor are provided on the rating plate of the motor.

Register 1xy303 must then be parameterized with the value resulting from the
following formula.

RegisterContent1xy303 = K P × 1.024

The indicated value is a suggested value and must be adapted to the requirements
of the application.

142 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy304: KI value of the current controller


Function Description

Read Value of the present I-gain of the current


controller

Write New value for the I-gain of the current controller

Value range 0 .. 32.767

Value after reset Specific value depending on the amplifier

The I-gain of the current controller is calculated according to the following formula:

K
K I = ------P-
Tn

The following applies to the operands:


L Motor
• T n = -----------------
R Motor

• The values for Lmotor and Rmotor are provided on the rating plate of the motor.

• For more information on how to calculate the value KP see description of register
1xy303.

Register 1xy304 must then be parameterized with the value resulting from the
following formula.

RegisterContent1xy304 = K I × 4.096

The indicated value is a suggested value and must be adapted to the requirements
of the application.

Jetter AG 143
6 Description of Registers JetWeb

Register 1xy305: Motor voltage constant Ke


Function Description

Read Value of the present motor voltage constant

Write New value for the voltage constant of the motor

Value range 0 .. 32.767

Value after reset 0

The value of the voltage constant Ke is indicated on the rating plate of the Jetter
motors.
Example: The motor „JL3-300-25-3“ has the voltage constant „25“.

Volt
The Ke value of the motor has the unit: -------------------------------------------------------
Revolutions
-
1.000 × ----------------------------------
min

If highly dynamic drives are used, register 1xy305 should be parameterized using
this value.

144 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Triggering threshold
Register 1xy344: for max. DC link voltage
monitoring
Function Description

Read Present value of the triggering threshold of the


max. DC link voltage in V

Write New value for the triggering threshold for the


max. DC link voltage monitoring

Value range 0 .. 640

Value after reset 470 V

The limit value which triggers the monitoring function for the max. DC link voltage is
activated in this register.

Triggering threshold
Register 1xy345: for min. DC link voltage
monitoring
Function Description

Read Present value of the triggering threshold of the


min. DC link voltage in V

Write New value for the triggering threshold of the min.


DC link voltage

Value range 0 .. 640

Value after reset 250 V

The limit value which triggers the monitoring function for the min. DC link voltage is
activated in this register.

Jetter AG 145
6 Description of Registers JetWeb

Time interval for blocking


Register 1xy346:
monitoring
Function Description

Read Present value of the time interval for the blocking


monitoring in ms

Write New value of the time interval for the blocking


monitoring

Value range 0 .. 32.767

Value after reset 5,000 ms

The time interval for the motor blocking monitoring function can be set in this register
by preselecting a time.

Delay time after releasing the


Register 1xy347:
motor brake
Function Description

Read Present value of the delay time after releasing the


brake

Write New value for the delay time after releasing the
brake

Value range 0 .. 32.767

Value after reset 0 ms

The delay time that passes until the brake is actually being released (starts when
issuing the command) can be defined in this register. After expiry of the defined delay
time, the brake is in "released" condition.
Also refer to the figure "delay times motor break release/lock" on the following page.

Important !

Only experienced users are allowed to modify the predefined values in this
register.

146 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Delay time after locking the


Register 1xy348:
motor brake
Function Description

Read Present value of the delay time after locking the


brake

Write New value for the delay time after locking the
brake

Value range 0 .. 32.767

Value after reset 100 ms

The delay time that passes until the brake is actually being locked (starts when
issuing the command) can be defined in this register. After expiry of the defined delay
time, the brake is in "locked" condition.

Fig. 40: Delay times when motor brake has been released/locked

Jetter AG 147
6 Description of Registers JetWeb

Register 1xy349: Ramp time for emergency stop


Function Description

Read Present value of the ramp time for emergency


stop

Write New value for the ramp time for emergency stop

Value range 0 .. 32.767

Value after reset 100 ms

The ramp time which is activated in case of emergency stop can be defined in this
register. The velocity of the axis is decreased according to this ramp time. In error
conditions that still allow to operate the axis (e.g. overtemperature), the emergency
stop ramp decelerates the axis to zero speed. If the max. current is not sufficient for
the emergency ramp, the ramp time will be lengthened.

Register 1xy350: Scaling for speed pre-control


Function Description

Read Present scaling value for speed pre-control in %

Write New scaling value for speed pre-control

Value range 0 .. 32,767 (corresponds to 0 .. 200 %)

Value after reset 16,384 (corresponds to 100 %)

The value to scale the speed pre-control is defined in this register.


To avoid that a tracking error always occurs at constant speeds, the value of the
speed pre-control is added to the manipulated value of the position controller. This
means that the speed pre-control compensates a speed-proportional tracking error.

148 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy374: Control word


Function Description

Read Present status of the control word

Write New control information

Value range Bit-coded, bit 0 .. bit 15, unsigned integer

Value after reset 0

Control information/functions can be selected and started using this register. Each
bit of the register represents a certain function.

Meaning of control bits:

Bit # Status Meaning


0 0 Lock break

0 1 Release brake (only possible in manual mode)

Jetter AG 149
6 Description of Registers JetWeb

6.7 Amplifier Register JetMove 6xx


The JX6-CON-Move(-BP) module is used in connection with the JetMove 6xx
amplifier module to realize axis functions. Communication or data exchange,
respectively, between both modules is necessary to ensure safe operation and error-
free interaction of both modules.
This chapter gives a description of the registers to be used on the side of the JX6-
CON-Move(-BP) module.

The appendix provides a brief overview of all registers.

Introduction
Apart from the above-mentioned methods of addressing parameters on the amplifier
side, there is the option of addressing some of these parameters by means of the
following registers.
The following registers do not provide access to all amplifier parameters, such as the
ASCII interface, but only to a limited number of specific parameters which can be
modified when the application program is being processed. If a name is specified in
the additional two lines "DRIVE" and "ASCII", then the register addresses the same
parameter as it is done by the name specified in the DRIVE software (the
corresponding functional group/screen page is specified too), or by the ASCII name
through the ASCII interface.

Apart from this, amplifier registers which are not "READ ONLY", i.e. which allow
values to be entered, have two additional lines. These two lines are "Valid", and
"Required amplifier status".
If "Immediately" is specified in the line Valid, then the user can continue with
additional read or write accesses to the same amplifier. In this case, the user can
assume that the value written into the register takes immediate effect.
If, on the other hand, "Reset parameter transfer bit" is specified, then bit 13 of register
1xy375 "Status word" is refered to. If the bit is set, the amplifier is still processing the
value entered last. During this period, the application program is not allowed to enter
an additional value into a register of the same amplifier. This can only be done when
the bit is reset.

The entry "Amplifier not enabled" in the line "Required amplifier status" indicates that
the amplifier should not be enabled when entering a value into the corresponding
amplifier register.

For some writable amplifier registers bit 14 of register 1xy375 "Status word" will be
set when an invalid value has been entered. This bit will automatically be reset during
the next write access to the register if the value that has been written is valid. After
this bit has been written, it cannot be evaluated till bit 13 is reset.

150 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.7.1 Registers containing status information


From perspective of the JX6-CON-Move(-BP) module, registers containing status
information can generally not be written.
They contain information generated by the JetMove 6xx module. This information is
available in the JX6-CON-Move(-BP) module for further processing, mainly for
diagnostic purposes. From these registers, the user can read most of the values
describing the status of the amplifier and can, for instance, draw conclusions with
respect to the load of the amplifier.

Register 1xy361: Actual current value


Function Description

Read Present actual current value

Write Illegal

Value range 0 ... Peak current of the amplifier

Unit mA

DRIVE RMS current (functional group: actual values)

ASCII I

Value after reset Present actual current value

Register 1xy365: Motor shaft position


Function Description

Read Present motor shaft position

Write Illegal

Value range -32.768 ... +32.767

Unit -

DRIVE -

ASCII PRD (other scaling)

Value after reset 0

Jetter AG 151
6 Description of Registers JetWeb

Register 1xy375: Status word


Function Description

Read Present status of the status word

Write Illegal

Value range bit-coded: 24-bit-signed integer (see table)

Unit -

DRIVE -

ASCII -

Value after reset 0

Meaning of the individual bits:

Bit Meaning

1 = Parameter Transfer

1= Amplifier is just in parameter transfer mode.

13 0= Amplifier is ready for parameter transfer.

Set: This bit is set once a parameter has been written that requires
quite some processing time (refer to line "Valid" in the detailed
description of this register).

Reset: Once the amplifier has completed the write process.

1 = Incorrect register value

1= During the last write process, the amplifier received an invalid


value for a register.

14 0= No error

Set: After writing a parameter with the written value being invalid.

Reset: During writing with the written value being valid for the
corresponding register.

152 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy380: Error 1


Function Description

Read Present state of the error

Write Illegal

Value range bit-coded: 24-bit-signed integer (see table)

Unit -

DRIVE Present error (functional group: amplifier)

ASCII ERRCODE

Value after reset 0

If a bit is set in this register, then in status register 1xy000 bit 19 will be set.

An error bit will be set when the corresponding error has been detected. This bit will
be cleared again by giving command 1 "Power-up".

Important !

Errors marked with SW in the column "Reset" can be reset without hardware
reset.
Errors marked with HW in the column "Reset" can be reset by means of a
hardware reset. As a result, communication between amplifier and the JX6-CON-
Move(-BP) module will be interrupted. After a hardware reset communication
between JX6-CON-Move(-BP) module and the JetMove 6xx amplifier has to be
re-established.

Jetter AG 153
6 Description of Registers JetWeb

Important !

The column "Level" provides information on error handling on part of the amplifier:

Level 2: An error results in emergency stop.


The motor is stopped by the speed controller using an emergency stop
Caution ramp (Register 1xy349). Once motor speed has reached 0 (limited to
5 s), the amplifier is switched off.
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Level 3: An error results in emergency stop.


The motor is stopped without feedback unit (without sensor). Once the
motor is standing still, the amplifier will be deactivated.
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Level 4: An error results directly in deactivation of the amplifier.


The motor has no torque (and coasts to stop).
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Setting the level type


The following applies to errors with 2 level messages, i.e. 2 and 4, or 3 and 4:

The level is determined by means of the ASCII parameter settings ACTFAULT, and
MBRAKE, or STOPMODE.

ACTFAULT = 1 or MBRAKE = 1 LEVEL 2 or 3 (default setting)

ACTFAULT = 0 and MBRAKE = 0 LEVEL 4

154 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Meaning of the individual bits:

Bit Indica Reset Level Meaning


tion

1 = Heat sink

1= Overtemperature of the heat sink

00 F01 SW 2, 4 0= Normal heat sink temperature

Set: The heat sink temperature (ASCII


parameter TEMPH) exceeds the
maximum threshold of the ASCII
parameter MAXTEMPH.

ASCII cross reference:


ERRCODE * Bit 00

1 = DC link voltage

1= Overvoltage of the DC link

01 F02 SW 2, 4 0= DC link voltage is ok

Set: The DC link voltage exceeds the


maximum threshold defined by the
ASCII parameter VBUSBAL.
DRIVE “max. mains voltage“
(functional group: "Basic settings")

ASCII cross reference:


ERRCODE * Bit 01

1 = Tracking error

1= The axis cannot follow the setpoint

02 F03 SW 2 0= No tracking error

Set: The calculated set speed exceeds


the maximum speed specified by
the ASCII parameter "VLIM".

ASCII cross reference:


ERRCODE * Bit 02

Jetter AG 155
6 Description of Registers JetWeb

Bit Indica Reset Level Meaning


tion

1 = Feedback

1= Feedback error

03 F04 HW 3, 4 0= Feedback is ok

Set: No feedback, no communication

ASCII cross reference:


ERRCODE * Bit 03

1 = Undervoltage protection

1= DC link voltage too low

04 F05 SW 2, 4 0= DC link voltage is ok

Set: The DC link voltage is lower than the


ASCII parameter VBUSMIN (only if
the amplifier is activated).

ASCII cross reference:


ERRCODE * Bit 04

1 = Motor temperature

1= The motor temperature is too high

05 F06 HW 2, 4 0= Motor temperature is ok

Set: The heat sink temperature (ASCII


parameter TEMPM) exceeds the
maximum threshold of the ASCII
parameter MAXTEMPH.

ASCII cross reference:


ERRCODE * Bit 05

1 = Internal auxiliary voltage

1= Internal auxiliary voltage is not ok

06 F07 HW 2, 4 0= Internal auxiliary voltage is ok

Set: Internal auxiliary voltage is too low.

ASCII cross reference:


ERRCODE * Bit 06

156 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Bit Indica Reset Level Meaning


tion

1 = Overspeed

1= Motor speed exceeds the limit

07 F08 SW 3, 4 0= Motor speed is ok

Set: The motor speed exceeds the


overspeed threshold (ASCII
parameter VOSPD)

ASCII cross reference:


ERRCODE * Bit 07

1 = EEPROM

1= EEPROM check sum error

08 F09 HW 4 0= EEPROM is ok

Set: Data read from the EEPROM and


written to the EEPROM are invalid

ASCII cross reference:


ERRCODE * Bit 08

09 RESERVED

1 = Brake

1= Brake is not ok

10 F11 HW 2, 4 0= Brake is ok

Set: Brake switch signals error (e.g.


brake was selected, but no brake is
connected).

ASCII cross reference:


ERRCODE * Bit 10

11 RESERVED

1 = Ambient temperature

1= Ambient temperature is too high

12 F13 SW 2, 4 0= The ambient temperature is ok

Set: The ambient temperature (ASCII


parameter TEMPE) exceeds the
maximum threshold of the ASCII
parameter MAXTEMPE.

ASCII cross reference:


ERRCODE * Bit 12

Jetter AG 157
6 Description of Registers JetWeb

Bit Indica Reset Level Meaning


tion

1 = Power amplifier

1= Power amplifier error

13 F14 HW 2, 4 0= Power amplifier is ok

Set: Error cause:


– Ground fault of the motor
– Short circuit of motor phases
– Short in the ballast circuit

ASCII cross reference:


ERRCODE * Bit 13

1 = I2t Max

1= I2t limit has been exceeded

14 F15 SW 2, 4 0= I2t value is ok


see also ASCII parameter
"FOLDMODE"

Set: FOLDMODE = 0:
I2t value exceeds 115 % of the
ASCII parameter ICONT.
FOLDMODE = 1:
I2t value exceeds 105 % of the
ASCII parameter ICONT.

ASCII cross reference:


ERRCODE * Bit 14

1 = Mains not ready for operation

1= Mains voltage is not ok

15 F16 SW 2, 4 0= Mains voltage is ok

Set: 2 or 3 mains phases are missing

ASCII cross reference:


ERRCODE * Bit 15

1 = A/D converter

1= Error in A/D conversion

16 F17 HW 2, 4 0= A/D converter is ok

Set: Invalid A/D conversion:


The present current offset is too
high when starting

ASCII cross reference:


ERRCODE * Bit 16

158 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Bit Indica Reset Level Meaning


tion

1 = Ballast

1= The ballast circuit is defect.

17 F18 HW 2, 4 0= The ballast circuit is ok

Set: Error cause:


– Defective ballast resistor
– External ballast resistor was
selected, but the internal one is
used.

ASCII cross reference:


ERRCODE * Bit 17

1 = Mains phase

1= Mains voltage is not ok

18 F19 SW 2, 4 0= Mains voltage is ok

Set: 1 mains phase is missing

ASCII cross reference:


ERRCODE * Bit 18

19 RESERVED

20 RESERVED

1 = Ground fault

1= Ground fault

21 F22 SW 2, 4 0= No ground fault

Set: Ground fault monitoring of 40 / 70 A


devices trips

ASCII cross reference:


ERRCODE * Bit 21

22 RESERVED

Jetter AG 159
6 Description of Registers JetWeb

Bit Indica Reset Level Meaning


tion

1 = Alarm generates error message

1= Error due to an alarm

23 F24 SW 2, 4 0= No error due to an alarm

Set: An error has generated an alarm


message (depending on the set
ASCII parameter).

Depending on the ASCII parameter WMASK


an error message is generated due to an
alarm. The error message is indicated by this
bit and is handled as an error

ASCII cross reference:


ERRCODE * Bit 23

160 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy382: Error 2


Function Description

Read Present state of the error

Write Illegal

Value range bit-coded: 24-bit-signed integer (see table)

Unit -

DRIVE Present error (functional group: amplifier)

ASCII ERRCODE

Value after reset 0

If a bit is set in this register, then in status register 1xy000 bit 19 will be set.

An error bit will be set when the corresponding error has been detected. This bit will
be cleared again by giving command 1 "Power-up".

Important !

Errors marked with SW in the column "Reset" can be reset without hardware
reset.
Errors marked with HW in the column "Reset" can be reset by means of a
hardware reset. As a result, communication between amplifier and the JX6-CON-
Move(-BP) module will be interrupted. After a hardware reset the system bus
communication has to be re-established.

Jetter AG 161
6 Description of Registers JetWeb

Important !

The column "Level" provides information on error handling on part of the amplifier:

Level 2: An error results in emergency stop.


The motor is stopped by the speed controller using an emergency stop
Caution ramp (Register 1xy349). Once motor speed has reached 0 (limited to
5 s), the amplifier is switched off.
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Level 3: An error results in emergency stop.


The motor is stopped without feedback unit (without sensor). Once the
motor is standing still, the amplifier will be deactivated.
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Level 4: An error results directly in deactivation of the amplifier.


The motor has no torque (and coasts to stop).
The relay contact "ready-to-operate" is switched off.
An error message is issued.

Setting the level type


The following applies to errors with 2 level messages, i.e. 2 and 4, or 3 and 4:

The level is determined by means of the ASCII parameter settings ACTFAULT, and
MBRAKE, or STOPMODE.

ACTFAULT = 1 or MBRAKE = 1 LEVEL 2 or 3 (default setting)

ACTFAULT = 0 and MBRAKE = 0 LEVEL 4

162 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Meaning of the individual bits:

Bit Indica Reset Level Meaning


tion

1 = Commutation error

1= Commutation error (motor


overspeed)

00 F25 SW 3, 4 0= Commutation is ok

Set: Amplifier detects commutation error


(effects on the motor: overspeed)

ASCII cross reference:


ERRCODE * Bit 24

01 RESERVED

1 = Starting lockout option

1= Starting lockout option tripped

02 F27 HW 4 0= Normal operation

Set: In case the amplifier was enabled


when the starting lockout option
tripped.

ASCII cross reference:


ERRCODE * Bit 26

1 = External trajectory

1= Setpoint jump error

03 F28 SW 2 0= Trajectory is ok

Set: Setpoint jump exceeds the


maximum permissible value when
setting the external position
trajectory.

ASCII cross reference:


ERRCODE * Bit 27

04 RESERVED

05 RESERVED

06 RESERVED

Jetter AG 163
6 Description of Registers JetWeb

Bit Indica Reset Level Meaning


tion

1 = System error

1= Internal error

07 F32 HW 4 0= System is ok

Set: This error message is generated on


power-up if the system check could
not be completed successfully
during initialization.
Possible causes are:
– Corrupt data table in the flash
memory
Possible fault cause: Aborted
firmware update
– Macro error:
Erronous macro program
– Software watch dog
Error during program execution
– Serial EEPROM
Error when reading from/writing
into the serial EEPROM
– FPGA error
Error when loading the FPGA
program
– Macro RAM
Insufficient RAM for the macro
programs

In case of a system error the exact


error cause is output via serial port
(RS232) when the amplifier is
powered-up.

ASCII cross reference:


ERRCODE * Bit 31

164 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy383: Alarms


Function Description

Read Present alarm state

Write Illegal

Value range bit-coded: 16-bit-signed integer (see table)

Unit -

DRIVE -

ASCII DRVSTAT, IN1, IN2, IN3, IN4, REMOTE, O1, O2

Value after reset 0

If a bit is set in this register, then in status register 1xy000 bit 20 will be set.

All bits which are listed in the table and have entries in the column "Indication" and
"Level" indicate errors in the normal operation of the amplifier. Based on the ASCII
parameter WMASK (see register 1xy389 "Error 1", bit 23) the user can determine
whether the malfunction is an alarm or error. Malfunctions are treated as alarms by
default.

The column "Level" provides information on alarm handling on part of the amplifier:

Level 0: A malfunction is indicated as warning with a specific number on the


amplifier's display.
The amplifier is NOT deactivated. The relay contact "ready-to-
operate" is NOT switched off.
Operation of the amplifier might be limited, e.g. by current limitation.
Normal operation is possible once the malfunction has been
eleminated.

Level 1: A malfunction is indicated as warning with a specific number on the


amplifier's display.
The malfunction results in emergency stop.The motor is stopped
by the speed controller using an emergency stop ramp (Register
1xy349).
The amplifier is NOT deactivated. The relay contact "ready-to-
operate" is NOT deactivated.
Operation can be continued only in case the malfunction has been
eliminated or the corresponding alarm has been reset.

Jetter AG 165
6 Description of Registers JetWeb

Meaning of the individual bits:

Bit Indica Level Meaning


tion

1 = I2t threshold

1= I2t threshold has been exceeded

0= Present value I2t is permissible

00 n01 0 Set: I2T exceeds the set threshold of the ASCII


parameter I2TLIM,
DRIVE software: "I2T Message" (functional
group: "Current Controller").

Reset: I2T is <= threshold.

ASCII cross reference:


DRVSTAT * Bit 00

1 = Ballast message

1= Ballast message

0= Ballast power is OK

01 n02 0 Set: The present ballast power exceeds the set


threshold of the ASCII parameter PBALMAX,
DRIVE software: "Ballast Power" (functional
group: "Basic Settings").

Reset: Present ballast power <= threshold.

ASCII cross reference:


DRVSTAT * Bit 01

1 = Tracking error

1= Tracking error

0= No tracking error

02 n03 1 Set: If register | 1xy019 | > register 1xy020.

Reset: Command 1 "Activate".

ASCII cross reference:


DRVSTAT * Bit 02

03 RESERVED

166 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Bit Indica Level Meaning


tion

1 = Mains phase

1= One of the mains phases is missing

0= Mains phases are OK

04 n05 0 Set: In case one of the mains phases is missing.

Reset: All three mains phases are present.

ASCII cross reference:


DRVSTAT * Bit 04

1 = Software limit switch 1

1= Activated

0= Not activated

05 n06 1 Set: The present position is lower than the position


of the ASCII parameter SWE1, DRIVE
software "Position 1" (functional group:
"Positioning Data").

Reset: – The present position exceeds (is higher


than) the value SWE1 and the speed is
positive.
– A positioning process with a target position
exceeding the SWE1 value is started.

In order to use the software limit switch, the


corresponding function has to be selected for
position register SWE1, and SWE2
beforehand.

ASCII cross reference:


DRVSTAT * Bit 05

Jetter AG 167
6 Description of Registers JetWeb

Bit Indica Level Meaning


tion

1 = Software limit switch 2

1= Activated

0= Not activated

06 n07 1 Set: The present position is higher than the


position of the ASCII parameter SWE2,
DRIVE software "Position 2" (functional
group: "Positioning Data").

Reset: – The present position is less (lower) than


the value SWE2 and the speed is negative.
– A positioning process with a target position
less than the SWE2 value is started.

In order to use the software limit switch, the


corresponding function has to be selected for
position register SWE1, and SWE2
beforehand.

ASCII cross reference:


DRVSTAT * Bit 06

07 RESERVED

08 RESERVED

1 = Positive hardware limit switch (PSTOP)

1= Activated

0= Not activated

09 n10 1 Set: The corresponding digital inputs gets a falling


edge (low-active)

Reset: The corresponding digital inputs gets a rising


edge.

To use this bit one of the functions “PSTOP“,


“PSTOP + Intg.Off“, “PSTOP + NSTOP“, “P/
NSTOP + Intg.Off“ has to be selected for
digital input 3 or 4.

ASCII cross reference:


DRVSTAT * Bit 09

168 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Bit Indica Level Meaning


tion

1 = Negative hardware limit switch (NSTOP)

1= Activated

0= Not activated

10 n11 1 Set: The corresponding digital inputs gets a falling


edge (low-active)

Reset: The corresponding digital inputs gets a rising


edge.

To use this bit one of the functions “NSTOP“,


“NSTOP + Intg.Off“, “PSTOP + NSTOP“, “P/
NSTOP + Intg.Off“ has to be selected for
digital input 3 or 4.

ASCII cross reference:


DRVSTAT * Bit 10

1 = Default settings

1= The encoder default values are different from


amplifier default values

0= The encoder default values and amplifier


default values are the same

11 n12 0 Set: When starting:


The motor default values are read from the
EEPROM of the feedback system. They are
not identical to the motor default values stored
to the EEPROM of the amplifier.

Reset: The motor standard parameters are stored to


the EEPROM of the amplifier using the ASCII
command SAVE, the DRIVE software button
SAVE and the button Cold Start. If data
haven't been saved yet to the EEPROM of the
encoder using the ASCII command HSAVE,
instead of SAVE the command HSAVE has to
be used.

Applies only to systems with absolute


encoders.

ASCII cross reference:


DRVSTAT * Bit 11

12 RESERVED

Jetter AG 169
6 Description of Registers JetWeb

Bit Indica Level Meaning


tion

1 = SinCos Feedback

1= Commutation not yet carried out

0= Commutation has been carried out

13 n14 0 Set: When the amplifier is started

Reset: After the amplifier has been enabled and the


commutation has been determined.

Applies only to feedback type 7

14 RESERVED

15 RESERVED

Firmware Version of the


Register 1xy399:
SB-Interface
Function Description

Read Present firmware version of the SB-interface


(JetMove 600 SW Version)

Write Illegal

Unit e.g. 101 = 1.01

DRIVE -

ASCII VER * (Jetm600 SW Version)

Value after reset 0

170 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.7.2 Tracking error

Register 1xy019: Tracking error


Function Description

Read Present tracking error

Write Illegal

Value range -8.388.608 ... +8.388.607

Unit Increments

DRIVE Tracking error (functional group: actual values)


Scaling:
PRBASE = ASCII parameter PRBASE
Reg 1xy017
Reg 1xy019 = TrackingError (PE) × -------------------------------
PRBASE
-
2

ASCII PE
Scaling: (see above)

Value after reset 0

The value contained in this register indicates, by how many increments the position
of the real axis differs from the position of the virtual axis.

Jetter AG 171
6 Description of Registers JetWeb

Register 1xy020: Tracking Error Limit


Function Description

Read Present limit

Write New limit

Valid Immediately

Required amplifier status Amplifier not enabled

Value range 0 ... +8.388.607

Unit Increments

DRIVE Max. tracking error (functional group: actual


values)
Scaling:
PRBASE = ASCII parameter PRBASE
Reg 1xy017
Reg 1xy020 = PEMAX × -------------------------------
PRBASE
-
2

ASCII PEMAX
Scaling: (see above)

Value after reset Maximum tracking error / PEMAX value stored


last to the EEPROM of the amplifier

This register defines starting from which value the tracking error recognition is to
respond. A tracking error is detected once the value in register 1xy019 exceeds the
value in register 1xy020.

172 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

6.7.3 Position Control Registers

Register 1xy010: P-gain of the Position Controller


Function Description

Read Present P-gain value of the position feedback


controller

Write New P-gain

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 1 ... 25.000

Unit 1/s

DRIVE KV (functional group: position controller)


Scaling: Reg. 1xy010 = KV * 1.000

ASCII GP
Scaling: Reg. 1xy010 = GP * 1.000

Value after reset KV / GP value stored last to the EEPROM of the


amplifier multiplied by 1,000

This register determines proportional amplification of the position feedback controller

Scaling factor:

Speed in mm/s at a position error of 1 mm.

Jetter AG 173
6 Description of Registers JetWeb

6.7.4 Registers for the Digital Speed Controller


This chapter describes all registers relevant for the digital speed controller. For a
description of the structure and operating principle of the speed controller, please
refer to chapter 5.3.2: "Servo amplifier", page 62.

The appendix provides a brief overview of all registers.

The following signals are relevant for the digital speed controller:

Fig. 41: Signals of the Digital Speed Controller

(4) Current limitation

(7) Set speed

(8) Set current prior to the limitation

(9) Set current

(12) Actual speed

A PI-controller is used as speed controller. The P-gain and the I-component can be
set individually.

174 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy024: Speed P-gain (KP)


Function Description

Read Present value of the P-gain of the digital speed


controller (also known as AC gain)

Write New P-gain

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 0 ... (62.500 * Reg. 1xy026 “Speed Tn“)

Unit -

DRIVE KP (functional group: speed controller)


Scaling: Reg. 1xy024 = KP * 1.000

ASCII GV * 1.000
Scaling: Reg. 1xy024 = GV * 1.000

Value after reset KP / GV value stored last to the EEPROM of the


amplifier multiplied by 1,000

Setting
Increase the value until the motor starts to chatter. Then, decrease the value until
there is absolutely no more chattering. Typical values for this parameter are in the
range between 10,000 and 20,000.

Scaling factor:

The peak current is supplied at a p-gain of 1,000 and a control deviation (nsetpoint -
nactual) of 3,000 rpm.

Jetter AG 175
6 Description of Registers JetWeb

Register 1xy026: Speed Tn


Function Description

Read Present value Tn of the closed-loop speed


control

Write New value Tn

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 0 (Reg. 1xy024 “Speed P-gain“ / 62,500) ...


1,000.000

Unit µs

DRIVE Tn (functional group: speed controller)


Scaling: Reg. 1xy026 = Tn * 1,000

ASCII GVTN
Scaling: Reg. 1xy026 = GVTN * 1,000

Value after reset Tn / GVTN value stored last to the EEPROM of


the amplifier multiplied by 1,000

This value determines the integral time constant or integral-action time. Smaller
motors allow for shorter integral-action time. Large motors or high moments of load
inertia in most cases require an integral-action time of 20,000 µs or higher.

Tn = 0 µs deactivates the integral-action component.

176 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy027: Current Setpoint Limitation


Function Description

Read Present value for peak current limit

Write New peak current limit

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 0 ... Peak current of the amplifier

Unit mA

DRIVE Ipeak (functional group: current controller)


Scaling: Reg. 1xy027 = Ipeak * 1,000

ASCII IPEAK
Scaling: Reg. 1xy027 = IPEAK * 1,000

Value after reset IPEAK value stored last to the EEPROM of the
amplifier multiplied by 1,000

This register is used to limit the torque.

Jetter AG 177
6 Description of Registers JetWeb

6.7.5 Configuration Registers for Axes

Register 1xy016: Phase Offset


Function Description

Read Present value for motor phase offset

Write New phase offset value

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status Amplifier not enabled

Value range 0 ... 360

Unit Electrical degrees

DRIVE -

ASCII MPHASE

Value after reset Value of the ASCII parameter MPHASE stored


last to the amplifier

Resolver motors: Phase offset = 0°

HIPERFACE Motors: Phase offset = 270°

Register 1xy017: Encoder resolution


Function Description

Read Current encoder resolution per revolution

Write Illegal

Value range 4,096, 32,768

Unit Increments

DRIVE -

ASCII -

Value after reset 4,096 for Resolver


32,768 for HIPERFACE

178 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Peak speed of the JetMove/


Register 1xy018:
motor combination
Function Description

Read Present peak speed

Write New peak speed

Valid Immediately

Required amplifier status Amplifier not enabled

Value range 0 ... ASCII parameter MSPEED

Unit RPM

DRIVE Limit speed (functional group: speed controller)


Scaling: Reg 1xy018 = Limit speed

ASCII VLIM
Scaling: Reg 1xy018 = VLIM

Value after reset Limit speed / VLIM value stored last to the
EEPROM of the amplifier

The peak speed that can be reached by the JetMove/motor combination must be
entered into this register.

Note!

The product resulting from registers 1xy017 und 1xy018 must not exceed the
value 61,346,000.

Jetter AG 179
6 Description of Registers JetWeb

6.7.6 Registers containing parameter


information

P-amplification of the current


Register 1xy303:
controller
Function Description

Read Present P-gain value of the current controller

Write New P-gain

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 10 ... 15.000

Unit -

DRIVE KP (functional group: current controller)


Scaling: Reg 1xy303 = KP * 1,000

ASCII MLGQ
Scaling: Reg 1xy303 = MLGQ * 1,000

Value after reset KP / MLGQ value stored last to the EEPROM of


the amplifier multiplied by 1,000

This parameter defines the P-gain of the current controller.

Scaling factor:

The rated motor voltage is supplied at a p-gain of 1,000 and a control deviation of
Isetpoint - Iactual = peak current of the amplifier.

180 Jetter AG
JX6-CON-Move(-BP) Module 6 Description of Registers

Register 1xy304: Current Tn


Function Description

Read Present Tn value of the current loop

Write New Tn value

Valid Reset parameter transfer bit (register 1xy375)

Required amplifier status No specific status required

Value range 200 ... 2.000

Unit µs

DRIVE Tn (functional group: current controller)


Scaling: Reg 1xy304 = Tn * 1,000

ASCII KTN
Scaling: Reg 1xy304 = KTN * 1,000

Value after reset Tn / KTN value stored last to the EEPROM of the
amplifier multiplied by 1,000

This value determines the integral time constant (integral-action time) for the current
controller.

Jetter AG 181
6 Description of Registers JetWeb

Register 1xy349: Ramp time for emergency stop


Function Description

Read Present ramp time for emergency stop

Write New ramp time for emergency stop

Valid Immediately

Required amplifier status No specific status required

Value range 0 ... 32.767

Unit ms -> VLIM

DRIVE Emergency stop ramp (functional group: speed


controller)

ASCII DECSTOP

Value after reset ASCII parameter DECSTOP stored last to the


EEPROM of the amplifier

Fig. 42: Emergency stop ramp

The ramp time which is activated in case of emergency stop can be defined in this
register. The velocity of the axis is decreased according to this ramp time.

If the axis is driving at a set speed value which is smaller than the maximum value of
the ASCII parameter VLIM, the time of the emergency stop ramp will be decreased
in the same ratio as the speed (the acceleration will remain the same).

182 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7 Positioning Functions
Apart from the two general positioning types, this description comprises some
special positioning modes that can be realized using a JX6-CON-Move(-BP) module.

7.1 Basic Positioning Types


7.1.1 Absolute Positioning
In this positioning mode, all positions are calculated and approached by the axis
absolutely starting from a defined reference point. Subsequent positionings are
always calculated and carried out based on the reference point.
This positioning type is mainly used for linear motions.

Process:

Determining the a) The reference point of the system is the basis for the calculations on how the
reference point axis will move. This reference point defines the initial position of the axis. The
reference point is determined during machine referencing after switching on
the system. The various possibilities for carrying out machine referencing are
described in chapter 5.4: "Machine Referencing", page 76.

Command 18 b) Command 18 must be active in command register 1xy001 to allow correct


activates the absolute positioning.
mode "absolute This function is activated by default when the system is started, or after a
positioning" reset. If "relative positioning" mode was active before, the mode must be
switched to "absolute positioning" by issuing the respective command.

Register 1xy001 = Command 18

Parameterizing c) The value for the desired set position of the axis is stored in register 1xy002.
the set position If basic parameters were set before (controller enabling, definitions/
adaptations of speed, etc.), positioning towards the new target position will
start immediately.
The parameterized acceleration/deceleration ramps are taken into account.

Register 1xy002 = Set position of the axis (e.g. 20.000 inc)

If a new value is written into register 1xy002, or if the value is modified during
the ongoing positioning run, then positioning is always carried out based on
the reference point.

Jetter AG 183
7 Positioning Functions JetWeb

7.1.2 Relative Positioning


In this positioning mode, the last set position is the reference point for the next
positioning run (not the reference position).
This positioning type is mainly used for circular motions.

However, the reference point is important for the first relative positioning run.
Referencing the axis is a basic prerequisite for the operation of JX6-CON-Move(-BP)
modules. If relative positioning mode is selected immediately after machine
referencing, then the first relative positioning starts at the absolute value 0.
All subsequent positionings will then always be calculated and carried out based on
the previous set position.

Process:

Determining the a) The reference point of the system is the basis for the calculations on how the
reference point axis will move. This reference point defines the initial position of the axis. The
reference point is determined during machine referencing after switching on
the system. The various possibilities for carrying out machine referencing are
described in chapter 5.4: "Machine Referencing", page 76.

Command 17 b) Command 17 in command register 1xy001 must be issued to switch into


activates the "relative positioning" mode. The command is active until a contrary command
mode "relative is issued.
positioning"
Register 1xy001 = Command 17

Parameterizing c) The value for the desired set position of the axis is stored in register 1xy002.
the set position If basic parameters were set before (controller enabling, definitions/
adaptations of speed, etc.), positioning towards the new target position will
start immediately.
The parameterized acceleration/deceleration ramps will be taken into
account.

Register 1xy002 = Set position of the axis (e.g. 20.000 inc)

If a new value is written into register 1xy002, or if the value is modified during
the ongoing positioning run, then positioning is always carried out with
reference to the previous set position (the register value is added to the set
position that has become the actual position in the meantime).

Resuming relative d) If relative positioning was stopped by an AXARR instruction, the process can
positioning be resumed by issuing command 19. Internally, the value of the last absolute
set position is read from register 1xy068 and the axis moves to this absolute
positioning value. Next, the axis can continue to move by using normal
relative positioning.

184 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

Register 1xy068 = Latest absolute set position in relative


positioning mode

Register 1xy001 = Command 19 (resume interrupted relative


positioning)

Some special functions with respect to relative positioning are described in the
following chapters.

Jetter AG 185
7 Positioning Functions JetWeb

7.1.3 Comparison of Positioning Types


The following example illustrates the differences between absolute and relative
positioning.
The following assumptions are taken as basis:
The system was switched on and machine referencing was completed successfully.
The axis is positioned at the reference point (in our example, the reference point is
the absolute position 10 inc). Now 2 positioning runs are carried out in sequence
using the various positioning types.

Absolute Since the machine was just switched on, the absolute positioning mode is set
positioning by default. Therefore it is not necessary to issue command 18 explicitly.

THEN
REGISTER_LOAD (1xy002, 20000)

Starts positioning the axis to the absolute position 20,000 inc. starting from the
reference point.
The axis will then be positioned at the absolute position 20,010 inc.
THEN
REGISTER_LOAD (1xy002, 40000)

Starts positioning the axis to the absolute position 40,000 inc., again starting
from the reference point.
After this, the axis will be positioned at the absolute position 40.010 inc.

Relative THEN
positioning REGISTER_LOAD (1xy001, 17)

This step causes switchover to "relative positioning" mode.


THEN
REGISTER_LOAD (1xy002, 20000)

Starts relative axis positioning to the relative position 20.000 inc, starting from
the previous set position (in this special case this is also the reference point).
The axis will then be positioned at the absolute position 20,010 inc.
THEN
REGISTER_LOAD (1xy002, 40000)

Starts relative axis positioning to the relative position 40.000 inc, starting from
the last set position. This means in this case that the axis continues to move
40,000 inc starting from the last set position (= position 20,010 inc).
The axis will then be positioned at the absolute position 60,010 inc.

186 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

The figures below show travel distances and axis positions according to the
programming steps described above.

Fig. 43: Process Flow of Absolute Positionings

Fig. 44: Process Flow of Relative Positionings

Jetter AG 187
7 Positioning Functions JetWeb

7.1.4 Overview of Registers:


Absolute and Relative Positioning
The overview of registers lists all registers relevant for the two general positioning
types.

Reg. Registers: Absolute and Relative


R/W
# Positioning
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 0: Home position set
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 12: Machine referencing error
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp

001 R/W Command register - see overview of commands

002 R/W Set position of the axis

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

009 R/W Actual position of the axis

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
Registers 1xy017 through 1xy021 serve basic axis
parameterizations and are not directly relevant for
positioning processes.
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

068 *** Registers: Absolute and Relative Positioning


068 R/W Latest absolute set position in relative positioning mode

188 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.1.5 Description of Registers:


Absolute and Relative Positioning

Register 1xy002: Set Position


Function Description

Read Value of the present set position of the axis

Write New set position for the axis. At the same time,
positioning towards the new position is started.

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used in connection with the positioning function to specify a new set
position for an axis (using the unit inc = increment).

Important !

This register can be modified at any time during the positioning process. In this
case, the new value applies to the ongoing positioning run immediately. The axis
does not stop during this process.
Therefore, caution is necessary when carrying out modifications during an
ongoing positioning run.

Jetter AG 189
7 Positioning Functions JetWeb

Latest absolute set position in


Register 1xy068:
relative positioning mode
Function Description

Read Value of the last absolute set position of the axis

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register contains the absolute set position of the last relative positioning carried
out with this axis.
The register is used to resume relative positioning that was, for instance, interrupted
by an AXARR instruction. Command 19 is issued for this purpose. Internally, the
value of the last absolute set position is read from register 1xy068 and the axis
moves to this absolute positioning value. Next, the axis can continue to move by
using normal relative positioning.

190 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.1.6 Overview of Commands:


Absolute and Relative Positioning
This overview of commands lists all commands directly used for absolute or relative
positioning. These commands are written into the command register 1xy001 of the
axis.
A command applies until a contrary command is issued.

Commands: Absolute and


Command #
Relative Positioning
17 Relative positioning

18 Absolute positioning
(default after reset)

19 Resuming motion after interrupted relative


positioning

Jetter AG 191
7 Positioning Functions JetWeb

7.2 Relative Positioning with Start Input


7.2.1 Overview
In some applications it is desired to start relative positioning in an event-controlled
manner. This requirement is met by the special function "relative positioning with
start input".
In this case, relative axis positioning is triggered by a signal at the start input of the
axis. Precondition is that the axis is in AXARR state.

The following permanent assignment applies with respect to inputs and axes:

Input of the Application


JX6-CON-Move(-BP)
Module
x10* Start input axis 1

x11* Start input axis 2

Comment on x10* and x11*: „x“ means (slot number) x 100

For the numbering of inputs, please also refer to chapter 4.3.4: "Digital Inputs", page
42.

Process:

Command 20 a) The function "relative positioning with start input" is activated by issuing
activates relative command 20 in the command register 1xy001 of the respective axis. The
positioning command is active until a contrary command is issued.
with start input
Register 1xy001 = Command 20

Parameterizing b) The value for the desired set position of the axis is stored in register 1xy067.
the relative This means that the register indicates by how many increments the axis is to
position be continued to being positioned when a positive signal is present at the start
input.
It is important that postioning is only started when the two preconditions, axis
in the AXARR state and signal at the start input, are fulfilled.

Register 1xy067 = relative position when moving the axes with


start input (e.g. 10.000 inc)

192 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

Resuming relative c) If the relative positioning run with start input was stopped by an AXARR
positioning instruction, then the process can be resumed by issuing command 19.
Internally, the value of the last absolute set position is read from register
1xy068. After this, the axis moves to the value resulting from the sum of the
contents of registers 1xy068 and 1xy067. Next, the axis can continue to move
by using normal relative positioning.

Register 1xy068 = Last absolute set position in relative positioning


mode (e.g. 50,000 inc)

Register 1xy067 = relative position when moving the axes with


start input (e.g. 10,000 inc)

Register 1xy001 = Command 19 (resume interrupted relative


positioning)

According to the values given in our example, the axis would move to position
60,000 inc.

Command 21 d) The function "relative positioning with start input" is deactivated in a defined
deactivates state by issuing command 21 in the command register 1xy001 of the
relative respectiv axis.
positioning By default, this function is deactivated.
with start input
Register 1xy001 = Command 21

Jetter AG 193
7 Positioning Functions JetWeb

7.2.2 Overview of Registers:


Relativ Positioning with Start Input
The overview of registers lists all registers necessary for this special positioning
mode.

Reg. Registers: Relative Positioning with


R/W
# Start Input
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 0: Home position set
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 12: Machine referencing error
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

007 R/W Destination window

009 R/W Actual position of the axis

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
Registers 1xy017 through 1xy021 serve basic axis
parameterizations and are not directly relevant for
positioning processes.
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

067 - *** Registers: Relative Positioning with Start


068 Input
067 R/W Relative position when moving the axes upon start input

068 R/W Latest absolute set position in relative positioning mode

194 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.2.3 Description of Registers: Relative


Positioning with Start Input

Relative position when moving


Register 1xy067:
the axes upon start input
Function Description

Read Value of the present relative position of the axis

Write New relative set position for the axis

Value range -8.388.608 .. +8.388.607

Value after reset 0

The content of this register indicates the new set position in a relative positioning with
start input. The parameterized value corresponds to the number of increments by
which the axis is to continue to move.

Important !

It is important that relative positioning with start input is only started when the
following prerequisites are met:

• The axis is in AXARR state,


• a positive signal is present at the start input.

Note!

Register 1xy067 is only used for relative positioning with start input.

Jetter AG 195
7 Positioning Functions JetWeb

Latest absolute set position in


Register 1xy068:
relative positioning mode
Function Description

Read Value of the last absolute set position of the axis

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register contains the absolute set position of the last relative positioning carried
out with this axis.
The register is used to resume relative positioning that was, for instance, interrupted
by an AXARR instruction.
In the special function "relative positioning with start input" command 19 is issued for
this purpose. Internally, the content of register 1xy068 is read. Next, the axis moves
to the absolute positioning value resulting from the sum of the content of registers
1xy067 and 1xy068. Finally, "normal" positioning (i.e. only by using register 1xy067)
can be carried out.

196 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.2.4 Overview of Commands: Relative


Positioning with Start Input
This overview of commands lists all commands directly used for relative positioning
with start input. These commands are written into the command register 1xy001 of
the axis.
A command applies until a contrary command is issued.

Commands: Relative Positioning


Command #
with Start Input
19 Resuming motion after interrupted relative
positioning

20 Relative positioning with start input - ON

21 Relative positioning with start input - OFF (default


after reset)

Jetter AG 197
7 Positioning Functions JetWeb

7.3 Endless Positioning


7.3.1 Overview
A JX6-CON-Move(-BP) module is suited for operating an axis in "endless positioning
mode", which means endless positioning with the following characteristics:
• the axis starts to move by taking into account the set acceleration ramp,
• positioning is carried out at the set velocity without being stopped,
• when a certain position (limit value) is reached, a defined reset takes place to
allow that the axis can continue to move jerk-free. This process is carried out until
the axis is stopped by a command or a programming instruction.

There are 4 different ways to stop the axis which is triggered either by issuing a
command in the command register 1xy001 of the respective axis, or by a
programming instruction:

1. Command 0 - AXARR with deceleration ramp


• Stops the axis by using the deceleration ramp

2. Command 5 - AXARR with position control


• Stops the axis immediately at the present position
• The deceleration ramp is not taken into account
• The position is controlled

3. Command 3 - Set reference


• Sets the reference point of the axis at the present position of the axis
• At the same time, actual and set positions of the axis are set to 0.
• This causes the axis to stop without taking into account the deceleration
ramp
• The position of the axis is controlled towards the new reference point

4. Programming instruction AXARR


• Stops the axis immediately at the present position
• The deceleration ramp is not taken into account
• The position is controlled
• The result of the AXARR instruction is identical to issuing command 5

198 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

Endless positioning is possible both in positive and negative direction. Positive


direction is selected by command 56, negative direction by command 57. It is not
possible to reverse the positioning direction during the overall process.

Endless positioning can be based both on absolute or relative positioning.

Process:

Parameterizing a) First, the position value at which the actual and set positions are reset is
the absolute stored in register 1xy085. Actual and set positions are then reset
max. position simultaneously by exactly the value parameterized in register 1xy085.

Register 1xy085 = Absolute max. position (e.g. 200,000 inc)

Selecting endless b) This function is started by means of commands. By doing so, the direction of
positioning mode endless positioning is defined as well. Either command 56 for endless
by issuing positioning in positive direction, or command 57 for endless positioning in
command 56 or 57 negative direction must be issued in the command register 1xy001 of the
respective axis. The command is active until the axis is stopped in a defined
state.

Register 1xy001 = Command 56 (endless positioning in positive


direction)

or:

Register 1xy001 = Command 57 (endless positioning in negative


direction)

Disabling endless c) The axis must be stopped in a defined manner in order to terminate endless
positioning mode positioning in positive or negative direction. To do so, one of the following
by issuing commands is issued in the command register of the respective axis. For a
command 0, 5 or 3 detailed description, see the beginning of this chapter.

Register 1xy001 = Command 0


(AXARR with deceleration ramp)

Register 1xy001 = Command 5


(AXARR with position control)
(the programming instruction AXARR has the
same effect)

Register 1xy001 = Command 3


(Set reference)

Jetter AG 199
7 Positioning Functions JetWeb

The following simplified figure illustrates the process flow for endless positioning. The
following is assumed:
• The limit value 200,000 inc is defined as absolute max. position in register 1xy085
• Ideally, positioning should start from position 0
• The velocity is not changed during the positioning run.

Endless positioning in positive direction looks as follows:

Fig. 45: Endless Positioning in Positive Direction

Endless positioning (in positive direction) is started by command 56.


Positioning cycles 1 to 3 are all carried out at the velocity set in register 1xy003. The
acceleration ramp defined in register 1xy005 is realized as well.
As soon as the set position and subsequently the actual position has reached the
max. value (here 200,000 inc), both positions are always reset by the parameterized
max. value (here 200,000 inc and as a result reset to 0). Therefore, the next
positioning cycle starts at 0 again.
The 3 positioning cycles depicted in the figure take place one after the other without
interruption.

200 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

The following applies to endless positioning in negative direction:

The above-mentioned assumptions still apply.


Endless positioning (negative direction) is started by issuing command 57.
Positioning cycles 1 to 3 are all carried out at the velocity set in register 1xy003. The
acceleration ramp defined in register 1xy005 is realized as well.
As soon as the set position and subsequently the actual position has reached the
max. value (here 200,000 inc), both positions are always reset by the parameterized
max. value (here 200,000 inc and as a result reset to 0). Therefore, the next
positioning cycle starts at 0 again.
The 3 positioning cycles depicted in the figure take place one after the other without
interruption.

Fig. 46: Endless Positioning in Negative Direction

Please observe the following:

In both cases, register 1xy085 is parameterized with the value +200,000 inc. Since
the absolute value of the register content is used as limit value, the positions can be
reset for both endless positioning directions.

Jetter AG 201
7 Positioning Functions JetWeb

7.3.2 Overview of Registers: Endless


Positioning
The overview of registers lists all registers necessary for the special function
"endless positioning".

Reg.
R/W Registers: Endless Positioning
#
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 0: Home position set
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 9: Position controller is active
Bit 10: control in the destination is enabled
Bit 12: Machine referencing error
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp

001 R/W Command register - see overview of commands

002 R/W Set position of the axis

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

009 R/W Actual position of the axis

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
Registers 1xy017 through 1xy021 serve basic axis
parameterizations and are not directly relevant for
positioning processes.
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

085 *** Registers: Endless Positioning


085 R/W Absolute max. position

202 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.3.3 Description of Registers: Endless


Positioning

Register 1xy085: Absolute max. position


Function Description

Read Value of the absolute max. position

Write Write a new max. position

Value range 0 .. +7.490.000

Value after reset 7.490.000

In the special function "endless positioning", this register is used for defined reset of
actual and set positions.
Endless positioning is carried out as endless positioning at the set velocity by taking
into account the acceleration ramp. As soon as the position stored in register 1xy058
is reached, the reset is triggered and the actual and set positions are reset exactly
by the parameterized value.
The direction of endless positioning is not relevant here because the absolute value
of the register content is processed.

Note!

Register 1xy085 is also used for other special functions but with different
meaning and effect.

Jetter AG 203
7 Positioning Functions JetWeb

7.3.4 Overview of Commands: Endless


Positioning
This overview of commands lists all commands directly used for endless positioning.
These commands are written into the command register 1xy001 of the axis.
A command applies until a contrary command is issued.

Command # Commands: Endless Positioning


0 AXARR with deceleration ramp

3 Set reference

5 AXARR with position control

56 Endless positioning in positive direction

57 Endless positioning in negative direction

204 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.4 Capturing Position with Input Signal


7.4.1 Overview
This function is also referred to as capture mode and allows to quickly acquire and
capture a present axis position.
The position of the axis is stored in a register within a time of 500 µs.
This function is not controlled by commands but by hardware signals and register
parameterizations.

Note!

Please observe that this special function can only be used for axes 1 and 2 of a
JX6-CON-Move(-BP) module.

Jetter AG 205
7 Positioning Functions JetWeb

Prerequisites:
• Inputs 12 and 13 of the JX6-CON-Move(-BP) module must be reserved for these
functions (see figure below).

Fig. 47: Inputs used for capture mode

• The two axis registers 1x1086 and 1x2086 are used to define the response on
signals at inputs 12 and 13 by means of coding.

206 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

Functional Description
When a positive 24 V signal is present at input 12, the positions of axes 1 and 2 are
stored in registers 1x1087 (position of axis 1) and 1x2087 (position of axis 2). They
are stored depending on the coding defined in register 1x1086.

The same applies to input 13:


When a positive 24 V signal is present at input 13, the positions of axes 1 and 2 are
stored in registers 1x1087 (position of axis 1) and 1x2087 (position of axis 2). They
are stored depending on the coding defined in register 1x2086.

Registers 1xy086 are bit-coded with the following meaning:

Register 1x1086, assigned to input 12


bit 0 Signal at input 12 => the actual position of axis 1 is stored in
register 1x1087

bit 1 Signal at input 12 => the actual position of axis 2 is stored in


register 1x2087

Register 1x2086, assigned to input 13


bit 0 Signal at input 13 => the actual position of axis 2 is stored in
register 1x2087

bit 1 Signal at input 13 => the actual position of axis 1 is stored in


register 1x1087

Note!

All other bits of register 1xy086 may not be used.

Register 1xy086 is reset (to the reset value 0) in the internal program routine as soon
as the signal was detected at input 12 or 13 and the coded positions were stored.
Thus the function is "cleared" until the a new coding of the respective register 1xy086
is performed using the JetSym program.

Jetter AG 207
7 Positioning Functions JetWeb

The following flow chart shows the interaction of input signals and axis registers
used.

Fig. 48: Flow Chart Capture Position with Input Signal

208 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

Process
The following assumptions apply:
• two axes (axis 21 and axis 22) are active on a JX6-CON-Move(-BP) module.
• The present actual positions of axes 21 and 22 are 40,000 inc or 120,000,
respectively.
• Input 12 is used to store the positions of both axes.
It is assumed that the basic parameter setting for the axes has already been
performed (controller enabling, definitions/adaptations to speed, entering encoder
line number, etc.).

Starting the a) The function is started when this register is coded. It is defined which
function: Coding positions are to be stored when a positive 24 V signal is detected at input 12.
register 121086

Register 121086 = b000000000000000000000011

The actual position of axis 21 is stored in register 121087 by setting bit 0 to 1.


The 1 in bit 1 causes that the actual position of axis 22 is stored in register
122087.
The positions are stored in the assigned registers within a time of 500 µs.

Ending the function: b) When the 24 V signal was detected at input 12, register 121086 is
Resetting automatically reset to its reset value (internally by the program routine). This
register 121086 disables the function again.

Register 121086 = b000000000000000000000000

Content of c) If a positive 24 V signal was present at input 12 and was detected and stored,
register 1xy087 then the stored axis position can be read from the respective registers after
the function has been acknowledged.

Register 121087 = 40.000


The stored actual position of axis 21 can be
read from register 121087.

Register 122087 = 120.000


The stored actual position of axis 22 can be
read from register 122087.

Jetter AG 209
7 Positioning Functions JetWeb

7.4.2 Overview of Registers:


Capture Position with Input Signal
The overview of registers lists all registers relevant for the special function "capture
positioning with input signal".

Reg. Registers: Capturing Position with


R/W
# Input Signal
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 0: Home position set
Bit 1: AXARR = the position has been reached

001 R/W Command register - see overview of commands

002 R/W Set position of the axis

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

009 R/W Actual position of the axis

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
Registers 1xy017 through 1xy021 serve basic axis
parameterizations and are not directly relevant for
positioning processes.
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

086 - *** Registers: Capturing Position with Input


087 Signal
086 R/W Coding which position is to be stored (after signal from
input 12/13)

087 R Present actual position of the axis

210 Jetter AG
JX6-CON-Move(-BP) Module 7 Positioning Functions

7.4.3 Description of Registers:


Capture Position with Input Signal

Coding which position is to be


Register 1xy086 stored (after signal from input
12/13)
Function Description

Read Present coding

Write New value for coding

Value range Bit-coded, bit 0 .. bit 1

Value after reset 0

For the special function "capturing position with input signal", this register is used as
follows:
The reaction on hardware signals at inputs 12 and 13 is defined in this register by
means of coding. Due to the input signal, the actual position of the respective axis
will then be stored in the respective register 1xy087 within 500 µs.

For this function, the use of register 1xy086 is bit-coded. Please observe the
following:
Only bits 0 and 1 may be written. All other bits of register 1xy086 may not be used.

Bits 0 and 1 have a defined meaning:

Register 1x1086, assigned to input 12 and to axis 1


bit 0 Signal at input 12 => the actual position of axis 1 is stored in
register 1x1087

bit 1 Signal at input 12 => the actual position of axis 2 is stored in


register 1x2087

Register 1x2086, assigned to input 13 and to axis 2


bit 0 Signal at input 13 => the actual position of axis 2 is stored in
register 1x2087

bit 1 Signal at input 13 => the actual position of axis 1 is stored in


register 1x1087

High-active logic applies.

Jetter AG 211
7 Positioning Functions JetWeb

The coding in register 1xy086 is only valid until a signal was detected at input 12/13
and the coded postions have been stored.
After this, the internal program routine of the function resets register 1xy086 (to the
reset value 0). Thus the function is "cleared" until the a new coding of the respective
register 1xy086 is performed using the JetSym program.

Present actual position of the


Register 1xy087:
axis
Function Description

Read Value of the presently stored actual position of


the axis

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

For the special function "capturing position with input signal", this register is used to
store actual positions.
Storing is
• triggered by a positive 24 V signal at input 12 or 13,
• is realized within a period of 500 µs,
• and is performed according to the coding defined in register 1xy086.

The register can be used for both axes of a JX6-CON-Move(-BP) module:

Actual position of axis 1 = Register 1x1087

Actual position of axis 2 = Register 1x2087

212 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8 Continuous Path Controls


Overview
There are several ways to realize sequences of axis motions.
In "normal" and more simple operation, a PTP (point-to-point) control is used in most
cases. This means that an axis is moved from a defined starting position to a defined
end position. Several axes can be moved simultaneously, however, each axis is
moved separately, i.e. there is no functional correlation between individual axes.

If axes are to travel on given paths in space, continuous path control systems must
be used. Such contouring control systems constitute the highest level of controls
realizing coordinated motions of multiple axes.
They are based on the so-called CP control (continuous path). If such a control
system is used, only a few characteristic points are to be specified. The control
mainly approximates the motion by means of straight lines or arcs of circle. The
functional correlation between the axes is described and caculated within the control
system by means of an interpolator depending on the given function (straight line,
polygon, arc of circle, parable, or spline). Then, the calculated contour is transferred
to the position feedback control of the individual axes.
In order to realize a continuous path motion it is therefore necessary that each
involved axis is equipped with a position feedback control, and that the servo drives
of all axes allow combined (simultaneous) control and coordination.
Motions of the individual axes are coordinated by means of interpolators to achieve
a combined motion from the starting point to the end point. In this connection, the
velocity with which the target position is reached is of less interest. The accuracy with
which the axes move along their paths is of much greater importance.
The traversing process of all axes is started and ended simultaneously. The faster
axes have to match their motions to the slower ones.

The accuracy of curves depends on multiple factors. For example, it is influenced by


the memory capacity, and the processing speed of the signals in the control system.
Other conditions, however, such as velocity variation, maintaining constant
acceleration or velocity values on the part of individual axes are also important.

Basically, distinction is made between two errors. First, the path deviation showing
the variation of a deviation from the programmed path. It mainly results from
overshooting.
Second, the tracking error depicting the deviation of the average actual path from the
programmed path at a given time, i.e. it shows the difference between the setpoint
and actual values of a curve path. It depends on the velocity as well as on the
degrees of freedom. The tracking error can be reduced to a minimum using high-
resolution sensors, shortest possible sampling intervals as well as through exact
setup of the axis.

Jetter AG 213
8 Continuous Path Controls JetWeb

Path Control Using the JX6-CON-Move(-BP) Module


Together with the JetMove 2xx module, various types of interpolation can be realized
using the JX6-CON-Move(-BP):

• Linear Interpolation
• Circular Interpolation
• Combined circular and linear interpolation
• Spline interpolation
• Consecutive interpolation.

See the following chapter for detailed information.

214 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.1 Linear Interpolation


8.1.1 Overview
With linear interpolation, the path curve is approximated by one or several straight
lines. This means, the axes travel along a straight path (linear) from starting point to
destination point.

Fig. 49: Principle of Linear Interpolation

Theoretically, any number of axes can be combined in a linear interpolation.


Practically, the axes x, y, and z in space plus one or up to two more axes are used.
Thus not only simple straight lines can be realized in various levels, but also space
curves mapped by polygons.
The specified checkpoints (in above figure points 1 through 5) determine the
accuracy with which the curve path can be realized. This means, the closer the
checkpoints are, the more accurate the curve can be covered. However, the number
of checkpoints cannot be increased arbitrarily. The amount of data that can be
procesed, is limited by the performance of the controller.

All axes involved always start synchronously, travel interdependently, and reach
their end positions at the same time.
For the calculation of the resultant straight line, all values of the axes involved are
taken into account.

The correlation between acceleration and deceleration (a), velocity (v), distance (s)
and time (t) are shown in the following diagrams.

Jetter AG 215
8 Continuous Path Controls JetWeb

2
a in m/s
Time t1 is the period of
2
time required to
1 8 10 accelerate the axis up
0 to its programmed
0 2 4 6 t in s
-1 velocity. It is also
called "acceleration
-2
ramp".
t1 t2 t3

During the period of


v in m/s time t 2, the axis is
4 travelling at a constant
rate with its
2
programmed velocity.
0
0 2 4 6 8 10 t in s
Time t3 is the period of
s in m time required to
32 decelerate the axis to
its standstill. It is also
called "deceleration
24
ramp".

16 At the end of these


periods, the axis has
8 reached its target
position.

0
0 2 4 6 8 10 t in s

Fig. 50: Timing Diagrams relating to Linear Interpolation

216 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.1.2 Linear Interpolation Using the JX6-CON-


Move(-BP) Module
The JX6-CON-Move(-BP) module is equipped with an integrated path control. This
allows to perform linear interpolations with up to 6 axes in coordinated motion. This
type of interpolation can also be performed as consecutive interpolation (see also
chapter 8.5: "Consecutive interpolation", page 352).

Operating principle
one axis acts as master axis, all other axes involved are regarded as slave axes. In
this case, the physically existing axes represent the slave axes. The master axis,
however, is a virtual software axis. This means that this axis does not exist
physically.

For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move(-BP) module. The result of these
calculations is reflected in the master axis.
The parameters for the interpolation are also defined through the master axis.

The virtual axes of all


axes involved in the
motion travel on the
diagonal which is
formed by two physical
axes.

Fig. 51: Axes of the Linear Interpolation

With an interpolation, the master axis takes over all the cordination tasks between
the involved axes.
With a coordinated linear motion, the parameters of the master axis such as
acceleration ramp, deceleration ramp, velocity and destination window are used as
parameters of the diagonal motion. In case these parameters are entered into the
registers of the master axis, they will be transferred to the registers of the slave axes
automatically once the linear interpolation is started.
The length of the diagonal is calculated internally within the controller module, or can
be specified by the user. This parameter is also transferred to the slaves.

Jetter AG 217
8 Continuous Path Controls JetWeb

The JX6-CON-Move(-BP) controller module on which the master axis is to be


addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.
Details on configuration possibilities are provided in the following chapter.

General Prerequisites
Some essential aspects have always to be taken into account with regard to the
linear interpolation function:

• Basically, accurate adjustment of the controllers is the precondition for proper


functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more exactly the physical axes will travel along the
resultant diagonal.

• Before the linear interpolation can be started, maximum velocity and encoder
resolution of the slave axes have to be adapted to suit the master axis.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

218 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.1.3 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Fig. 52: Linear Interpolation - Axis Configurations

Jetter AG 219
8 Continuous Path Controls JetWeb

o A maximum number of 6 axes can be involved in a linear


interpolation.

o The software axis, i.e. the virtual axis 4 of a module, constitutes


the master axis of the entire linear interpolation.

o This software axis determines the parameterization of the


coordinated motions.

o The module, the software axis of which is addressed in a


coordinated interpolation as master axis, is referred to as
master module.

o All physical axes involved are slaves.

o All slaves that are not located on the master module, are
referred to as external slaves.

Note!

To carry out interpolations, the following restriction as to hardware configuration


has to be taken into account:

If axes are to be used that are located on various controller modules


and thus in various slots, then only modules of the type JX6-CON-
Move-BP are allowed.

220 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Possible axis configurations:


There are 5 ways of combining axes in a linear interpolation:

1. Only the physical axes 1 and 2 of a master module are involved.

2. The physical axes 1 and 2 of a master module and 1 to 4 external


axes are involved.

3. Axis 2 of the master module and up to 4 external axes are


involved.

4. Axis 1 of the master module and up to 4 external axes are


involved.

5. All 3 axes of a master module are involved.

In variants 1, 2, 4, and 5 the master axis 4 co-operates internally with axis 1 of the
master module. Therefore, the registers of axis 1 and 4 always change collectively.
In variants 3, master axis 4 co-operates internally with axis 2 of the master module.
Therefore, the registers of axis 2 and 4 always change collectively.

The configuration possibilities within the various variants are described in detail
below.

It is basically possible that several interpolations are carried out simultaneously


within the controller.
However, for the configuration variants 2 through 4, the bus separation from the
hardware side between expansion module slots 4 and 5 must be taken into account.
This means that the controller modules in slots 2 through 4 can be used for one
interpolation job, and the modules located in slots 5 through 8 for another
interpolation job.

Jetter AG 221
8 Continuous Path Controls JetWeb

Linear Interpolation Configurations Variant 1

Only axes Variant 1 distinguishes itself by the fact that only the two physical first axes of the
1 and 2 of a master master module are involved in linear interpolation.
module are This is the most simple case of a linear interpolation.
involved Here a possible configuration:

Fig. 53: Configuration for Linear Interpolation Variant 1

A JX6-CON-Move or JX6-CON-Move-BP module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21 and 22 are
configured.
The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of subodule 3 is irrelevant for linear interpolation. For example, additional I/
O cards can be plugged.
The module on which the axes are located is designated as master module.
Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 1:


Axes 21 and 22, or 31 and 32, 41 and 42, 51 and 52, 61 and 62, 71 and 72, or 81
and 82 can be combined for a linear interpolation.

222 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Linear Interpolation Configurations Variant 2

Axes 1 and 2 of In the example here, both physical first master module axes and one to a
the master maximum of four external axes are involved in the linear interpolation.
module and The following example shows a possible maximum configuration:
external axes are
involved

Fig. 54: Configuration for Linear Interpolation Variant 2

JX6-CON-Move-BP controller modules are plugged in slots 2, 3, and 4. The


submodules 1 are JX6-SB modules. Hence, the given configuration comprises a total
number of 6 axes. The logical axis numbers are indicated in the above figure under
the submodule designation 1 (JX6-SB).
The socket for the respective submodules 2 must remain empty. No submodules
may be plugged here. However, if only axis 1 is defined per JX6-CON-Move-BP
controller module, then submodule socket 2 can be used at wish. For example,
additional I/O cards can be plugged.
The type of subodule 3 is irrelevant for linear interpolation. For example, additional I/
O cards can be plugged here.

Jetter AG 223
8 Continuous Path Controls JetWeb

When a rack with 8 slots is used, the JX6-CON-Move-BP modules can be plugged
in different slots. In this case, however, the hardware-related bus separation between
expansion module slots 4 and 5 must be taken into account. This means that all
modules used must be plugged in slots 2 through 4, or 5 through 8.

The following table shows the combination possibilities for variant 2:

Involved master External axes which Note


module axes can be
external axis

21, 22 31, 32, 41, 42


In each case, all 4 axes or
31, 32 21, 22, 41, 42 only individual axes of them
41, 42 21, 22, 31, 32 can be combined with the
master module axes

------- Bus separation -------

51, 52 61, 62, 71, 72, 81, 82


a maximum of 4 axes of the
61, 62 51, 52, 71, 72, 81, 82 possible number of axes can
71, 72 51, 52, 61, 62, 81, 82 be combined with the 2 axes
of the master module
81, 82 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

224 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Linear Interpolation Configurations Variant 3

Axis 2 of the In variant 3, only the physical master module axis 2 and up to a maximum of four
master module external axes are involved in the linear interpolation.
and If the maximum possible extension ratio is to be used, the hardware configuration
external axes are could be as follows:
involved

Fig. 55: Configuration for Linear Interpolation Variant 3

The controller modules JX6-CON-Move-BP are plugged in slots 5 through 7. Their


submodules 1 (JX6-SB modules) represent the axes involved in the coordinated
motion. The logical axis numbers are indicated in the above figure under the
submodule designation 1 (JX6-SB).
The module inserted into slot 5 is the master module, and its virtual axis 4 is the
master axis. Only the physical axis 2 (axis 52) of this master module is involved in
the interpolation.
For carrying out this interpolation variant, the respective type of submodule 3 of the
controller modules in slots 5 through 7 is irrelevant. For example, additional I/O cards
can be plugged. Submodule sockets 2 of the controller modules in slots 5 through 7
must not accommodate any submodules.
In the maximum extension of a master/slave configuration of variant 3, expansion
modules are inserted into slots 2 through 4, and 8. The submodules located on these
expansion modules do not affect this interpolation variant.

Jetter AG 225
8 Continuous Path Controls JetWeb

When a rack with 8 slots is used, the JX6-CON-Move-BP modules can be plugged
in different slots. Due to the bus separation between slot 4 and 5, the modules
involved in the interpolation must be located either in slots 2 through 4, or 5 through
8.

The following table shows the combination possibilities for variant 3:

Involved master External axes which Note


module axis can be
external axis

22 31, 32, 41, 42


In each case, all 4 axes or
32 21, 22, 41, 42 only individual axes of them
42 21, 22, 31, 32 can be combined with the
master module axes

------- Bus separation -------

52 61, 62, 71, 72, 81, 82


a maximum of 4 axes of the
62 51, 52, 71, 72, 81, 82 possible number of axes can
72 51, 52, 61, 62, 81, 82 be combined with the axis of
the master module
82 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

226 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Linear Interpolation Configurations Variant 4

Axis 1 of the In this variant, only the physical master module axis 1 and up to a maximum of
master module four external axes are involved in the linear interpolation.
and Variant 4 is very similar to variant 3 as to hardware configuration and
external axes are programming.
involved The main difference is that master module axis 1 is involved in the coordinated
motion, instead of axis 2. Therefore, axis 1 constitutes the data (software) axis
which results in the same functions as are existing in variants 1 and 2.
The following illustration shows a maximum possible master/slave configuration
of variant 4.

Fig. 56: Configuration for Linear Interpolation Variant 4

The controller modules JX6-CON-Move-BP are plugged in slots 5 through 7. Their


submodules 1 (JX6-SB modules) represent the axes involved in the coordinated
motion. The logical axis numbers are indicated in the above figure under the
submodule designation 1 (JX6-SB).
The module inserted into slot 5 is the master module, and its virtual axis 4 is the
master axis. In this case, only the physical axis 1 (axis 51) of this master module is
involved in the interpolation.

Jetter AG 227
8 Continuous Path Controls JetWeb

For carrying out this interpolation variant, the respective type of submodule 3 of the
controller modules in slots 5 through 7 is irrelevant. For example, additional I/O cards
can be plugged. The same applies to submodule 2 on the JX6-CON-Move-BP
module in slot 5. However, submodule sockets 2 of the controller modules in slots 6
through 7 may not be assigned.
The expansion modules are inserted into slots 2 through 4 and 8. Submodules
located on these expansion modules do not affect the interpolation variant under
consideration.

With respect to the hardware configuration applies by analogy with variant 3 that, due
to the bus separation between slot 4 and 5, the modules involved in the interpolation
must be located either in slots 2 through 4 or 5 through 8.

The following table shows the combination possibilities for variant 4:

Involved master External axes that Note


module axis can be combined

21 31, 32, 41, 42


In each case, all 4 axes or
31 21, 22, 41, 42 only individual axes of them
41 21, 22, 31, 32 can be combined with the
master module axes

------- Bus separation -------

51 61, 62, 71, 72, 81, 82


a maximum of 4 axes of the
61 51, 52, 71, 72, 81, 82 possible number of axes can
71 51, 52, 61, 62, 81, 82 be combined with the axis of
the master module
81 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

228 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Linear Interpolation Configurations Variant 5

All 3 axes of a Variant 5 distinguishes itself by the fact that all 3 configurable axes of a module
master module (which then also is the master module) are involved in the linear interpolation.
are involved Here a possible configuration:

Fig. 57: Configuration for Linear Interpolation Variant 5

A JX6-CON-Move-BP module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 via which axes 21, 22, and 23 are configured.
The sockets for submodules 2 and 3 must remain empty. No submodules may be
plugged here.
The module on which the axes are located is designated as master module.
Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 5:


Axes 21 and 22, and 32, or 31, 32 and 33; 41, 42 and 43; 51, 52 and 53; 61, 62 and
63; 71, 72 and 73, or 81, 82 and 83 can be combined for a linear interpolation.

Jetter AG 229
8 Continuous Path Controls JetWeb

8.1.4 Programming Rules

Designating a a) A module is designated as master module by addressing its axis 4 with the
module as master respective command. By doing so, the general master/slave configuration is
defined and axis 4 of this master module immediately acts as master axis for
interpolation. The physical axes involved in the coordinated motion are
designated as slaves automatically.

Register 1x4001 = __ Command 38, 39, 40, 43 or 94

The following parameterizations of the command register are possible for a


linear interpolation:

Command 38 Register 1x4001 = 38 Master/slave configuration 1 is activated


activates
configuration 1 By doing so, the following declarations come into effect:
• the module, on which the defined axes 1 and 2 are located is the
master module.
• the software axis 4 of this module is the master axis of the
interpolation,
• only the two axes on the master module are involved in the
interpolation. Therefore, it is not required in this case to explicitly
designate the two physical axes of the modul as slaves.
See also chapter 8.1.3: "Configurations", page 219ff.

Command 39 Register 1x4001 = 39 Master/slave configuration 2 is activated


activates
configuration 2 This means that
• the module on which the two defined axes 1 and 2 are located, is
the master module (if axes 1 and 2 are defined on several modules
that are to be involved in the interpolation, then the user must
determine the master module by selecting the master register),
• the software axis 4 of this module is the master axis of the
interpolation,
• both physical axes on the master module are involved in the
interpolation, and they are automatically designated as slave axes,
• external slaves exist additionally that must be designated as such.
See also chapter 8.1.3: "Configurations", page 219ff.

230 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Command 40 Register 1x4001 = 40 Master/slave configuration 3 is activated.


activates
configuration 3 This means that
• the user determines a module on which an axis 2 is defined as
master module by selecting the master register,
• the software axis 4 of this module is the master axis of the
interpolation,
• only axis 2 of the master module is involved in the interpolation,
and is automatically designated as slave axes,
• external slaves exist additionally that must be designated as such.
• The physical axis 1 of the master module can be operated as
independent individual axis.
See also chapter 8.1.3: "Configurations", page 219ff.

Command 43 Register 1x4001 = 43 Master/slave configuration 4 is activated


activates
configuration 4 This means that
• the user determines a module on which an axis 1 is defined as
master module by selecting the master register,
• the software axis 4 of this module is the master axis of the
interpolation,
• only axis 1 of the master module is involved in the interpolation,
and is automatically designated as slave axes,
• external slaves exist additionally that must be designated as such.
• The physical axis 2 of the master module can be operated as
independent individual axis.
See also chapter 8.1.3: "Configurations", page 219ff.

Command 94 Register 1x4001 = 94 Master/slave configuration 5 is activated


activates
configuration 5 By doing so, the following declarations come into effect:
• the module, on which the defined axes 1, 2, and 3 are located is the
master module.
• the software axis 4 of this module is the master axis of the
interpolation,
• all 3 axes of a JX6-CON-Move(-BP) module are involved in the
interpolation and need not be defined explicitly as slaves,
• there are no external slaves.
See also chapter 8.1.3: "Configurations", page 219ff.

Jetter AG 231
8 Continuous Path Controls JetWeb

Registering b) The master must be informed which external slave axes (max. number = 4)
external slaves are involved in the coordinated motion. For this purpose, the logical axis
with the master numbers of the slaves have to be entered into the corresponding master
registers. At the same time, the logical axis numbers are assigned to the
external physical slave axes.

Register 1x4132 = __ Axis number of the external slave 1

Register 1x4133 = __ Axis number of the external slave 2

Register 1x4134 = __ Axis number of the external slave 3

Register 1x4135 = __ Axis number of the external slave 4

Defining slaves by c) The external slave axes must also be informed of their involvement in the
commands coordinated motion. This is carried out through a command in the
corresponding slave registers.

Register 1x1001 = 32 command 32 for the first axis of a controller


module

Register 1x2001 = 33 command 33 for the second axis of a


controller module

Example:
The master module is located in slot 2. The number of axes defined in this
slot is irrelevant. The axes 31, 32, 41, and 42 are defined in slots 3 and 4 via
the JX6-CON-Move-BP modules. These axes are involved in the linear
interpolation as external slave axes. The following definitions are necessary:

Register and content Description

131001 = 32 Axis 31 is slave

132001 = 33 Axis 32 is slave

141001 = 32 Axis 41 is slave

142001 = 33 Axis 42 is slave

232 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Velocity, d) The parameters for the motion of the resultant (set velocity, acceleration
acceleration and ramp, deceleration ramp, destination window) are preset in the registers of
deceleration the master axis (axis 4 of the master module) or in the registers of the data
ramps, axis, respectively.
destination
window Register 1x4003 = __ Set speed

Register 1x4005 = __ Acceleration ramp

Register 1x4006 = __ Deceleration ramp

Register 1x4007 = __ Destination window

If no values are defined, the settings of axis 1 of the master module apply.

Attention: However, the reference value related to the set velocity is defined
in the register of the data axis.
For linear interpolations based on the master/slave configurations 1, 2, 4,
or 5 (commands 38, 39, 42 or 94), the data axis corresponds to axis 1 of
the master module. With linear interpolation based on master/slave
configuration 3 (command 49), axis 2 of the master module is the data axis.

Register 1x1021 or 1x2021 = reference value related to the set


velocity

Storing set e) All set positions of the slaves involved in the interpolation must be transferred
positions of the to the master axis. On the basis of this information, the master then carries
slaves out its calculations and passes required data to other axes. The set positions
are written into the master registers 1x4030 through 1x4035. It is important
that register 1x4030 always contains the set position of axis 1 of the master
module, and register 1x4031 always the set position of axis 2 of the master
module.

Register 1x4030 = __ Set position of the first axis of the master


module

Register 1x4031 = __ Set position of the second axis of the master


module

Register 1x4032 = __ Set position of the external slave 1

Register 1x4033 = __ Set position of the external slave 2

Register 1x4034 = __ Set position of the external slave 3

Register 1x4035 = __ Set position of the external slave 4

Register 1x4097 = __ Set position of the third axis of the master


module

Jetter AG 233
8 Continuous Path Controls JetWeb

Defining the f) In some cases, the resultant diagonal of the linear interpolation must be
resultant diagonal described more precisely.
Normally, the calculated length of the software axis is stored in the master
register 1x4040. The value is calculated internally by the JX6-CON-Move(-
BP) module based on the known set and actual positions of both (or three)
axes of the master module. Both (or three) axes which are used to span the
diagonal as well as the preceding parameterization of the master and slave
registers form the basis for this calculation.
However, the length of the software axis may be specified by the user. It must
be specified by the user if the resultant diagonal is to be spanned between
an axis of the mster module and an external slave axis, or between two
external slaves.
The exemplary calculation is carried out by the following formula:

2 2 2
Register1x4040 = ( ∆31 ) + ( ∆41 ) + ( ∆42 )

In the given case, axes 31, 41 and 42 are involved in the linear interpolation.
The term ∆31 indicates the distance between start and set positions of axis
31. For the calculation of the overall length of the diagonal, all involved axes
have to be taken into account.
If the user has calculated the length of the software axis incorrectly, or if the
value specified by the user is less or greater than the value internally
calculated by the controller module, this discrepancy will directly affect the
velocity of motion. In the worst case, software limit switches or mechanical
end stops will terminate the linear interpolation.
If the length of the software axis is to be specified by the user, register
1x4040 must be parameterized before the command to start the
interpolation is issued. As soon as the control system has processed
command 41, a decision flag is reset internally, i.e. from now on the length
of the software axis is calculated again by the JX6-CON-Move(-BP) module.

234 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Adjusting the g) The max. velocity for the slave axes must be adjusted to suit the velocity of
max. velocity the data axis.
For linear interpolations based on the master/slave configurations 1, 2, 4,
or 5 (commands 38, 39, 42 or 94), the data axis corresponds to axis 1 of
the master module. In contrast to the above-mentioned configuration, axis 2
of the master module acts as data axis for linear interpolation with the
master/slave configuration 3 (command 40).
Irrespective of the fact which axis constitutes the data axis, it must be
communicated to every other axis involved in interpolation at which max.
velocity the data axis is travelling.
There are two formulas by which the register value can be determined
depending on whether a gear box is mounted between motor and encoder.

Without gear box:


The value of the relevant slave register 1xy051 of the involved axes depends
on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box:


The value of the respective slave register 1xy051 is calculated by the
following formula:

ERSlaveAxis
Register1xy051 -------------------------------------- × RegisterContent1xy018
ERDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the
gear ratio.
Register 1xy018 specifies the max. speed which can be reached by the
servo controller/motor combination which is at the same time the valid value
for the data axis. Exemplary calculations are given following the description
of the encoder resolution adjustment.
Therefore, the velocity must be adjusted whenever the maximum velocity of
the involved axes and the data axis are not identical with each other.
If the values are identical, register 1xy051 need not be parameterized and
the reset value "0" can remain unchanged.

Adujsting the h) The encoder resolutions of the slave axes also have to be adjusted to suit
encoder the data axis. It once more applies to the definition of the data axis that for
resolution linear interpolations based on the master/slave configurations 1, 2, 4, or 5
(commands 38, 39, 43 or 94), the data axis corresponds to axis 1 of the
master module. In contrast to the above-mentioned configuration, axis 2 of
the master module acts as data axis for linear interpolation with the master/
slave configuration 3 (command 40).
If a slave axis involved in the interpolation has an encoder resolution other
than the resolution of the data axis, then register 1xy052 of this slave axis
has to be parameterized.
The value is calculated according to the following formula:

ER = EncoderResolution in Register 1xy017

Jetter AG 235
8 Continuous Path Controls JetWeb

Examples for adjusting max. velocity and encoder


resolution
The following 3 examples proceed from the assumption that axis 31 is an
external slave of axis 21, thus defining axis 21 as data axis and axis 31 as
slave axis.
Please take into account that the results of the calculations have to be
entered into the registers. If you would enter the formulas used in the
examples in the JetSym program, it could happen that the value always is "0"
due to the integer arithmetic.

Example 1: with gear box, incremental encoder

Register contents: 121018 = 700 rpm


121017 115,70 inc/mm
131017 50.06 inc/mm

ERSlaveAxis
Register1xy051 -------------------------------------- × RegisterContent1xy018
ERDataAxis

inc
50, 06 ----------
mm rev
Register131051 = ------------------------------ × 700 ----------
inc- min
115, 70 ---------
mm

rev
Register131051 = 302, 87 ----------
min

Value 303 is assigned to slave register 131051.

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

inc
50, 06 ----------
mm
Register131052 = ------------------------------ × 1.000
inc
115, 70 ----------
mm

Register131052 = 432, 67

Value 433 is assigned to slave register 131052.

236 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Example 2: without gear box but with different encoder

Register contents: 121018 = 3,000 rpm


131018 = 3,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register 131051 need not be parameterized since the max. velocities


are identical.

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

Example 3: Same conditions as under example 2 but different vmax

Register contents: 121018 = 3,000 rpm


131018 = 6,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register1xy051 = Register1xy018

rev
Register131051 = 3.000 ----------
min

The register value of the data axis, i.e. value 3,000 is assigned to slave
register 131051.

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

Jetter AG 237
8 Continuous Path Controls JetWeb

Command 41 i) Issuing command 41 to the master axis starts the entire motion.
starts the
interpolation Register 1x4001 = 41 Starting the linear interpolation

All axes start synchronously and reach their set positions at the same time.
Each axis is travelling at such a velocity that the resultant velocity
corresponds to the set velocity specified in register 1x4003. If a new value is
written into register 1x4003 during the positioning process, then the velocity
of all axes changes. An AXARR instruction issued to axis 4 stops all axes.
By specifying new set positions and issuing a new starting command,
additional coordinated motions can be started.

Waiting for j) An AXARR instruction issued to axis 4 stops all physical axes. Completion of
completion of the the interpolation process is monitored by querying status register bit 1 of all
interpolation physical axes involved (bit 1: AXARR = the position has been reached).
process

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode can
be terminated.

Command 42 k) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Terminating linear interpolation

It is advisable to issue command 42 on completion of an interpolation in order


to remove workload from the processor and not unnecessarily prolong
processing of the task. This advise also applies if the interpolation is
repeated during the further program flow.

Acknowledging l) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

For programming examples of the individual variants, please refer to the CD


provided with this manual.

238 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.1.5 Overview of Registers: Linear


Interpolation
The overview of registers lists all registers relevant for linear interpolation.
These registers might be necessary both for the master axis and the slave axes. This
will be described in more detail in the next chapter.

Reg.
R/W Registers: Linear Interpolation
#
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

030 - *** Registers: Linear Interpolation


135
030 R/W Set position of the first axis of the master module

031 R/W Set position of the second axis of the master module

032 R/W Set position of the external slave 1

033 R/W Set position of the external slave 2

034 R/W Set position of the external slave 3

035 R/W Set position of the external slave 4

Jetter AG 239
8 Continuous Path Controls JetWeb

038 R/W Actual position of the external slave 1 for calculating the
diagonal

039 R/W Actual position of the external slave 2 for calculating the
diagonal

040 R/W Length of the software axis

051 R/W Adjustment of the max. velocity to suit the data axis

052 R/W Adjustment of the encoder resolution to suit the data axis

097 R/W Set position of the third axis of the master module

4132 R/W Axis number of the external slave 1

4133 R/W Axis number of the external slave 2

4134 R/W Axis number of the external slave 3

4135 R/W Axis number of the external slave 4

240 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.1.6 Description of Registers: Linear


Interpolation

Set position of the first axis of


Register 1x4030:
the master module
Function Description

Read Present set position value for master module


axis 1

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of a slave axis is stored.
If axis 1 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. This is
required for master/slave configurations 1, 2, 4, and 5 (commands 38, 39, 43, 94).

Set position of the second axis


Register 1x4031:
of the master module
Function Description

Read Present set position value for master module


axis 2

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of a slave axis is stored.
If axis 2 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. This is
required for master/slave configurations 1, 2, 3, and 5 (commands 38, 39, 40, 94).

Jetter AG 241
8 Continuous Path Controls JetWeb

Set position of the external


Register 1x4032:
slave 1
Function Description

Read Present set position value for the external slave 1

Write New set position for the external slave 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of the external slave axis 1 is stored.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started.
This is required for master/slave configurations 2, 3 and 4. The slave axis must be
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Set position of the external


Register 1x4033:
slave 2
Function Description

Read Present set position value for the external slave 2

Write New set position for the external slave 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of the external slave axis 2 is stored.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started.
This is required for master/slave configurations 2, 3 and 4. The slave axis must be
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

242 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Set position of the external


Register 1x4034:
slave 3
Function Description

Read Present set position value for the external slave 3

Write New set position for the external slave 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of the external slave axis 3 is stored.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started.
This is required for master/slave configurations 2, 3 and 4. The slave axis must be
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Set position of the external


Register 1x4035:
slave 4
Function Description

Read Present set position value for the external slave 4

Write New set position for the external slave 4

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of the external slave axis 4 is stored.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started.
This is required for master/slave configurations 2, 3 and 4. The slave axis must be
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Jetter AG 243
8 Continuous Path Controls JetWeb

Actual position of the external


Register 1x4038: slave 1 for calculating the
diagonal
Function Description

Read Value of the present actual position of the


external slave 1

Write New actual position for the external slave 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used as master register in a linear interpolation to calculate the


diagonal if external slaves are involved.
Basically, the following applies:
• if only one axis of those involved in the linear interpolation are located on the
master module and the other slave(s) are external slaves, then the actual
positions of the external slaves need to be defined.
• However, if only those axes that are located on the master module are used to
calculate the resultant diagonal, then the actual positions need not be defined
explicitly.

In the first case, the actual position of the external axis, which is the first of all axes
to obtain its set position, is parameterized in register 1x4038. The register must be
written before the function is started.

Registers 1x4038 and 1x4039 are to be seen in relation.

244 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Actual position of the external


Register 1x4039: slave 2 for calculating the
diagonal
Function Description

Read Value of the present actual position of the


external slave 2

Write New actual position for the external slave 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used as master register in a linear interpolation to calculate the


diagonal if external slaves are involved.
Basically, the following applies:
• if only one axis of those involved in the linear interpolation are located on the
master module and the other slave(s) are external slaves, then the actual
positions of the external slaves need to be defined.
• However, if only those axes that are located on the master module are used to
calculate the resultant diagonal, then the actual positions need not be defined
explicitly.

In the first case, the actual position of the external axis, which is the first of all axes
to obtain its set position, is parameterized in register 1x4039. The register must be
written before the function is started.

Registers 1x4038 and 1x4039 are to be seen in relation.

Jetter AG 245
8 Continuous Path Controls JetWeb

Register 1x4040: Length of the software axis


Function Description

Read Present length (calculated by the controller


module)

Write New length (specified by the user)

Value range -8.388.608 .. +8.388.607

Value after reset 0

The calculated length of the software axis, i.e. the virtual master of the entire linear
interpolation, is stored in this master register. This value is calculated by the
controller module internally.
However, the length of the software axis may be specified by the user. It must be
specified by the user if the resultant diagonal is to be spanned between an axis of the
mster module and an external slave axis, or between two external slaves.
The exemplary calculation is carried out by the following formula:

2 2 2
Register1x4040 = ( ∆41 ) + ( ∆42 ) + ( ∆31 )

In the given case, axes 41, 42 and 31 are involved in the linear interpolation. The
term ∆41 indicates the distance between start and set positions of axis 41. For the
calculation of the overall length of the diagonal, all involved axes have to be taken
into account.

If the length of the software axis is specified by the user, the controller module
accepts this value without performing a recalculation of its own.
If the user has calculated the length of the software axis incorrectly, or if the value
specified by the user is less or greater than the value internally calculated by the
controller module, this discrepancy will directly affect the velocity of motion. In the
worst case, software limit switches or mechanical end stops will terminate the linear
interpolation.
If the length of the software axis is to be specified by the user, register 1x4040 must
be parameterized before the start command for the interpolation is issued. As soon
as the control system has processed command 41, a decision flag is reset internally,
i.e. from now on the length of the software axis is calculated again by the controller
module.

If the length of the software axis is specified by the user, registers 1x4038 and
1x4039 (definition of the actual positions of the external slaves) need not be
parameterized.

246 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Adjustment of the max. velocity


Register 1xy051:
to suit the data axis
Function Description

Read Present value for velocity adjustment

Write New value for velocity adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

Velocity must be adjusted whenever the maximum velocity of the involved axes and
of the data axis are not identical with each other. If the values are identical, register
1xy051 need not be parameterized.
For linear interpolations based on the master/slave configurations 1, 2, 4, or 5
(commands 38, 39, 42 or 94), the data axis corresponds to axis 1 of the master
module. In contrast to the above-mentioned configuration, axis 2 of the master
module acts as data axis for linear interpolation with the master/slave configuration
3 (command 40). Irrespective of the fact which axis constitutes the data axis, it must
be communicated to every other axis involved in interpolation at which max. velocity
the data axis is travelling.
There are two formulas by which the register value can be determined depending on
whether a gear box is mounted between motor and encoder.

Without gear The value of the relevant slave register 1xy051 of the involved
box: axes depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box: The value of the respective slave register 1xy051 is calculated
by the following formula:

ERSlaveAxis
Register1xy051 = -------------------------------------- × RegisterContent1xy018
ERDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the gear ratio.
Register 1xy018 specifies the maximum velocity which can be reached by the servo/
motor combination. At the same time, this value is the valid value for the data axis.

Jetter AG 247
8 Continuous Path Controls JetWeb

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolution of the slave axes (similar to the maximum velocity) must be
adjusted to suit the resolution of the data axis. It once more applies to the definition
of the data axis that for linear interpolations based on the master/slave configurations
1, 2, 4, or 5 (commands 38, 39, 43 or 93), the data axis corresponds to axis 1 of the
master module. In contrast to the above-mentioned configuration, axis 2 of the
master module acts as data axis for linear interpolation with the master/slave
configuration 3 (command 40).
If a slave axis involved in the interpolation has an encoder resolution other than the
resolution of the data axis, then register 1xy052 of this slave axis has to be
parameterized. The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

248 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Set position of the third axis of


Register 1x4097:
the master module
Function Description

Read Present set position value for master module axis


3

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

For a linear interpolation, this register is used as master register to which the set
position of a slave axis is stored.
If axis 3 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. This is
required for the master/slave configuration 5 (command 94). This is the only
configuration where a physical axis 3 is involved in the interpolation.

Axis number of the external


Register 1x4132:
slave 1
Function Description

Read Present axis number of the first external slave


axis involved

Write New first external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the first external slave axis involved must be
written into this master register.

Jetter AG 249
8 Continuous Path Controls JetWeb

Axis number of the external


Register 1x4133:
slave 2
Function Description

Read Present axis number of the second external slave


axis involved

Write New second external slave axis involved (enter


the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the second external slave axis involved must
be written into this master register.

Axis number of the external


Register 1x4134:
slave 3
Function Description

Read Present axis number of the third external slave


axis involved

Write New third external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the third external slave axis involved must be
written into this master register.

250 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Axis number of the external


Register 1x4135:
slave 4
Function Description

Read Present axis number of the fourth external slave


axis involved

Write New fourth external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the fourth external slave axis involved must be
written into this master register.

Jetter AG 251
8 Continuous Path Controls JetWeb

8.1.7 Overview of Commands: Linear


Interpolation
The following overview contains all commands directly used for a linear interpolation.
These commands are written into the command register 1xy001 of the respective
master or slave axis.
A command applies until a contrary command is issued.

Command # Commands: Linear Interpolation


32 Axis 1 is slave

33 Axis 2 is slave

38 Master/slave configuration 1

39 Master/slave configuration 2

40 Master/slave configuration 3

41 Start interpolation

42 Remove axis from interpolation

43 Master/slave configuration 4

94 Master/slave configuration 5

252 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2 Circular interpolation with 2 axes


8.2.1 Overview
Due to the complexity of the subject and the technical implementation, the chapter
"Circular Interpolation" is divided into
• chapter 8.2: "Circular interpolation with 2 axes", page 253, etc
• chapter 8.3: "Circular interpolation with 3 axes", page 284, etc

The following comments apply in general disregarding the number of axes involved
in a circular interpolation.

With circular interpolation, the path curve is approximated by one or several straight
lines. This means, the axes travel along a circular path from starting point to
destination point.
As already mentioned, all space-curves result from polygons and linear
interpolations. Using circular paths reduces the amount of data to be processed as
well as programming effort. Another advantage is the higher accuracy since no
individual straight segments are to be covered anymore.

Fig. 58: Principle of Circular Interpolation

Depending on the interpolator, the circular arcs are used as full circle, quadrant or
segment of the circle. Only a few parameters are required as checkpoints, e.g. center
of the circle (defined by the IJK parameter), radius, starting and end positions.

Jetter AG 253
8 Continuous Path Controls JetWeb

The circular interpolation in the plane can be carried out in the x, y, x - z or y - z levels
(see also chapter 8.2: "Circular interpolation with 2 axes", page 253).
For the circular interpolation in space, these main levels are rotated (chapter 8.3:
"Circular interpolation with 3 axes", page 284).

Generally, all axes involved always start synchronously, travel interdependently, and
reach their end positions at the same time.
For the calculation of the resultant motion, all values of the axes involved are taken
into account.

254 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2.2 Circular interpolation using 2 axes and


the JX6-CON-Move(-BP) module
When using a JX6-CON-Move(-BP) module, circular interpolation of two axes is
possible. These two axes can be selected almost at will. This type of interpolation
can also be performed as consecutive interpolation (see also chapter 8.5:
"Consecutive interpolation", page 352).

Operating principle
one axis acts as master axis, all other axes involved are regarded as slave axes. In
this case, both physically existing axes represent the slave axes. The master axis,
however, is a virtual software axis. This means that this axis does not exist
physically.

For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move(-BP) module. The result of these
calculations is reflected in the master axis.

With an interpolation, the master axis takes over all the cordination tasks between
the involved axes. The parameters for circular interpolation are also defined in the
master axis. Definition of the centers for both axes and of the set angle by which
rotation has to take place is mandatory. Parameters, such as acceleration ramp,
deceleration ramp, set velocity and destination window, are also used as parameters
of the coordinated motion.
Radius, starting angle, length of the circle arc and target position of both axes are
calculated by the JX6-CON-Move(-BP) module internally.

The JX6-CON-Move(-BP) controller module on which the master axis is to be


addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.
Details on configuration possibilities are provided in the following chapter.

Jetter AG 255
8 Continuous Path Controls JetWeb

General Prerequisites
Some essential aspects have to be taken into account with regard to the circular
interpolation function:

• Basically, accurate adjustment of the controllers is the precondition for proper


functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more accurately the physical axes will travel along
the resultant arc of the circle.

• Before the circular interpolation can be started, maximum velocity and encoder
resolution have to be adjusted to suit the master axis just the same way as for
linear interpolation.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

256 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2.3 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Fig. 59: Circular interpolation with 2 axes - axis configurations

Jetter AG 257
8 Continuous Path Controls JetWeb

o A maximum of 2 axes can be involved in a circular interpolation.

o At least one of the involved axes has to be the physically first


axis of a module and must be located on the master module
(see definition below).

o The software axis, i.e. the virtual axis 4 of a module, constitutes


the master axis of the entire circular interpolation.

o This software axis determines the parameterization of the


coordinated motions.

o All physical axes involved are considered as slaves.

o The module, the software axis of which is addressed in a


coordinated interpolation as master axis, is referred to as
master module.

Note!

To carry out interpolations, the following restriction as to hardware configuration


has to be taken into account:

If axes are to be used that are located on various controller modules


and thus in various slots, then only modules of the type JX6-CON-
Move-BP are allowed.

258 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Possible axis configurations:


There are 3 fundamental ways of combining 2 axes in a circular interpolation:

1. Both axes are located on one module.

2. The physically first axes of two different modules are involved.

3. The physically fist axis of one module and the physically


second axis of another module are involved.

Note!

In general, only the two physical axes 1 and 2 of a JX6-CON-Move(-BP)


controller module can be involved in this type of circular interpolation.

It is basically possible that several interpolations are carried out simultaneously


within the controller.
In this case, however, the separation from the hardware side between slots 4 and 5
must be taken into account. This means that the controller modules in slots 2 through
4 can be used for one interpolation job, and the modules located in slots 5 through 8
for another interpolation job.

Jetter AG 259
8 Continuous Path Controls JetWeb

Circular interpolation with 2 axes


Configurations Variant 1

Only axes Variant 1 distinguishes itself by the fact that only the two physical first axes of the
1 and 2 of a master master module are involved in circular interpolation.
module are This is the most simple case of a circular interpolation.
involved Here a possible configuration:

Fig. 60: Configuration for Circular Interpolation Variant 1

A JX6-CON-Move or JX6-CON-Move-BP module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21 and 22 are
configured.
The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of subodule 3 is irrelevant for circular interpolation with 2 axes. For
example, additional I/O cards can be plugged.
The module on which the axes are located is designated as master module.
Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

Since both axes are located on one module, there is no external axis. The latest set
positions of the axes required for the calculation of the starting point are internally
available in the module. Therefore, register 1x4150 need not be parameterized.

260 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

For carrying out circular interpolation, it is possible to use expansion modules located
in slots 2 through 8. In principle, slot 1 is reserved for the CPU module. Thus, the
following combination possibilities exist for variant 1:
Axes 21 and 22, or 31 and 32, 41 and 42, 51 and 52, 61 and 62, 71 and 72, or 81
and 82 can be combined for a circular interpolation.

Jetter AG 261
8 Continuous Path Controls JetWeb

Circular interpolation with 2 axes


Configurations Variant 2

The physically The two physically first axes of two different controller modules are involved in this
first axes of variant of the circular interpolation.
different modules Here a possible configuration:
are involved

Fig. 61: Configuration for Circular Interpolation Variant 2

Since both axes are located on different modules, one axis has to be considered as
external axis. Before starting the circular interpolation, the latest set position of the
external axis has to be communicated to the master. This value is required to
calculate the starting point and has to be parameterized in the master register
1x4150.
By deciding which register will be used as master register, decision is made at the
same time which module will constitute the master module. For variant 2 shown
above, two parameterization possibilities exist.

Register 124150 is parameterized: • module 2 is the master module,


• axis 31 is the external axis,
• the value in the register corresponds
to the latest set position of axis 31.

262 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 134150 is parameterized: • module 3 is the master module,


• axis 21 is the external axis,
• the value in the register corresponds
to the latest set position of axis 21.

It is possible to plug axis modules into a variety of sockets. In this case, however, the
separation from the hardware side between slots 4 and 5 must be taken into account.
This means that all modules must either be located in slots 2 through 4, or 5 through
8.

The following configurations are possible for variant 2:

Slot

2 3 4 5 6 7 8

21 31

Pairs of 21 41
axis
31 41
numbers
51 61

51 71

51 81

61 71

61 81

71 81

Ë Bus separation from the


hardware side

Combinations across the bus separation are not permitted!

Jetter AG 263
8 Continuous Path Controls JetWeb

Circular interpolation with 2 axes


Configurations Variant 3

The first and The physically fist axis of a controller expansion module and the physically second
second axis axis of another controller module are involved in this variant of the circular
of different interpolation. The module, on which the physically first axis is located, is acting as
modules are master module.
involved Here a possible configuration:

Fig. 62: Configuration for Circular Interpolation Variant 3

Before starting the circular interpolation, the latest set position of the external axis
has to be communicated to the master since the two axes are located on different
modules. This value is required to calculate the starting point and has to be
parameterized in the master register 1x4150. In the given example, register 124150
contains the value of the latest set position of axis 32.

It is possible to plug axis modules into a variety of sockets. In this case, however, the
separation from the hardware side between slots 4 and 5 must be taken into account.
This means that all modules must either be located in slots 2 through 4, or 5 through
8.

264 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The following configurations are possible for variant 3:

Slot

2 3 4 5 6 7 8

21 32

Pairs of 21 42
axis
31 42
numbers
22 31

32 41

22 41

51 62

51 72

51 82

52 61

61 72

61 82

52 71

62 71

71 82

52 81

62 81

72 81

Ë Bus separation from the


hardware side

Combinations across the bus separation are not permitted!

Jetter AG 265
8 Continuous Path Controls JetWeb

8.2.4 Programming Rules

Designating a a) One module is designated as master. This designation depends on the


module as master configuration, does not require a special command and is determined by the
deklarieren use of the master register.
Axis 4 of this master module immediately acts as master axis for
interpolation. All physical axes involved in the coordinated motion are
considered as slaves.

Registering b) The master must be informed of the physical axes which are involved in the
slaves with the coordinated motion. To do so, the logical axis numbers have to be entered
master into the corresponding master registers.

Register 1x4128 = __ Axis number of axis 1

Register 1x4129 = __ Axis number of axis 2

Velocity, c) The parameters for the motion of the resultant (set velocity, acceleration
acceleration and ramp, deceleration ramp, destination window) are preset in the registers of
deceleration the master axis (axis 4 of the master module) or in the registers of the data
ramps, axis, respectively.
destination
window Register 1x4003 = __ Set speed

Register 1x4005 = __ Acceleration ramp

Register 1x4006 = __ Deceleration ramp

Register 1x4007 = __ Destination window

If no values are defined, the settings of axis 1 of the master module apply.

Attention: However, the reference value related to the set velocity is defined
in the register of the data axis.

Register 1x1021 = Reference value related to the set velocity

266 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Starting point of d) In order to calculate the starting point of the arc of the circle, the latest set
the circular positions of both axes involved are required.
interpolation If the involved axes are located on the master module, then the controller
module can access these values internally. Explicit parameterization is not
required.
If the two axes involved in circular interpolation are not located on the same
JX6-CON-Move(-BP) module, the master has to be informed of the latest set
position of the external axis. For this purpose, the master register 1x4150 is
used.

Attention: Only the set positions of axes defined on the master module are
available internally.

Register 1x4150 = __ Latest set position of the external axis in inc

Defining centers e) For carrying out a circular interpolation, definition of the centers of both
involved axes in the relevant master registers is mandatory.
While doing so, one has to take into account that the two differences between
the centers and the starting points of the axes do not exceed the value of
±524,207 increments.

Register 1x4041 = __ Center of axis 1

Register 1x4042 = __ Center of axis 2

Entering the set f) Parameterization of the set angle by which the coordinated motion should
angle rotate is also mandatory. This value has to be entered into a master register
as well.
For this purpose, the degree value of the angle has to be converted into a
decimal value. The rule applies that 360 degrees are equivalent to the value
of 32,768.
Furthermore, it must be taken into account that the size of the set angle is
chosen in such a way that the maximum length of the arc of the circle does
not exceed the value of 67,108,000 increments.

Register 1x4045 = __ Set angle of the circular interpolation

Jetter AG 267
8 Continuous Path Controls JetWeb

Adjusting the g) The max. velocity for the slave axes must be adjusted to suit the velocity of
max. velocity the data axis.
With circular interpolation with 2 axes, the data axis corresponds to axis 1 of
the master module. The second axis being involved in interpolation must be
informed of the maximum velocity the data axis is travelling with.
There are two formulas by which the register value can be determined
depending on whether a gear box is mounted between motor and encoder.

Without gear box:


The value of the relevant slave register 1x051 of the second involved axis
depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box:


The value of the respective slave register 1xy051 is calculated by the
following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the
gear ratio.
Register 1xy018 specifies the max. speed which can be reached by the
servo controller/motor combination which is at the same time the valid value
for the data axis. Exemplary calculations are given following the description
of the encoder resolution adjustment.
Therefore, velocity must be adjusted whenever the maximum velocity of both
involved axes are not identical with each other.
If the values are identical, register 1xy051 need not be parameterized and
the reset value "0" can remain unchanged.

Adjusting the h) The encoder resolution of the second involved axis also has to be adjusted
encoder to suit the data axis. Once more, it applies to the definition of the data axis
resolution that, for circular interpolation with 2 axes, the data axis corresponds to axis
1 of the master module.
If the second slave axis involved in the interpolation has an encoder
resolution other than the resolution of the data axis, register 1xy052 of the
given slave axis has to be parameterized.
The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

268 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Examples for adjusting max. velocity and encoder


resolution
The following 3 examples proceed from the assumption that axis 31 is an
external slave of axis 21, thus defining axis 21 as data axis and axis 31 as
slave axis.
Please take into account that the results of the calculations have to be
entered into the registers. If you would enter the formulas used in the
examples in the JetSym program, it could happen that the value always is "0"
due to the integer arithmetic.

Example 1: with gear box, incremental encoder

Register contents: 121018 = 700 rpm


121017 115.70 inc/mm
131017 50.06 inc/mm

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

inc
50, 06 ----------
mm rev
Register131051 = ------------------------------ × 700 ----------
inc- min
115, 70 ---------
mm

rev
Register131051 = 302, 87 ----------
min

Value 303 is assigned to slave register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
50, 06 ----------
mm
Register131052 = ------------------------------ × 1.000
inc
115, 70 ----------
mm

Register131052 = 432, 67

Value 433 is assigned to slave register 131052.

Jetter AG 269
8 Continuous Path Controls JetWeb

Example 2: without gear box but with different encoder

Register contents: 121018 = 3,000 rpm


131018 = 3,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register 131051 need not be parameterized since the max. velocities


are identical.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

Example 3: Same conditions as under example 2 but different vmax

Register contents: 121018 = 3,000 rpm


131018 = 6,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register1xy051 = Register1xy018

rev
Register131051 = 3.000 ----------
min

The register value of the data axis, i.e. value 3,000 is assigned to slave
register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

270 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Registers for i) The following master and slave registers contain additional information
additional concerning circular interpolation. The register contents are calculated and
information updated by the JX6-CON-Move(-BP) controller module internally. The user
can only read these registers (writing is not permitted) and use the data as
information (e.g. for visualization purposes) or for further calculations.

Register Description

1x4046 Calculated radius of the circular


interpolation

1x4047 Calculated starting angle of the circular


interpolation

1x4048 Calculated circle arc length of the circular


interpolation

1xy049 Calculated target position for axis 1 (master)

1xy050 Calculated target position for axis 2 (slave)

Command 41 j) Issuing command 41 to the master axis starts the entire motion.
starts
the interpolation Register 1x4001 = 41 Starting point of the circular interpolation

All axes involved start synchronously and reach their set positions at the
same time. Each axis is travelling at such a velocity that the resultant velocity
corresponds to the set velocity specified in register 1x4003. If a new value is
written into register 1x4003 during the positioning process, then the velocity
of all axes changes.

Waiting for k) An AXARR instruction issued to axis 4 stops all physical axes. Completion of
completion of the the interpolation process is monitored by querying status register bit 1 of all
interpolation physical axes involved (bit 1: AXARR = the position has been reached).
process

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode can
be terminated.

Command 42 l) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Terminating the circular interpolation

It is advisable to issue command 42 on completion of an interpolation in order


to remove workload from the processor and not unnecessarily prolong
processing of the task. This advise also applies if the interpolation is
repeated during the further program flow.

Jetter AG 271
8 Continuous Path Controls JetWeb

Acknowledging m) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

For programming examples of the individual variants, please refer to the CD


provided with this manual.

272 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2.5 Overview of Registers:


Circular interpolation with 2 axes
The overview of registers lists all registers relevant for circular interpolation with 2
axes. These registers might be necessary both for the master axis and the slave
axes. This will be described in more detail in the next chapter.

Reg. Registers:
R/W
# Circular interpolation with 2 axes
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

041 - *** Registers: Circular interpolation with 2 axes


150
041 R/W Center of axis 1

042 R/W Center of axis 2

045 R/W Set angle of the circular interpolation

046 R Calculated radius of the circular interpolation

047 R Calculated starting angle of the circular interpolation

048 R Calculated circle arc length of the circular interpolation

Jetter AG 273
8 Continuous Path Controls JetWeb

049 R Calculated target position for axis 1 (master)

050 R Calculated target position for axis 2 (slave)

051 R/W Adjustment of the max. velocity to suit the data axis

052 R/W Adjustment of the encoder resolution to suit the data axis

128 R/W Axis number of axis 1

129 R/W Axis number of axis 2

150 R/W Latest set position of the external axis

274 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2.6 Description of Registers: Circular


interpolation with 2 axes

Register 1x4041 Center of axis 1


Function Description

Read Present value for the center of axis 1

Write New value for the center of axis 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 1 has to be
entered into this register.
Apart from the center of this axis, the center of axis 2 (register 1x4042) and the set
angle by which rotation has to take place (register 1x4045) have to be defined since
they are prerequesite for circular interpolation.

Register 1x4042 Center of axis 2


Function Description

Read Present value for the center of axis 2

Write New value for the center of axis 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 2 has to be
entered into this register.
Apart from the center of this axis, the center of axis 1 (register 1x4041) and the set
angle by which rotation has to take place register 1x4045) have to be defined since
they are prerequesite for circular interpolation.

Note!

The difference of (center x) minus (starting point x) must not exceed the value±
524,207 increments.

Jetter AG 275
8 Continuous Path Controls JetWeb

Set angle of the circular


Register 1x4045
interpolation
Function Description

Read Present value for the set angle of the arc

Write New value for the parameter "set angle"

Value range -8.388.608 .. +8.388.607


32.768 = 360°

Value after reset 0

The set angle of the arc of the circle which both axes are travelling along during a
circular interpolation is defined in this register. Apart from this, the centers of axis 1
(register 1x4041) and axis 2 (register 1x4045) have to be entered into the
corresponding registers since they are prerequesite for circular interpolation.

Note!

The length of the arc of the circle must not exceed 67,108,000 increments.

Calculated radius of the circular


Register 1x4046
interpolation
Function Description

Read Present value of the radius (calculated by the


controller module)

Write Illegal

Value range -524.207 .. +524.207

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045 the JX6-
CON-Move(-BP) module calculates the radius of the circular interpolation internally.

276 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Calculated starting angle of the


Register 1x4047
circular interpolation
Function Description

Read Present value of the starting angle (calculated by


the controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045 the JX6-
CON-Move(-BP) module calculates the starting angle of the circular interpolation
internally.

Calculated circle arc length of


Register 1x4048
the circular interpolation
Function Description

Read Present value of the circle arc (calculated by the


controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the circle arc of the circular interpolation
internally which can be accessed in this register.

Jetter AG 277
8 Continuous Path Controls JetWeb

Calculated target position


Register 1xy049
axis 1 (master)
Function Description

Read Present value of the target position of axis 1


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the target position of axis 1 internally which can
be accessed in this register.

Calculated target position


Register 1xy050
Axis 2 (slave)
Function Description

Read Present value of the target position of axis 2


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the target position of axis 2 internally which can
be accessed in this register.

278 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Adjustment of the max. velocity


Register 1xy051:
to suit the data axis
Function Description

Read Present value for velocity adjustment

Write New value for velocity adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

Velocity must be adjusted whenever the maximum velocity of the involved axes and
of the data axis are not identical with each other. If the values are identical, register
1xy051 need not be parameterized.
With circular interpolation, the data axis corresponds to axis 1 of the master module.
The second axis being involved in interpolation must be informed of the maximum
velocity the data axis is travelling with.
There are two formulas by which the register value can be determined depending on
whether a gear box is mounted between motor and encoder.

Without gear The value of the relevant slave register 1x051 of the second
box: involved axis depends on the register value 1xy018 of the data
axis:

Register1xy051 = Register1xy018

With gear box: The value of the respective slave register 1xy051 is calculated
by the following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the gear ratio.
Register 1xy018 specifies the maximum velocity which can be reached by the servo/
motor combination. At the same time, this value is the valid value for the data axis.

Jetter AG 279
8 Continuous Path Controls JetWeb

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolution of the second axis involved (similar to the maximum velocity)
must be adjusted to suit the resolution of the data axis. Once more, it applies to the
definition of the data axis that, for circular interpolation, the data axis corresponds to
axis 1 of the master module.
In case the second slave axis involved in an interpolation has an encoder resolution
other than the resolution of the data axis, register 1xy052 of the given slave axis has
to be parameterized. The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

280 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4128 Axis number of axis 1


Function Description

Read Present axis number of the first axis involved

Write New first axis involved

Value range 0, 21, 31, 41 .. 81

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the first axis involved must be written into this
master register.

Register 1x4129 Axis number of axis 2


Function Description

Read Present axis number of the second axis involved

Write New second axis involved

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the second axis involved must be written into
this master register.

Jetter AG 281
8 Continuous Path Controls JetWeb

Latest set position of the


Register 1x4150
external axis
Function Description

Read Present value of the latest set position of the


external axis

Write New set position of the external axis

Value range -8.388.608 .. +8.388.607

Value after reset 0

This master register must contain the latest set position of an external axis if this axis
is to participate in a circular interpolation.
This register must be parameterized whenever the involved axes are not located on
the same module.
The parameterization has consequences for determining the configuration of the
involved axes. Moreover, the latest set positions of both axes involved are required
to calculate the starting point of the arc of the circle.

282 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.2.7 Overview of Commands:


Circular interpolation with 2 axes
The following overview of commands contains all commands which are directly used
for a circular interpolation with 2 axes. These commands are written into the
command register 1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Command # Commands: Circular Interpolation


41 Start interpolation

42 Remove axis from interpolation

Jetter AG 283
8 Continuous Path Controls JetWeb

8.3 Circular interpolation with 3 axes


8.3.1 Overview
For a general overview of circular interpolations, see chapter 8.2: "Circular
interpolation with 2 axes", page 253. This chapter provides a summary of general
basic information.

8.3.2 Circular interpolation using 3 axes and


the JX6-CON-Move(-BP) module
The JX6-CON-Move(-BP) module is equipped with an integrated path control which
allows to perform 3D circular interpolations.
Using the "circular interpolation with 3 axes" allows to run a 2D circle in a 3D space.
This type of interpolation can also be performed as consecutive interpolation (see
also chapter 8.5: "Consecutive interpolation", page 352).

General Prerequisites
Some essential aspects have to be taken into account with regard to the circular
interpolation function:
• Basically, accurate adjustment of the controllers is the precondition for proper
functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more accurately the physical axes will travel along
the resultant arc of the circle.

• Before the circular interpolation can be started, maximum velocity and encoder
resolution have to be adjusted to suit the master axis just the same way as for
linear interpolation.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

284 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Operating principle
Again, one axis acts as master axis, all other axes involved are regarded as slave
axes. The physically existing axes represent the slave axes. The master axis,
however, is a virtual software axis. This means that this axis does not exist
physically.

For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move(-BP) module. The result of these
calculations is reflected in the master axis.

With an interpolation, the master axis takes over all the cordination tasks between
the involved axes. The parameters for circular interpolation are also defined in the
master axis.

The JX6-CON-Move(-BP) controller module on which the master axis is to be


addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.
Details on configuration possibilities are provided in the following chapter.

Circular interpolation with 3 axes provides two possibilities of parameterizing the


circular motion. The parameters of the circle are either entered via teach values or
via angles. See the following section for details:

Input by Teach Values


A circle segment in space can also be described by three points. Such a point is
defined here with the term "teach value" or "teach point". A teach point is always
associated with an x, y, and z coordinate.
Since 3 points are necessary to describe the circle and since each point is defined
by 3 coordinates, a total of 9 numerical values is processed.
The center point and the angle are calculated. This and the execution of the
interpolation movement are controlled by issuing a command each.
It is possible to calculate max. ten 3D circular interpolations in advance.

Jetter AG 285
8 Continuous Path Controls JetWeb

Input by Angles
A 3D circle is programmed like a 2D circle. The reason is that a 3D circle is derived
from a 2D circle by placing the 2D circle into the level of the 3D circle. The centre
point (registers 1xy041 and 1xy042) are not entered absolutely but in relation to the
level. This means that only the distance from starting point to center point is entered.

This results in the following modifications for programming:

There are 3 new master registers 1xy087,1xy088 and 1xy089. These


registers indicate the rotation of the x-y levels with respect to the relevant
axis of coordinate. Rotations take place clockwise with the respective axis.
The following assignment applies:

• Register 1x4087 indicates the rotation of the x-y levels around the
x-axis.

• Register 1x4088 indicates the rotation of the x-y levels around the
y-axis.

• Register 1x4089 indicates the rotation of the x-y levels around the
z-axis.

These registers allow to describe any circle in a space. This results in the
following special cases:

Case 1: Circle around the x-y level

Parameterization of registers

Register 1x4087 = 0 Z

Register 1x4088 = 0
Y
Register 1x4089 = 0

286 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Case 2: Circle around the x-z level, level rotated around the x-axis by 90
°

Parameterization of registers

Register 1x4087 = 90,000


(corresponds to 90 °) Z

Register 1x4088 = 0 Y

Register 1x4089 = 0

Case 3: Circle around the y-z level, level rotated around the y-axis by
90°

Parameterization of registers

Register 1x4087 = 0
Z
Register 1x4088 = 90,000
(corresponds to 90 °)
Y
Register 1x4089 = 0

Case 4: Circle around the x-y level, level rotated around the z-axis by
90°

Parameterization of registers

Register 1x4087 = 0
Z
Register 1x4088 = 0

Register 1x4089 = 90,000 Y

(corresponds to 90 °)

Jetter AG 287
8 Continuous Path Controls JetWeb

8.3.3 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Fig. 63: Circular interpolation with 3 axes - axis configurations

288 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

o A maximum of 3 axes can be involved in this type of circular


interpolation.

o The software axis, i.e. the virtual axis 4 of a module, constitutes


the master axis of the entire circular interpolation.

o This software axis determines the parameterization of the


coordinated motions.

o All physical axes involved are considered as slaves.

o The module, the software axis of which is addressed in a


coordinated interpolation as master axis, is referred to as
master module.

There is only one variant to combine the 3 axes in this type of circular interpolation:

All 3 axes of a master module are involved.

Jetter AG 289
8 Continuous Path Controls JetWeb

Circular interpolation with 3 axes


Configurations Variant 1

All 3 axes of a Variant 1 distinguishes itself by the fact that all 3 configurable axes of a module
master module (which then also is the master module) are involved in this type of circular
are involved interpolation.
Here a possible configuration:

Fig. 64: Configuration for the 3D Circular Interpolation Variant 1

A JX6-CON-Move or JX6-CON-Move-BP module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21, 22, and 23 are
configured.
The sockets for submodules 2 and 3 must remain empty. No submodules may be
plugged.
The module on which the axes are located is designated as master module.
Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 1:


Axes 21, 22 and 23, or 31, 32 and 33; 41, 42 and 43; 51, 52 and 53; 61, 62 and 63;
71, 72 and 73, or 81, 82 and 83 can be combined for a circular interpolation with 3
axes.

290 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.3.4 Programming Rules


The configuration possibilities for circular interpolation with 3 axes are defined by
variant 1. However, programming for the two possibilities
• Parameterizing the circular motion via angles and
• parameterizing the circular motion via teach values
differs quite a lot.

In the following summary, the programming steps


• that only apply to parameterizing via teach values are marked by *** T *** ,
• that only apply to parameterizing via angles are marked by *** W *** , and
• those applicable to both parameterization possibilities are not marked specifically.

Designating a a) The module on which the 3 axes are defined is designated as master
module as master module. This designation does not require a special command and is
deklarieren determined by the use of the master register. Axis 4 of this master module
immediately acts as master axis for interpolation. All physical axes involved
in the coordinated motion are considered as slaves.

Registering b) The master must be informed of the physical axes which are involved in the
slaves coordinated motion.
with the master For this purpose, the logical axis numbers of the first two axes have to be
entered into the corresponding master registers. The third axis is registered
automatically when command 107 (activate 3D circular interpolation mode)
is issued.

Register 1x4128 = __ Axis number of axis 1

Register 1x4129 = __ Axis number of axis 2

Defining buffer c) This master register serves to define which circular motion (of max. 10
*** T *** possible circular motions) is to be pre-calculated.

Register 1x4093 = __ Buffer for Circular Interpolation

Activating 3D d) The 3D circular interpolation mode is activated by issuing commmand 107 in


circular the respective master register.
interpolation
mode Register 1x4001 = 107 3D circular interpolation mode - ON

Jetter AG 291
8 Continuous Path Controls JetWeb

Parameterizing e) The following master registers indicate the rotation of the x-y levels with
levels respect to the relevant axis of coordinate. Rotations take place clockwise
*** W *** with the respective axis.

Register 1x4087 = __ Rotation of the x-y levels around the x-axis.

Register 1x4088 = __ Rotation of the x-y levels around the y-axis.

Register 1x4089 = __ Rotation of the x-y levels around the z-axis.

Parameterizing f) The coordinates of the 3 teach points are defined in the following master
the teach values registers.
*** T ***
Register 1x4077 = __ X-coordinate teach point 1

Register 1x4078 = __ Y-coordinate teach point 1

Register 1x4079 = __ Z-coordinate teach point 1

Register 1x4080 = __ X-coordinate teach point 2

Register 1x4081 = __ Y-coordinate teach point 2

Register 1x4082 = __ Z-coordinate teach point 2

Register 1x4083 = __ X-coordinate teach point 3

Register 1x4084 = __ Y-coordinate teach point 3

Register 1x4085 = __ Z-coordinate teach point 3

Starting the g) Calculation of the circular motion is started by issuing command 113. The
calculation virtual centers and angles to be covered are determined via the previously
*** T *** defined teach points.

Register 1x4001 = 113 3D circular interpolation: Starting the


calculation using teach values

This calculation takes approx. 20 ms. The results of the calculation are
stored in the following master registers:

Register 1x4074 = __ Center of virtual axis 1

Register 1x4075 = __ Center of virtual axis 2

Register 1x4076 = __ Circular angle of virtual axes

Waiting for end of h) Completed calculation of the circular motion must be verified. To do so, bit
calculation 13 (BUSY) of the status register of the first physical axis involved is queried.
*** T ***
Register 1xy000, Bit 13 = 0 ?

If bit 13 is 0 again, the calculation has been completed.

292 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Evaluating the i) If an error occurs during the calculation, the corresponding bit is set in the
calculation results error register 1x1166. For the assignment of bits and errors, please refer to
*** T *** the register description.

Register 1x1166 = __ Error Register Circular Interpolation

Velocity, j) The parameters for the motion of the resultant (set velocity, acceleration
acceleration and ramp, deceleration ramp, destination window) are preset in the registers of
deceleration the master axis (axis 4 of the master module) or in the registers of the data
ramps, axis, respectively.
destination
window Register 1x4003 = __ Set speed

Register 1x4005 = __ Acceleration ramp

Register 1x4006 = __ Deceleration ramp

Register 1x4007 = __ Destination window

If no values are defined, the settings of axis 1 of the master module apply.

Attention: However, the reference value related to the set velocity is defined
in the register of the data axis.

Register 1x1021 = Reference value related to the set velocity

Defining buffer k) This master register serves to define which circular motion (of max. 10
*** T *** possible circular motions) is to be pre-calculated.

Register 1x4093 = __ Buffer for Circular Interpolation

Defining centers l) Centers 1 and 2 present on the projected x-y level are defined in the
*** W *** corresponding master registers.

Register 1x4041 = __ Center 1

Register 1x4042 = __ Center 2

Defining centers The following applies when parameterizing via teach values: the results of
*** T *** the calculated circular motion must be transferred from the corresponding
registers of the virtual axes into these master registers.

Register 1x4041 = content of register 1x4074 (center 1)

Register 1x4042 = content of register 1x4075 (center 2)

Jetter AG 293
8 Continuous Path Controls JetWeb

Entering the set m) The value of the set angle present on the projected x-y level is also written
angle into a master register.
*** W *** For this purpose, the degree value of the angle has to be converted into a
decimal value. The rule applies that 360 degrees are equivalent to the value
of 32,768.

Register 1x4045 = __ Set angle

Entering the set Again, the following applies when parameterizing via teach values: the result
angle of the calculated circular motion must be transferred from the corresponding
*** T *** registers of the virtual axes into this master register.

Register 1x4045 = content of register 1x4076 (set angle)

Command 116 n) The 3D circular interpolation mode (calculated via angles) is activated by
activates the 3D issuing command 116.
circular
interpolation via Register 1x4001 = 116 3D circular interpolation: calculated via
angles angles
*** W ***

Command 115 The 3D circular interpolation mode (calculated via teach values) is activated
activates the 3D by issuing command 115.
circular
interpolation via Register 1x4001 = 115 3D circular interpolation: calculated via
teach values teach values
*** T ***

Command 41 o) Issuing command 41 to the master axis starts the entire motion.
starts
the interpolation Register 1x4001 = 41 Starting point of the circular interpolation

All axes involved start synchronously and reach their set positions at the
same time. Each axis is travelling at such a velocity that the resultant velocity
corresponds to the set velocity specified in register 1x4003. If a new value is
written into register 1x4003 during the positioning process, then the velocity
of all axes changes.

Waiting for p) An AXARR instruction issued to axis 4 stops all physical axes. Completion of
completion of the the interpolation process is monitored by querying status register bit 1 of all
interpolation physical axes involved (bit 1: AXARR = the position has been reached).
process

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode can
be terminated.

294 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Command 42 q) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Terminating the circular interpolation

It is advisable to issue command 42 on completion of an interpolation in order


to remove workload from the processor and not unnecessarily prolong
processing of the task. This advise also applies if the interpolation is
repeated during the further program flow.

Acknowledging r) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

Command 108 s) Command 108 deactivates the function of the 3D circular interpolation. This
deactivates the 3D is the default setting.
circular
interpolation Register 1xy001 = 108 3D circular interpolation mode - OFF

For programming examples of the individual variants, please refer to the CD


provided with this manual.

Jetter AG 295
8 Continuous Path Controls JetWeb

8.3.5 Overview of Registers:


Circular interpolation with 3 axes
The overview of registers lists all registers relevant for circular interpolation with 3
axes. These registers might be necessary both for the master axis and the slave
axes. This will be described in more detail in the next chapter.

Reg. Registers:
R/W
# Circular interpolation with 3 axes
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

041 - *** Registers: Circular interpolation with 3 axes


166
041 R/W Center 1

042 R/W Center 2

045 R/W Set angle

074 R Center of virtual axis 1

075 R Center of virtual axis 2

076 R Circular angle of virtual axes

296 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

077 R/W X-coordinate teach point 1

078 R/W Y-coordinate teach point 1

079 R/W Z-coordinate teach point 1

080 R/W X-coordinate teach point 2

081 R/W Y-coordinate teach point 2

082 R/W Z-coordinate teach point 2

083 R/W X-coordinate teach point 3

084 R/W Y-coordinate teach point 3

085 R/W Z-coordinate teach point 3

087 R/W Rotation around the X-Axis

088 R/W Rotation around the Y-Axis

089 R/W Rotation around the Z-Axis

093 R/W Buffer for Circular Interpolation

128 R/W Axis number of axis 1

129 R/W Axis number of axis 2

166 R Error Register Circular Interpolation

Jetter AG 297
8 Continuous Path Controls JetWeb

8.3.6 Description of Registers:


Circular interpolation with 3 axes

Register 1x4041 Center 1


Function Description

Read Present value for center 1

Write New value for the parameter "center 1"

Value range -8.388.608 .. +8.388.607

Value after reset 0

The following applies to parameterizing the circular motion via angles:


• the value of center 1 present on the projected x-y level is also written into this
register.
The following applies to parameterizing the circular motion via teach values:
• the result of the calculated center of the virtual axis 1 is written into this register;
this means: Content of register 1x4041 = content of register 1x4074.

Note!

Register 1xy041 is also used for other special functions but with different
meaning and effect.

298 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4042 Center 2


Function Description

Read Present value for center 2

Write New value for the parameter "center 2"

Value range -8.388.608 .. +8.388.607

Value after reset 0

The following applies to parameterizing the circular motion via angles:


• the value of center 2 present on the projected x-y level is also written into this
register.
The following applies to parameterizing the circular motion via teach values:
• the result of the calculated center of the virtual axis 2 is written into this register;
this means: content of register 1x4042 = content of register 1x4075.

Note!

Register 1xy042 is also used for other special functions but with different
meaning and effect.

Jetter AG 299
8 Continuous Path Controls JetWeb

Register 1x4045 Set angle


Function Description

Read Present value for the set angle

Write New value for the parameter "set angle"

Value range -8.388.608 .. +8.388.607


32.768 = 360°

Value after reset 0

The following applies to parameterizing the circular motion via angles:


• the value of the set angle present on the projected x-y level is also written into this
register.
The following applies to parameterizing the circular motion via teach values:
• the result of the calculated set angle is written into this register;
this means: content of register 1x4045 = content of register 1x4076.

Note!

Register 1xy045 is also used for other special functions but with different
meaning and effect.

300 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4074 Center of virtual axis 1


Function Description

Read Result of the calculated center 1 in case of 3D


circular interpolation via teach values

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

If the circular motion is parameterized via teach values, the content of this register
must be copied into register 1x4041 after completed calculation.

Register 1x4075 Center of virtual axis 2


Function Description

Read Result of the calculated center 2 in case of 3D


circular interpolation via teach values

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

If the circular motion is parameterized via teach values, the content of this register
must be copied into register 1x4042 after completed calculation.

Note!

Register 1xy075 is also used for other special functions but with different
meaning and effect.

Jetter AG 301
8 Continuous Path Controls JetWeb

Register 1x4076 Set angles of virtual axes


Function Description

Read Result of the calculated set angle in case of 3D


circular interpolation via teach values

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

If the circular motion is parameterized via teach values, the content of this register
must be copied into register 1x4045 after completed calculation.

Register 1x4077 X-coordinate teach point 1


Function Description

Read Present value of the x-coordinate of teach point 1

Write New value for the x-coordinate of teach point 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the x-coordinate of teach point 1 is defined.

302 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4078 Y-coordinate teach point 1


Function Description

Read Present value of the y-coordinate of teach point 1

Write New value for the y-coordinate of teach point 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the y-coordinate of teach point 1 is defined.

Register 1x4079 Z-coordinate teach point 1


Function Description

Read Present value of the z-coordinate of teach point 1

Write New value for the z-coordinate of teach point 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the z-coordinate of teach point 1 is defined.

Jetter AG 303
8 Continuous Path Controls JetWeb

Register 1x4080 X-coordinate teach point 2


Function Description

Read Present value of the x-coordinate of teach point 2

Write New value for the x-coordinate of teach point 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the x-coordinate of teach point 2 is defined.

Register 1x4081 Y-coordinate teach point 2


Function Description

Read Present value of the y-coordinate of teach point 2

Write New value for the y-coordinate of teach point 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the y-coordinate of teach point 2 is defined.

304 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4082 Z-coordinate teach point 2


Function Description

Read Present value of the z-coordinate of teach point 2

Write New value for the z-coordinate of teach point 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the z-coordinate of teach point 2 is defined.

Note!

Register 1xy082 is also used for other special functions but with different
meaning and effect.

Jetter AG 305
8 Continuous Path Controls JetWeb

Register 1x4083 X-coordinate teach point 3


Function Description

Read Present value of the x-coordinate of teach point 3

Write New value for the x-coordinate of teach point 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the x-coordinate of teach point 3 is defined.

Note!

Register 1xy083 is also used for other special functions but with different
meaning and effect.

306 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4084 Y-coordinate teach point 3


Function Description

Read Present value of the y-coordinate of teach point 3

Write New value for the y-coordinate of teach point 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the y-coordinate of teach point 3 is defined.

Note!

Register 1xy084 is also used for other special functions but with different
meaning and effect.

Jetter AG 307
8 Continuous Path Controls JetWeb

Register 1x4085 Z-coordinate teach point 3


Function Description

Read Present value of the z-coordinate of teach point 3

Write New value for the z-coordinate of teach point 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for parameterizing the circular motion via 3 teach values. Here,
the z-coordinate of teach point 3 is defined.

Note!

Register 1xy085 is also used for other special functions but with different
meaning and effect.

308 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4087 Rotation around the X-Axis


Function Description

Read Present value of the rotation around the x-axis

Write New value for the rotation around the x-axis

Value range -180.000 .. +180.000

Value after reset 0

This register is used for parameterizing the circular motion via angles. To make a
circle in the space possible, the x-y level is rotated around the 3 levels of the
cartesian coordinates. Here, the rotation around the x-axis is defined.

Note!

Register 1xy087 is also used for other special functions but with different
meaning and effect.

Register 1x4088 Rotation around the Y-Axis


Function Description

Read Present value of the rotation around the y-axis

Write New value for the rotation around the y-axis

Value range -180.000 .. +180.000

Value after reset 0

This register is used for parameterizing the circular motion via angles. To make a
circle in the space possible, the x-y level is rotated around the 3 levels of the
cartesian coordinates. Here, the rotation around the y-axis is defined.

Jetter AG 309
8 Continuous Path Controls JetWeb

Register 1x4089 Rotation around the Z-Axis


Function Description

Read Present value of the rotation around the z-axis

Write New value for the rotation around the z-axis

Value range -180.000 .. +180.000

Value after reset 0

This register is used for parameterizing the circular motion via angles. To make a
circle in the space possible, the x-y level is rotated around the 3 levels of the
cartesian coordinates. Here, the rotation around the z-axis is defined.

Register 1x4093 Buffer for Circular Interpolation


Function Description

Read Present value of the buffer definition

Write New value for the buffer

Value range 1 .. 10

Value after reset 1

This register is used for parameterizing the circular motion via 3 teach values. Here
is defined which circular motion will be calculated next. A max. number of 10 circles
can be pre-calculated.

310 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4128 Axis number of axis 1


Function Description

Read Present axis number of the first axis involved

Write New first axis involved

Value range 0, 21, 31, 41 .. 81

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the first axis involved must be written into this
master register.

Register 1x4129 Axis number of axis 2


Function Description

Read Present axis number of the second axis involved

Write New second axis involved

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the second axis involved must be written into
this master register.

Jetter AG 311
8 Continuous Path Controls JetWeb

Error Register Circular


Register 1x1166
Interpolation
Function Description

Read Present state of the error

Write Illegal

Value range Bit-coded, bit 0 .. 23-bit-signed integer

Value after reset 0

A bit is set in this register when an error has occurred during the calculation of the
circular motion via teach values. Meaning of error bits:

Bit #: Meaning
0 Accumulative error

1 Teach points too close


This bit is set if the distance between starting point and center point,
center point and end point, or end point and starting point is smaller
than 100 increments.

2 All 3 teach points are located on a straight line


This bit is set if the value of the square is smaller than 173 increments2.

4 Internal memory allocation error

312 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.3.7 Overview of Commands:


Circular interpolation with 3 axes
The following overview of commands contains all commands which are directly used
for a circular interpolation with 3 axes. These commands are written into the
command register 1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Commands:
Command #
Circular interpolation with 3 axes
41 Start interpolation

42 Remove axis from interpolation

107 3D circular interpolation mode - ON

108 3D circular interpolation mode - OFF

113 3D circular interpolation: Starting the calculation


using teach values

115 3D circular interpolation: calculated via teach values

116 3D circular interpolation: calculated via angles

Jetter AG 313
8 Continuous Path Controls JetWeb

8.4 Combined Circular and Linear


Interpolation
8.4.1 Overview
The combination of a circular and a linear interpolation is a special function which can
be realized with the JX6-CON-Move-BP module.

8.4.2 Combined interpolation with the JX6-


CON-Move-BP module
In the preceding chapters, linear and circular interpolations were described as
individually running operations. If interpolation is carried out as combined
interpolation, there is no substantial change as to general functioning, mode of
operation and programming. Please observe, that only circular interpolations with
two axes can be used for this mode. Up to 4 additional axes can be involved in linear
interpolation.
If a circular interpolation is to be combined with a linear interpolation, you have to
start with parameterizing the circular interpolation. This constitutes the "main
motion".
Linear interpolation of the axis whose motion is to be coordinated by linear
interpolation, is carried out in proportion to the length of the arc of the circle. This
means that the set velocity and the acceleration and deceleration ramps of the axes
which are subject to linear interpolation are controlled in proportion of its nominal/
actual difference to the circumference of the arc of the circle.

Operating principle
one axis acts as master axis, all other axes involved are regarded as slave axes. The
physically existing axes represent the slave axes. The master axis, however, is a
virtual software axis. This means that this axis does not exist physically.
For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move-BP module. The result of these
calculations is reflected in the master axis.
With an interpolation, the master axis takes over all the cordination tasks between
the involved axes.
For the combined linear and circular interpolation again applies that the parameters
for the resultant (such as acceleration and deceleration ramps, velocity and
destination window) have to be specified in the master axis.
The JX6-CON-Move-BP controller module on which the master axis is to be
addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.
Details on configuration possibilities are provided in the following chapter.

314 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

General Prerequisites
Some essential aspects have to be taken into account with regard to the combined
circular and linear interpolation function.

• Basically, accurate adjustment of the controllers is the precondition for proper


functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more exactly the physical axes will travel along the
resultant circle/diagonal.

• Before the combined interpolation can be started, maximum velocity and encoder
resolution axes have to be adapted to suit the master axis.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

Jetter AG 315
8 Continuous Path Controls JetWeb

8.4.3 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move-BP controller module.

Fig. 65: Combined circular and linear interpolation - axis configurations

Note!

In general, only the two physical axes 1 and 2 of a JX6-CON-Move-BP controller


module can be involved in this type of interpolations.

316 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

o A maximum of 2 axes can be involved in circular interpolation.

o Additionally, a maximum of 4 axes can be involved in the linear


interpolation.

o A module, the axis of which is involved in the circular


interpolation, is designated as master module.

o The software axis, i.e. the virtual axis 4 of this master module,
constitutes the master axis and determines the
parameterization of the coordinated motions.

o All physical axes involved are considered as slaves.

Note!

To carry out this kind of interpolations, the following restriction as to hardware


configuration has to be taken into account:

Since axes are used that are located on various controller modules and
thus in various slots, only modules of the type JX6-CON-Move-BP are
allowed.

Jetter AG 317
8 Continuous Path Controls JetWeb

Possible axis configurations


There are 3 fundamental ways of using axes in a combined circular and linear
interpolation:

1. Both axis modules involved in circular interpolation are located


on one module.
Additionally, a maximum of 4 axes (only physical axes 1 or 2) of
other expansion modules can be involved in the linear
interpolation.

2. The two physically first axes of two different expansion


modules are involved in the circular interpolation.
Additionally, a maximum of 4 axes (only physical axes 1 or 2)
can be involved in the linear interpolation. These axes can be
internal or external slaves.

3. The physically fist axis of a module (master) and a physically


second axis of another module are involved in the circular
interpolation.
Additionally, a maximum of 4 axes (only physical axes 1 or 2)
can be involved in the linear interpolation. These axes can be
internal or external slaves.

The configuration possibilities within the various variants are described in detail
below.

It is basically possible that several interpolations are carried out simultaneously


within the controller.
In this case, however, the separation from the hardware side between slots 4 and 5
must be taken into account. This means that the controller modules in slots 2 through
4 can be used for one interpolation job, and the modules located in slots 5 through 8
for another interpolation job.

318 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Combined Interpolation Configurations Variant 1

Both axes of the Variant 1 distinguishes itself by the fact that the two axes involved in circular
master module interpolation are located on one module.
are involved in The axes, the linear interpolation of which has to be combined, must be physical
circular axes 1 or 2 and must be located on different expansion modules.
interpolation, plus The hardware configuration could be as follows:
a maximum of 4
external axes
Slot 1 2 3

JX6-CON- JX6-CON-
CPU
Move-BP Move-BP

Submodule 3 Submodule 3
(empty/AD8/ (empty/AD8/
DA4/SV) DA4/SV)

Submodule 2 Submodule 2
(must be (empty/AD8/
empty) DA4/SV)

Submodule 1 Submodule 1
(JX6-SB) (JX6-SB)
Axis 21, 22 Axis 31

Master module => software axis 4 = master axis

Fig. 66: Configuration for Combined Interpolation Variant 1

A JX6-CON-Move-BP module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 via which axes 21 and 22 are configured for the circular
interpolation.
The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of submodule 3 is irrelevant for this kind of interpolation. For example,
additional I/O cards can be plugged.
A JX6-CON-Move-BP module is also plugged in slot 3 of the rack. Axis 31 is defined
via a JX6-SB module (submodule 1). This axis is to be involved additionally in the
linear interpolation.

Jetter AG 319
8 Continuous Path Controls JetWeb

Due to the fact that both axes involved in the circular interpolation are located on the
controller module in slot 2, this module is automatically designated as master
module. In order to calculate the starting point of the arc of the circle, the latest set
positions of the axes are required. In the given configuration, this information is
internally available in the module. Therefore, register 1x4150 need not be
parameterized.
Axis 31, the linear interpolation of which is to be combined with the circular motion,
is to be considered as external slave and has to be parameterized accordingly.

It is possible to plug axis modules into a variety of sockets. In this case, however, the
separation from the hardware side between slots 4 and 5 must be taken into account.
This means that all modules must either be located in slots 2 through 4, or 5 through
8. In principle, slot 1 is reserved for the CPU module.

Thus, the following combination possibilities exist for variant 1:

Axes involved in Axes which can be Note


circular interpolation combined for linear
interpolation

21, 22 31, 32, 41, 42 All 4 axes or just some of


them can be combined
31, 32 21, 22, 41, 42 additionally for the linear
41, 42 21, 22, 31, 32 interpolation

------- Bus separation -------

51, 52 61, 62, 71, 72, 81, 82


a maximum of 4 axes of the
61, 62 51, 52, 71, 72, 81, 82 possible number of axes can
71, 72 51, 52, 61, 62, 81, 82 be combined for the linear
interpolation
81, 82 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

320 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Combined Interpolation Configurations Variant 2

Circular In Variant 2, the two axes involved in circular interpolation are located on different
interpolation of controller modules. The physically first axes are used for the circular interpolation.
the first axes of Additionally, a maximum of 4 axes (physical axes 1 or 2), which are located on one
two different of the two module or on other expansion modules, can be involved in the linear
modules interpolation.
combined with Here a possible configuration:
linear
interpolation of
one axis Slot 1 2 3
a max. of 4 axes

JX6-CON- JX6-CON-
CPU
Move-BP Move-BP

Submodule 3 Submodule 3
(empty/AD8/ (empty/AD8/
DA4/SV) DA4/SV)

Submodule 2 Submodule 2
(must be (empty/AD8/
empty) DA4/SV)

Submodule 1 Submodule 1
(JX6-SB) (JX6-SB)
Axis 21, 22 Axis 31

Master module => software axis 4 = master axis

Fig. 67: Configuration for Combined Interpolation Variant 2

The hardware configuration was chosen similar to variant 1 to illustrate that the user
can influence the configurations.
JX6-CON-Move-BP modules are plugged in slots 2 and 3 of the rack. A JX6-SB
module is integrated as submodule 1 via which the axes are configured.
The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of submodule 2 in socket 3 and the type of the two submodules 3 is
irrelevant for this kind of interpolation. For example, additional I/O cards can be
plugged.

Jetter AG 321
8 Continuous Path Controls JetWeb

Unlike variant 1, the physically first axes of the controller modules in slots 2 and 3 are
involved in the circular interpolation, i.e. axes 21 and 31.
The physically second axis of the controller module in slot 2 contains the axis which
is subject to the additional linear interpolation (axis 22).

Since both axes involved in circular interpolation are located on different modules,
one axis has to be considered as external axis. Before starting the circular
interpolation, the latest set position of the external axis has to be communicated to
the master. This value is required to calculate the starting point and has to be
parameterized in the master register 1x4150.

By deciding which register will be used as master register, decision is made at the
same time which module will constitute the master module. For variant 2 shown
above, two parameterization possibilities exist.

Register 124150 is parameterized: • module 2 is the master module,


• axis 31 is the external axis,
• the value in the register corresponds
to the latest set position of axis 31.

Register 134150 is parameterized: • module 3 is the master module,


• axis 21 is the external axis,
• the value in the register corresponds
to the latest set position of axis 21.

The axes (between one and four) being subject to the combined linear interpolation
are also to be considered as slave and need to be parameterized accordingly.

It is possible to plug axis modules into a variety of sockets. In this case, however, the
separation from the hardware side between slots 4 and 5 must be taken into account.
This means that all modules must either be located in slots 2 through 4, or 5 through
8.

322 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The following configurations are possible for variant 2:

Axes involved in Axes which can be Note


circular interpolation combined for linear
interpolation

21, 31 22, 32, 41, 42 All 4 axes or just some of


them can be combined
21, 41 22, 31, 32, 42 additionally for the linear
31, 41 21, 22, 33, 42 interpolation

------- Bus separation -------

51, 61 52, 62, 71, 72, 81, 82

51, 71 52, 61, 62, 72, 81, 82

51, 81 52, 61, 62, 71, 72, 82 a maximum of 4 axes of the


possible number of axes can
61, 71 51, 52, 62, 72, 81, 82 be combined for the linear
interpolation
61, 81 51, 52, 62, 71, 72, 82

71, 81 51, 52, 61, 62, 72, 82

Combinations across the bus separation are not permitted!

Jetter AG 323
8 Continuous Path Controls JetWeb

Combined Interpolation Configurations Variant 3

The fist axis of a In Variant 3, the two axes involved in circular interpolation are located on different
module and the controller modules. One axis is a physically first axis (and thus master), the other
second axis of axis involved in the circular interpolation is a physically second axis.
another module Additionally, a maximum of 4 axes (physical axes 1 or 2), which are located on one
are involved in of the two module or on other expansion modules, can be involved in the linear
circular interpolation.
interpolation plus Here a possible configuration:
a max. of 4 axes

Fig. 68: Configuration for Combined Interpolation Variant 3

JX6-CON-Move-BP modules are plugged in slots 2, 3 and 4 of the rack. A JX6-SB


module is integrated as submodule 1 via which the axes are configured.
The socket for submodule 4 must remain empty. No submodules may be plugged.
The type of submodule 2 in sockets 2 and 3 and the type of the two submodules 3
(of all sockets used) is irrelevant for this kind of interpolation. For example, additional
I/O cards can be plugged.

324 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The physically first axis of the controller module in slot 2 (axis 21) and the physically
second axis of the controller module in slot 3 (axis 32) are involved in the circular
interpolation.
The two axes of the controller module in slot 4 (axis 41 and 42) are the axes subject
to the additional linear interpolation.

Since both axes involved in circular interpolation are located on different modules,
one axis has to be considered as external axis. In this configuration variant, always
the involved physical axis 1 is the master. Thus the physically second axis of the
other module is the external slave.
Before starting the circular interpolation, the latest set position of the external axis
has to be communicated to the master. This value is required to calculate the starting
point and has to be parameterized in the master register 1x4150.

The axes (between one and four) being subject to the combined linear interpolation
are also to be considered as slave and need to be parameterized accordingly.

It is possible to plug axis modules into a variety of sockets. In this case, however, the
separation from the hardware side between slots 4 and 5 must be taken into account.
This means that all modules must either be located in slots 2 through 4, or 5
through 8.

Jetter AG 325
8 Continuous Path Controls JetWeb

The following configurations are possible for variant 3:

Axes involved in Axes which can be Note


circular interpolation combined for linear
interpolation

21, 32 22, 31, 41, 42

21, 42 22, 31, 32, 41 All 4 axes or just some of


31, 22 21, 32, 41, 42 them can be combined
additionally for the linear
31, 42 21, 22, 32, 41 interpolation

41, 22 21, 31, 32, 42

41, 32 21, 22, 31, 42

------- Bus separation -------

51, 62 52, 61, 71, 72, 81, 82

51, 72 52, 61, 62, 71, 81, 82

51, 82 52, 61, 62, 71, 72, 81

61, 52 51, 62, 71, 72, 81, 82

61, 72 51, 52, 62, 71, 81, 82 A maximum of 4 axes of the


61, 82 51, 52, 62, 71, 72, 81 possible number of axes can
be combined for the linear
71, 52 51, 61, 62, 72, 81, 82 interpolation

71, 62 51, 52, 61, 72, 81, 82

71, 82 51, 52, 61, 62, 72, 81

81, 52 51, 61, 62, 71, 72, 82

81, 62 51, 52, 61, 71, 72, 82

81, 72 51, 52, 61, 62, 71, 82

Combinations across the bus separation are not permitted!

326 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.4.4 Programming Rules

Designating a a) One module is designated as master. This designation depends on the


module as master configuration, does not require a special command and is determined by the
use of the master register.
Axis 4 of this master module immediately acts as master axis for
interpolation. All physical axes involved in the coordinated motion are
considered as slaves.

Registering axes b) The master must be informed of the physical axes being involved in the
involved in circular interpolation. To do so, the logical axis numbers have to be entered
individual into the corresponding master registers.
interpolations
with the master Register 1x4128 = __ Axis number of axis 1

Register 1x4129 = __ Axis number of axis 2

c) If the axes, the linear interpolation of which is to be combined, are external


slaves, then an entry has to be made into the corresponding master register.

Register 1x4132 = __ Axis number of the external slave 1

Register 1x4133 = __ Axis number of the external slave 2

Register 1x4134 = __ Axis number of the external slave 3

Register 1x4135 = __ Axis number of the external slave 4

Defining the d) The slave axes which are subject to linear interpolation (a maximum number
slaves involved in of 4) must be informed of the fact that they are involved in the coordinated
linear motion. This is carried out through a command in the corresponding slave
interpolation register. If this command was issued during a preceding interpolation and not
by command yet cancelled by command 42, it is not necessary to issue this command
once again.

Register 1x1001 = 32 in a combined interpolation, the first axis of


a controller module is the slave

Register 1x2001 = 33 in a combined interpolation, the second axis


of a controller module is the slave

Jetter AG 327
8 Continuous Path Controls JetWeb

Velocity, e) The parameters for the motion of the resultant (set velocity, acceleration
acceleration and ramp, deceleration ramp, destination window) are preset in the registers of
deceleration the master axis (axis 4 of the master module) or in the registers of the data
ramps, axis, respectively.
destination
window Register 1x4003 = __ Set speed

Register 1x4005 = __ Acceleration ramp

Register 1x4006 = __ Deceleration ramp

Register 1x4007 = __ Destination window

If no values are defined, the settings of axis 1 of the master module apply.

Attention: However, the reference value related to the set velocity is defined
in the register of the data axis.

Register 1x1021 = Reference value related to the set velocity

Selecting f) Command 25 has to precede parameterization of the circular interpolation.


combined mode This command informs the master of the fact that the subsequent circular
by command interpolation is combined with a linear interpolation of another axis.

Register 1x4001 = 25 Combined circular and linear interpolation

Starting point of g) In order to calculate the starting point of the arc of the circle, the latest set
the circular positions of both axes involved are required.
interpolation If the involved axes are located on the master module, then the controller
module can access these values internally. Explicit parameterization is not
required.
If the two axes involved in circular interpolation are not located on the same
JX6-CON-Move-BP controller module, the master has to be informed of the
latest set position of the external axis. For this purpose, the master register
1x4150 is used.

Attention: Only the set positions of axes defined on the master module are
available internally.

Register 1x4150 = __ Latest set position of the external axis in inc

Defining centers h) For carrying out a circular interpolation, definition of the centers of both
involved axes in the relevant master registers is mandatory.
While doing so, one has to take into account that the two differences between
the centers and the starting points of the axes do not exceed the value of
±524,207 increments.

Register 1x4041 = __ Center of axis 1 in inc

Register 1x4042 = __ Center of axis 2 in inc

328 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Entering the set i) Parameterization of the set angle by which the coordinated motion should
angle rotate is also mandatory. This value has to be entered into a master register
as well.
For this purpose, the degree value of the angle has to be converted into a
decimal value. The rule applies that 360 degrees are equivalent to the value
of 32,768.
Furthermore, it must be taken into account that the size of the set angle is
chosen in such a way that the maximum length of the arc of the circle does
not exceed the value of 67,108,000 increments.

Register 1x4045 = __ Set angle of the circular interpolation

Storing the set j) The set positions of the slaves for the linear interpolation are communicated
position of a slave to the master.

Register 1x4032 = __ Set position of the external slave 1 involved


in the linear interpolation

Register 1x4033 = __ Set position of the external slave 2 involved


in the linear interpolation

Register 1x4034 = __ Set position of the external slave 3 involved


in the linear interpolation

Register 1x4035 = __ Set position of the external slave 4 involved


in the linear interpolation

Register 1x4031 = __ Set position of the second master module


axis if an internal slave is involved in the
linear interpolation

Jetter AG 329
8 Continuous Path Controls JetWeb

Adjusting the k) The max. velocity for the slave axes must be adjusted to suit the velocity of
max. velocity the data axis.
The data axis corresponds to axis 1 of the master module. The remaining
axes involved in interpolation must be informed of the maximum velocity the
data axis is travelling with.
There are two formulas by which the register value can be determined
depending on whether a gear box is mounted between motor and encoder.

Without gear box:


The value of the relevant slave register 1x051 of the second involved axis
depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box:


The value of the respective slave register 1xy051 is calculated by the
following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the
gear ratio.
Register 1xy018 specifies the max. speed which can be reached by the
servo controller/motor combination which is at the same time the valid value
for the data axis. Exemplary calculations are given following the description
of the encoder resolution adjustment.
Therefore, velocity must be adjusted whenever the maximum velocity of both
involved axes are not identical with each other.
If the values are identical, register 1xy051 need not be parameterized and
the reset value "0" can remain unchanged.

Adjusting the l) The encoder resolution of the slave axes involved also have to be adjusted
encoder to suit the data axis. Once more, it applies to the definition of the data axis
resolution that the data axis corresponds to axis 1 of the master module.
If a slave axis involved in the interpolation has an encoder resolution other
than the resolution of the data axis, then register 1xy052 of this slave axis
has to be parameterized.
The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

330 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Examples for adjusting max. velocity and encoder


resolution
The following 3 examples proceed from the assumption that axis 31 is an
external slave of axis 21, thus defining axis 21 as data axis and axis 31 as
slave axis.
Please take into account that the results of the calculations have to be
entered into the registers. If you would enter the formulas used in the
examples in the JetSym program, it could happen that the value always is "0"
due to the integer arithmetic.

Example 1: with gear box, incremental encoder

Register contents: 121018 = 700 rpm


121017 115.70 inc/mm
131017 50.06 inc/mm

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

inc
50, 06 ----------
mm rev
Register131051 = ------------------------------ × 700 ----------
inc- min
115, 70 ---------
mm

rev
Register131051 = 302, 87 ----------
min

Value 303 is assigned to slave register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
50, 06 ----------
mm
Register131052 = ------------------------------ × 1.000
inc
115, 70 ----------
mm

Register131052 = 432, 67

Value 433 is assigned to slave register 131052.

Jetter AG 331
8 Continuous Path Controls JetWeb

Example 2: without gear box but with different encoder

Register contents: 121018 = 3,000 rpm


131018 = 3,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register 131051 need not be parameterized since the max. velocities


are identical.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

Example 3: Same conditions as under example 2 but different vmax

Register contents: 121018 = 3,000 rpm


131018 = 6,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register1xy051 = Register1xy018

rev
Register131051 = 3.000 ----------
min

The register value of the data axis, i.e. value 3,000 is assigned to slave
register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

332 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Registers for m) The following master and slave registers contain additional information
additional concerning circular interpolation. The register contents are calculated and
information updated by the JX6-CON-Move-BP controller module internally. The user
can only read these registers (writing is not permitted) and use the data as
information (e.g. for visualization purposes) or for further calculations.

Register Description

1x4046 Calculated radius of the circular


interpolation

1x4047 Calculated starting angle of the circular


interpolation

1x4048 Calculated circle arc length of the circular


interpolation

1xy049 Calculated target position for axis 1 (master)

1xy050 Calculated target position for axis 2 (slave)

Command 41 n) Issuing command 41 to the master axis starts the entire motion.
starts
the interpolation Register 1x4001 = 41 Starting point of the combined circular and
linear interpolation

All axes involved start synchronously and reach their set positions at the
same time. Each axis is travelling at such a velocity that the resultant velocity
corresponds to the set velocity specified in register 1x4003. If a new value is
written into register 1x4003 during the positioning process, then the velocity
of all axes changes.

Waiting for o) An AXARR instruction issued to axis 4 stops all physical axes. Completion of
completion of the the interpolation process is monitored by querying status register bit 1 of all
interpolation physical axes involved (bit 1: AXARR = the position has been reached).
process

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode can
be terminated.

Command 42 p) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 End of the combined circular and linear


interpolation

It is advisable to issue command 42 on completion of an interpolation in order


to remove workload from the processor and not unnecessarily prolong
processing of the task. This advise also applies if the interpolation is
repeated during the further program flow.

Jetter AG 333
8 Continuous Path Controls JetWeb

Acknowledging q) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

For programming examples of the individual variants, please refer to the CD


provided with this manual.

334 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.4.5 Overview of Registers:


Combined circular and linear
interpolation
This overview contains all registers used for a combined circular and linear
interpolation. These registers might be necessary both for the master axis and the
slave axes. This will be described in more detail in the next chapter.

Reg. Registers: Combined circular and


R/W
# linear interpolation
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

041 - *** Registers: Circular Interpolation


150
041 R/W Center of axis 1

042 R/W Center of axis 2

045 R/W Set angle of the circular interpolation

046 R Calculated radius of the circular interpolation

047 R Calculated starting angle of the circular interpolation

Jetter AG 335
8 Continuous Path Controls JetWeb

048 R Calculated circle arc length of the circular interpolation

049 R Calculated target position for axis 1 (master)

050 R Calculated target position for axis 2 (slave)

128 R/W Axis number of axis 1

129 R/W Axis number of axis 2

150 R/W Latest set position of the external axis

030 - *** Registers: Linear Interpolation


135
031 R/W Set position of the second axis of the master module

032 R/W Set position of the external slave 1

033 R/W Set position of the external slave 2

034 R/W Set position of the external slave 3

035 R/W Set position of the external slave 4

4132 R/W Axis number of the external slave 1

4133 R/W Axis number of the external slave 2

4134 R/W Axis number of the external slave 3

4135 R/W Axis number of the external slave 4

051 - *** Shared registers for


052 circular and linear interpolation
051 R/W Adjustment of the max. velocity to suit the data axis

052 R/W Adjustment of the encoder resolution to suit the data axis

336 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.4.6 Description of Registers:


Combined circular and linear
interpolation

Registers for circular interpolation

Register 1x4041 Center of axis 1


Function Description

Read Present value for the center of axis 1

Write New value for the center of axis 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 1 has to be
entered into this register.
Apart from the center of this axis, the center of axis 2 (register 1x4042) and the set
angle by which rotation has to take place (register 1x4045) have to be defined since
they are prerequesite for circular interpolation.

Jetter AG 337
8 Continuous Path Controls JetWeb

Register 1x4042 Center of axis 2


Function Description

Read Present value for the center of axis 2

Write New value for the center of axis 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 2 has to be
entered into this register.
Apart from the center of this axis, the center of axis 1 (register 1x4041) and the set
angle by which rotation has to take place register 1x4045) have to be defined since
they are prerequesite for circular interpolation.

Note!

The difference of (center x) minus (starting point x) must not exceed the value±
524,207 increments.

338 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Set angle of the circular


Register 1x4045
interpolation
Function Description

Read Present value for the set angle of the arc

Write New value for the parameter "set angle"

Value range -8.388.608 .. +8.388.607


32.768 = 360°

Value after reset 0

The set angle of the arc of the circle which both axes are travelling along during a
circular interpolation is defined in this register. Apart from this, the centers of axis 1
(register 1x4041) and axis 2 (register 1x4045) have to be entered into the
corresponding registers since they are prerequesite for circular interpolation.

Note!

The length of the arc of the circle must not exceed 67,108,000 increments.

Jetter AG 339
8 Continuous Path Controls JetWeb

Calculated radius of the circular


Register 1x4046
interpolation
Function Description

Read Present value of the radius (calculated by the


controller module)

Write Illegal

Value range -524.207 .. +524.207

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045 the JX6-
CON-Move(-BP) module calculates the radius of the circular interpolation internally.

Calculated starting angle of the


Register 1x4047
circular interpolation
Function Description

Read Present value of the starting angle (calculated by


the controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045 the JX6-
CON-Move(-BP) module calculates the starting angle of the circular interpolation
internally.

340 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Calculated circle arc length of


Register 1x4048
the circular interpolation
Function Description

Read Present value of the circle arc (calculated by the


controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the circle arc of the circular interpolation
internally which can be accessed in this register.

Calculated target position


Register 1xy049
axis 1 (master)
Function Description

Read Present value of the target position of axis 1


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the target position of axis 1 internally which can
be accessed in this register.

Jetter AG 341
8 Continuous Path Controls JetWeb

Calculated target position


Register 1xy050
Axis 2 (slave)
Function Description

Read Present value of the target position of axis 2


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4041, 1x4042 and 1x4045, the JX6-
CON-Move(-BP) module calculates the target position of axis 2 internally which can
be accessed in this register.

Register 1x4128 Axis number of axis 1


Function Description

Read Present axis number of the first axis involved

Write New first axis involved

Value range 0, 21, 31, 41 .. 81

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the first axis involved must be written into this
master register.

342 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4129 Axis number of axis 2


Function Description

Read Present axis number of the second axis involved

Write New second axis involved

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the second axis involved must be written into
this master register.

Latest set position


Register 1x4150
of the external axis
Function Description

Read Present value of the latest set position of the


external axis

Write New set position of the external axis

Value range -8.388.608 .. +8.388.607

Value after reset 0

This master register must contain the latest set position of an external axis if this axis
is to participate in a circular interpolation.
This register must be parameterized whenever the involved axes are not located on
the same module.
The parameterization has consequences for determining the configuration of the
involved axes. Moreover, the latest set positions of both axes involved are required
to calculate the starting point of the arc of the circle.

Jetter AG 343
8 Continuous Path Controls JetWeb

Registers for linear interpolation

Set position of the second axis


Register 1x4031:
of the master module
Function Description

Read Present set position value for master module axis


2

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

The set position of the slave has to be communicated to the master axis for carrying
out linear interpolation (in the course of combined interpolation). For this purpose,
this register is used as master register.
If axis 2 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. The slave
axis must have been declared as such.

Set position of the external


Register 1x4032:
slave 1
Function Description

Read Present set position value for the external slave 1

Write New set position for the external slave 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

The set position of the slave has to be communicated to the master axis for carrying
out linear interpolation (in the course of combined interpolation). For this purpose,
this register is used as master register.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

344 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Set position of the external


Register 1x4033:
slave 2
Function Description

Read Present set position value for the external slave 2

Write New set position for the external slave 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

The set position of the slave has to be communicated to the master axis for carrying
out linear interpolation (in the course of combined interpolation). For this purpose,
this register is used as master register.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Set position of the external


Register 1x4034:
slave 3
Function Description

Read Present set position value for the external slave 3

Write New set position for the external slave 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

The set position of the slave has to be communicated to the master axis for carrying
out linear interpolation (in the course of combined interpolation). For this purpose,
this register is used as master register.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Jetter AG 345
8 Continuous Path Controls JetWeb

Set position of the external


Register 1x4035:
slave 4
Function Description

Read Present set position value for the external slave 4

Write New set position for the external slave 4

Value range -8.388.608 .. +8.388.607

Value after reset 0

The set position of the slave has to be communicated to the master axis for carrying
out linear interpolation (in the course of combined interpolation). For this purpose,
this register is used as master register.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Axis number of the external


Register 1x4132:
slave 1
Function Description

Read Present axis number of the first external slave


axis involved

Write New first external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the first external slave axis involved must be
written into this master register.

346 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Axis number of the external


Register 1x4133:
slave 2
Function Description

Read Present axis number of the second external slave


axis involved

Write New second external slave axis involved (enter


the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the second external slave axis involved must
be written into this master register.

Axis number of the external


Register 1x4134:
slave 3
Function Description

Read Present axis number of the third external slave


axis involved

Write New third external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the third external slave axis involved must be
written into this master register.

Jetter AG 347
8 Continuous Path Controls JetWeb

Axis number of the external


Register 1x4135:
slave 4
Function Description

Read Present axis number of the fourth external slave


axis involved

Write New fourth external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation is to be executed with external slave axes, the master must
be informed of the slave axes which are involved in the coordinated motion.
Therefore, the logical axis number of the fourth external slave axis involved must be
written into this master register.

348 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Shared registers for circular and linear interpolation:

Adjustment of the max. velocity


Register 1xy051:
to suit the data axis
Function Description

Read Present value for velocity adjustment

Write New value for velocity adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

Velocity must be adjusted whenever the maximum velocity of the involved axes and
of the data axis are not identical with each other. If the values are identical, register
1xy051 need not be parameterized.
With the combined circular and linear interpolation, the data axis corresponds to axis
1 of the master module (like with a pure circular interpolation).
The remaining axes involved in interpolation must be informed of the maximum
velocity the data axis is travelling with.
There are two formulas by which the register value can be determined depending on
whether a gear box is mounted between motor and encoder.

Without gear The value of the relevant slave register 1xy051 of the involved
box: axes depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box: The value of the respective slave register 1xy051 is calculated
by the following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of the encoder resolutions describes the transmission ratio. Register
1xy018 specifies the maximum velocity which can be reached by the servo/motor
combination. At the same time, this value is the valid value for the data axis.

Jetter AG 349
8 Continuous Path Controls JetWeb

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolution of the involved axes (similar to the maximum velocity) must
be adjusted to suit the resolution of the data axis. Once more, it applies to the
definition of the data axis that, for combined circular and linear interpolation, the data
axis corresponds to axis 1 of the master module.
If a slave axis involved in the interpolation has an encoder resolution other than the
resolution of the data axis, then register 1xy052 of this slave axis has to be
parameterized. The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

350 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.4.7 Overview of Commands:


Combined circular and linear
interpolation
The following overview contains all commands which are directly used for a
combined circular and linear interpolation. These commands are written into the
command register 1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Commands:
Command # Combined circular and linear
interpolation
25 Combined circular and linear interpolation

32 Axis 1 is slave

33 Axis 2 is slave

41 Start interpolation

42 Remove axis from interpolation

Jetter AG 351
8 Continuous Path Controls JetWeb

8.5 Consecutive interpolation


8.5.1 Overview
This special function and the JX6-CON-Move(-BP) module allow to realize
consecutive interpolations. Using this feature whole curve paths are processed, so
as to say in one go.

8.5.2 Consecutive interpolation with the JX6-


CON-Move(-BP) module
In the preceding chapters, linear and circular interpolations as well as combined
linear and circular interpolations were described as individually running operations.
If interpolation is carried out as consecutive interpolation, there is no substantial
change as to general functioning, mode of operation and programming.

The individual motion segments are subdivided into linear, circular, or combined
interpolations and, as before, are programmed independently.
Then, the component motions are combined with the help of a memory function and
carried out consecutively (FIFO principle). The first interpolation is carried out
through a respective command. While this motion is being carried out, the
subsequent interpolation is calculated. When the first motion is completed, the
previously calculated motion is carried out. After the second motion is started, the
next interpolation is read out and calculated.

Operating principle
one axis acts as master axis, all other axes involved are regarded as slave axes. The
physically existing axes represent the slave axes. The master axis, however, is a
virtual software axis. This means that this axis does not exist physically.
For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move(-BP) module. The result of these
calculations is reflected in the master axis.
With an interpolation (here, the interpolation is regarded as individual motion), this
master axis takes over all the coordination tasks between the involved axes.
The JX6-CON-Move(-BP) controller module on which the master axis is to be
addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.

352 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Special features of consecutive interpolation


For consecutive interpolation, the expression "axis 42" is introduced. This axis is a
virtual software axis used to control the consecutive interpolation. It is located on a
hierarchical level above the previously defined master axis and it also relates to the
previously defined master module. This means that the master axis (software axis 4)
coordinates the individual interpolations and "Axis 42" coordinates the consecutive
interpolation as a whole motion.

The "axis 42" defined here has nothing to do with the logical axis number 42 (number
of the second physical axis which is defined via the JX6-SB submodule on the JX6-
CON-Move(-BP) controller module in slot 4). The name "axis 42" originates from the
used register numbers.

In principle, "Axis 42" manages the FIFO function. The parameters of the individual
motions are entered into "Axis 42". The values for the first interpolation are
immediately communicated to the master axis. The process gets started, as soon as
a starting command is issued. All subsequent interpolation parameters being
programmed into "Axis 42" of the master module (before the preceding partial motion
is completed) are temporarily stored. While a motion is being carried out, the
subsequent motion is calculated. When the current partial motion is completed the
data of the previously calculated motion are transferred to the master axis and the
given interpolation is started. After this motion is started, the next interpolation is
calculated in "Axis 42".
This way, all data required for accomplishing a complete portion of the path is stored
in the JX6-CON-Move(-BP) module. The individual motions are executed
continuously, and when the last stored individual motion is completed, the JX6-CON-
Move(-BP) module will return an AXARR signal to the CPU.

Fig. 69: Principle of FIFO processing of consecutive interpolations

Jetter AG 353
8 Continuous Path Controls JetWeb

It is possible to track via program which portion of the path is currently being
processed. To do so, register „Counter Path Segment ‘Axis 42’“ is used.
Prior to starting the consecutive interpolation, the register content must be deleted.
On completion of each interpolation, this register is incremented.

A RAM is used for temporary storage of parameters and calculation of the


consecutive interpolation. Its storage capacity is approx. 7,500 registers. The filling
level of this memory can be read through a register (of "Axis 42"). The filling level
drops when interpolations are completed and rises again when new parameters are
loaded.

General Prerequisites
Some essential aspects have to be taken into account with regard to the consecutive
interpolation function:

• The parameters for the individual motions (acceleration ramp, deceleration ramp,
set velocity and destination window) are set in the corresponding registers of
"Axis 42". They always apply to the portion of the motion, parameterization of
which will be completed next by using a starting command. If these parameters
are not overwritten, they also apply to the following interpolations.

• The first interpolation is started by issuing command 41. Before the first
interpolation is completed, the next interpolation has to be started by issuing
command 24. Only this way, a consecutive motion can be reached.
Usually the ramps behave as follows:
For the first interpolation, the acceleration ramp is carried out and for the last
interpolation, the decelartion ramp is carried out. The interpolations inbetween
are usually carried out without ramps since, as a rule, only new set positions are
preset. Exception: if the set velocity of the resultant is to be changed, this is
carried out with the help of the parameterized acceleration ramp.

• Only individual motions with the same slave axes can be carried out as
consecutive interpolation. This means that an interpolation with 3 involved axes
cannot be carried out as consecutive interpolation with an interpolation with 2
involved axes.
However, it is possible to carry out a linear interpolation first and then add a
circular interpolation as consecutive interpolation if the same physical axes are
involved in the interpolation.

• Basically, accurate adjustment of the controllers is the precondition for proper


functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

354 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more exactly the physical axes will travel along the
resultant circle/diagonal.

• Before the consecutive interpolation can be started, maximum velocity and


encoder resolution of the slave axes have also to be adapted to suit the master
axis.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

Jetter AG 355
8 Continuous Path Controls JetWeb

8.5.3 Configurations

General Provisions:

o Consecutive interpolation is based on individual motion


segments which are carried out as linear, circular or combined
interpolations.

o The possible axis configurations are determined by the kind of


interpolations to be used.

o The master module is determined by parameterizing the


interpolation which the component motions are carried out
with.

o The software axis, i.e. the virtual "axis 42" of this master
module, takes over coordination of consecutive interpolation
process.

o All physical axes involved are considered as slaves.

356 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Possible axis configurations


There are 3 different variants of consecutive interpolation:

1. The consecutive interpolation is based on a linear interpolation.

2. The consecutive interpolation is based on a circular


interpolation (with 2 or 3 axes).

3. The consecutive interpolation is based on a combined circular


and linear interpolation.

Basis of a consecutive interpolation is the break down of a path into individual


motions (individually processed interpolations). Therefore, all valid axis
configurations for linear, circular, or combined circular, and linear interpolations may
be used.

The description of the different kinds of interpolation, and possible axis


configurations is given in the preceding chapters 8.1 through 8.4.
All provisions made in these chapters also apply to the corresponding interpolation
which is to be carried out as consecutive interpolation.

It is basically possible that several interpolations are carried out simultaneously


within the controller.
In this case, however, the separation from the hardware side between slots 4 and 5
must be taken into account. This means that the controller modules in slots 2 through
4 can be used for one interpolation job, and the modules located in slots 5 through 8
for another interpolation job.

Jetter AG 357
8 Continuous Path Controls JetWeb

Consecutive interpolation configurations variant 1,


based on the linear interpolation

Consecutive Variant 1 distinguishes itself by the fact that the individual motions of the path are
interpolation based on linear interpolations. All axis configurations mentioned in chapter
based on linear 8.1.3may be used.
interpolation The hardware configuration could be as follows:

Fig. 70: Configuration for Consecutive Interpolation Variant 1

The hardware configuration shown in the figure corresponds to variant 2 of a linear


interpolation.
Both axes of the master module (axis 21, and axis 22) plus the external axis 31, 32,
41 and 42 are involved. The logical axis numbers are indicated under the submodule
name 1 (JX6-SB).

358 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Consecutive interpolation configurations variant 2,


based on circular interpolation

Consecutive Variant 2 distinguishes itself by the fact that the individual motions of the path are
interpolation based on circular interpolations. Circular interpolations can be used with 2 axes
based on circular as well as with 3 axes. All axis configurations mentioned in chapters 8.2.3 and
interpolation 8.3.3can be used.

Slot 1 2 3

JX6-CON- JX6-CON-
CPU
Move-BP Move-BP

Submodule 3 Submodule 3
(empty/AD8/ (empty/AD8/
DA4/SV) DA4/SV)

Submodule 2 Submodule 2
(empty/AD8/ (empty/AD8/
DA4/SV) DA4/SV)

Submodule 1 Submodule 1
(JX6-SB) (JX6-SB)
Axis 21 Axis 31

Master module => software axis 4 = master axis of the circular interpolation
=> “Axis 42” = master axis of the consecutive interpolation

Fig. 71: Configuration for Consecutive Interpolation Variant 2

The hardware configuration shown in the figure corresponds to variant 2 of a circular


interpolation with 2 axes.
Axes 21 and 31 are involved. The logical axis numbers are indicated under the
submodule name 1 (JX6-SB).

Since both axes are located on different expansion modules, one axis has to be
considered as external axis. In the given example this is axis 31. By doing so, the
expansion module located in slot 2 is designated as master module.
Before starting the circular interpolation, the latest set position of the external axis (in
this case axis 31) has to be entered into the corresponding register of "Axis 42". This
must always be realized when circular interpolations with 2 axes of the variants 2 or
3 are to be carried out as consecutive interpolation.

Jetter AG 359
8 Continuous Path Controls JetWeb

Consecutive interpolation configurations variant 3,


based on combined circular and linear interpolation

Consecutive In variant 3, the individual motions of the consecutive interpolation are based on
interpolation combined circular and linear interpolations. All axis configurations mentioned in
based on chapter 8.4.3can be used.
combined circular The hardware configuration could be as follows:
and linear
interpolation

Slot 1 2 3

JX6-CON- JX6-CON-
CPU
Move-BP Move-BP

Submodule 3 Submodule 3
(empty/AD8/ (empty/AD8/
DA4/SV) DA4/SV)

Submodule 2 Submodule 2
(must be (empty/AD8/
empty) DA4/SV)

Submodule 1 Submodule 1
(JX6-SB) (JX6-SB)
Axis 21, 22 Axis 31

Master module
=> software axis 4 = master axis of the combined circular
and linear interpolation
=> “axis 42” = master axis of the consecutive
interpolation

Fig. 72: Configuration for Consecutive Interpolation Variant 3

The hardware configuration shown in the figure corresponds to variant 2 of a


combined circular and linear interpolation.
Axes 21 and 31 are involved in the circular interpolation. In the example, axis 22 is
the axis that is to be involved additionally in the linear interpolation. Since both axes
involved in circular interpolation are located on different modules, one axis has to be
considered as external axis. Before starting the circular interpolation, the latest set
position of the external axis (in this case axis 31) has to be entered into the
corresponding register of "Axis 42".
This must always be realized when a combined circular and linear interpolation of
variant 2 is to be carried out as consecutive interpolation.

360 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.5.4 Programming Rules


For programming a consecutive interpolation, the programming rules for the
interpolation type apply on which the consecutive interpolation is based. For details,
see
• chapter 8.1.4 (for linear interpolations),
• chapter 8.2.4 (for circular interpolations with 2 axes),
• chapter 8.3.4 (for circular interpolations with 3 axes),
• chapter 8.4.4 (for combined circular and linear interpolations),

In the following summary, the programming steps


• that only apply to the consecutive interpolation based on the linear interpolation,
are marked with *** LI *** ,
• that only apply to the consecutive interpolation based on the circular interpolation,
are marked with *** CI *** ,
• that only apply to the consecutive interpolation based on the combined circular
and linear interpolation, are marked with *** CCL *** ,
• those applicable to both parameterization possibilities are not marked specifically.

This type of interpolation is not mentioned in the summary because programming a


circular interpolation with 3 axis is very specifically (parameterizing via teach values
or angles). If this type of interpolation is to be carried out as consecutive interpolation,
the programming steps applicable to all interpolation types (not marked specifically)
just have to be integrated into the normal programming procedure.

Parameterizing a) This step includes designation of the master module and definition of the
individual axis configuration. Any of these operations is accomplished depending on
motions the kind of interpolation which the individual motions are based on. In this
(interpolations) connection all the definitions apply which are made for linear, circular or
combined interpolation.

Parameterizing individual motions *** LI ***

Activating the A master/slave configuration is activated for linear interpolation by entering


configuration for the respective command. The command has to be issued in the register of
linear interpolation "axis 42" since the linear interpolation is planned to be carried out as
by issuing a consecutive interpolation.
command in "axis The command register can be parameterized as follows:
42"
*** LI *** Register 1x4201 = 38 Master/slave configuration 1 is activated

Register 1x4201 = 39 Master/slave configuration 2 is activated

Register 1x4201 = 40 Master/slave configuration 3 is activated

Register 1x4201 = 43 Master/slave configuration 4 is activated

Register 1x4201 = 94 Master/slave configuration 5 is activated

Jetter AG 361
8 Continuous Path Controls JetWeb

Registering The master must be informed which external slave axes (max. number = 4)
external slaves with are involved in the coordinated motion. For this purpose, the logical axis
the master numbers of the slaves have to be entered into the corresponding master
*** LI *** registers. At the same time, the logical axis numbers are assigned to the
external physical slave axes.

Register 1x4132 = __ Axis number of the external slave 1

Register 1x4133 = __ Axis number of the external slave 2

Register 1x4134 = __ Axis number of the external slave 3

Register 1x4135 = __ Axis number of the external slave 4

Defining slaves by Now, the external slaves are informed of their involvement in a coordinated
commands motion by means of a command in the corresponding slave register.
*** LI ***

Register 1x1001 = 32 command 32 for the first axis of a controller


module

Register 1x2001 = 33 command 33 for the second axis of a


controller module

Parameterizing individual motions *** CI ***

Defining the master One module is designated as master. This designation depends on the
module configuration, does not require a special command and is determined by the
*** CI *** use of the master register.
Axis 4 of this master module immediately acts as master axis for circular
interpolation. The software axis "axis 42" controls the consecutive
interpolation. All physical axes involved in the coordinated motion are
considered as slaves.

Registering slaves The master must be informed of the physical axes being involved in the
with the master circular interpolation. To do so, the logical axis numbers have to be entered
*** CI *** into the corresponding master registers.

Register 1x4128 = __ Axis number of the involved axis 1

Register 1x4129 = __ Axis number of the involved axis 2

362 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Parameterizing individual motions *** CCI ***

Defining the master One module is designated as master. This designation depends on the
module configuration, does not require a special command and is determined by the
*** CCL *** use of the master register.
Axis 4 of the master module immediately acts as master axis for the
combined circular and linear interpolation. The software axis "axis 42"
controls the consecutive interpolation. All physical axes involved in the
coordinated motion are considered as slaves.

Registering axes of The master must be informed of the physical axes being involved in the
the individual circular interpolation. To do so, the logical axis numbers have to be entered
interpolations in the into the corresponding master registers.
master
*** CCL *** Register 1x4128 = __ Axis number of the involved axis 1

Register 1x4129 = __ Axis number of the involved axis 2

If the axes, the linear interpolation of which is to be combined, are external


slaves, then an entry has to be made into the corresponding master register.

Register 1x4132 = __ Axis number of the external slave 1

Register 1x4133 = __ Axis number of the external slave 2

Register 1x4134 = __ Axis number of the external slave 3

Register 1x4135 = __ Axis number of the external slave 4

Defining the slaves The slave axes which are subject to linear interpolation (a maximum number
involved in linear of 4) must be informed of the fact that they are involved in the coordinated
interpolation by motion. This is carried out through a command in the corresponding slave
command register.
*** CCL ***
Register 1x1001 = 32 command 32 for the first axis of a controller
module

Register 1x2001 = 33 command 33 for the second axis of a


controller module

Selecting combined Command 25 has to precede parameterization of the circular interpolation.


mode by a This command informs "axis 42" of the fact that the subsequent circular
command in "Axis interpolation is combined with a linear interpolation of another axis and is
42" carried out as consecutive interpolation.
*** CCI ***
Register 1x4201 = 25 Combined circular and linear interpolation

Jetter AG 363
8 Continuous Path Controls JetWeb

Parameterizing b) The parameters for the motion of the resultant (set velocity, acceleration
"axis 42" ramp, deceleration ramp, and destination window) are set in the registers of
"Axis 42".

Register 1x4203 = __ Set speed

Register 1x4205 = __ Acceleration ramp

Register 1x4206 = __ Deceleration ramp

Register 1x4207 = __ Destination window

Attention: However, the reference value related to the set velocity is


defined in the register of the data axis.

Register 1x1021 or 1x2021 = reference value related to the set


velocity

For linear interpolations based on the master/slave configurations 1, 2, 4,


or 5 (commands 38, 39, 42 or 94), the data axis corresponds to axis 1 of
the master module. With linear interpolation based on master/slave
configuration 3 (command 49), axis 2 of the master module is the data axis.
Axis 1 of the master module is the data axis in all variants of the circular
interpolation and the combined circular and linear interpolation.

Adjusting the c) The max. velocity for the slave axes must be adjusted to suit the velocity of
max. velocity the data axis (provisions for the data axis see above). The remaining axes
involved in interpolation must be informed of the maximum velocity the data
axis is travelling with. There are two formulas by which the register value can
be determined depending on whether a gear box is mounted between motor
and encoder.

Without gear box:


The value of the relevant slave register 1xy051 of the involved axes
depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box:


The value of the respective slave register 1xy051 is calculated by the
following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the
gear ratio.
Register 1xy018 specifies the max. speed which can be reached by the
servo/motor combination. This max. speed is at the same time the valid
value for the data axis. Exemplary calculations are given following the
description of the encoder resolution adjustment.
Therefore, the velocity must be adjusted whenever the maximum velocity of
the involved axes and the data axis are not identical with each other.
If the values are identical, register 1xy051 need not be parameterized and
the reset value "0" can remain unchanged.

364 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Geber- d) The encoder resolutions of the slave axes also have to be adjusted to suit
auflösungen the data axis. It once more applies to the definitions of the data axis, that, for
anpassen all kinds of interpolation, the data axis corresponds to axis 1 of the master
module. In this connection, however, the same exception applies: for a
linear interpolation with the master/slave configuration 3, axis 2 of the
master module acts as data axis.
If a slave axis involved in the interpolation has an encoder resolution other
than the resolution of the data axis, then register 1xy052 of this slave axis
has to be parameterized.
The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

Examples for adjusting max. velocity and encoder


resolution
The following 3 examples proceed from the assumption that axis 31 is an
external slave of axis 21, thus defining axis 21 as data axis and axis 31 as
slave axis.
Please take into account that the results of the calculations have to be
entered into the registers. If you would enter the formulas used in the
examples in the JetSym program, it could happen that the value always is
"0" due to the integer arithmetic.

Example 1: with gear box, incremental encoder

Register contents: 121018 = 700 rpm


121017 115.70 inc/mm
131017 50.06 inc/mm

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

inc
50, 06 ----------
mm- rev
Register131051 = ----------------------------- × 700 ----------
inc min
115, 70 ----------
mm

rev
Register131051 = 302, 87 ----------
min

Value 303 is assigned to slave register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
50, 06 ----------
mm
Register131052 = ------------------------------ × 1.000
inc
115, 70 ----------
mm

Register131052 = 432, 67

Value 433 is assigned to slave register 131052.

Jetter AG 365
8 Continuous Path Controls JetWeb

Example 2: without gear box but with different encoder

Register contents: 121018 = 3,000 rpm


131018 = 3,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register 131051 need not be parameterized since the max. velocities


are identical.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

Example 3: Same conditions as under example 2 but different vmax

Register contents: 121018 = 3,000 rpm


131018 = 6,000 rpm
121017 1,024 inc/mm
131017 2,500 inc/mm

Register1xy051 = Register1xy018

rev
Register131051 = 3.000 ----------
min

The register value of the data axis, i.e. value 3,000 is assigned to
slave register 131051.

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

inc
2.500 ----------
mm
Register131052 = ------------------------- × 1.000
inc
1.024 ----------
mm

Register131052 = 2.441,41

Value 2,441 is assigned to slave register 131052.

366 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Specifying wait e) If required, this register of the 1st master module axis has to be programmed
cycles for consecutive interpolation. Since the next interpolation is calculated
for "axis 42“ during the execution of a component motion, timing problems may occur.
This is the case if the portions of the path to be covered are very short. This
problem can be solved by specifying wait cycles for "Axis 42".

Register 1x1084 = Number of wait cycles

Storing f) The required parameters are stored in the registers of "Axis 42" depending
parameters for on the type of individual motion:
consecutive
interpolation in
"Axis 42"

Parameters *** LI ***

Storing the position The set positions of the axes involved in the linear interpolation are to be
of the slaves entered into the relevant registers of "axis 42".
*** LI ***
Register 1x4230 = __ Set position of the first axis of the master
module

Register 1x4231 = __ Set position of the second axis of the


master module

Register 1x4232 = __ Set position of the external slave 1

Register 1x4233 = __ Set position of the external slave 2

Register 1x4234 = __ Set position of the external slave 3

Register 1x4235 = __ Set position of the external slave 4

Register 1x4297 = __ Set position of the third axis of the master


module

Defining the length However, the length of the software axis may be specified by the user. It
of the software axis must be specified by the user if the resultant diagonal is to be spanned
*** LI *** between an axis of the mster module and an external slave axis, or between
two external slaves.
The exemplary calculation is carried out by the following formula:

2 2 2 2
Register124240 = ( ∆21 ) + ( ∆22 ) + ( ∆41 ) + ( ∆42 )

In this case, axes 21, 22, 41, and 42 are involved in the linear interpolation.
The term ∆21 indicates the distance between start and set positions of axis
21. For the calculation of the overall length of the diagonal, all involved axes
have to be taken into account.

Jetter AG 367
8 Continuous Path Controls JetWeb

Parameters *** CI ***

Starting point of the In order to calculate the starting point of the arc of the circle, the latest set
circular positions of both axes involved are required. If both axes are located on the
interpolation master module, then the controller module can access these values
*** CI *** internally. Explicit parameterization is not required. Else, the latest set
position of the external axis must be communicated to "axis 42". For this
purpose, register 1x4350 is used.

Register 1x4350 = __ Latest set position of the external axis in inc

Defining centers The definition of the centers of the two axes involved in the circular
*** CI *** interpolation is to be carried out in the corresponding registers of "axis 42".

Register 1x4241 = __ Center of the involved axis 1 in inc

Register 1x4242 = __ Center of the involved axis 2 in inc

While doing so, one has to take into account that the two differences
between the centers and the starting points of the axes do not exceed the
value of ±524,207 increments.

Entering the set Parameterization of the set angle by which the circular motion should rotate
angle is also mandatory and is carried out by entering the respective value into the
*** CI *** corresponding register of "axis 42".

Register 1x4245 = __ Set angle of the circular interpolation (360


degrees correspond to a register value of
32,768)

The size of the set angle is to be chosen in such a way that the maximum
length of the arc of the circle does not exceed the value of 67,108,000
increments.

Parameters *** CCI ***

Starting point of the In order to calculate the starting point of the arc of the circle, the latest set
circular positions of both axes involved in the circular interpolation are required. If
interpolation both axes are located on the master module, then the controller module can
*** CCI *** access these values internally. Explicit parameterization is not required.
Else, the latest set position of the external axis must be communicated to
"axis 42". For this purpose, register 1x4350 is used.

Register 1x4350 = __ Latest set position of the external axis in inc

Defining centers The definition of the centers of the two axes involved in the circular
*** CCI *** interpolation is to be carried out in the corresponding registers of "axis 42".

Register 1x4241 = __ Center of the involved axis 1 in inc

Register 1x4242 = __ Center of the involved axis 2 in inc

While doing so, one has to take into account that the two differences
between the centers and the starting points of the axes do not exceed the
value of ±524,207 increments.

368 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Entering the set Parameterization of the set angle by which the circular motion should rotate
angle is also mandatory and is carried out by entering the respective value into the
*** CCI *** corresponding register of "axis 42".

Register 1x4245 = __ Set angle of the circular interpolation (360


degrees correspond to a register value of
32,768)

The size of the set angle is to be chosen in such a way that the maximum
length of the arc of the circle does not exceed the value of 67,108,000
increments.

Storing the position The set positions of the slaves for linear interpolation are stored in the
of the slaves corresponding register of "axis 42".
*** CCI ***
Register 1x4232 = __ Set position of the external slave 1 involved
in the linear interpolation

Register 1x4233 = __ Set position of the external slave 2 involved


in the linear interpolation

Register 1x4234 = __ Set position of the external slave 3 involved


in the linear interpolation

Register 1x4235 = __ Set position of the external slave 4 involved


in the linear interpolation

Register 1x4231 = __ Set position of the second master module


axis if an internal slave is involved in the
linear interpolation

Command 41 g) Command 41 issued to "axis 42" starts the first interpolation of the FIFO list.
starts All axes start synchronously and reach their set positions at the same time.
the interpolation The first interpolation is carried out with the parameterized acceleration and
deceleration ramps.

Register 1x4201 = 41 Starting the consecutive interpolation

Commands for h) When changing the interpolation type (from linear to circular or combined
configurations interpolation, etc.), commands must be issued for the new configuration
settings, or the relevant parameterizations must be performed in the mster
registers,
Please keep in mind that the type of interpolation can be changed but not
the axes involved.

Jetter AG 369
8 Continuous Path Controls JetWeb

Saving new i) During the execution of the first interpolation, the values for the subsequent
parameters for interpolation are parameterized in the corresponding registers of "Axis 42".
consecutive If necessary and depending on the type of individual motion, configuration
interpolation in parameters (basic settings for the interpolation) are redefined and the entire
"Axis 42" programming step f is repeated).

New parameters *** LI ***

Defining new length The new length of the software axis may be specified by the user. It must be
of software axes specified by the user if the resultant diagonal is to be spanned between an
*** LI *** axis of the mster module and an external slave axis, or between two external
slaves. See also programming step a): Parameterizing individual motions ***
LI ***.

Storing new set The new set positions of the axes involved in the linear interpolation are to
position of the be entered into the relevant registers of "axis 42".
slaves
*** LI *** Register 1x4230 = __ Set position of the first axis of the master
module

Register 1x4231 = __ Set position of the second axis of the


master module

Register 1x4232 = __ Set position of the external slave 1

Register 1x4233 = __ Set position of the external slave 2

Register 1x4234 = __ Set position of the external slave 3

Register 1x4235 = __ Set position of the external slave 4

Register 1x4297 = __ Set position of the third axis of the master


module

Defining the length However, the length of the software axis may be specified by the user. It
of the software axis must be specified by the user if the resultant diagonal is to be spanned
*** LI *** between an axis of the mster module and an external slave axis, or between
two external slaves.
The exemplary calculation is carried out by the following formula:

2 2 2 2
Register124240 = ( ∆21 ) + ( ∆22 ) + ( ∆41 ) + ( ∆42 )

In this case, axes 21, 22, 41, and 42 are involved in the linear interpolation.
The term ∆21 indicates the distance between start and set positions of axis
21. For the calculation of the overall length of the diagonal, all involved axes
have to be taken into account.

370 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

New parameters *** CI ***

New starting point In order to calculate the starting point of the next arc of the circle, the latest
of the next circular set positions of both axes involved are required. If both axes are located on
interpolation the master module, then the controller module can access these values
*** CI *** internally. Explicit parameterization is not required. Else, the latest set
position of the external axis must be communicated to "axis 42".

Register 1x4350 = __ Latest set position of the external axis in inc

Defining new Next, the new centers of the two axes involved in the circular interpolation is
centers to be carried out in the corresponding registers of "axis 42".
*** CI ***

Register 1x4241 = __ Center of the involved axis 1 in inc

Register 1x4242 = __ Center of the involved axis 2 in inc

While doing so, one has to take into account that the two differences
between the centers and the starting points of the axes do not exceed the
value of ±524,207 increments.

Entering the new Next, the desired new set angle by which the circular motion should rotate
set angle is to be carried out by entering the respective value into the corresponding
*** CI *** register of "axis 42".

Register 1x4245 = __ Set angle of the circular interpolation (360


degrees correspond to a register value of
32,768)

The size of the set angle is to be chosen in such a way that the maximum
length of the arc of the circle does not exceed the value of 67,108,000
increments.

New parameters *** CCL ***

Re-selecting Command 25 has to precede parameterization of the circular interpolation


combined mode by again. This command informs "axis 42" of the fact that the subsequent
a command in "Axis circular interpolation is combined with a linear interpolation of another axis
42" and is carried out as consecutive interpolation.
*** CCI ***
Register 1x4201 = 25 Combined circular and linear interpolation

New starting point In order to calculate the starting point of the next arc of the circle, the latest
of the next circular set positions of both axes involved in the circular interpolation are required.
interpolation If both axes are located on the master module, then the controller module
*** CCI *** can access these values internally. Explicit parameterization is not required.
Else, the latest set position of the external axis must be communicated to
"axis 42".

Register 1x4350 = __ Latest set position of the external axis in inc

Jetter AG 371
8 Continuous Path Controls JetWeb

Defining new Next, the new centers of the two axes involved in the circular interpolation is
centers to be carried out in the corresponding registers of "axis 42".
*** CCI ***

Register 1x4241 = __ Center of the involved axis 1 in inc

Register 1x4242 = __ Center of the involved axis 2 in inc

While doing so, one has to take into account that the two differences
between the centers and the starting points of the axes do not exceed the
value of ±524,207 increments.

Entering the new Then, the new set angle by which the circular motion should rotate is to be
set angle carried out by entering the respective value into the corresponding register
*** CCI *** of "axis 42".

Register 1x4245 = __ Set angle of the circular interpolation (360


degrees correspond to a register value of
32,768)

The size of the set angle is to be chosen in such a way that the maximum
length of the arc of the circle does not exceed the value of 67,108,000
increments.

Storing new set Finally, the set positions of the slaves for linear interpolation are stored in
position of the the corresponding register of "axis 42".
slaves
*** CCI *** Register 1x4232 = __ Set position of the external slave 1 involved
in the linear interpolation

Register 1x4233 = __ Set position of the external slave 2 involved


in the linear interpolation

Register 1x4234 = __ Set position of the external slave 3 involved


in the linear interpolation

Register 1x4235 = __ Set position of the external slave 4 involved


in the linear interpolation

Register 1x4231 = __ Set position of the second master module


axis if an internal slave is involved in the
linear interpolation

Command 24 j) By issuing command 24 to "Axis 42", the next interpolation of the FIFO list
adds the is appended to the preceding interpolation (after a short break). In principle,
next interpolation the next interpolation is carried out without acceleration and deceleration
ramps. Only if the set velocity of the resultant is changed, then this change
is carried out using the parameterized acceleration ramp. Again, all axes
start synchronously and reach their set positions at the same time.

Register 1x4201 = 24 Appending the next interpolation

This mode - parameterizing new values for the next interpolation (next
component motion) and starting the motion by command 24 (i.e.
programming steps h), and i)) - is repeated until the complete curve path is
processed.

372 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Registers for k) The following registers (always the registers of the 1st axis of the master
additional module) contain additional information on consecutive interpolation. The
information register contents are calculated and updated by the controller module
for consecutive internally.
the interpolation
Register 1x1082 = __ Path segment counter "axis 42" (indicates
which component motion is currently being
processed)

Register 1x1083 = __ Filling level of register memory "axis 42"


(contains the buffered component motions
to be processed)

Waiting for l) An AXARR instruction issued to "axis 42" stops all physical axes.
completion of the Completion of the interpolation process is monitored by querying status
interpolation register bit 1 of all physical axes involved.
process (bit 1: AXARR = the position has been reached).

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode
can be terminated.

Note:If register 1x1083 (filling level of the register memory of "Axis 42")
contains the value "0", i.e. if all temporarily stored component motions are
processed, a signal is issued to the CPU, and merely a AXARR command
is issued to the involved axes. But the interpolation mode is not deactivated
yet.

Command 42 m) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 End of the consecutive interpolation

In order to terminate the mode of coordinated motion for all axes, command
42 must be issued to all involved physical axes.

Jetter AG 373
8 Continuous Path Controls JetWeb

Acknowledging n) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved
is queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

For programming examples of the individual variants, please refer to the CD


provided with this manual.

374 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.5.5 Overview of Registers:


Consecutive interpolation
This overview contains all registers used for a consecutive interpolation. These
registers can be used for "Axis 42", for the master axis, as well as for the slave axes.
This will be described in more detail in the next chapter.

Reg.
R/W Registers: Consecutive Interpolation
#
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands


(Register number for "Axis 42": 1x4201)

003 R/W Set velocity of the axis


(Register number for "Axis 42": 1x4203)

005 R/W Acceleration ramp


(Register number for "Axis 42": 1x4205)

006 R/W Deceleration ramp


(Register number for "Axis 42": 1x4206)

007 R/W Destination window


(Register number for "Axis 42": 1x4207)

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
Registers 1xy017 through 1xy021 serve the basic
parameterization of the axis.
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.
If the registers are used for "Axis 42", the register
numbering will differ. However, function, content, and
parameterization of these registers will remain unchanged.

Jetter AG 375
8 Continuous Path Controls JetWeb

046 - *** Registers for general configurations and


135 diagnostics
046 R Calculated radius of the circular interpolation

047 R Calculated starting angle of the circular interpolation

048 R Calculated circle arc length of the circular interpolation

049 R Calculated target position for axis 1 (master) (circular


interpolation)

050 R Calculated target position for axis 2 (slave) (circular


interpolation)

051 R/W Adjustment of the max. velocity to suit the data axis

052 R/W Adjustment of the encoder resolution to suit the data axis

128 R/W Axis number of axis 1 (circular interpolation)

129 R/W Axis number of axis 2 (circular interpolation)

4132 R/W Axis number of the external slave 1 (linear interpolation)

4133 R/W Axis number of the external slave 2 (linear interpolation)

4134 R/W Axis number of the external slave 3 (linear interpolation)

4135 R/W Axis number of the external slave 4 (linear interpolation)

030 - *** Registers for consecutive interpolations


150
030 R/W Set position of first axis of the master module (linear
interpolation)
(Register number for "Axis 42": 1x4230)

031 R/W Set position of second axis of the master module (linear
interpolation)
(Register number for "Axis 42": 1x4231)

032 R/W Set position of the external slave 1 (linear interpolation)


(Register number for "Axis 42": 1x4232)

033 R/W Set position of the external slave 2 (linear interpolation)


(Register number for "Axis 42": 1x4233)

034 R/W Set position of the external slave 3 (linear interpolation)


(Register number for "Axis 42": 1x4234)

035 R/W Set position of the external slave 4 (linear interpolation)


(Register number for "Axis 42": 1x4235)

040 R/W Length of the software axis (linear interpolation)


(Register number for "Axis 42": 1x4240)

041 R/W Center of axis 1 (circular interpolation)


(Register number for "Axis 42": 1x4241)

376 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

042 R/W Center of axis 2 (circular interpolation)


(Register number for "Axis 42": 1x4242)

045 R/W Set angle of the circular interpolation


(Register number for "Axis 42": 1x4245)

082 R Path segment counter "axis 42"

083 R Filling level of register memory "axis 42"

084 R/W Wait cycles „axis 42“

097 R/W Set position of the third axis of the master module (linear
interpolation)
(Register number for "Axis 42": 1x4297)

150 R/W Latest set position of the external axis (circular


interpolation)
(Register number for "Axis 42": 1x4350

Jetter AG 377
8 Continuous Path Controls JetWeb

8.5.6 Description of Registers:


Consecutive interpolation

Registers for general configurations and diagnostics:


If the individual motions of a consecutive interpolation are based on circular
interpolations with 2 axes, or combined circular and linear interpolation, additional
information on circular interpolation can once again be retrieved from the following
registers (1x4046 through 1x4050).

Calculated radius of the circular


Register 1x4046
interpolation
Function Description

Read Present value of the radius (calculated by the


controller module)

Write Illegal

Value range -524.207 .. +524.207

Value after reset 0

By means of the parameters in the registers 1x4241, 1x4242 and 1x4245, the JX6-
CON-Move(-BP) module calculates the radius of the circular interpolation internally.

378 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Calculated starting angle of the


Register 1x4047
circular interpolation
Function Description

Read Present value of the starting angle (calculated by


the controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4241, 1x4242 and 1x4245, the JX6-
CON-Move(-BP) module calculates the starting angle of the circular interpolation
internally.

Calculated circle arc length of


Register 1x4048
the circular interpolation
Function Description

Read Present value of the circle arc (calculated by the


controller module)

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4241, 1x4242 and 1x4245, the JX6-
CON-Move(-BP) module calculates the circle arc of the circular interpolation
internally.

Jetter AG 379
8 Continuous Path Controls JetWeb

Calculated target position


Register 1xy049
axis 1 (master)
Function Description

Read Present value of the target position of axis 1


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4241, 1x4242 and 1x4245, the JX6-
CON-Move(-BP) module calculates the target position of axis 1 internally which can
be accessed in this register.

Calculated target position


Register 1xy050
Axis 2 (slave)
Function Description

Read Present value of the target position of axis 2


(calculated by the controller module).

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

By means of the parameters in the registers 1x4241, 1x4242 and 1x4245, the JX6-
CON-Move(-BP) module calculates the target position of axis 2 internally which can
be accessed in this register.

380 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Registers 1xy051, and 1xy052 are required for all kinds of interpolations. They are
used for basic axis error compensation. Therefore, they have to be observed within
the scope of a consecutive interpolation.

Adjustment of the max. velocity


Register 1xy051:
to suit the data axis
Function Description

Read Present value for velocity adjustment

Write New value for velocity adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

Velocity must be adjusted whenever the maximum velocity of the involved axes and
of the data axis are not identical with each other. If the values are identical, register
1xy051 need not be parameterized.
For the data axis the following definitions apply:

• The data axis corresponds to axis 1 of the master module for

– Linear interpolations based on the master/slave configurations 1, 2, 4,


or 5,

– pure circular interpolations

– combined circular and linear interpolations.

• The data axis corresponds to axis 2 of the master module for

– linear interpolations based on the master/slave configuration 3.

The remaining axes involved in interpolation must be informed of the maximum


velocity the data axis is travelling with.
There are two formulas by which the register value can be determined depending on
whether a gear box is mounted between motor and encoder.

Jetter AG 381
8 Continuous Path Controls JetWeb

Without gear The value of the relevant slave register 1xy051 of the involved
box: axes depends on the register value 1xy018 of the data axis:

Register1xy051 = Register1xy018

With gear box: The value of the respective slave register 1xy051 is calculated
by the following formula:

GSZSlaveAxis
Register1xy051 = ------------------------------------------ × RegisterContent1xy018
GSZDataAxis

ER = EncoderResolution in Register 1xy017

The quotient of encoder resolutions of slave and data axes describes the gear ratio.
Register 1xy018 specifies the maximum velocity which can be reached by the servo/
motor combination. At the same time, this value is the valid value for the data axis.

382 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolution of the involved axes (similar to the maximum velocity) must
be adjusted to suit the resolution of the data axis.
The following rules apply to the definition of the data axis:

• The data axis corresponds to axis 1 of the master module for

– Linear interpolations based on the master/slave configurations 1, 2, 4,


or 5,

– pure circular interpolations

– combined circular and linear interpolations.

• The data axis corresponds to axis 2 of the master module for

– linear interpolations based on the master/slave configuration 3.

If a slave axis involved in the interpolation has an encoder resolution other than the
resolution of the data axis, then register 1xy052 of this slave axis has to be
parameterized. The value is calculated according to the following formula:

GSZSlaveAxis
Register1xy052 = ------------------------------------------ × 1.000
GSZDataAxis

ER = EncoderResolution in Register 1xy017

Jetter AG 383
8 Continuous Path Controls JetWeb

Within the scope of a consecutive interpolation, the following registers (1x4128, and
1x4129) are used to specify configuration of the individual motions. They have to be
parameterized if the individual motions have to be carried out as pure circular
interpolation, or as combined circular and linear interpolation.

Register 1x4128 Axis number of axis 1


Function Description

Read Present axis number of the first axis involved

Write New first axis involved

Value range 0, 21, 31, 41 .. 81

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the first axis involved must be written into this
master register.

Register 1x4129 Axis number of axis 2


Function Description

Read Present axis number of the second axis involved

Write New second axis involved

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

The master must be informed of the axes being involved in the circular interpolation.
Therefore, the logical axis number of the second axis involved must be written into
this master register.

384 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The following registers (1x4132 through 1x4135) are possibly required within the
scope of a consecutive interpolation. This is the case if the individual motions are
based on linear, or combined circular and linear interpolations with external slave
axes involved. In order to configure the individual motions, the involved external axes
have to be parameterized in the corresponding master registers.

Axis number of the external


Register 1x4132:
slave 1
Function Description

Read Present axis number of the first external slave


axis involved

Write New first external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation or a combined circular and linear interpolation is to be


executed with external slave axes, the master must be informed of the slave axes
which are involved in the coordinated motion.
Therefore, the logical axis number of the first external slave axis involved must be
written into this master register.

Axis number of the external


Register 1x4133:
slave 2
Function Description

Read Present axis number of the second external slave


axis involved

Write New second external slave axis involved (enter


the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation with external slave axes or a combined circular and linear
interpolation is to be executed, the master must be informed of the slave axes which
are involved in the coordinated motion.
Therefore, the logical axis number of the second external slave axis involved must
be written into this master register.

Jetter AG 385
8 Continuous Path Controls JetWeb

Axis number of the external


Register 1x4134:
slave 3
Function Description

Read Present axis number of the third external slave


axis involved

Write New third external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation with external slave axes or a combined circular and linear
interpolation is to be executed, the master must be informed of the slave axes which
are involved in the coordinated motion.
Therefore, the logical axis number of the third external slave axis involved must be
written into this master register.

Axis number of the external


Register 1x4135:
slave 4
Function Description

Read Present axis number of the fourth external slave


axis involved

Write New fourth external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If a linear interpolation with external slave axes or a combined circular and linear
interpolation is to be executed, the master must be informed of the slave axes which
are involved in the coordinated motion.
Therefore, the logical axis number of the fourth external slave axis involved must be
written into this master register.

386 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Registers for consecutive interpolation:


This part of the description includes all registers used to control the consecutive
interpolation.
These registers have to be parameterized depending on the type of interpolation
which the individual motions are based on.
In this case, the registers are used as registers of "Axis 42", numbering of which is
differing accordingly. However, function, content, and parameterization of these
registers will remain unchanged compared to the registers used for the types of
interpolations being carried out individually.

The following registers (1x4230 through 1x4235) are required for consecutive
interpolation if the individual motions are based on linear or combined circular and
linear interpolations.

Set position of the first axis of


Register 1x4230:
the master module
Function Description

Read Present set position value for master module axis


1

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for a linear interpolation to store the set position of a slave axis.
If axis 1 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. This is
required for master/slave configurations 1, 2, 4, and 5 (commands 38, 39, 43, 94).

Jetter AG 387
8 Continuous Path Controls JetWeb

Set position of the second axis


Register 1x4231:
of the master module
Function Description

Read Present set position value for master module axis


2

Write New set position

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used for a linear interpolation to store the set position of a slave axis.
If axis 2 of the master module is involved in the interpolation, the set position of this
axis is entered into this register before the interpolation process is started. This is
required for master/slave configurations 1, 2, 3, and 5 (commands 38, 39, 40, 94).
This register is also used for a combined circular and linear interpolation to store the
set position of an external slave axis.

Set position of the external


Register 1x4232:
slave 1
Function Description

Read Present set position value for the external slave 1

Write New set position for the external slave 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used in a linear interpolation as well as in a combined circular and


linear interpolation to store the set position of an external slave axis.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

388 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Set position of the external


Register 1x4233:
slave 2
Function Description

Read Present set position value for the external slave 2

Write New set position for the external slave 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used in a linear interpolation as well as in a combined circular and


linear interpolation to store the set position of an external slave axis.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Set position of the external


Register 1x4234:
slave 3
Function Description

Read Present set position value for the external slave 3

Write New set position for the external slave 3

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used in a linear interpolation as well as in a combined circular and


linear interpolation to store the set position of an external slave axis.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

Jetter AG 389
8 Continuous Path Controls JetWeb

Set position of the external


Register 1x4235:
slave 4
Function Description

Read Present set position value for the external slave 4

Write New set position for the external slave 4

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used in a linear interpolation as well as in a combined circular and


linear interpolation to store the set position of an external slave axis.
If this axis is involved in the linear interpolation, this register has to be parameterized
before the interpolation process is started. The slave axis must have been
designated as such (by means of command 32 for the first axis of an expansion
module, resp. command 33 for the second axis of the module).

390 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The following register is needed if the consecutive interpolation is based on individual


motions that are carried out as linear interpolations.

Register 1x4240: Length of the software axis


Function Description

Read Present length (calculated by the controller


module)

Write New length (specified by the user)

Value range -8.388.608 .. +8.388.607

Value after reset 0

The calculated length of the software axis, i.e. the virtual master of the entire linear
interpolation, is stored in this master register. This value is calculated by the
controller module internally.
However, the length of the software axis may be specified by the user. It must be
specified by the user if the resultant diagonal is to be spanned between an axis of the
mster module and an external slave axis, or between two external slaves.
The exemplary calculation is carried out by the following formula:

2 2 2
Register1x4240 = ( ∆41 ) + ( ∆42 ) + ( ∆31 )

In the given case, axes 41, 42 and 31 are involved in the linear interpolation. The
term ∆41 indicates the distance between start and set positions of axis 41. For the
calculation of the overall length of the diagonal, all involved axes have to be taken
into account.

If the length of the software axis is specified by the user, the controller module
accepts this value without performing a recalculation of its own. If the user has
calculated the length of the software axis incorrectly, or if the value specified by the
user is less or greater than the value internally calculated by the controller module,
this discrepancy will directly affect the velocity of motion. In the worst case, software
limit switches or mechanical end stops will terminate the linear interpolation.
If the length of the software axis is to be specified by the user, register 1x4240 must
be parameterized before the start command for the interpolation is issued. As soon
as the control system has processed command 41, a decision flag is reset internally,
i.e. from now on the length of the software axis is calculated again by the controller
module.
If the length of the software axis is specified by the user, registers 1xy038 and 1xy039
(definition of the actual positions of the external slaves) need not be parameterized.

Jetter AG 391
8 Continuous Path Controls JetWeb

The following 4 registers are required if the consecutive interpolation is based on


individual motions which are carried out as pure circular, or combined circular and
linear interpolations.

Register 1x4241 Center of axis 1


Function Description

Read Present value for the center of axis 1

Write New value for the center of axis 1

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 1 has to be
entered into this register.
Apart from this, the center of axis 2 (register 1x4242) and the set angle by which
rotation has to take place (register 1x4245) have to be defined since they are
prerequesite for circular interpolation.

392 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x4242 Center of axis 2


Function Description

Read Present value for the center of axis 2

Write New value for the center of axis 2

Value range -8.388.608 .. +8.388.607

Value after reset 0

For carrying out circular interpolation, the value of the center of axis 2 has to be
entered into this register.
Apart from this, the center of axis 1 (register 1x4241) and the set angle by which
rotation has to take place (register 1x4245) have to be defined since they are
prerequesite for circular interpolation.

Note!

The difference of (center x) minus (starting point x) must not exceed the value±
524,207 increments.

Jetter AG 393
8 Continuous Path Controls JetWeb

Set angle of the circular


Register 1x4245
interpolation
Function Description

Read Present value for the set angle of the arc

Write New value for the parameter "set angle"

Value range -8.388.608 .. +8.388.607


32.768 = 360°

Value after reset 0

The set angle of the arc of the circle which both axes are travelling along during a
circular interpolation is defined in this register. Apart from this, the centers of axis 1
(register 1x4241) and axis 2 (register 1x4242) have to be entered into the
corresponding registers since they are prerequesite for circular interpolation.

Note!

The length of the arc of the circle must not exceed 67,108,000 increments.

394 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Latest set position


Register 1x4350
of the external axis
Function Description

Read Present value of the latest set position of the


external axis

Write New set position of the external axis

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register must contain the latest set position of the external axis if this axis
participates in an circular interpolation.
This register must be parameterized whenever the involved axes are not located on
the same module.
The parameterization has consequences for determining the circular interpolation
configuration, especially for designating the master module. Moreover, the latest two
set positions of the involved axes are required to calculate the starting point of the
arc of the circle.

Jetter AG 395
8 Continuous Path Controls JetWeb

Registers 1x1082 through 1x1084 are registers describing the consecutive


interpolation more detailed. With the help of these registers presettings can be made,
or the extent to which the FIFO list is processed can be monitored. The registers of
the first axis of the master module are always used.

Register 1x1082 Path segment counter "axis 42"


Function Description

Read Present value of the count

Write Illegal

Value range 0 .. +8.388.607

Value after reset 0

This register informs about the processing state of the consecutive interpolation.
Prior to starting the consecutive interpolation, the register content must be deleted.
On completion of each interpolation, this register is incremented automatically by the
controller module.
By inquiring and displaying the register value within the program, it is possible to
monitor which path segment is presently being processed.

396 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Filling level of register memory


Register 1x1083
"axis 42"
Function Description

Read Present filling level value

Write Illegal

Value range 0 .. +7.499

Value after reset 0

This register also informs about the processing state of the consecutive interpolation.
The register memory is a RAM which can store the contents of 7,500 registers.
The FIFO function for consecutive interpolation is stored to this memory. All
parameters, and the caculation results for individual motions to be carried out are
buffered in this memory until the given path segment is processed.
The filling level drops when interpolations are completed, and rises again when new
parameters are loaded.

Register 1x1084 Wait cycles „axis 42“


Function Description

Read Present number of wait cycles

Write Write a new value for the number of wait cycles

Value range 0 .. +65.535

Value after reset 1

This register has to be parameterized only if required.


Since the next interpolation is calculated during the execution of a component
motion, timing problems may occur. This is the case if the portions of the path to be
covered are very short. It may happen that the component motion is already
completed but the calculation of the subsequent motion is not. This will result in
unsmooth running which does not have the desired continuous motion along the path
curve. This problem can be resolved by specifying wait cycles.

Jetter AG 397
8 Continuous Path Controls JetWeb

8.5.7 Overview of Commands:


Consecutive interpolation
The following overview contains all commands directly used for a consecutive
interpolation. These commands are written into the command register 1xy001 of
"axis 42" or the respective master or slave axis.
A command applies until a contrary command is issued.

Commands:
Command #
Consecutive interpolation
24 Appending the next interpolation

25 Combined circular and linear interpolation

32 Axis 1 is the slave (for linear interpolation)

33 Axis 2 is the slave (for linear interpolation)

38 Master-slave configuration 1 for linear interpolation

39 Master-slave configuration 2 for linear interpolation

40 Master-slave configuration 3 for linear interpolation

41 Start interpolation

42 Remove axis from interpolation

43 Master-slave configuration 4 for linear interpolation

94 Master-slave configuration 5 for linear interpolation

398 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.6 Spline interpolation


8.6.1 Overview
A spline is the mathematical projection of a higher-order curve. A spline funtion is a
mathematical method to approximate free-form curves or free-form areas. The
characteristics of the resulting spline curves is a constant, smooth curve shape.
First, the individual checkpoints are linked to form a path curve. Next, the resulting
path curves are combined in such a way that they can be processed in one single,
continuous path motion.
This allows to realize complex curve shapes.

By using this special function, the amount of data to be processed as well as the
programming effort is reduced compared to using the linear interpolation functions.
Another advantage is the higher accuracy since no individual straight segments are
to be covered anymore.

8.6.2 Spline interpolation with the


JX6-CON-Move(-BP) module
The JX6-CON-Move(-BP) module also allows to realize spline interpolations.

Operating principle
one axis acts as master axis, all other axes involved are regarded as slave axes. The
physically existing axes represent the slave axes. The master axis, however, is a
virtual software axis. This means that this axis does not exist physically.
For internal calculations required to carry out interpolation, a virtual image of all axes
is created in the software within the JX6-CON-Move(-BP) module. The result of these
calculations is reflected in the master axis.
With a spline interpolation, the master axis takes over all the cordination tasks
between the involved axes. The general parameters for the interpolation, such as
interpolation mode, basic velocity, acceleration and deceleration ramps, etc., are
defined in the registers of the master axis.
For the actual calculations of the spline, the registers of the physical axis 1 are used.

The JX6-CON-Move(-BP) controller module on which the master axis is to be


addressed, is referred to as master module. It is up to the user to select which one
of the modules is the master axis. The decision also depends to a large extent on the
interpolation task to be performed. Therefore, the requirements should already be
known in the hardware planning stage.
Once the master module is defined, its (virtual) axis 4 always becomes the master
axis.
For details on configuration possibilities, see chapter 8.6.3.

Jetter AG 399
8 Continuous Path Controls JetWeb

Process flow

Fig. 73: Principle of the spline interpolation

A spline interpolation with the JX6-CON-Move(-BP) module is realized by the


following steps:
• Data Input
• Calculating the spline motion
• Executing the spline motion
• Terminating the spline interpolation.

400 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Data Input
The following definitions need to be realized:
• Determining the spline number in register 1x1187
The number of the current spline to be calculated next needs to be entered here.
A max. number of 10 splines can be calculated and stored.

• Determining the max. velocity in register 1x1194


Prior to the calculation, the maximum velocity must be defined to limit the time for
changing the register sets (20ms).

• Determining the max. number of teach points in register 1x1240


The max. number of teach points to be used for calculating the spline interpolation
is defined in this register. In this case, a teach point is a coordinate point to be
defined, which is covered during the interpolation run. Thus, these teach points
represent the "key data" of the interpolation run.
This register must be parameterized before defining the teach points because
writing this register reserves at the same time a sufficient memory location.

• Determining the current teach point in register 1x1192


Prior to the calculation, the pointer register 1x1192 is used to activate the current
teach point. If this teach point has already been selected due to the
parameterization of the register, then coordinates are now stored in the
respective registers.

• Determining the coordinates of the selected teach point


The coordinates of the current teach point are stored as follows:
x-coordinate in register 1x1204
y-coordinate in register 1x1205
z-coordinate in register 1x1206
Then the next teach point is activated via register 1x1192 and the coordinates are
written to the above registers again. This procedure is repeated until all desired
teach points are stored. According to above figure, 5 teach points (T1 through T5)
need to be defined.

Note!

The previously max. number of teach points defined in register 1x1240 must be
taken into account. Besides, two subsequent teach points may not be identical.

Jetter AG 401
8 Continuous Path Controls JetWeb

Calculating the spline motion


Additional interpolation points are placed between the defined teach points by means
of the calculation. These additional points allow continuous path motion. In the
following, these calculated interpolation points are referred to as spline points. In the
previous Fig. 73"Principle of the Spline Interpolation" these points are marked with
"S".

The following definitions need to be realized:


• Determining the max. number of spline points in register 1x1241
The max. number of spline points to be used for calculating the spline
interpolation is defined in this register. The max. number of possible spline points
is 3,000. The register must be written according to the requirements of the
application before the calculation is started.

• Starting relative positioning using command 109


After all data has been entered completely, the calculation of the spline
movement is started by issuing command 109 in register 1x1001.

• Busy bit
During the calculation, the busy bit is set (bit13 in register 1x1000). Before starting
further actions, this bit must be queried prior to the completed calculation.

• Result of the calculation


The result of the calculation is the number of spline points that have to be placed
between the teach points as "key data" in order to allow smooth, jerk-free path
motion. This number results from the initial data set, the maximum velocity (reg
1x1194), and an internal limitation of the time needed to change the sets (20ms).
A linear interpolation is realized between the individual spline points. When doing
so, the time needed to change the sets must be taken into account. Therefore,
the distance between the calculated spline points may not become too close. Due
to the dependency on the travelling speed, a max. speed must already have been
defined before the calculation which will not be exceeded when the interpolation
will be carried out. The lower this maximum speed is defined, the more detailed
will be the grid of spline interpolation points defined by the spline curve. If the limit
speed of the path is exceeded, a new calculation is necessary with accordingly
adapted register 1x1194.

• Evaluation of the calculation


The result of the calculation, the number of calculated spline point, is stored in
register 1x1193 where it can be queried and displayed. If a classified error occurs
during the calculation, the corresponding bit is set in the error register 1x1195.
Please also refer to chapter 8.6.6: "Description of Registers: Spline interpolation
with 3 axes", page 415.

402 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Executing the spline motion


Execution of the spline movement is realized by the following steps:
• Initializing the involved axes by issuing command 94
A linear interpolation variant 5 (all 3 configurable axes of a module are involved)
is carried out between the individual spline points. This configuration is initialized
by issuing command 94.

• Starting the spline movement using command 110


The actual spline interpolation is started by issuing command 110. The starting
direction is defined by the direction from teach point 1 to teach point 2. After this,
the direction is arbitrary.
If only part of the spline is processed when the spline movement is started the first
time and the spline movement is then started again by command 110, then the
movement is started at the beginning of the spline (and not starting from where it
was terminated). See also the point "Options of the spline interpolation").

Terminating the spline interpolation


The regular termination of the spline interpolation is realized by the following steps:
• Ending the spline movement through status register bit 1
At the end of the spline movement, the involved axes report "AXARR = position
reached" via bit 1 of the status register (1xy000).

• Terminating the interpolation by command 42


In order to terminate the mode of the coordinated motion for the axes, command
42 must be issued to all physical axes involved. In doing so, an AXARR instruction
is being executed simultaneously.

• Acknowledging command 42
To ensure a defined final completion state of the interpolation, it should be verified
whether command 42 has been executed successfully. For this purpose, bit 13
(BUSY) of the status register of each axis involved is queried.

If the ongoing spline interpolation is to be terminated, then an AXARR instruction or


command 42 must be issued to each involved axis.

Jetter AG 403
8 Continuous Path Controls JetWeb

Options of the spline interpolation


The following options exist to realize the spline interpolation:
• Defined starting of actions during ongoing spline interpolation
It is possible to control the progress of the spline interpolation. For this purpose,
register 1x1191 is used. After starting the spline movement, the reached (i.e.
covered) teach points are counted in this register. The register value can now be
read to identify the current teach point. Any action can be started depending on
reaching a certain teach point. This allows to set outputs, for example, via the
application program.

• Executing segments of the spline movement


It is also possible to execute segments of a spline. For this purpose, the start of
the movement must be modified in register 1x1193. Usually, the result of the
calculation, i.e. the number of calculated spline points, is stored in this register
where the resultt can be queried and displayed. If only a segment of the spline is
to be processed, then this is achieved by simply reducing the calculated number
of spline points. After completed modification, the overall length of the spline must
be recalculated. This is realized by issuing command 142. If a spline movement
is then started again by issuing command 110, the movement will be started at
the beginning of the spline.

• Modifying the spline data using command 142


Already calculated spline interpolations can also be modified after completed
calculation. This is for example necessary if the path motion represents a square
that is to be additionally provided with rounded corners. The rounded corners are
calculated as spline. The straight lines inbetween are regarded as spline
segments. The number of desired spline points is parameterized in register
1x1193. After completed modification, the overall length of the spline must be
recalculated. This is realized by issuing command 142.

404 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

General Prerequisites
Some essential aspects have to be taken into account in general with regard to the
function of a spline interpolation:
• Basically, accurate adjustment of the controllers is the precondition for proper
functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order. Finally,
special functions are realized by the position controller (e.g. interpolations).

• It is essential for each kind of interpolation that the theoretically calculated set
positions are reached with highest possible accuracy at any time. Therefore,
complete position feedback control has to be realized over the entire distance to
be covered.
When full position control is carried out, the present set position is calculated and
the deviation of set position and actual position is determined at any time. If the
position controller detects a tracking error, it attempts to compensate the position
deviation immediately by means of the P-factor.
Therefore, optimal tracking error compensation of the individual axes is essential
to ensure coordinated operation. The more accurately the tracking error of the
axes has been adjusted, the more accurately the physical axes will travel along
the resultant arc of the circle.

• Before the spline interpolation can be restarted, maximum velocities and encoder
resolutions of the slave axes have also to be adapted to suit the master axis.
Then all virtual axes are started simultaneously and the physical axes are moved
relatively to their portion of the motion of the respective virtual axis.

Jetter AG 405
8 Continuous Path Controls JetWeb

8.6.3 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Fig. 74: Spline interpolation - axis configurations

406 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

o Three axes are involved in a spline interpolation.

o The software axis, i.e. the virtual axis 4 of a module, constitutes


the master axis of the entire interpolation.

o This software axis determines the parameterization of the


coordinated motions.

o All physical axes involved are considered as slaves.

o The module, the software axis of which is addressed in a


coordinated interpolation as master axis, is referred to as
master module.

There is only one variant to combine the 3 axes in a spline interpolation:

All 3 axes of a master module are involved.

Jetter AG 407
8 Continuous Path Controls JetWeb

Spline Interpolation Configurations Variant 1

All 3 axes of a Variant 1 distinguishes itself by the fact that all 3 configurable axes of a module
master module (which then also is the master module) are involved in the spline interpolation.
are involved Here a possible configuration:

Fig. 75: Configuration for Spline Interpolation Variant 1

A JX6-CON-Move or JX6-CON-Move-BP module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21, 22, and 23 are
configured.
The sockets for submodules 2 and 3 must remain empty. No submodules may be
plugged.
The module on which the axes are located is designated as master module.
Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 1:


Axes 21, 22, and 32, or 31, 32 and 33; 41, 42 and 43; 51, 52 and 53; 61, 62 and 63;
71, 72 and 73, or 81, 82 and 83 can be combined for a spline interpolation.

408 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.6.4 Programming Rules

The first part of the programming rules concerns the data input and the spline
calculation.
Attention:For this task, only the registers of the physical axis 1 are used.

Defining the a) In this register is defined which spline number is to be calculated. A max.
spline number number of 10 splines can be pre-calculated and stored.

Register 1x1187 = __ Spline number

Defining the max. b) The max. number of teach points to be used for calculating the spline
number of teach interpolation is defined in this register. When defining this number, an
points according memory space will be reserved.

Register 1x1240 = __ Max. number of teach points

Defining the max. c) The max. number of spline points to be used for calculating the spline
number of spline interpolation is defined in this register.
points
Register 1x1241 = __ Max. number of spline points

Attention:The memory space requirement for a spline calculation should not


be underestimated. This space amounts to 14 to 15 times the parameterized
register value.

Defining the limit d) The limit speed for the spline interpolation is parameterized in the following
speed for the register. The indicated value represents the max. speed which may be
spline reached when the spline is carried out. The following must be kept in mind:
interpolation • The defined reference value related to the set velocity of the axis (register
1xy021)
• two subsequent spline points must have a minimum distance with respect
to time of at least 20 ms.

Register 1x1194 = __ Maximum Speed for Spline Interpolation

Jetter AG 409
8 Continuous Path Controls JetWeb

Parameterizing e) The coordinates of the desired teach points are defined one after the other
teach points in the following registers.

Register 1x1192 = __ Pointer to the teach coordinate

Register 1x1204 = __ X-Coordinate Teach Point

Register 1x1205 = __ Y-Coordinate Teach Point

Register 1x1206 = __ Z-Coordinate Teach Point

After having stored the first teach point, the pointer (register 1x1192) points
to the next teach point. The coordinates of this teach point are then stored
using registers 1x1204, 1x1205 and 1x1206. This procedure is repeated until
all desired teach points are stored.

Starting the f) Calculation of the spline is started by issuing command 109.


calculation
Register 1x1001 = 109 Spline interpolation: Starting a spline
calculation

Waiting for the g) Completion of the spline calculation must be verified. To do so, bit 13 (BUSY)
end of calculation of the status register of the first physical axis involved is queried.

Register 1x1000, Bit 13 = 0 ?

If bit 13 is 0 again, the calculation has been completed.

Evaluating the h) The result of the calculation is the number of spline points. The result is
calculation stored in the following register where it can be queried and displayed.

Register 1x1193 = __ Number of calculated spline points

If a classified error occurs during the calculation, the corresponding bit is set
in the status register of the spline calculation (1x1195). For the assignment
of bits and errors, please refer to the register description.

Register 1x1195 = __ Status register spline calculation

410 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

The following part of the programming rules concerns the execution of the spline
movement.
Attention:For this task, either master registers or the registers of the physical axis
1 are used.

Designating a i) The module on which the 3 axes are defined is designated as master module
module as master by issuing the respective command to its axis 4. By doing so, the general
deklarieren master/slave configuration is defined and axis 4 of the master module
immediately acts as master axis for the interpolation.

Register 1x4001 = 94 Master/slave configuration 5 is activated

Command 94 was already used in the linear interpolation and is used here
for the spline interpolation with identical function. This means that the
following declarations come into effect:
• the module, on which the defined axes 1, 2, and 3 are located is the
master module.
• the software axis 4 of this module is the master axis of the interpolation,
• all 3 axes of a JX6-CON-Move(-BP) module are involved in the
interpolation and need not be defined explicitly as slaves,
• there are no external slaves.

Velocity, j) The parameters for the motion of the resultant (set velocity, acceleration and
acceleration and deceleration ramps) are preset in the registers of the master axis (axis 4 of
deceleration the master module) or in the registers of the data axis, respectively.
ramps,
destination Register 1x4003 = __ Set speed
window

Register 1x4005 = __ Acceleration ramp

Register 1x4006 = __ Deceleration ramp

If no values are defined, the settings of axis 1 of the master module apply.

Attention: However, the reference value related to the set velocity is defined
in the register of the data axis.

Register 1x1021 = Reference value related to the set velocity

Activating the k) To start a spline movement, the corresponding number of the desired spline
spline number is first entered in the following register.

Register 1x1187 = __ Spline number

Jetter AG 411
8 Continuous Path Controls JetWeb

Command 110 l) Command 110 issued to the physically first axis starts the spline movement
starts of the previously defined spline number.
spline movement
Register 1x1001 = 110 Starting a spline movement

All axes involved start synchronously and reach their set positions at the
same time.

Acknowledging m) It is advisable to check whether command 110 has successfully been


command 110 executed.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

Waiting for n) Completion of the interpolation process is monitored by querying status


completion of the register bit 1 of all physical axes involved (bit 1: AXARR = the position has
interpolation been reached).
process

Register 1xy000, Bit 1 = 1 ?

When bit 1 of all physical axes involved is set to 1, the interpolation mode can
be terminated.

Command 42 o) In order to terminate the mode of the coordinated motion for the axes,
terminates command 42 must be issued to all physical axes involved. In doing so, an
the interpolation AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Remove axis from interpolation

Acknowledging p) To ensure a defined final completion state of the interpolation, it should be


command 42 verified whether command 42 has been executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved is
queried.

Register 1xy000, Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

For a programming example, please refer to the CD provided with this manual.

412 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.6.5 Overview of Registers:


Spline interpolation with 3 axes
The overview of registers lists all registers relevant for spline interpolation with 3
axes. These registers might be necessary both for the master axis and the slave
axes. This will be described in more detail in the next chapter.

Reg. Registers:
R/W
# Spline interpolation with 3 axes
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 1: AXARR = the position has been reached
Bit 2: The axis is in the destination window
Bit 3: Tracking error detected
Bit 15: The axis is in the acceleration ramp
Bit 16: The axis is in the deceleration ramp
Bit 17: Do not deactivate if tracking error occurs

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

187 - *** Registers: Spline interpolation with 3 axes


241
187 R/W Spline number

188 R/W X-Coordinate Spline Point

189 R/W Y-Coordinate Spline Point

190 R/W Z-Coordinate Spline Point

191 R/W Assigning a Teach Point

192 R/W Pointer to Teach or Spline Coordinates

Jetter AG 413
8 Continuous Path Controls JetWeb

193 R/W Number of calculated spline points

194 R/W Maximum Speed for Spline Interpolation

195 R Status register spline calculation

202 R/W Calculation with/without correction

204 R/W X-Coordinate Teach Point

205 R/W Y-Coordinate Teach Point

206 R/W Z-Coordinate Teach Point

240 R/W Max. Number of Teach Points

241 R/W Max. number of spline points

414 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

8.6.6 Description of Registers:


Spline interpolation with 3 axes

Register 1x1187 Spline number


Function Description

Read Current spline number

Write New value for the spline number

Value range 1 .. 10

Value after reset 1

A max. number of 10 splines can be calculated and stored in the controller.

Register 1x1188 X-Coordinate Spline Point


Function Description

Read Current value of the x-coordinate of the spline


point

Write New value for the x-coordinate of the spline point

Value range -8.388.608 .. +8.388.607

Value after reset 0

After completed calculation, this register contains the x-coordinate of the respective
spline point.

Jetter AG 415
8 Continuous Path Controls JetWeb

Register 1x1189 Y-Coordinate Spline Point


Function Description

Read Current value of the y-coordinate of the spline


point

Write New value for the y-coordinate of the spline point

Value range -8.388.608 .. +8.388.607

Value after reset 0

After completed calculation, this register contains the y-coordinate of the respective
spline point.

Register 1x1190 Z-Coordinate Spline Point


Function Description

Read Current value of the z-coordinate of the spline


point

Write New value for the z-coordinate of the spline point

Value range -8.388.608 .. +8.388.607

Value after reset 0

After completed calculation, this register contains the z-coordinate of the respective
spline point.

416 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x1191 Assigning a Teach Point


Function Description

Read Current value of the z-coordinate

Write Assigning the teach point to the spline coordinate

Value range 0 .. 500

Value after reset 0

During the spline interpolation, this register can be queried whether a teach point was
reached.

Pointer to Teach or Spline


Register 1x1192
Coordinates
Function Description

Read Current pointer value

Write Write a new value for the pointer

Value range 0 .. 3.000

Value after reset 0

This register is used as pointer in the spline interpolation. Before calculation of the
spline, the teach coordinate can be accessed using the pointer register. After
completed calculation, a spline coordinate can be accessed with the same pointer.

Jetter AG 417
8 Continuous Path Controls JetWeb

Number of calculated
Register 1x1193
spline points
Function Description

Read Current number of spline points

Write New value for the number of spline points

Value range 0 .. 3.000

Value after reset 0

The number of calculated spline points is written into this register upon completed
spline calculation. The number of spline points can be modified to limit or increase
the spline.

Maximum Speed for Spline


Register 1x1194
Interpolation
Function Description

Read Current value of the max. speed

Write New value for the max. speed

Value range 0 .. <Register 1xy021>

Value after reset 1.000

The the max. speed which may be reached when the spline is carried out is written
to this register before the spline is calculated. For the upper max. values of the value
range, register 1xy021 (reference value related to the set velocity of the axis) is
important. The value specified in the basic parameterization of the axis (i.e. in
register 1xy021) also limits the max. value in register 1x1194.

Since two subsequent spline points must have a distance with respect to time of at
least 20 ms, the following applies with respect to the max. speed:
• Low maximum speed results in a large number of spline points,
• high max. speed results in a small number of spline points.

418 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Status Register
Register 1x1195
Spline calculation
Function Description

Read Present status of the spline calculation

Write Illegal

Value range Bit-coded, bit 0 .. 23

Value after reset 0

A bit is set in this register when an error has occurred during the spline calculation.
Meaning of error bits:

Bit #: Meaning
0 Accumulative error

2 Internal memory error / insufficient memory.

3 The max. number of teach points has been reached (the max. number
is defined in register 1x1240)

4 The max. number of spline points has been reached (the max. number
is defined in register 1x1241)

5 The max. number of splines has been reached (max. number = 10)

6 Two subsequent teach points are identical.

Jetter AG 419
8 Continuous Path Controls JetWeb

Calculation with/without
Register 1x1202
correction
Function Description

Read Currently set correction type

Write New value for the correction type

Value range 0 .. 1

Value after reset 1

Parameterizing this register allows to enable/disable the automatic correction during


the spline calculation.

Register Meaning
value:
0 Automatic correction is disabled.

1 Automatic correction is enabled.


If two subsequent spline points with a distance less than 18 ms
are detected during the calculation of the individual spline
segments, then these points are corrected automatically.
Reason: the max. distance between 2 spline points with respect
to time is 20 ms.

420 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x1204 X-Coordinate Teach Point


Function Description

Read Current value of the x-coordinate of the teach


point

Write New value for the x-coordinate of the teach point

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used to calculate the spline interpolation. Here, the x-coordinate of
the respective current teach point is defined.

Register 1x1205 Y-Coordinate Teach Point


Function Description

Read Current value of the y-coordinate of the teach


point

Write New value for the y-coordinate of the teach point

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used to calculate the spline interpolation. Here, the y-coordinate of
the respective current teach point is defined.

Jetter AG 421
8 Continuous Path Controls JetWeb

Register 1x1206 Z-Coordinate Teach Point


Function Description

Read Current value of the z-coordinate of the teach


point

Write New value for the z-coordinate of the teach point

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used to calculate the spline interpolation. Here, the z-coordinate of
the respective current teach point is defined.

Register 1x1240 Max. Number of Teach Points


Function Description

Read Current max. number of teach point to be used


for the calculation

Write New max. value for the number of teach points

Value range 3 .. 500

Value after reset 30

The max. number of teach points to be used for calculating the spline interpolation is
defined in this register.
When writing this register, a corresponding memory space is reserved at the same
time for the calculation. Therefore, register 1x1240 has to be parameterized before
the teach point coordinates are entered into the corresponding registers.

422 Jetter AG
JX6-CON-Move(-BP) Module 8 Continuous Path Controls

Register 1x1241 Max. number of spline points


Function Description

Read Current max. number of spline points to be used


for the calculation

Write New max. value for the number of spline points

Value range 3 .. 3.000

Value after reset 500

The max. number of spline points to be used for calculating the spline interpolation
is defined in this register.
The register must be written before the spline calculation is started.

When the register is written, already reserved "old" memory space is made available
for calculating the current spline. The memory space requirement for the resulting
spline data amounts to approx. 14 times of the parameterized register value. Further
internal data are required additionally during the calculation. This also requires
memory space which must be taken into account for the calculation.
If the memory is insufficient for the calculation, then bit 2 is set in register 1x1195. An
error bit (bit 4) is set in register 1x1195 if a higher number of spline points than
defined in register 1x1241 results from the spline calculation.

Jetter AG 423
8 Continuous Path Controls JetWeb

8.6.7 Overview of Commands:


Spline interpolation with 3 axes
The following overview of commands contains all commands which are directly used
for a spline interpolation with 3 axes. These commands are written into the command
register 1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Commands:
Command #
Spline interpolation with 3 axes
41 Start interpolation

42 Remove axis from interpolation

94 Master-slave configuration 5 for linear interpolation

109 Spline interpolation: Starting a spline calculation

110 Spline interpolation: Starting a spline movement

142 Spline interpolation: Recalculation of the spline


length

424 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9 Follower Control
Overview
The operating principle of the follower control is based on one or several slave axes
directly following the motion of a master axis. The behavior how the slave axes follow
the master axis can be modified in different ways. For example, it is possible to set
a static or a dynamic transmission ratio, or to specify an offset.
The figure below shows the positions of slave axes in relation to a master axis at a
certain time x.

Motion of master axis

Motion of slave axis 1

Motion of slave axis 2

Motion of slave axis x

Fig. 76: Operating principle of a follower control

Follower Controls with the JX6-CON-Move(-BP) Module


The JX6-CON-Move(-BP) and JetMove2xx modules allow to realize follower
controls.
For follower controls the subsequently listed basic operating modes are possible:
• follower control as electric gear (with static transmission ratio),
• follower control in table mode (with dynamic transmission ratio),
• follower control in table mode with factor and divisor (this operating mode
combines the advantages of static and dynamic transmission ratio).

Besides, the various operating modes provide special functions such as endless
positioning. This gives the user various possibilities to define and customize the
behavior how slave axes follow the master in the application.
The individual operating modes are described in more detail in the following
chapters.

Jetter AG 425
9 Follower Control JetWeb

General Prerequisites
Some crucial issues need to be observed irrespective of the desired operating mode.

• In the follower function, the slave should be the slower axis. Else, control-specific
problems might occur and it will not be possible to handle overflows.

• However, the master axis needs not necessarily be a controlled axis, but can, for
instance, just be an encoder.

• The master position must always be positive.

• Basically, accurate adjustment of the controllers is the precondition for proper


functioning of axis motions. All controllers (torque, velocity and position
controllers) must be adjusted subsequently and in the specified order.

• Optimal tracking error compensation of the individual axes is essential to ensure


coordinated operation. The more accurate the tracking errors of the axes are
adjusted, the more accurate will be the desired following behavior of the axes.

• Before starting the follower, all axes involved must have found their reference
positions (see Base Description chapter 5.4: "Machine Referencing", page 76).

• If an axis is operated as slave in the follower function and if a positioning


instruction (POS [Axis=<Axis #>, Pos=<set position>, v=<set velocity>]) is given
to this axis, then the slave axis moves to the specified position and, by doing so,
quits the follower mode.

426 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.1 Follower with Static Transmission


Ratio
9.1.1 Overview
In the follower mode, the slaves follow the master either 1:1 or with another
previously defined transmission ratio. To do so, the actual position of the master is
converted by means of the transmission ratio before the slave uses it as set position.

The transmission ratio is calculated by the following formula:

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

The factor and the divisor of the transmission ratio are stored in registers.
Any transmission ratio can be realized - therefore the name "electric gearbox".
Additionally, an offset can be specified to realize an offset between master and slave.
The figure below shows the positions of slaves axes that follow the master axis with
different transmission ratios (at a certain time x).

Direction of motion of all axes

Master

Slave 1 with
TR 1:1

Slave 2 with
TR 1:2

Slave 3 with
TR 1:2 and
Offset 2.000 inc

0 2 4 6 8 10 12 14 16 Travel s
in 1.000 inc
TR = Transmission Ratio

Fig. 77: Follower with static transmission ratio

Jetter AG 427
9 Follower Control JetWeb

If the transmission ratio is defined 1:1 and the offset = 0, then the set position of the
slaves corresponds with the actual position of the master. The slave axis (in our
example slave 1) follows the master axis with a slight delay due to control-related
reasons (signal runtimes).

Slave 2 follows the master axis with a transmission ratio of 1 : 2 without additional
offset:

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

1
SetpositionSlave = 16.000 inc × --- + 0
2

SetpositionSlave = 8.000 inc

Slave 3 has a transmission ratio of 1:2 with an offset of 2.000 inc.

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

1
SetpositionSlave = 16.000 inc × --- + 2.000
2

SetpositionSlave = 10.000 inc

If the transmission ratio divisor is modified during the positioning process, a sudden
position change will inevitably occur in the slave.
However, if the transmission ratio factor is modified, then internally an additional
offset is calculated so that no sudden change of the position will occur. But this
results in a sudden velocity change.

The follower mode with static transmission ratio offers different variants. Their main
difference is the hardware configuration. Besides, it is possible to run the axes in
"endless positioning" mode. For details, please refer to chapter 9.1.4: "Follower
Control (Electric Gearbox) in Endless Mode", page 444

Overview of follower control variants with static transmission ratio, as well as of


relevant registers and commands:

428 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Master and slave Used Used


located on one controller module Registers Commands

1xy052 Adjustment of the 44 TR - ON


JX6-CON-
encoder resolution 45 TR - OFF
Move(-BP)
CPU JX6-SB 1xy056 TR factor 92 Axis 3 is
1xy057 TR divisor master - ON
Master Slave 1xy095 Actual master pos. 93 Axis 3 is
1xy163 TR offset master - OFF
1xy248 Master offset

Master and slave 1xy052 Adjustment of the 30 Master sends


encoder resolution
located on different 31 Slave reads
controller modules 1xy056 TR factor 42 Remove axis
1xy057 TR divisor from the bus
JX6-CON- JX6-CON-
Move-BP Move-BP 1xy095 Actual master pos. 44 TR - ON
CPU JX6-SB JX6-SB 1xy163 TR offset 45 TR - OFF
1xy248 Master offset
Master Slave 1x4132 Axis number of
through external slaves
1x4137 1-6

Axis 3 (consisting of an encoder Additional


only) is master in follower mode commands
(Master and slave(s) may be located on
one or on different controller modules - 90 Activate
hardware configuration see above) axis 3
91 Deactivate
axis 3
92 Axis 3 is
master - ON
93 Axis 3 is
master - OFF

Follower control in Additional Additional


endless positioning mode registers commands
(irrespective of the hardware
configuration) 1xy058 Positive max. 56 Endless
Position - Master positioning
in positive
1xy085 Absolute direction
maximum position
1x2096 Overflow position
of the master

Fig. 78: Overview: Follower control as electric gearbox

Jetter AG 429
9 Follower Control JetWeb

9.1.2 Configurations

General Provisions:
The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Rack
Slot # 1 2

CPU JX6-CON-
Move
(-BP)

Submodule 3 = empty

Submodule 2 = empty

Submodule 1 = JX6-SB

Interface Module

Master module

Physical axis 1 Physical axis 2 Physical axis 3


= logical axis # 21 = logical axis # 22 = logical axis # 23

Fig. 79: Follower Control as Electric Gearbox - Axis Configurations

430 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

o A maximum of 9 axes can be involved in the follower function.

o A JX6-CON-Move(-BP) module is designated as master module.


Thus, the master axis is located on this module.

o All other axes are slaves. Depending on their physical


arrangement in the enclosure of the controller, they are called
internal or external slaves.

Slave axes located on an expansion module together with the master will be referred
to as internal slaves in this document. Slave axes located on a different expansion
module are referred to as external slaves.

Example:
Axes 21, 22, 31, and 32 are involved in the follower action. Axis 21 is the master.
Then, axis 22 is an internal slave, and axes 31, and 32 are external slaves.

In the follower function, the parameters of the master axis, such as acceleration
ramp, deceleration ramp, velocity and destination window, are used as parameters
for the motion of all axes involved.

Note!

The following applies to the hardware when using the follower function:

Controller modules both of the type JX6-CON-Move and JX6-CON-


Move-BP are allowed.
The use of JX6-CON-Move-BP controller modules is imperative if
master and slave are located on different controller modules (bus
operation).

Jetter AG 431
9 Follower Control JetWeb

Possible axis configurations:


There are various ways of combining axes in a follower operation with static
transmission ratio:

1. Only the physical axes 1 and 2 of a master module are involved.

2. All 3 axes of a master module are involved.

3. Axis 1, axis 2, or both axes of the master module and up to 8


slave axes are involved.

4. Axis 3, consisting of an encoder only, and up to 8 slave axes are


involved.

The configuration possibilities within the various variants are described in detail
below.

Note!

See chapter 4.2: "Configurations", page 30 for general notes on combination


possibilities of submodules on expansion modules. The restrictions mentioned
there are also relevant for follower configurations.

It is basically possible that several follower functions are carried out simultaneously
within the controller.
However, for the configuration variants 3 and 4, the hardware-related bus separation
between module slots 4 and 5 must be taken into account. This means that the
controller modules in slots 2 through 4 can be used for one interpolation job, and the
modules located in slots 5 through 8 for another interpolation job.
Combinations across the bus separation are not permitted!

432 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

It is possible to use axis 3, consisting only of an incremental or absolute encoder, as


master in the follower mode with static transmission ratio. For more details on this
special case, please refer to chapter : "Follower Control (Electric Gearbox)
Configurations: Variant 4", page 438.
To simplify matters, the term "axis" is kept. The provisions with regard to axis and
register numbering do apply, too.

If more than 3 axes are integrated into the follower control, then we recommend to
define a controlled axis as master.

Jetter AG 433
9 Follower Control JetWeb

Follower Control (Electric Gearbox) Configurations:


Variant 1

Only axes Variant 1 distinguishes itself by the fact that only the two physical first axes of the
1 and 2 of a master master module are involved in the follower control mode.
module are This is the simplest case of a follower control.
involved Here a possible configuration:

Rack
Slot # 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
socket # 3
(Empty/AD8/
DA4/SV)

Submodule
socket # 2
(must be empty)

Submodule
socket # 1
(JX6-SB)
Axes 21, 22

Master module

Fig. 80: Configuration for follower control variant 1

A JX6-CON-Move or JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21 and 22 are
configured.
The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of submodule 3 is irrelevant for this variant. For example, additional I/O
cards can be plugged.

The following configurations are possible for variant 1:


Axes 21 and 22, or 31 and 32, 41 and 42, 51 and 52, 61 and 62, 71 and 72, or 81
and 82 can be combined for the follower.

434 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Follower Control (Electric Gearbox) Configurations:


Variant 2

All 3 axes of a Variant 2 distinguishes itself by the fact that all 3 configurable axes of a module
master module (which then also is the master module) are involved in the follower control mode
are involved with static transmission ratio.
Here a possible configuration:

Rack
Slot # 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
socket # 3
(must be empty)

Submodule
socket # 2
(must be empty)

Submodule
socket # 1
(JX6-SB)
Axes 21, 22,23

Master module

Fig. 81: Configuration for follower control variant 2

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 via which axes 21, 22, and 23 are configured.
The sockets for submodules 2 and 3 must remain empty. No submodules may be
plugged.
The module on which the axes are located is designated as master module.
In the given configuration, axis 23 has to be the master axis.

Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 2:


Axes 21, 22 and 23, or 31, 32 and 33; 41, 42 and 43; 51, 52 and 53; 61, 62 and 63;
71, 72 and 73, or 81, 82 and 83 can be combined for follower control mode with static
transmission ratio.

Jetter AG 435
9 Follower Control JetWeb

Follower Control (Electric Gearbox) Configurations:


Variant 3

Master and slave In this case, a master axis and up to a maximum number of 6 external slave axes
on different (i.e. on other expansion modules than the master axis) are involved in the follower
expansion control function.
modules Below an example for a possible configuration:

Rack
Slot 1 2 through 4 5 6 7 8

JX6-CON- JX6-CON- JX6-CON- JX6-CON- JX6-CON-


CPU
Move(-BP) Move-BP Move-BP Move-BP Move(-BP)

Equipped Equipped
with various Submodule 3 Submodule 3 Submodule 3 with various
submodules (empty/AD8/ (empty/AD8/ (empty/AD8/ submodules
DA4/SV) DA4/SV) DA4/SV)

Submodule 2 Submodule 2 Submodule 2


(must be empty) (must be empty) (must be empty)

Submodule 1 Submodule 1 Submodule 1


(JX6-SB) (JX6-SB) (JX6-SB)
Axes 51, 52 Axes 61, 62 Axes 71, 72

Master module

Fig. 82: Configuration for follower control variant 3

The controller modules JX6-CON-Move-BP are plugged in slots 5 through 7. Their


submodules 1 (JX6-SB modules) represent the axes involved in the coordinated
motion. The logical axis numbers are indicated in the above figure under the
submodule designation 1 (JX6-SB).
The module located in slot 5 is the master module, In this follower control variant,
either axis 51 or axis 52 can be designated as master axis. In each case, the other
axis located in slot # 5 can also be used as slave axis.
Axes 61, 62, 71, and 72 are the external slave axes.
The respective type of submodule 3 located on the controller modules in slots 5
through 7 is irrelevant. For example, additional I/O cards can be plugged. Submodule
sockets 2 of the controller modules in slots 5 through 7 must not accommodate any
submodules.

436 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

When a rack with 8 slots is used, the JX6-CON-Move-BP modules can be plugged
in different slots. In this case, however, the hardware-related bus separation between
expansion module slots 4 and 5 must be taken into account. This means: all modules
used for the follower function must either be plugged in slots 2 through 4, or 5 through
8.

The following table gives a summary of combination possibilities for variant 3.

Master Axis Slave axes that can be Note


combined with the master

21 22, 31, 32, 41, 42

22 21, 31, 32, 41, 42

31 32, 21, 22, 41, 42 All 5 axes or just some of


them can be combined with
32 31, 21, 22, 41, 42 the master axis

41 42, 21, 22, 31, 32

42 41, 21, 22, 31, 32

------- Bus separation -------

51 52, 61, 62, 71, 72, 81, 82

52 51, 61, 62, 71, 72, 81, 82

61 62, 51, 52, 71, 72, 81, 82

62 61, 51, 52, 71, 72, 81, 82 All 7 axes or just some of
them can be combined with
71 72, 51, 52, 61, 62, 81, 82 the master axis
72 71, 51, 52, 61, 62, 81, 82

81 82, 51, 52, 61, 62, 71, 72

82 81, 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

Jetter AG 437
9 Follower Control JetWeb

Follower Control (Electric Gearbox) Configurations:


Variant 4

Axis 3, consisting The characteristics of variant 4 is that an incremental or absolute encoder in the
only of an third submodule socket of a JX6-CON-Move(-BP) expansion module acts as
encoder, is master master.
To simplify matters, the term "axis" is also used for this encoder. The relevant
provisions with regard to axis and register numbering do apply, too.
Slaves can be internal or external axes.
Here a possible configuration:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
3
(Actual position
= Master consisting of an actual position encoder only
encoder) (Axis 23)

Submodule
2
(must be empty)

Submodule
1
(JX6-SB) = Slave (Axis 21)
Axis 21

Fig. 83: Configuration for follower control variant 4

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 on which axis 21 is located. In our example, axis 21 is
intended as internal slave involved in the follower function.
An actual position encoder (incremental encoder) is plugged in submodule socket 3.
This encoder acts as master. In the given case, the master is designated axis 23.
The submodule socket # 2 must remain empty. No submodules may be plugged.

438 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

The following configurations are possible for variant 4:

Master Axis Slave axes that can be Note


combined with the master

23 21, 22, 31, 32, 41, 42 All 6 axes or just some of


them can be combined with
33 21, 22, 31, 32, 41, 42 the master axis
43 21, 22, 31, 32, 41, 42

------- Bus separation -------

53 51, 52, 61, 62, 71, 72, 81, 82


All 8 axes or just some of
63 51, 52, 61, 62, 71, 72, 81, 82 them can be combined with
73 51, 52, 61, 62, 71, 72, 81, 82 the master axis

83 51, 52, 61, 62, 71, 72, 81, 82

Combinations across the bus separation are not permitted!

Jetter AG 439
9 Follower Control JetWeb

9.1.3 Programming Rules

Designating a a) Explicit designation as master is required only if axis # 3 of a module should


module as master act as master in the follower function. If axis # 3 consists only of an encoder,
the following commands have to be issued:

Register 1xy001 = 90 Axis 3 is activated

Register 1xy001 = 92 Axis 3 is the master in the follower mode -


ON

If axis 3 is a properly defined, full axis, then command 92 has to be issued


only.

Register 1xy001 = 92 Axis 3 is the master in the follower mode -


ON

Parameterizing in b) The motion parameters (set velocity, acceleration ramp, deceleration ramp
the master axis and destination window) are specified in the registers of the master axis.

Register 1xy021 = __ Reference value related to the set velocity

Register 1xy003 = __ Set speed

Register 1xy005 = __ Acceleration ramp

Register 1xy006 = __ Deceleration ramp

Register 1xy007 = __ Destination window (optional)

Parameterizing in c) If a slave axis has an encoder resolution other than the resolution of the data
the slave axis axis (here: data axis), then register 1xy052 of this slave axis has to be
parameterized.

Register 1xy052 = __ Adjustment of the encoder resolution to suit


the data axis

The value is calculated according to the following formula:

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

ER = Encoder resolution in register 1xy017

These rules apply to all involved slave axes with differing encoder
resolutions.

440 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Determining the d) The behavior how a slave follows the master can be specified for each slave.
transmission ratio To do so, the desired transmission ratio is stored in the respective slave
registers.
The calculation is carried out by the following formula:
Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

and entered into the slave registers as follows:

Register 1xy056 = __ Factor of the transmission ratio between


master and slave

Register 1xy057 = __ Divisor of the transmission ratio between


master and slave

Register 1xy163 = __ Position offset with which the slave follows


the master

Registering e) The master must be informed which external slave axes are involved in the
external slaves follower function. For this purpose, the logical axis numbers of the slaves
with the master have to be entered into the corresponding master registers. Please note that
only the first axis of a controller module is written into a master register.
When doing so, the logical axis # 1 may be the physical axis # 2 of all axis
defined by a JX6-SB module.

Register 1x4132 = __ Axis number of the external slave 1

Transferring the f) The actual task of command 30 is to send the actual position of the master
actual position of to the bus in order to inform the external slaves about this position.
the master to the The axis, to which command 30 is issued, as a side effect, is designated as
external slaves master. Thus, all other physical axes involved are slaves in the follower
function. This applies to all configuration variants where an axis # 1 or # 2
acts as master.
Attention: If physical axes # 1 and 2 of a JX6-CON-Move-BP module are
slaves of an external master, then the master may only send its actual
position to the first axis.

Register 1xy001 = 30 Master sends actual position to external


slaves

External slaves g) Command 31 has to be be issued to all external slave axes involved. This
adopt the actual enables the slaves to read the actual position of the master from the bus.
position of the Next, it is checked immediately whether the actual position of the master was
master passed to the respective slave successfully. For this purpose, bit 13 (BUSY)
of the status register of the concerned slave is queried.

Register 1xy001 = 31 Slave axis reads actual position of the


master

Register 1xy000 Slave axis: BUSY-bit not active ?


Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that the actual position of the
master is mapped in the respective slave register 1xy095.

Jetter AG 441
9 Follower Control JetWeb

Command 44 h) Command 44 issued to the slave axis (axes) starts the follower function with
starts static transmission ratio (electric gearbox).
the follower
function Register 1xy001 = 44 Follower control via factor/divisor - ON

The slave now follows the master axis with the defined transmission ratio.

Displaying i) The present actual position of the master axis can be read from
the actual position corresponding slave axis register. The user can only read this register
of the master in (writing is not permitted) and use the data as information (e.g. for
the slave visualization purposes) or for further calculations.

Register 1xy095 = __ Actual position of the master axis

Modifying the j) The transmission ratio can be modified during the positioning run. To do so,
transmission ratio the new value of the transmission ratio factor is written into the slave register
1xy056.
Attention: The divisor (register 1xy057) may not be modified.
If the transmission ratio is modified during the positioning run, a sudden
change of velocity will inevitably occur in the slave.

Command 45 k) Command 45 issued to the slave axis (axes) deactivates the follower
terminates function with static transmission ratio (electric gearbox). In doing so, an
the follower AXARR instruction is being executed simultaneously.
function

Register 1xy001 = 45 Follower control via factor/divisor - OFF

By default, the follower control via factor/divisor is deactivated.

Removing axes l) If all axes involved in the coordinated motion are to be operated individually
from the bus again, command 42 must be issued to all physical axes.
In doing so, an AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Terminate the follower control function

442 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Acknowledging m) To ensure a defined final state of the follower function, it should be verified
command 42 whether command 42 was executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved
(master and slave(s)) is queried.

Register 1xy000, Terminate the follower control function


Bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

The following two programming steps are required only in case an axis # 3 is
involved in the follower control function.

Command 93 n) Command 93 deactivates the function which determined axis 3 as master


deactivates the axis in the follower function. This is the default setting.
master definition
for axis 3 Register 1xy001 = 93 Axis 3 is the master in the follower function
- OFF

Command 91 o) This command deactivates the function of axis 3 (axis consists of an encoder
deactivates only). This is the default setting.
axis 3
Register 1xy001 = 91 Axis 3 is deactivated

For a programming example, please refer to the CD provided with this manual.
See also chapter 9.1.4: "Follower Control (Electric Gearbox) in Endless Mode",
page 444.

Jetter AG 443
9 Follower Control JetWeb

9.1.4 Follower Control (Electric Gearbox) in


Endless Mode

Endless mode for The endless mode function can be used for all configuration possibilities of the
all variants of the follower control. It does not refer to the actual follower control function but
follower control represents a positioning function.
(electric gearbox) For detailed information, please refer to chapter 7: "Positioning Functions", page
183 and chapter 7.3: "Endless Positioning", page 198.

The combination of endless positioning with the follower control function allows to
realize complex, coordinated axis motions.
The variants described in the previous chapters only allow single positioning. They
constitute the basis for endless mode and are expanded for this purpose by some
parameters.

The problem of combining endless positioning and follower mode is how to handle
maximum and overflow positions.

Note!

Endless positioning of the master can only be carried out in positive direction.
Endless positioning in negative direction or a change of direction during the overall
process is not allowed.

444 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Endless positioning works according to the following principle:

Position
(in inc)

200.000

150.000

100.000

50.000

25.000

Time t
0
Positioning Cycle 1 Positioning Cycle 2 Positioning Cycle 3

Master Master Master

Slave Slave Slave

Fig. 84: Follower control (electric gearbox) and endless positioning

The slave follows the master with the transmission ratio 1:1. In the above diagram,
the time offset between master axis and slave axis is 25.000 inc. The follower
function is started simultaneously for master and slave with the slave following the
master immediately.

The following applies to the master:


• A positioning cycle may consist of several individual positioning runs.
• As soon as the set position and subsequently the actual position has reached the
max. value (here 200.000 inc) within a cycle, both positions are always reset by
the parameterized max. value (here 200.000 inc and consequently reset to 0).
Therefore, the next positioning cycle starts at 0 again.
• The 3 positioning cycles depicted in the figure take place one after the other
without interruption.

The following applies to the slave:


• If the positioning cycle of the master consists of individual positioning runs, then
the slave also follows the master in individual positioning runs with the defined
transmission ratio.
• The slave must know at which position and by which value the master is reset.
• Parameterizing the slave register "positive maximum position of the master in the
slave" allows to individually modify the behavior how the slaves follow the master.
That way, each slave can be operated independently from other slaves to a great
extent.
In the figure above, position 200.000 inc is defined for the slave in the respective
slave register (1xy058) as positive maximum value of the master. For a further
slave, e.g. the value 100.000 inc could be defined in its register 1xy058.
• The 3 positioning cycles depicted above also occur one after the other without
interruption.

Jetter AG 445
9 Follower Control JetWeb

The axis configuration of variant 1 is used as example:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule 3
(empty/AD8/
DA4/SV)

Submodule 2
(must be empty)

Submodule 1
(JX6-SB)
Axes 21, 22
Axis 22 = Slave

Axis 21 = Master

Fig. 85: Exemplary Configuration for the Follower Control in Endless Mode

446 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Programming Rules for Endless Positioning:


The following programming rules focus on the endless positioning function. The
provisions given in chapter 9.1.3: "Programming Rules", page 440 and the following
pages, have to be taken into account.

Absolute a) For the combination of endless positioning and follower function, an absolute
maximum maximum position must be defined for the master. When this maximum value
position of the is reached, the actual and set position of the master are reset. The absolute
master maximum position is stored in the master register 1xy085 and is always given
by command as positive value.

Reg. 121085 = 200,000 Absolute maximum position of the master (in


inc)

Determining the b) The desired transmission ratio is stored in the respective slave registers
transmission ratio and is calculated as follows:
Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

Register Contents Description

122056 =1 Factor of the transmission ratio between


master and slave

122057 =2 Divisor of the transmission ratio between


master and slave

122163 = 1.000 Position offset with which the slave follows


the master

Defining the c) The maximum position of the master for the respective slave is defined in the
maximum slave register 1xy058. This register is parameterized regardless of the
position of the absolute maximum position of the master. A master position is defined here
master in the that determines the limit value for this one slave at which the positions are
slave reset. This way, the same function is realized in the slave as in the master
register 1xy085.

Reg. 122058 = +180,000 Positive maximum position of the master in


the slave (in inc)

Registering the d) The overflow position of the master is written into the slave register 1x2096.
overflow position For this information, the register of the second axis is always used but it
of the master in applies to both slave axes of a controller module. The value in this slave
the slave register corresponds to the content of the master register 1xy085.

Register 1x2096 has to be parameterized only if external slaves are used.

Reg. 122096 = 200,000 Overflow position of the master in the slave


(in inc)

Jetter AG 447
9 Follower Control JetWeb

Command 44 e) Command 44 issued to the slave axis starts the follower function (electric
starts gearbox).
the follower
function Register 122001 = 44 Follower control via factor/divisor - ON

The slave now follows the master axis with the defined transmission ratio.

Activating f) Endless positioning mode is activated by issuing command 56 in the master


endless register.
positioning mode
Register 121001 = 56 Master axis 21: Endless positioning in
positive direction

Depending on the application, it might be useful to start the motion of the


master axis first (exchange programming step e) and f)). Dies ist abhängig
von der Applikation.

Displaying g) The present actual position of the master axis can be read from this register.
the actual position The user can only read this register (writing is not permitted) and use the data
of the master in as information (e.g. for visualization purposes) or for further calculations.
the slave

Register 122095 = 10,000 Actual position of the master axis

Stopping endless h) The axis involved in endless positioning is stopped by giving command 0.
axis positioning

Register 121001 = 0 AXARR with deceleration ramp

Command 45 i) Command 45 issued to the slave axis deactivates the follower function
terminates (electric gearbox).
the follower
function Register 122001 = 45 Follower control via factor/divisor - OFF

For a programming example, please refer to the CD provided with this manual.

448 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.1.5 Overview of Registers:


Follower Control (electric gearbox)
The register overview lists all registers used for the function "follower control with
static transmission ratio". These registers might be necessary both for the master
axis and the slave axes. This will be described in more detail in the next chapter.

Reg. Registers: Follower Control


R/W
# (electric gearbox)
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 13: BUSY
Bit 23: Speed pre-control enabled

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

056 - *** Registers: Follower Control


163 (electric gearbox)
052 R/W Adjustment of the encoder resolution to suit the data axis

056 R/W Factor of the transmission ratio between master and slave

057 R/W Divisor of the transmission ratio between master and slave

058 R/W Positive maximum position of the master in the slave

085 R/W Absolute max. position

095 R Actual position of the master axis

163 R/W Position offset with which the slave follows the master

248 R/W Master offset

2096 R/W Overflow position of the master in the slave

Jetter AG 449
9 Follower Control JetWeb

4132 R/W Axis #: External slave 1

4133 R/W Axis #: External slave 2

4134 R/W Axis #: External slave 3

4135 R/W Axis #: External slave 4

4136 R/W Axis #: External slave 5

4137 R/W Axis #: External slave 6

450 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.1.6 Description of Registers:


Follower Control (electric gearbox)

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolutions of the slave axes also have to be adjusted to suit the data
axis. For follower control, the definition applies that the data axis always acts as
master axis.
If a slave axis involved in the follower function has an encoder resolution other than
the resolution of the data axis, then register 1xy052 of the respective slave axis has
to be parameterized. The value is calculated according to the following formula:

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

ER = Encoder resolution in register 1xy017

Note!

Register 1xy052 is also used for other special functions but with different
meaning and effect.

Jetter AG 451
9 Follower Control JetWeb

Factor of the transmission ratio


Register 1xy056: between
master and slave
Function Description

Read Value of the actual factor

Write Write a new value for the factor

Value range 1 .. +8.388.607

Value after reset 1

This register is used as slave register in the follower function to define the
transmission ratio with which the slave follows the master.
The transmission ratio is calculated by the following formula:

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

The actual position of the master is written in register 1xy095.

The register content can be modified during the positioning process. The sudden
change of position that will occur invevitably in the slave can be compensated

Note!

The product resulting from the factor of the transmission ratio and the maximum
position of the master may not exceed the value 231-1.

452 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Divisor of the transmission ratio


Register 1xy057:
between master and slave
Function Description

Read Value of the actual divisor

Write Write a new value for the divisor

Value range 1 .. +8.388.607

Value after reset 1

This register is used as slave register in the follower function to define the divisor of
the transmission ratio with which the slave follows the master.
The transmission ratio is calculated by the following formula:

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

The actual position of the master is written in register 1xy095.

Note!

The register content may not be modified during the positioning process.

Jetter AG 453
9 Follower Control JetWeb

Positive maximum position of


Register 1xy058:
the master in the slave
Function Description

Read Value of the current maximum position for the


master axis in the slave

Write Write a new maximum position for the master


axis in the slave

Value range 1 .. +8.388.607

Value after reset +8.388.607

This register is used as slave register in the follower function.


It indicates the maximum possible position of the master axis in positive direction and
is used for the defined reset of the slaves.
As soon as the master has reached the position stored in register 1xy058, the reset
is triggered and the actual and set positions of the slaves are reset to zero.

454 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Register 1xy085: Absolute max. position


Function Description

Read Value of the absolute max. position

Write Write a new max. position

Value range 0 .. +7.490.000

Value after reset 7.490.000

For the follower function in endless mode, this register is used as master register.
The register content serves as maximum value at which the actual and set positions
of the master are reset.
Endless positioning is parameterized in the master and runs as continuous
positioning at the set velocity by taking into account the acceleration ramp. As soon
as the master has reached the position stored in register 1xy058, the reset is
triggered and the actual and set positions of the master are reset exactly by the
parameterized value.

Note!

Register 1xy085 is also used for other special functions but with different
meaning and effect.

Actual position of the master


Register 1xy095:
axis
Function Description

Read Value of the present actual position of the master


axis

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

In this slave register, the present actual position of the master axis can be read.
The slave will adjust to this position.
The indicated position might differ from the real actual position of the master. This is
the case when the overflow value of the master differs from that of the slave. See
also register 1x2096.

Jetter AG 455
9 Follower Control JetWeb

Position offset with which the


Register 1xy163:
slave follows the master
Function Description

Read Value of the actual offset

Write Write a new value for the offset

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used as slave register in the follower function to define the offset of
the transmission ratio with which the slave follows the master.

Operation with offset works as follows:


The master is started. When a certain master position is reached, the slave is started
(with the transmission ratio defined before). The offset is the difference of positions
between start positions of master and slave.

The transmission ratio is calculated by the following formula:

Factor
SetpositionSlave = ActualpositionMaster × -------------------- + Offset
Divisor

The actual position of the master is written into register 1xy095.


The factor is defined in register 1xy056 , the divisor in register 1xy057.

456 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Register 1xy248: Master offset


Function Description

Read Present value for Master offset

Write New value for the master offset

Value range -<Reg. 1xy055> ... +<Reg. 1xy055>

Value after reset 0

This register is used as slave register in the follower function (table mode).
The actual position of the master is transmitted to the slave. By means of a master
offset this actual position can be shifted. The master offset is written in register
1xy248, and the master position in the slave in register 1xy095.

Master position in the slave = Actual master position + master offset

Jetter AG 457
9 Follower Control JetWeb

Overflow position of the master


Register 1x2096:
in the slave
Function Description

Read Value of the overflow position of the master

Write Write a new overflow position for the master

Value range -8.388.608 .. +8.388.607

Value after reset 0

This slave register is used as max. value at which the actual position of a master is
reset in the slave.

There are 3 situations when the actual position of the master must be reset to 0:
• in endless positioning mode, when the absolute maximum position of the master
(defined in register 1xy085) is exceeded,
• in relative positioning mode, when the absolute maximum position of the master
(defined in register 1xy085) is exceeded,
• for absolute encoders, when the maximum position resulting from the encoder
used is exceeded (e.g. this maximum position for a 12-bit single-turn encoder is
reached at position 4.096).

If one of the 3 cases mentioned above occurs, the external slaves must be informed
by which value the master was reset.
Therefore, this value is written into register 1x2096 of the module where the external
slaves are located.
For this purpose, the slave register for the axis # 2 (1x2096) is always used.

458 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Registers 1x4132 through 1x4137 are necessary when the follower function is to be
carried out with external slaves.
When assigning parameters, it must be taken into account that only the first axis of
an expansion module is written into a master register. When doing so, the logical axis
# 1 may be the physical axis # 2 of all axis defined by a JX6-SB module.

Example:
Supposed the two axes 31 and 32 located on socket 3 of the JX6-CON-Move-BP
module are to be integrated into the follower function as external slaves. In this case,
31 is written into the master register 1x4132. By doing so, both slaves (axes 31 and
32) are defined as external slaves.
If only axis 31 is needed under the same conditions, then the parameter assignment
is the same as in the first case.
If only axis 32 is to be integrated, then value 32 is written into register 1x4132.

Note!

Registers 1x4132 through 1x4137 are also used for other special functions but
with different meaning and effect.

Register 1x4132: Axis #: External slave 1


Function Description

Read Present axis number of the first external slave


axis involved

Write New first external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the first external slave axis involved must be
written into this master register.

Jetter AG 459
9 Follower Control JetWeb

Register 1x4133: Axis #: External slave 2


Function Description

Read Present axis number of the second external slave


axis involved

Write New second external slave axis involved (enter


the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the second external slave axis involved, which
is located on another expansion module than the first external slave axis, must be
written into this master register.

Register 1x4134: Axis #: External slave 3


Function Description

Read Present axis number of the third external slave


axis involved

Write New third external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the third external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

460 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Register 1x4135: Axis #: External slave 4


Function Description

Read Present axis number of the fourth external slave


axis involved

Write New fourth external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the fourth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

Register 1x4136: Axis #: External slave 5


Function Description

Read Actual axis number of the fifth external slave axis


involved

Write Define a new fifth external slave axis involved


(enter the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the fifth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

Jetter AG 461
9 Follower Control JetWeb

Register 1x4137: Axis #: External slave 6


Function Description

Read Actual axis number of the sixth external slave


axis involved

Write Define a new sixth external slave axis involved


(enter the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the sixth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

462 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.1.7 Overview of Commands:


Follower Control (electric gearbox)
This overview of commands lists all commands used for the function "follower control
with static transmission ratio". These commands are written into the command
register 1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Commands: Follower control


Command #
(electric gearbox)
30 Master sends actual position to external slaves

31 Slave reads actual position of the master

42 Remove axis from the bus

44 Follower control via factor/divisor - ON

45 Follower control via factor/divisor - OFF (*)

56 Endless positioning in positive direction

90 Axis 3 is activated

91 Axis 3 is deactivated (*)

92 Axis 3 is the master in the follower mode - ON

93 Axis 3 is master in the follower mode - OFF (*)

(*) - Default setting after a reset

Jetter AG 463
9 Follower Control JetWeb

9.2 Follower Control with Dynamic


Transmission Ratio
9.2.1 Overview
In the operating mode follower control with dynamic transmission ratio, the motion of
the slave axis is based on a table.

This operating mode also offers variants depending on the hardware configuration:
• Master and slave are located on one JX6-CON-Move(-BP) controller module,
• master and slave are located on different controller modules,
• axis 3 (consisting only of an encoder) is master in follower control mode,
• a virtual axis is the master in the follower control mode.

Basically, there are 2 possibilities to control how the table is used:


• the values in the table are read depending on the actual position of the master
and then serve as set positions for the slave,
• the set positions for the slave are read from the table in a time-controlled manner.
These possibilties can be used disregarding the hardware configuration.

Actual position of the master


defines the table element
Table in
JX6-CON- the slave
Move(-BP) SetPos
CPU JX6-SB SetPos
SetPos
Master Slave SetPos
SetPos



SetPos

Set position for the slave


taken from the table

Fig. 86: Master controls table processing

464 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Timer defines
the table element

Table in
JX6-CON- the slave
Move(-BP) SetPos
CPU JX6-SB SetPos
SetPos
Slave Slave SetPos
SetPos



SetPos

Set position for the slave


taken from the table

Fig. 87: Time-controlled table processing

The variants mentioned above are described in more detail in the following chapters.
In the operating mode "follower control with dynamic transmission ratio", it is also
possible to run the axes in "endless positioning" mode. For details, please refer to
chapter 9.2.5: "Follower Control (table mode) in Endless Mode", page 490

The figure on the next page provides a brief overview of follower control variants with
dynamic transmission ratio as well as of relevant registers and instructions.

Jetter AG 465
9 Follower Control JetWeb

Master and slave Used Used


located on one controller module registers commandc
JX6-CON- Table in 1xy052 Encoder resolution 46 Table - ON
Move-BP the slave adjustment 47 Table - OFF
C
P JX6-SB SetPos 1xy053 Pointer to table
92 A3 is master - ON
U SetPos element
Master Slave 1xy054 Table element 93 A3 is master - OFF
SetPos
value
SetPos
1xy055 Total amount of
SetPos table elements
… 1xy058 Positive maximum position of the master
… 1xy095 Actual position of the master

1xy147 Current table no. for definition purposes
SetPos
1xy148 Current table element
1xy248 Master offset
1xy260 Current table no. to be processed

Master and slave located on 1xy052 Encoder resolution 30 Master sends


adjustment
different controller modules 31 Slave reads
1xy053 Pointer to table
JX6-CON- JX6-CON- Table in element 42 Remove axis
Move-BP Move-BP the slave from the bus
C JX6-SB JX6-SB
1xy054 Table element
P value 46 Table - ON
U 1xy055 Total amount of 47 Table - OFF
table elements
1xy058 Positive maximum position of the master
1xy095 Actual position of the master
1x4132 Axis number of
through external
1x4137 slaves 1-6
1xy147 Current table no. for definition purposes
1xy148 Current table element
1xy248 Master offset
1xy260 Current table no. to be processed

Axis 3 Additional
(consisting of an encoder or commands
virtual axis only) 90 Axis 3 activated
is master in follower mode
91 Axis 3 deactivated
(irrespective of the hardware
configuration) 92 A3 is master - ON
93 A3 is master - OFF
125 Virtual axis - ON
126 Virtual axis - OFF

Additional registers
Time-controlled table mode 1xy075 Time base 52 Time index - ON
(irrespective of hardware configuration) 53 Time index - OFF

Follower control in endless 1xy085 Absolute 54 Overflow correction


maximum position of slave - OFF
mode
(irrespective of hardware configuration) 1x2096 Overflow position 55 Overflow correction
of the master of slave - ON
56 Endless positioning
in positive direction

Fig. 88: Overview: Follower control in table mode

466 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.2.2 Structure and Handling of the Table

General Information
The table must always have the same structure to ensure correct operation of the
follower control in table mode. Therefore, the following definitions apply:

Table element value


(= set position of the slave)
Register
Pointer to a 1xy054 (= -8.388.608 to +8.388.607)
table element
Register
1xy053 (= 0 to 20.000)
Current table
Element 1 element
Register
1xy148 (= 1 to 20.000)

Total amount of table


elements
Element 20.000 Register
1xy055 (= 1 to 20.000)

Fig. 89: Structure of the table and table registers

Provisions for the table structure:


• All registers used to define the table are slave registers.

• The content of the table elements (= value of the table element) comprises
the set positions for the slave. These elements are accessed by means of a
pointer, which is controlled depending on the selected operating mode.

• Some additional registers are required for organizing the process as well as
processing the tables (e.g. number of the current table per slave, total
number of elements per table. The mentioned registers have to be
parameterized only once at the beginning of the follower function).

• A maximum of 8 tables can be defined for a slave with the value range being
defined from 0 through 7.
The number of the table to be defined must be written into register 1xy147
according to the following figure.

• For processing the table mode, a table can be selected via register 1xy260.

• If a pointer cannot exactly point at a table element, the exact set position
value is calculated by means of linear interpolation taking the current and the
next table element as the basis.

Jetter AG 467
9 Follower Control JetWeb

Defining the A maximum of 8 Processing the


table number tables per slave table

Register Register
1xy147 (= 0 to 7) 1xy260 (= 0 to 7)

0 Table 1 0
1 Table 2 1
Defining 2 Table 3 2 Proces-
the table 3 Table 4 3 sing the
for slave 4 Table 5 4 table by
xy slave xy
5 Table 6 5
6 Table 7 6
7 Table 8 7

Fig. 90: Assignment: Tables and slaves

The assignment of tables to the slave is variable, i.e. it is not mandatory to start with
table 1.
Several tables are usually used for a slave when various fixed motion sequences are
to be realized depending on certain master positions. In this case, the tables often
have the same size. This is not a condition, however.
The user must select the actual table to be entered (selection via register 1xy147) in
the program.
The current table to be processed is selected via register 1xy260. Thus, one table
can be processed while another table is being entered simultaneously.

468 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Notes regarding the follower control in table mode:


• The content of a table (the set positions for the slave) must be created in an
appropriate way, e.g. by means of

– a JetSym program, which records direct entries,

– an according algorithm to calculate the values,

– suitable spreadsheet programs.

• The table must be initialized in the respective JX6-CON-Move(-BP) module


before the table mode is started the first time. The reason is that the table
content gets lost each time the logic voltage is switched off.
Depending on the application, the following can be done for this purpose. The
entire table can be:

– stored to the RAM,

– be transferred from a connected PC,

– or be determined via calculation.

• It is useful when the first and last element of the table are identical.

• The tables can be assigned to the slaves in various ways:

– one table per slave,

– several (max. 8) tables per slave,

Creating the table


Usually, no table has been created.
When creating a table, the space available in the memory is checked.
The memory is invoked by writing into register 1xy055. If enough memory is available
to accommodate the desired number of table elements, the value written in register
1xy055 is returned. If the desired value is not available, 0 is written into register
1xy055 after the internal check. Verifying whether free memory is available can be
realized by means of a small program.

REGISTER_LOAD (121055, 20000)

IF

REG121055 = 0

THEN

;*****ERROR*****

Jetter AG 469
9 Follower Control JetWeb

Follower control in table mode - Processing


The actual position of the master is transmitted to the slave. By means of a master
offset this actual position can be shifted. The master offset is written in register
1xy248.

The current master position is displayed in register 1xy095 of the slave. It is formed
by summing up the actual master position and the master offset.

Master position in the slave = Actual master position + master offset

Then, the pointer at a table element is calculated on the basis of the master position:

Number of table elements


TablePointer = Master position in the slave × -------------------------------------------------------------------------------------------------
Positive maximum position of master

The master position in the slave is written in register 1xy095. The amount of table
elements is defined in register 1xy055 and the positive maximum position of the
master in register 1xy058.

Finally, a position setpoint for the slave axis is generated on the basis of the table
and an additional linear interpolation.

470 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Handling Overflow in Endless Mode


Two commands are available to being able to respond to an overflow of the master
position register:

Command 54 Follower control: Do not correct slave in case


of overflow
Function The slaves are not corrected in the case of master
description overflow.
This means for the slaves:
When the last position in the table is reached, the slaves
return to 0.

Command 55 Follower control: Correct slave in case of


overflow
Function The slaves are corrected in the case of master overflow.
description To do so, the position register of the slave is modified by
means of an offset. This offset reflects the difference
between the table elements.
By default, command 55 is activated.

The table difference for correcting the overflow is calculated from the difference
between the first and the last table element. However, the last table element is the
(n+1)th element.

Element Number Element Value

0 0
1 10
2 20

Table Size
Reg. 1xy055 = 360

358 3580
359 3590

360 3600

Fig. 91: Table difference with overflow correction

The table elements 0 through 359 are used when the table is processed. The table
elements 0 and 360 are used for overflow correction.

Jetter AG 471
9 Follower Control JetWeb

The following examples demonstrate how the commands described above are used.
Besides, it is also important how the table is structured. It was already mentioned in
the notes on the follower function that it is useful when the first and last table
elements are identical. Various motion sequences for the slave are achieved in
combination with commands 54 and 55.

Position
Slave

Command 55 has been


Identical sequence issued - slave with
up to this point correction

30.000

Command 54 has been


issued - slave without
correction

0 Position
Master
3.140

Fig. 92: Different values for the beginning and the end of the table

The figure below shows the sequence of a slave motion resulting from a table where
the first and last table elements (1 and 3,140) are identical. Both elements specify 0
as set position for the slave.
In this case (best case), it is not important whether command 54 or 55 is issued.

Position
Slave

30.000

Table
0 element
1 3.140

Fig. 93: Identical values for the beginning and the end of the table

472 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.2.3 Configurations

General Provisions:
For the follower in table mode, similar conditions apply as to the follower as electric
gear.

The axes are always defined via a JX6-SB submodule which is located on a JX6-
CON-Move(-BP) controller module.

Rack
Slot # 1 2

CPU JX6-CON-
Move
(-BP)

Submodule 3 = empty

Submodule 2 = empty

Submodule 1 = JX6-SB

Interface Module

Master module

Physical axis 1 Physical axis 2 Physical axis 3


= logical axis # 21 = logical axis # 22 = logical axis # 23

Fig. 94: Follower Control in Table Mode - Axis Configurations

Jetter AG 473
9 Follower Control JetWeb

o A maximum of 9 axes can be involved in the follower function.

o The slave follows the set positions originating in a table. It is


also possible that several slaves follow one master.

o Depending on how the slaves are arranged physically in the


enclosure of the controller, they are referred to as internal or
external slaves.

Slave axes located on an expansion module together with the master will be referred
to as internal slaves in this document. Slave axes located on a different expansion
module are referred to as external slaves.
Example:
Axes 21, 22, 31, and 32 are involved in the follower action. Axis 21 is the master.
Then, axis 22 is an internal slave, and axes 31, and 32 are external slaves.

In the follower function, the parameters of the master axis, such as acceleration
ramp, deceleration ramp, velocity and destination window, are used as parameters
for the motion of all axes involved.

Note!

The following applies to the hardware when using the follower function:

Controller modules both of the type JX6-CON-Move and JX6-CON-


Move-BP are allowed.
The use of JX6-CON-Move-BP controller modules is imperative if
master and slave are located on different controller modules (bus
operation).

474 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Possible axis configurations:


There are also various ways of combining axes in a follower operation with static
transmission ratio:

1. Only the physical axes 1 and 2 of a master module are involved.

2. All 3 axes of a master module are involved.

3. Axis 1, axis 2, or both axes of the master module and up to 8


slave axes are involved.

4. Axis 3, consisting of an encoder only, and up to 8 slave axes are


involved.

5. A virtual axis (master) and up to 8 slave axes are involved.

The configuration possibilities within the various variants are described in detail
below.

Note!

See chapter 4.2: "Configurations", page 30 for general notes on combination


possibilities of submodules on expansion modules. The restrictions mentioned
there are also relevant for follower configurations.

It is basically possible that several follower functions are carried out simultaneously
within the controller.
However, for the configuration variants 3 through 5, the bus separation from the
hardware side between expansion module slots 4 and 5 must be taken into account.
This means that the controller modules in slots 2 through 4 can be used for one
interpolation job, and the modules located in slots 5 through 8 for another
interpolation job.
Combinations across the bus separation are not permitted!

Jetter AG 475
9 Follower Control JetWeb

It is possible to use axis 3, consisting only of an incremental encoder, as master in


the follower mode with dynamic transmission ratio. For more details on this special
case, please refer to chapter : "Follower Control Configurations for Table Mode -
Variant 4", page 481.
To simplify matters, the term "axis" is kept. The provisions with regard to axis and
register numbering do apply, too.

A further special application is the use of a virtual axis as master in follower mode
with dynamic transmission ratio. The virtual axis is represented by permanently
defined registers. No hardware is required. For more details on this special case,
please refer to chapter : "Follower Control Configurations for Table Mode - Variant
5", page 483.

If more than 3 axes are integrated into the follower control, then we recommend to
define a controlled axis as master.

476 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Follower Control Configurations for Table Mode -


Variant 1

Only axes Variant 1 distinguishes itself by the fact that only the two physical first axes of the
1 and 2 of a master master module are involved in the follower control mode.
module are This is the simplest case of a follower control.
involved Here a possible configuration:

Rack
Slot # 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
socket # 3
(Empty/AD8/
DA4/SV)

Submodule
socket # 2
(must be empty)

Submodule
socket # 1
(JX6-SB)
Axes 21, 22

Master module

Fig. 95: Configuration for follower control variant 1

A JX6-CON-Move or JX6-CON-Move-BP module is plugged in slot 2 of the rack. A


JX6-SB module is integrated as submodule 1 via which axes 21 and 22 are
configured. For the follower function, axis 21 is intended to act as master and axis 22
as internal slave.

The socket for submodule 2 must remain empty. No submodules may be plugged.
The type of submodule 3 is irrelevant for this variant. For example, additional I/O
cards can be plugged.

The following configurations are possible for variant 1:


Axes 21 and 22, or 31 and 32, 41 and 42, 51 and 52, 61 and 62, 71 and 72, or 81
and 82 can be combined for the follower.

Jetter AG 477
9 Follower Control JetWeb

Follower Control Configurations for Table Mode -


Variant 2

All 3 axes of a Variant 2 distinguishes itself by the fact that all 3 configurable axes of a module
master module (which then also is the master module) are involved in the follower control mode
are involved with dynamic transmission ratio.
Here a possible configuration:

Rack
Slot # 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
socket # 3
(must be empty)

Submodule
socket # 2
(must be empty)

Submodule
socket # 1
(JX6-SB)
Axes 21, 22,23

Master module

Fig. 96: Configuration for follower control variant 2

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 via which axes 21, 22, and 23 are configured.
The sockets for submodules 2 and 3 must remain empty. No submodules may be
plugged.
The module on which the axes are located is designated as master module.
In the given configuration, axis 23 has to be the master axis.

Regarding the numbering of axes and registers, only the digit of the socket is
changed if another socket is used than "2".

The following configurations are possible for variant 2:


Axes 21, 22 and 23, or 31, 32 and 33; 41, 42 and 43; 51, 52 and 53; 61, 62 and 63;
71, 72 and 73, or 81, 82 and 83 can be combined for follower control mode with
dynamic transmission ratio.

478 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Follower Control Configurations for Table Mode -


Variant 3

Master and slave In this case, a master axis and up to a maximum number of 6 external slave axes
located on diffe- (i.e. on other expansion modules than the master axis) are involved in the follower
rent expansion control function.
modules Below an example for a possible configuration:

Rack
Slot 1 2 through 4 5 6 7 8

JX6-CON- JX6-CON- JX6-CON- JX6-CON- JX6-CON-


CPU
Move(-BP) Move-BP Move-BP Move-BP Move(-BP)

Equipped Equipped
with various Submodule 3 Submodule 3 Submodule 3 with various
submodules (empty/AD8/ (empty/AD8/ (empty/AD8/ submodules
DA4/SV) DA4/SV) DA4/SV)

Submodule 2 Submodule 2 Submodule 2


(must be empty) (must be empty) (must be empty)

Submodule 1 Submodule 1 Submodule 1


(JX6-SB) (JX6-SB) (JX6-SB)
Axes 51, 52 Axes 61, 62 Axes 71, 72

Master module

Fig. 97: Configuration for follower control variant 3

The controller modules JX6-CON-Move-BP are plugged in slots 5 through 7. Their


submodules 1 (JX6-SB modules) represent the axes involved in the coordinated
motion. The logical axis numbers are indicated in the above figure under the
submodule designation 1 (JX6-SB).
The module located in slot 5 is the master module, In this follower control variant,
either axis 51 or axis 52 can be designated as master axis. In each case, the other
axis located in slot # 5 can also be used as slave axis.
Axes 61, 62, 71, and 72 are the external slave axes.
The respective type of submodule 3 located on the controller modules in slots 5
through 7 is irrelevant. For example, additional I/O cards can be plugged. Submodule
sockets 2 of the controller modules in slots 5 through 7 must not accommodate any
submodules.

Jetter AG 479
9 Follower Control JetWeb

When a rack with 8 slots is used, the JX6-CON-Move-BP modules can be plugged
in different slots. In this case, however, the hardware-related bus separation between
expansion module slots 4 and 5 must be taken into account. This means all modules
used for the follower function must either be plugged in slots 2 through 4, or 5
through 8.

The following table gives a summary of combination possibilities for variant 3.

Master Axis Slave axes that can be Note


combined with the master

21 22, 31, 32, 41, 42

22 21, 31, 32, 41, 42

31 32, 21, 22, 41, 42 All 5 axes or just some of


them can be combined with
32 31, 21, 22, 41, 42 the master axis

41 42, 21, 22, 31, 32

42 41, 21, 22, 31, 32

------- Bus separation -------

51 52, 61, 62, 71, 72, 81, 82

52 51, 61, 62, 71, 72, 81, 82

61 62, 51, 52, 71, 72, 81, 82

62 61, 51, 52, 71, 72, 81, 82 All 7 axes or just some of
them can be combined with
71 72, 51, 52, 61, 62, 81, 82 the master axis
72 71, 51, 52, 61, 62, 81, 82

81 82, 51, 52, 61, 62, 71, 72

82 81, 51, 52, 61, 62, 71, 72

Combinations across the bus separation are not permitted!

480 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Follower Control Configurations for Table Mode -


Variant 4

Axis 3, consisting The characteristics of variant 4 is that an incremental or absolute encoder in the
only of an third submodule socket of a JX6-CON-Move(-BP) expansion module acts as
encoder, is master master.
To simplify matters, the term "axis" is also used for this encoder. The relevant
provisions with regard to axis and register numbering do apply, too.
Slaves can be internal or external axes.
Here a possible configuration:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule
3
(Actual position
= Master consisting of an actual position encoder only
encoder) (Axis 23)

Submodule
2
(must be empty)

Submodule
1
(JX6-SB) = Slave (Axis 21)
Axis 21

Fig. 98: Configuration for follower control variant 4

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 on which axis 21 is located. In our example, axis 21 is
intended as internal slave involved in the follower function.
An actual position encoder (incremental encoder) is plugged in submodule socket 3.
This encoder acts as master. In the given case, the master is designated axis 23.
The submodule socket # 2 must remain empty. No submodules may be plugged.

Jetter AG 481
9 Follower Control JetWeb

The following configurations are possible for variant 4:

Master Axis Slave axes that can be Note


combined with the master

23 21, 22, 31, 32, 41, 42 All 6 axes or just some of


them can be combined with
33 21, 22, 31, 32, 41, 42 the master axis
43 21, 22, 31, 32, 41, 42

------- Bus separation -------

53 51, 52, 61, 62, 71, 72, 81, 82


All 8 axes or just some of
63 51, 52, 61, 62, 71, 72, 81, 82 them can be combined with
73 51, 52, 61, 62, 71, 72, 81, 82 the master axis

83 51, 52, 61, 62, 71, 72, 81, 82

Combinations across the bus separation are not permitted!

482 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Follower Control Configurations for Table Mode -


Variant 5

The virtual axis is The characteristics of variant 5 is that a virtual axis acts as master. Virtual axis
master means in this case that defined registers take over the function of the master axis.
Unlike the variants described so far, no master axis exists physically in this case,
not even one consisting of an encoder. But the virtual master can be positioned
like a real axis.
Slaves can be internal or external axes.
Here a possible configuration:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule 3
(Actual value
sensor) = Virtual Master

Submodule 2
(Empty/AD8/
DA4/SV))

Submodule 1
(JX6-SB)
Axis 21
= Slave (Axis 21)

Fig. 99: Configuration for follower control variant 5

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack. A JX6-SB module is


integrated as submodule 1 on which axis 21 is located. In our example, axis 21 is
intended as internal slave involved in the follower function.
The second submodule socket either remains empty or can be equipped with
additional IO cards.
Submodule socket 3 must remain empty. The associated registers are used by the
virtual master axis.

Jetter AG 483
9 Follower Control JetWeb

The following configurations are possible for variant 5:

Virtual master Slave axes that can be Note


in the combined with the master
submodule
socket

23 21, 22, 31, 32, 41, 42 All 6 axes or just some of


them can be combined with
33 21, 22, 31, 32, 41, 42 the master axis
43 21, 22, 31, 32, 41, 42

------- Bus separation -------

53 51, 52, 61, 62, 71, 72, 81, 82


All 8 axes or just some of
63 51, 52, 61, 62, 71, 72, 81, 82 them can be combined with
73 51, 52, 61, 62, 71, 72, 81, 82 the master axis

83 51, 52, 61, 62, 71, 72, 81, 82

Combinations across the bus separation are not permitted!

484 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.2.4 Programming Rules

Setting position a) The basic definitions applying to axes must also be realized when using a
control to mode 2 virtual master axis. This means that all relevant registers must be
parameterized like for a real axis.
First, position control is set to mode 2.

Register 1x3098 = 2

Command 90 b) Command 90 activates the function of axis 3. This command must always be
activates axis 3 issued when axis 3 is to be used for the follower function. It is not important
here whether axis 3 is an axis or an encoder.

Register 1xy001 = 90 Axis 3 is activated

Command 125 c) Command 125 is issued to the previously defined master axis. This activates
activates the the function of the virtual axis if required.
mode "virtual
axis" Register 1xy001 = 125 Virtual axis - ON

Command 92 d) Command 92 determines axis 3 as master axis in the follower function (if
defines axis 3 as required).
master
Register 1xy001 = 92 Axis 3 is the master in the follower mode -
ON

Parameterizing in e) The motion parameters (set velocity, acceleration ramp, deceleration ramp
the master axis and destination window) are specified in the registers of the master axis.

Register 1xy021 = Reference value related to the set velocity


in ‰ (value e.g. 1.000)

Register 1xy003 = Set velocity in ‰ (value e.g. 1.000)

Register 1xy005 = Acceleration ramp in ms (value e.g. 1.000)

Register 1xy006 = Deceleration ramp in ms (value e.g. 1.000)

Register 1xy007 = Destination window range in inc (optional)


(value e.g. 6)

Jetter AG 485
9 Follower Control JetWeb

Parameterizing in f) When the slave axis has another encoder resolution than the data axis (here:
the slave axis master axis), then register 1xy052 of this slave axis has to be parameterized.
The value is calculated according to the following formula:

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

ER = Encoder resolution in register 1xy017

Activating enable g) Command 1 isued to axis 3 activates the enable relay and the controller. This
relay and programming step is also required for variant 5 (virtual axis as master).
controller

Register 1xy001 = 1 Enable relay and controller ON

Parameterize h) The following slave registers are used to handle the table.
table

Register 1xy147 = __ Number of the current table per slave

Register 1xy055 = __ Total number of table elements

Register 1xy053 = __ Pointer to a table element (line in the table)

Register 1xy054 = __ Value of the table element (actual set


position for the slave)

The number of the current table must be written into register 1xy147 if a slave
axis works with several tables. For example, 0 has to be written for table 1.
If table 2 is to be used, a 1 must be entered. This way, this register is used
to switch over between the tables of a slave. Accordingly, registers 1xy053
and 1xy054 have to be reparameterized or updated for each selected table.

Saving the positive i) The absolute maximum position of the master is stored in the relevant slave
max. position of the register 1xy058. A master position is defined here that determines the limit
master in the slave for this one slave at which the position is reset.
Saving the maxi-
mum position of the Register 1xy058 = __ Positive maximum position of the master in
master in the slave the slave

486 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Registering j) The master must be informed which external slave axes are involved in the
external slaves in follower function. For this purpose, the logical axis numbers of the slaves
the master have to be entered into the corresponding master registers. Please note that
only the first axis of a controller module is written into a master register. The
first axis may also be physical axis # 2.

Register 1x4132 = 31 Axis number of the external slave 1

This parameter assignment has the effect that all slave axes involved that
are located on an expansion module are registered in the master as slave
axes.

Transferring the k) A controller module is designated as master by issuing command 30 to a


actual position of physical axis # 1 or 2. Thus, all other physical axes involved are slaves in the
the master to the follower function.
external slaves The actual task of this command is to send the actual position of the master
to the bus in order to inform the external slaves about this position.
Attention: If both axes are slaves of an external master on an expansion
module, then the master may only send its actual position to the first axis.

Register 1xy001 = 30 Master sends actual position to external


slaves

External slaves l) Command 31 hast to be issued to all external slave axes involved. This
adopt the actual enables the slaves to read the actual position of the master from the bus.
position of the Next, it is checked immediately whether the actual position of the master was
master passed to the respective slave successfully. For this purpose, bit 13 (BUSY)
of the status register of the concerned slave is queried.

Register 1xy001 = 31 Slave axis reads actual position of the


master

Reg. 1xy000, Slave axis: BUSY-bit not active ?


bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that the actual position of the
master is mapped in the respective slave register 1xy095.

Selecting the table m) The current table to be processed is selected via register 1xy260.
to be processed

Register 1xy260 = __ No. of the current table to be processed

Command 46 n) Command 46 issued to the slave axes starts the follower function with
starts dynamic transmission ratio (table mode).
the follower
function Register 1xy001 = 46 Follower control via table - ON

The slaves now follow the master axis according to the set positions stored
in the tables. The position of the master controls the processing of the tables.

Jetter AG 487
9 Follower Control JetWeb

Displaying table o) The table elements of the slaves currently being processed can be read for
information diagnostics purposes. Slave register 1xy148 is used for this purpose.

Register 1xy148 = __ Actual table element of the slave axis

Displaying p) The present actual position of the master axis can be read from this register.
the actual position The user can only read this register (writing is not permitted) and use the data
of the master in as information (e.g. for visualization purposes) or for further calculations.
the slave

Register 1xy095 = __ Actual position of the master axis

Command 47 q) Command 47 issued to the slave axes deactivates the follower function with
terminates dynamic transmission ratio (table mode).
the follower In doing so, an AXARR instruction is being executed simultaneously.
function

Register 1xy001 = 47 Follower control via table - OFF

The follower function via table is deactivated by default.

Removing an axis r) If all axes involved in the coordinated motion are to be operated individually
from the bus again, command 42 must be issued to all physical axes.
In doing so, an AXARR instruction is being executed simultaneously.

Register 1xy001 = 42 Terminate the follower control function

Acknowledging s) To ensure a defined final state of the follower function, it should be verified
command 42 whether command 42 was executed successfully.
For this purpose, bit 13 (BUSY) of the status register of each axis involved
(master and slave(s)) is queried.

Reg. 1xy000, BUSY-bit not active ?


bit 13 = 0 ?

When bit 13 is reset to 0, it can be assumed that all axes are separated from
the bus and have stopped in a defined state.

Command 93 t) Command 93 deactivates the function which determined axis 3 as master


deactivates the axis in the follower function. This is the default setting.
master definition
for axis 3 Register 1xy001 = 93 Axis 3 is the master in the follower function
- OFF

488 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Command 126 u) Command 126 deactivates the function of the virtual axis. This is the default
deactivates the setting.
mode "virtual
axis" Register 1xy001 = 126 Virtual axis - OFF

Command 91 v) This command deactivates the function of axis 3. This is the default setting.
deactivates
axis 3 Register 1xy001 = 91 Axis 3 is deactivated

For a programming example, please refer to the CD provided with this manual.
See also chapter 9.2.5: "Follower Control (table mode) in Endless Mode", page
490.

Jetter AG 489
9 Follower Control JetWeb

9.2.5 Follower Control (table mode) in Endless


Mode

Endless mode for The endless mode function can be used for all configuration possibilities of the
all follower follower control. It does not refer to the actual follower control function but
control variants represents a positioning function.
(table mode) For detailed information, please refer to chapter 7: "Positioning Functions", page
183 and chapter 7.3: "Endless Positioning", page 198.

The combination of endless positioning with the follower control function allows to
realize complex, coordinated axis motions.
The variants described in the previous chapters only allow single positioning. They
constitute the basis for endless mode and are expanded for this purpose by some
parameters.

Endless positioning works according to the following principle:

Position
(in inc)

200.000

150.000

100.000

50.000

25.000

Time t
0
Positioning Cycle 1 Positioning Cycle 2 Positioning Cycle 3

Master Master Master

Slave Slave Slave

Fig. 100: Follower (table mode) and endless mode

The figure above is a simplified representation. The slave follows the master. When
the follower is used in table mode, the slave obtains its set position from a table. The
table elements are activated by the actual position of the master. The follower
function is started simultaneously for master and slave with the slave following the
master immediately. The relatively large offset between master and slave axis results
from the representation in the figure.
In reality, the delay time between master and slave is very short and mainly results
from signal runtimes.

490 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

The following applies to the master:


• Endless positioning is carried out continuously until the master axis is stopped by
a command or a programming instruction.
• A positioning cycle may consist of several individual positioning runs.
• As soon as the set position and subsequently the actual position has reached the
max. value (here 200.000 inc) within a cycle, both positions are always reset by
the parameterized max. value (here 200.000 inc and consequently reset to 0).
Therefore, the next positioning cycle starts at 0 again.
• The 3 positioning cycles depicted in the figure take place one after the other
without interruption.

The following applies to the slave:


• In this case, the slave does not follow the master directly but according to the set
positions defined in the tables. The set positions are activated depending on the
actual position of the master.
• The slave must know at which position and by which value the master is reset.
• Commands 54 and 55 serve to handle maximum positions and overflow positions
(see also the description "Handling Overflow Situations in Endless Mode" in
chapter 9.2.2: "Structure and Handling of the Table", page 467).
• Parameterizing the slave register "positive maximum position of the master in the
slave" allows to individually modify the behavior how the slaves follow the master.
That way, each slave can be operated independently from other slaves to a great
extent.
In the figure above, position 200.000 inc is defined for the slave in the respective
slave register (1xy058) as positive maximum value of the master. For a further
slave, e.g. the value 100.000 inc could be defined in its register 1xy058.
• The 3 positioning cycles depicted in the figure (correspond to processing 3 tables
using command 54) occur one after the other without interruption.

Note!

Endless positioning of the master can only be carried out in positive direction.
Endless positioning in negative direction or a change of direction during the overall
process is not allowed.

Jetter AG 491
9 Follower Control JetWeb

The axis configuration of variant 1 serves as example:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule 3
(empty/AD8/
DA4/SV)

Submodule 2
(must be empty)

Submodule 1
(JX6-SB)
Axes 21, 22
Axis 22 = Slave

Axis 21 = Master

Fig. 101: Exemplary Configuration for the Follower Control in Endless Mode

492 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Programming Rules for Endless Mode:


The following programming rules focus on the endless positioning function. The
provisions given in chapter 9.2.4: "Programming Rules", page 485 and the following
pages, have to be taken into account.

Parameterizing a) The following slave registers are used to handle the table.
the table The slave (axis 22) must only use one table, which is table 2.

Register Contents Description

122147 =1 Number of the current table per slave (here


table 2 for slave axis 22)

122055 = 7.500 Total number of table elements

122053 =4 Pointer to a table element (line in the table)

122054 = 11.000 Value of the table element (actual set


position for the slave)

Absolute b) For the combination of endless positioning and follower function, an absolute
maximum maximum position must be defined for the master. When this maximum value
position of the is reached, the actual and set position of the master are reset. The absolute
master maximum position is stored in the master register 1xy085 and is always given
by command as positive value.

Reg. 121085 = +200,000 Absolute maximum position of the master (in


inc)

Defining the c) The maximum position of the master for the respective slave is defined in the
maximum slave register 1xy058. This register is parameterized regardless of the
position of the absolute maximum position of the master. A master position is defined here
master in the that determines the limit value for this one slave at which the positions are
slave reset. This way, the same function is realized in the slave as in the master
register 1xy085.

Reg. 122058 = +180,000 Positive maximum position of the master in


the slave (in inc)

Jetter AG 493
9 Follower Control JetWeb

Registering the d) The overflow position of the master is written into the slave register 1x2096.
overflow position For this information, the register of the second axis is always used but it
of the master in applies to both slave axes of an expansion module. The value in this slave
the slave register corresponds to the content of the master register 1xy085.

Register 1x2096 has to be parameterized only if external slaves are used.

Reg. 122096 = 200,000 Overflow position of the master in the slave


(in inc)

Defining the e) The behavior of the slave axis in case of an overflow of the master position
overflow behavior register is determined by means of commands 54 and 55. Depending on the
of the slaves by application, the user must decide on the method to be used. Please also refer
command to the detailed description in the subchapter "Handling Overflow Situations"
in chapter 9.2.2: "Structure and Handling of the Table", page 467.

Register 122001 = 54 Follower control: Do not correct slave in


case of overflow

or:

Register 122001 = 55 Follower control: Correct slave in case of


overflow

Selecting the table f) The current table to be processed is selected via register 1xy260.
to be processed

Register 1xy260 = __ No. of the current table to be processed

Command 46 g) Command 46 issued to the slave axis starts the follower function (table
starts mode).
the follower
function Register 122001 = 46 Follower control via table - ON

Activating h) Endless positioning mode is activated by issuing command 56 in the master


endless register.
positioning mode
Register 121001 = 56 Master axis 21: Endless positioning in
positive direction

Depending on the application, it might be useful to start the motion of the


master axis first (exchange programming step f) and g)). Dies ist abhängig
von der Applikation.

Displaying table i) The actual table element can be read from slave register 1xy148 for
information diagnostics purposes.

Register 122148 = 4 Actual table element

494 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Displaying j) The present actual position of the master axis can be read from this register.
the actual position The user can only read this register (writing is not permitted) and use the data
of the master in as information (e.g. for visualization purposes) or for further calculations.
the slave

Register 122095 = 10,000 Actual position of the master axis

Stopping endless k) The axis involved in endless positioning is stopped by giving command 0.
axis positioning

Register 121001 = 0 AXARR with deceleration ramp

Command 47 l) Command 47 issued to the slave axis deactivates the follower function (table
terminates mode).
the follower In doing so, an AXARR instruction is being executed simultaneously.
function

Register 122001 = 47 Follower control via table - OFF

For a programming example, please refer to the CD provided with this manual.

Jetter AG 495
9 Follower Control JetWeb

9.2.6 Time-controlled follower mode (table


mode)

Timer-controlled This special function allows to process a table with set values for a slave in a time-
table processing controlled manner.
A timer activates the set positions (stored in a table) for the slave. The processing
of the table is therefore not controlled by the position of the master as in the
variants described before.

In this case, the master is a timer realized by software. This means that no hardware
is required for the master.

The slave axis is controlled by means of commands and register parameterization in


a way as if it would follow a normal master axis.
There are 2 commands to activate/deactivate this special operating mode:

Command 52 Follower control: Table with time index - ON


Function This command to the slave starts the follower function
description (table mode) via timer.
The command comprises:
• the function of command 46 (follower via table - ON); i.e.
table mode is started,
• the function of command 54 (do not correct slave in
case of overflow); i.e. the actual position of the slave is
reset when the last position in the table is reached, the
table starts at 0 again,
• deactivating speed pre-control.

Command 53 Follower control: Table with time index - OFF


Function This command to the slave deactivates the time-controlled
description follower function (table mode). In doing so, an AXARR
instruction is being executed simultaneously.

Note!

In this function, the speed pre-control for tracking error compensation is not active
(status register 1xy000 Bit 23 = 0).

496 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

The following axis configuration serves as example:

Rack
Slot 1 2

JX6-CON-
CPU
Move(-BP)

Submodule 3
(empty/AD8/
DA4/SV)

Submodule 2
(empty/AD8/
DA4/SV)

Submodule 1
(JX6-SB)
Axis 21
= Slave (Axis 21)

Fig. 102: Exemplary configuration for time-controlled follower mode (table


mode)

A JX6-CON-Move-(BP) module is plugged in slot 2 of the rack.


Submodule 1 is a JX6-SB module. In our example, axis 21 is the slave involved in
the time-controlled follower function (table mode).
For the example it is irrelevant which submodule is assigned to sockets 2 and 3, i.e.
additional IO modules can be plugged here.

A timer realized by software acts as master.

All physical axes # 1 and 2 on modules located in the slots 2 through 8 of the rack
can be used for this variant of the follower function. This results in the following
configuration possibilities:

Master Axis Slave axes that can be Note


combined with the master

21, 22, 31, 32, 41, 42 One of these axes can be


used

------- Bus separation -------

51, 52, 61, 62, 71, 72, 81, 82 One of these axes can be
used

Jetter AG 497
9 Follower Control JetWeb

Programming Rules for Timer-Controlled Follower


Mode:
The following assumptions apply:
• the table is controlled by a timer (register 1xy075),
• a table is used for the slave (axis 21), which is table 1.

Parameterizing a) The following slave registers are used to handle the table.
the table

Register Contents Description

121147 =0 Number of the current table per slave (here


table 1 for slave axis 21)

121055 = 7.500 Total number of table elements

121053 =4 Pointer to a table element (line in the table)

121054 = 11.000 Value of the table element (actual set


position for the slave)

Parameterizing b) The timer to control the table is parameterized in slave register 1xy075. The
the timer time is set to a multiple of 0.5 ms. When the defined time has elapsed, the
next set value for the slave is read from the table.
Please note that the parameterized time must not be less than 2 ms. Else,
the problem might occur that the position controller cannot recognize and
realize all set positions.

Register 121075 = 10 Time base for the follower mode 'table with
time index' (here: 5 ms)

Storing the c) Slave register 1xy058 is also used in the follower via timer. A positive
maximum maximum position is defined here that determines the limit value for this one
position of the slave at which the position is reset.
master in the
slave

Register 121058 = 80,000 Positive maximum position of the master in


the slave

Selecting the table d) The current table to be processed is selected via register 1xy260.
to be processed

Register 1xy260 = __ No. of the current table to be processed

498 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Command 52 e) Command 52 issued to the slave axis starts the follower function (table
starts mode) via timer.
the follower This command
function • starts the follower function,
• deactivates the speed pre-control,
• resets the actual position of the slaves when the last position in the table
has been reached.

Register 121001 = 52 Table with time index - ON

Displaying table f) The actual table element can be read from slave register 1xy148 for
information diagnostics purposes.

Register 121148 = 4 Actual table element

Command 53 g) Command 53 issued to the slave axis deactivates the follower function (table
terminates mode) via timer.
the follower In doing so, an AXARR instruction is being executed simultaneously.
function
Register 121001 = 53 Table with time index - OFF

For a programming example, please refer to the CD provided with this manual.

Jetter AG 499
9 Follower Control JetWeb

9.2.7 Overview of Registers:


Follower (Table Mode)
The overview of registers lists all registers used for the function "follower control with
static transmission ratio". These registers might be necessary both for the master
axis and the slave axes. This will be described in more detail in the next chapter.

Reg. Registers: Follower Control (Table


R/W
# Mode)
000 - *** General Registers
029
000 R/W Status register - meaning of the relevant bits:
Bit 13: BUSY
Bit 23: Speed pre-control enabled

001 R/W Command register - see overview of commands

003 R/W Set velocity of the axis

004 R/W Control register - meaning of the relevant bits:


Bit 4: Follower control: processing upper half of the table

005 R/W Acceleration ramp

006 R/W Deceleration ramp

007 R/W Destination window

017 R/W Encoder resolution

018 R/W Maximum speed of the servo amplifier/motor combination

021 R/W Reference value related to the set velocity of the axis

Note!
For a detailed description of general registers, please refer
to chapters 6.2 through 6.7.

053 - *** Registers: Follower Control (Table Mode)


148
052 R/W Adjustment of the encoder resolution to suit the data axis

053 R/W Pointer to a table element

054 R/W Value of the table element

055 R/W Total number of table elements

058 R/W Positive maximum position of the master in the slave

075 R/W Time base for time-controlled follower

085 R/W Absolute max. position

500 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

095 R Actual position of the master axis

147 R/W Number of the current table for definition purposes

148 R Current table element being processed

248 R/W Master offset

260 R/W Number of the current table to be processed

2096 R/W Overflow position of the master in the slave

3098 R/W Mode selection for position control

4132 R/W Axis #: External slave 1

4133 R/W Axis #: External slave 2

4134 R/W Axis #: External slave 3

4135 R/W Axis #: External slave 4

4136 R/W Axis #: External slave 5

4137 R/W Axis #: External slave 6

Jetter AG 501
9 Follower Control JetWeb

9.2.8 Description of Registers:


Follower (Table Mode)

Adjustment of the encoder


Register 1xy052:
resolution to suit the data axis
Function Description

Read Present value for the encoder resolution


adjustment

Write New value for the encoder resolution adjustment

Value range -8.388.608 .. +8.388.607

Value after reset 0

The encoder resolutions of the slave axes also have to be adjusted to suit the data
axis. For follower control, the definition applies that the data axis always acts as
master axis.
If a slave axis involved in the follower function has an encoder resolution other than
the resolution of the data axis, then register 1xy052 of the respective slave axis has
to be parameterized. The value is calculated according to the following formula:

ERSlaveAxis
Register1xy052 = -------------------------------------- × 1.000
ERDataAxis

ER = Encoder Resolution in register 1xy017

Note!

Register 1xy052 is also used for other special functions but with different
meaning and effect.

502 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Register 1xy053: Pointer to a table element


Function Description

Read Value of the actual pointer

Write Write a new value for the pointer

Value range 0 .. <Reg. 1xy055>

Value after reset 0

This register is used as slave register in the follower function (table mode).
The access to the table elements is controlled by means of the pointer. The line in
the table to which the pointer currently points contains the next set position for the
slave.

Register 1xy054: Value of the table element


Function Description

Read Value of the actual table element

Write Write a new value for the table element

Value range -8.388.608 .. +8.388.607

Value after reset 0

This register is used as slave register in the follower function (table mode).
It contains the respective set position currently applicable for the slave axis. The
table elements are activated via pointer (register 1xy053).

Jetter AG 503
9 Follower Control JetWeb

Register 1xy055: Total number of table elements


Function Description

Read Actual number of table elements

Write Write a new value for the number of table


elements

Value range 1 .. 20.000

Value after reset 1

This register is used as slave register in the follower function (table mode).
The total number of table elements and consequently the number of all set positions
for the slave are defined in this register.

The memory is invoked by writing into register 1xy055. If enough memory is available
for the desired number of table elements, then the internal control returns the value
written in register 1xy055. If the desired value is not available, 0 is written into register
1xy055 after the internal check.

Positive maximum position


Register 1xy058:
of the master in the slave
Function Description

Read Value of the current maximum position for the


master axis in the slave

Write Write a new maximum position for the master


axis in the slave

Value range 1 .. +8.388.607

Value after reset +8.388.607

This register is used as slave register in the follower function.


It indicates the maximum possible position of the master axis in positive direction and
is used for the defined reset of the slaves.
As soon as the master has reached the position stored in register 1xy058, the reset
is triggered and the actual and set positions of the slaves are reset to zero.

504 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Time base for time-controlled


Register 1xy075:
follower
Function Description

Read Value of the current time base

Write Write a new value for the time base

Value range 4 .. +32.766

Value after reset 4

In the follower function (table mode), this register is used as slave register when
processing of the table is to be controlled by a timer.
When the defined time has elapsed, the next set value for the slave is read from the
table. The time is set to a multiple of 0.5 ms.

Note!

Please note that the parameterized time must not be less than 2 ms. Else, the
problem might occur that the position controller cannot recognize and realize all
set positions.

Jetter AG 505
9 Follower Control JetWeb

Register 1xy085: Absolute max. position


Function Description

Read Value of the absolute max. position

Write Write a new max. position

Value range 0 .. +7.490.000

Value after reset 7.490.000

For the follower function in endless mode, this register is used as master register.
The register content serves as maximum value at which the actual and set positions
of the master are reset.
Endless positioning is parameterized in the master and runs as continuous
positioning at the set velocity by taking into account the acceleration ramp. As soon
as the master has reached the position stored in register 1xy058, the reset is
triggered and the actual and set positions of the master are reset exactly by the
parameterized value.

Note!

Register 1xy085 is also used for other special functions but with different
meaning and effect.

506 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Actual position of the master


Register 1xy095:
axis
Function Description

Read Value of the present actual position of the master


axis

Write Illegal

Value range -8.388.608 .. +8.388.607

Value after reset 0

In this slave register, the present actual position of the master axis can be read.
The slave will adjust to this position.
The indicated position might differ from the real actual position of the master. This is
the case when the overflow value of the master differs from that of the slave. See
also register 1x2096.

Number of the current table for


Register 1xy147:
definition purposes
Function Description

Read Value of the current table number for definition


purposes

Write Write a new value for the table number in


connection with the definition of table values

Value range 0 .. 7

Value after reset 0

This register is used as slave register in the follower function (table mode).
The register content specifies which table is to be loaded.

A maximum number of 8 tables can be defined for a slave.


The assignment of tables to the slave is variable, i.e. it is not mandatory to start with
table 1.
Several tables for a slave are usually used when various fixed sequences of motion
are to be realized depending on certain master positions. In this case, the tables
often have the same size. This is not a condition, however. The user must select the
actual table (selection via register 1xy147) in the program.

Jetter AG 507
9 Follower Control JetWeb

Register 1xy148: Actual table element


Function Description

Read Number of the actual table element

Write Illegal

Value range 1 .. <Reg. 1xy055>

Value after reset 1

This register is used as slave register in the follower function (table mode).
It contains the number of the currently active table element that can be read for
diagnostics purposes.
It is not permitted to write into this register.

Register 1xy248: Master offset


Function Description

Read Present value for Master offset

Write New value for the master offset

Value range -<Reg. 1xy055> ... +<Reg. 1xy055>

Value after reset 0

This register is used as slave register in the follower function (table mode).
The actual position of the master is transmitted to the slave. By means of a master
offset this actual position can be shifted. The master offset is written in register
1xy248, and the master position in the slave in register 1xy095.

Master position in the slave = Actual master position + master offset

508 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Number of the current table to


Register 1xy260:
be processed
Function Description

Read Value of the current table number to be


processed

Write Write a new value for the table number in


connection with the processing of the table
values

Value range 0 .. 7

Value after reset 0

This register is used as slave register in the follower function (table mode).
The table to be processed is selected by entering its value into register 1xy260.

Jetter AG 509
9 Follower Control JetWeb

Overflow position of the master


Register 1x2096:
in the slave
Function Description

Read Value of the overflow position of the master

Write Write a new overflow position for the master

Value range -8.388.608 .. +8.388.607

Value after reset 0

This slave register is used as max. value at which the actual position of a master is
reset in the slave.

There are 3 situations when the actual position of the master must be reset to 0:
• in endless positioning mode, when the absolute maximum position of the master
(defined in register 1xy085) is exceeded,
• in relative positioning mode, when the absolute maximum position of the master
(defined in register 1xy085) is exceeded,
• for absolute encoders, when the maximum position resulting from the encoder
used is exceeded (e.g. this maximum position for a 12-bit single-turn encoder is
reached at position 4.096).

If one of the 3 cases mentioned above occurs, the external slaves must be informed
by which value the master was reset.
Therefore, this value is written into register 1x2096 of the module where the external
slaves are located.
For this purpose, the slave register for the axis in submodule socket 2 (1x2096) is
always used.

510 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Registers 1x4132 through 1x4137 are necessary when the follower function is to be
carried out with external slaves.
When assigning parameters, it must be taken into account that only the first axis of
an expansion module is written into a master register. When doing so, the first axis
may also be physical axis # 2.
Example:
Let's suppose that a controller module JX6-CON-Move(-BP) is located in slot 3. This
controller module accommodates a JX6-SB submodule with the axes 31 and 32.
These two axes have to be integrated into the follower mode as external slaves.
Then 31 is written into the master register 1x4132. By doing so, both slaves (axes 31
and 32) are defined as external slaves.
If only axis 31 is needed under the same conditions, then the parameter assignment
is the same as in the first case.
If only axis 32 is to be integrated, then value 32 is written into register 1x4132.

Note!

Registers 1x4132 through 1x4137 are also used for other special functions but
with different meaning and effect.

Register 1x4132: Axis #: External slave 1


Function Description

Read Present axis number of the first external slave


axis involved

Write New first external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the first external slave axis involved must be
written into this master register.

Jetter AG 511
9 Follower Control JetWeb

Register 1x4133: Axis #: External slave 2


Function Description

Read Present axis number of the second external slave


axis involved

Write New second external slave axis involved (enter


the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the second external slave axis involved, which
is located on another expansion module than the first external slave axis, must be
written into this master register.

Register 1x4134: Axis #: External slave 3


Function Description

Read Present axis number of the third external slave


axis involved

Write New third external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the third external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

512 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

Register 1x4135: Axis #: External slave 4


Function Description

Read Present axis number of the fourth external slave


axis involved

Write New fourth external slave axis involved (enter the


axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the fourth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

Register 1x4136: Axis #: External slave 5


Function Description

Read Actual axis number of the fifth external slave axis


involved

Write Define a new fifth external slave axis involved


(enter the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the fifth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

Jetter AG 513
9 Follower Control JetWeb

Register 1x4137: Axis #: External slave 6


Function Description

Read Actual axis number of the sixth external slave


axis involved

Write Define a new sixth external slave axis involved


(enter the axis number)

Value range 0, 21, 22, 31, 32 .. 81, 82

Value after reset 0

If the follower function is to be carried out with external slave axes, then the master
must be informed which slave axes are involved in the coordinated motion.
Therefore, the logical axis number of the sixth external slave axis involved, which is
located on another expansion module than the slaves parameterized before, must
be written into this master register.

514 Jetter AG
JX6-CON-Move(-BP) Module 9 Follower Control

9.2.9 Overview of Commands:


Follower (Table Mode)
This overview of commands lists all commands used for the function "follower with
dynamic transmission ratio". These commands are written into the command register
1xy001 of the respective master or slave axis.
A command applies until a contrary command is issued.

Commands: Follower Control


Command #
(Table Mode)
30 Master sends actual position to external slaves

31 Slave reads actual position of the master

42 Remove axis from the bus

46 Follower control via table - ON

47 Follower via table - OFF (*)

52 Table with time index - ON

53 Table with time index - OFF (*)

54 Do not correct slave in case of overflow

55 Correct slave in case of overflow (*)

56 Endless positioning in positive direction

90 Axis 3 is activated

91 Axis 3 is deactivated (*)

92 Axis 3 is the master in the follower mode - ON

93 Axis 3 is master in the follower mode - OFF (*)

125 Virtual axis - ON

126 Virtual axis - OFF (*)

(*) - Default setting after a reset

Jetter AG 515
Appendix JX6-CON-Move(-BP) Module

Appendices /
Overviews

516 Jetter AG
JetWeb Appendix

Appendices
of
List Appendix A:
Brief Overview of Status Registers

Meaning of Status Bits


Bit 0 = 1: Home position set

Bit 1 = 1: AXARR = the position has been reached

Bit 2 = 1: The axis is in the destination window

Bit 3 = 1: Reserved

Bit 4 = 1: Negative limit switch is active

Bit 5 = 1: Positive limit switch is active

Bit 6 = 1: Reference switch is active

Bit 7 = 1: Software limit switch is or was active

Bit 8 = 1: The hardware limit switch is or was active

Bit 9 = 1: Position control is active

Bit 10 = 1: Control function at the destination position is enabled (*)

Bit 11 = 1: Axis enable

Bit 12 = 1: Machine referencing error

Bit 13 = 1: BUSY

Bit 14 = 1: The function software limit switch is active

Bit 15 = 1: The axis is in the acceleration ramp

Bit 16 = 1: The axis is in the deceleration ramp

Bit 17 = 1: Reserved

Bit 18 = 1: Reserved

Bit 19 = 1: Amplifier malfunction

Bit 20 = 1: Amplifier alarm

Bit 21 = 1: Pulse enabling of amplifier

Bit 22 = 1: Errors during consecutive interpolation

Bit 23 = 1: Reserved

(*) => Default setting after a reset

Jetter AG 517
Appendix JX6-CON-Move(-BP) Module

Appendix B:
Brief Overview of Control Registers

Meaning of Control Bits


Bit 0 = 1: Reference switch 24 V is active, NOC (*)

Bit 1 = 1: Limit switch 24 V is active, NOC (*)

Bit 2 = 1: Reserved

Bit 3 = 1: Counterclockwise direction of motor shaft revolution

Bit 4 = 1: Follower: processing upper half of the table

Bits 5 -9: Reserved

Bit 10 = 1: Machine referencing by taking into account the reference


switch only

Bits 11 - 23: Reserved

(*) => Default setting after a reset

518 Jetter AG
JetWeb Appendix

Appendix C: Brief Overview of Commands

Commands
0: AXARR with deceleration ramp

1: Activate enable relay and controller

2: Deactivate enable

3: Set reference

4: Search for reference

5: AXARR with position control

6 - 8: Reserved

9: Automatic machine referencing in positive direction with the


reference switch immediately be taken into account

10: Automatic machine referencing in negative direction with the


reference switch immediately be taken into account

11: Automatic machine referencing in positive direction with the


limit switch be taken into account first, and then the reference
switch.

12: Automatic machine referencing in negative direction with the


limit switch be taken into account first, and then the reference
switch.

13 - 14: Reserved

15: Stop searching for reference

16: Reserved

17: Relative positioning

18: Absolute positioning (*)

19: Resume interrupted positioning run

20: Relative positioning with start input - ON

21: Relative positioning with start input OFF (*)

22: Stop at the reference point - ON (*)

23: Stopping at reference point - OFF

24: Appending the next interpolation

25: Combined circular and linear interpolation

26 - 29: Reserved

Jetter AG 519
Appendix JX6-CON-Move(-BP) Module

Commands
30: Follower: Master sends actual position to external slaves

31: Follower: The slave reads the actual position of the master

32: Axis 1 is slave

33: Axis 2 is slave

34 - 37: Reserved

38: Master-slave configuration 1 for linear interpolation

39: Master-slave configuration 2 for linear interpolation

40: Master-slave configuration 3 for linear interpolation

41: Start interpolation

42: Remove the axis from the interpolation and from the bus

43: Master-slave configuration 4 for linear interpolation

44: Follower control via factor/divisor - ON

45: Follower control via factor/divisor - OFF (*)

46: Follower control via table - ON

47: Follower via table - OFF (*)

48 - 51: Reserved

52: Follower: Table with time index - ON

53: Follower: Table with time index - OFF (*)

54: Follower: Do not correct slave in case of overflow

55: Follower: Correct slave in case of overflow (*)

56: Endless positioning in positive direction

57: Endless positioning in negative direction

58 - 61: Reserved

62: FIFO delays starting "axis 42"

63 - 77: Reserved

78: Linear ramps - ON

79: Sine-square ramps - ON (*)

80 - 93: Reserved

520 Jetter AG
JetWeb Appendix

Commands
94: Master-slave configuration 5 for linear interpolation

95 - 106: Reserved

107: 3D circular interpolation mode - ON

108: 3D circular interpolation mode - OFF (*)

109: Spline interpolation: Starting the spline calculation

110: Spline interpolation: Starting a spline movement

111 - 112: Reserved

113: 3D circular interpolation: Starting the calculation using teach


values

114: Reserved

115: 3D circular interpolation: calculated via teach values

116: 3D circular interpolation: calculated via angles

117 - 124: Reserved

125: Follower: Virtual axis - ON

126: Follower: Virtual axis - OFF (*)

127 - 138: Reserved

139: Follower: Scaling of the table - ON

140: Follower: Scaling of the table -OFF (*)

141: Reserved

142: Spline interpolation: Recalculation of the spline length

143 - 255: Reserved

(*) => Default setting after a reset

Jetter AG 521
Appendix JX6-CON-Move(-BP) Module

Appendix D: Brief Overview of Registers

Reg. Identi-
R/W Register
# fier
000 GR R/W Status register - see brief overview in Appendix A

001 GR R/W Command register - see brief overview in Appendix C

002 GR R/W Set position of the axis

003 GR R/W Set velocity of the axis

004 GR R/W Control register - see brief overview in Appendix B

005 GR R/W Acceleration ramp

006 GR R/W Deceleration ramp

007 GR R/W Destination window

008 Reserved

009 GR R/W Actual position of the axis

010 AP 2 R/W P-gain of the position controller


AP 6

011 RP R/W Set speed of the position controller

012 RP R Actual speed of the position controller

013 RP R/W Smoothing constant for the actual speed of the


position controller

014 GR R/W Position of the positive software limit switch

015 GR R/W Position of the negative software limit switch

016 AP 2 R/W Commutation offset


AP 6

017 AP 2 R Encoder resolution


AP 6

018 AP 2 R/W Maximum speed of the servo/motor combination


AP 6

019 AP 2 R Tracking error of the axis


AP 6

020 AP 2 R/W Tracking error limit


AP 6

021 GR R/W Reference value related to the set velocity of the


axis

522 Jetter AG
JetWeb Appendix

Reg. Identi-
R/W Register
# fier
022 Reserved

023 AP 2 R/W Pole pair number of the motor

024 AP 2 R/W P-gain of the digital speed controller


AP 6

025 AP 2 R/W Current setpoint of the digital speed controller

026 AP 2 R/W Defining an I-component for the digital speed


AP 6 controller

027 AP 2 R/W Current limiting in the digital speed controller


AP 6

028 - Reserved
029

030 LI/COI R/W Set position of the first axis of the master module

031 LI/COI R/W Set position of the second axis of the master module

032 LI/COI R/W Set position of the external slave 1

033 LI/COI R/W Set position of the external slave 2

034 LI/COI R/W Set position of the external slave 3

035 LI/COI R/W Set position of the external slave 4

036 - Reserved
037

038 LI R/W Actual position of the external slave 1 for


calculating the diagonal

039 LI R/W Actual position of the external slave 2 for


calculating the diagonal

040 LI R/W Length of the software axis

041 CI/COI R/W Center of axis 1 (3D circular interpolation: center 1)

042 CI/COI R/W Center of axis 2 (3D circular interpolation: center 2)

043 - Reserved
044

045 CI/COI R/W Set angle of circular interpolation 1 (3D circular


interpolation: set angle)

046 CI R Calculated radius of the circular interpolation

047 CI R Calculated starting angle of the circular


interpolation

Jetter AG 523
Appendix JX6-CON-Move(-BP) Module

Reg. Identi-
R/W Register
# fier
048 CI R Calculated circle arc length of the circular
interpolation

049 CI R Calculated target position for axis 1 (master)

050 CI R Calculated target position for axis 2 (slave)

051 LI/CI/COI R/W Adjustment of the max. velocity to suit the data axis

052 LI/CI/ R/W Adjustment of the encoder resolution to suit the


COI/FL data axis

053 FL R/W Pointer to a table element

054 FL R/W Value of the table element

055 FL R/W Total number of table elements

056 FL R/W Factor of the transmission ratio between master


and slave

057 FL R/W Divisor of the transmission ratio between master


and slave

058 FL R/W Positive maximum position of the master in the


slave

059 FL R/W Negative maximum position of the master in the


slave

060 FL R/W Slew rate limitaton in the follower

061 - 066 Reserved

067 RP R/W Relative position when moving the axes upon


start input

068 RP R/W Latest absolute set position in relative positioning


mode

069 - 070 Reserved

071 GR R/W Set actual and set positions simultaneously

072 - 073 Reserved

074 CI R Center of virtual axis 1

075 FL/ R/W FL: Time base for time-controlled follower


CI: Center of virtual axis 2
CI R

076 CI R Circular angle of virtual axes

524 Jetter AG
JetWeb Appendix

Reg. Identi-
R/W Register
# fier
077 CI R/W X-coordinate teach point 1

078 CI R/W Y-coordinate teach point 1

079 CI R/W Z-coordinate teach point 1

080 CI R/W X-coordinate teach point 2

081 CI R/W Y-coordinate teach point 2

082 COI/ R COI: Path segment counter "axis 42"


CI R/W CI: Z-coordinate teach point 2

083 COI/ R COI: Filling level of register memory "axis 42"


CI R/W CI: X-coordinate teach point 3

084 COI/ R/W COI: Wait cycles „axis 42“


CI CI: Y-coordinate teach point 3

085 FL/RP R/W FL/RP: Absolute max. position


CI CI: Z-coordinate teach point 3

086 PS R/W Coding which position is to be stored (after signal


from input 12/13)

087 PS/ R/ PS: Present actual position of the axis


CI R/W CI: Rotation around the X-Axis

088 CI R/W CI: Rotation around the Y-Axis

089 CI R/W CI: Rotation around the Z-Axis

090 - Reserved
092

093 CI R/W Buffer for Circular Interpolation

094 Reserved

095 FL R Actual position of the master axis

096 FL R/W Overflow position of the master in the slave

097 LI R/W Set position of the third axis of the master module

098 FL R/W Mode selection for position control

099 GR R Version number of the operating system

100 - Reserved
127

128 CI R/W Axis number of axis 1

129 CI R/W Axis number of axis 2

Jetter AG 525
Appendix JX6-CON-Move(-BP) Module

Reg. Identi-
R/W Register
# fier
130 - Reserved
131

132 LI/FL R/W Axis number of the external slave 1

133 LI/FL R/W Axis number of the external slave 2

134 LI/FL R/W Axis number of the external slave 3

135 LI/FL R/W Axis number of the external slave 4

136 FL R/W Axis number of the external slave 5

137 FL R/W Axis number of the external slave 6

138 - Reserved
146

147 FL R/W Number of the current table for definition


purposes

148 FL R Current table element being processed

149 Reserved

150 CI/COI R/W Latest set position of the external axis

151 - Reserved
162

163 FL R/W Position offset with which the slave follows the
master

164 - Reserved
165

166 CI R Error Register Circular Interpolation

167 - Reserved
186

187 SI R/W Spline number

188 SI R/W X-Coordinate Spline Point

189 SI R/W Y-Coordinate Spline Point

190 SI R/W Z-Coordinate Spline Point

191 SI R/W Assigning a Teach Point

192 SI R/W Pointer to Teach or Spline Coordinates

193 SI R/W Number of calculated spline points

194 SI R/W Maximum Speed for Spline Interpolation

526 Jetter AG
JetWeb Appendix

Reg. Identi-
R/W Register
# fier
195 SI R Status register spline calculation

196 - Reserved
197

198 GR R Version number of the submodule

199 - Reserved
201

202 SI R/W Calculation with/without correction

203 Reserved

204 SI R/W X-Coordinate Teach Point

205 SI R/W Y-Coordinate Teach Point

206 SI R/W Z-Coordinate Teach Point

207 - Reserved
239

240 SI R/W Max. Number of Teach Points

241 SI R/W Max. number of spline points

242 - Reserved
247

248 FL R/W Master offset

249 - Reserved
259

260 FL R/W Number of the current table to be processed

261 - Reserved
299

300 AP 2 R Rated voltage of the device

301 AP 2 R Rated current of the device

302 AP 2 R/W Max. output current of the device

303 AP 2 R/W KP value of the current controller


AP 6

304 AP 2 R/W KI value of the current controller


AP 6

305 AP 2 R/W Motor voltage constant Ke

306 AP 2 R/W Preset value for the speed controller

Jetter AG 527
Appendix JX6-CON-Move(-BP) Module

Reg. Identi-
R/W Register
# fier
307 - Reserved
339

340 AP 2 R/W Operating mode

341 AP 2 R/W Operating mode of the 7-segment display

342 AP 2 R/W Window time of the tracking error

343 Reserved

344 AP 2 R/W Triggering threshold for max. DC link voltage


supervision

345 AP 2 R/W Triggering threshold for min. DC link voltage


supervision

346 AP 2 R/W Release time for blocking supervision

347 AP 2 R/W Delay time after releasing the motor brake

348 AP 2 R/W Delay time after locking the motor brake

349 AP 2 R/W Ramp time for emergency stop


AP 6

350 AP 2 R/W Scaling for speed pre-control

351 - Reserved
359

360 AP 2 R DC link voltage

361 AP 2 R Actual current


AP 6

362 AP 2 R Motor temperature

363 AP 2 R Device temperature

364 AP 2 R Ballast utilization

365 AP 2 R Motor shaft position


AP 6

366 - Reserved
371

372 AP 2 R/W Operating mode

373 Reserved

374 AP 2 R/W Control word

375 AP 2 R Status word


AP 6

528 Jetter AG
JetWeb Appendix

Reg. Identi-
R/W Register
# fier
376 - Reserved
379

380 AP 2 R Error 1
AP 6

381 Reserved

382 AP 2 R Error 2
AP 6

383 AP 2 R Alarms
AP 6

384 - Reserved
397

399 AP 2 R Software version


AP 6

1247 GR R Number of initialized JetMove amplifiers

4000 GR R Global control register

Legend of the table "identifiers":

GR = General Registers

DS = Register for digital speed controller

AP 2 = Register for amplifier of JetMove 2xx

AP 6 = Register for amplifier of JetMove 6xx

COI = Register for consecutive interpolation

IE = Register for incremental encoder

CI = Register for circular interpolation

LI = Register for linear interpolation

RP = Register for position controller

FL = Register for follower

PS = Register for position capture

RP = Register for relative positioning

SI = Spline interpolation registers

Jetter AG 529
Appendix JX6-CON-Move(-BP) Module

Comment on the table column „R/W“:

„R/W“ = „Read/Write“ and means: the register can be read and written.

„R“ = „Read“; the register can be read only.

530 Jetter AG
JetWeb Appendix

Appendix E: Errors and alarms of the


JetMove 2xx amplifier

Error # F00 through F15: Error 1


F00 General hardware error

F01 Internal voltage supply error

F02 One mains phase has failed (only possible with 3-phase
voltage supply; phase monitoring can be activated using
register 1xy340)

F03 Motor cable breakage

F04 Overvoltage DC link (>470 V)

F05 Overcurrent (>2.5 * rated current of the device)

F06 Device-internal ballast resistor was overloaded

F07 Shutdown threshold for device temperature is approx. 85 °C


(device-specific)

F08 Shutdown threshold for device temperature is approx. 135 °C


(device-specific)

F09 Encoder error or initialization error (SinCos)

F10 Overspeed (actual speed is >1.25 * register 1xy018)

F11 Measuring range of the AD converter (current) has been


exceeded

F12 Ground fault

F13 Erronous initialization data record from the device


(appears in connection with error # F00)

F14 Timeout during communication between controller and


power amplifier (appears in connection with error # F00)

F15 Missing pulse enabling signal


(On issuing command 1 or 2 the pulse enabling hardware
signal and/or DC link voltage is missing)

Jetter AG 531
Appendix JX6-CON-Move(-BP) Module

Error # F16 through F27: Error 2


F16 The input voltage of the device is too high.

F17 Software limit switch has bee reached or exceeded.

F18 Hardware limit switch has bee reached or exceeded.

F19 Error response from the controller (which is on a higher level


than the drive) did not arrive in time.

F20 Undervoltage of DC link circuit with adjustable minimum


value

F21 Overvoltage of DC link circuit with adjustable maximum


value

F22 Drive blocked (trigger time for blocking monitoring can be


set using register 1xy346)

F23 Tracking error (the tracking error has exceeded the limit
value defined in register 1xy019 and the time defined in
register 1xy342)

F24 DC 24 V power supply too low

F25 DC 15 V power supply too low (internally)

F26 DC 5 V power supply too low (internally)

F27 AVR power supply too low (internally)

Messages # 16 through 21: Alarms


16 Alarm threshold for ballast 90 %

17 Alarm threshold for device temperature approx. 70 °C


(device-specific)

18 Alarm threshold for motor temperature approx. 100 °C


(device-specific)

19 Overload PFC (DC link voltage <340 V if PFC is active)

20 The input voltage of the device is too high.

21 The sensor located on the board indicates temperature


overrange

532 Jetter AG
JetWeb Appendix

Appendix F: Errors and Alarms


of the JetMove 6xx Amplifier

Error # F01 through F32: Errors


F01 Heat sink temperature

F02 DC link voltage

F03 Tracking error

F04 Feedback

F05 Undervoltage protection

F06 Motor temperature

F07 Internal auxiliary voltage

F08 Overspeed

F09 EEPROM

F11 Brake

F13 Ambient temperature

F14 Power amplifier

F15 I2t Max

F16 Mains not ready for operation

F17 A/D converter

F18 Ballast

F19 Mains phase

F22 Ground fault

F24 Alarm generates error message

F25 Commutation error

F27 Starting lockout option

F28 External trajectory

F32 System error

Jetter AG 533
Appendix JX6-CON-Move(-BP) Module

Error # n01 through n14: Alarms


n01 I2t threshold

n02 Ballast message

n03 Tracking error

n05 Mains phase

n06 Software limit switch 1

n07 Software limit switch 2

n10 Positive hardware limit switch

n11 Negative hardware limit switch

n12 Default settings

n14 SinCos feedback

534 Jetter AG
JetWeb Appendix

Appendix G:Recent Revisions

Chapter Comment Revised Added Deleted

Introduction Revision history

Chapter 1 Significance of this


Operator's Manual

Who is permitted to
operate ...

Repair and maintenance

Chapter 2 Safety Instructions


General Information

Instructions on EMI

Chapter 3 Fig. 2 Block Diagram

Chapter JetMove 200 has been


4.2.3 replaced by the general
term JetMove

Chapter Fig. 13: Connection


4.3.2 Diagram

Chapter Figure 17
4.3.6

Chapter JetMove 200 has been


4.3.6 replaced by the general
term JetMove

Chapter 6.5 Register 1xy098 has been


deleted from chapter 6.6.4
and added to chapter 6.5

Chapter Register 1xy017: Value of


6.7.5 the encoder resolution

Appendix G Recent Revisions

Jetter AG 535
Appendix JX6-CON-Move(-BP) Module

Appendix H: List of Abbreviations


General and technical abbreviations:

approx. approximately

AVR Atmel brand 8-bit controller located in JetMove 2xx power


sections and performing monitoring functions

Bit binary digit: smallest unit of information handled by a


computer

cf. confer: "see", "refer to"

CPU Central Processing Unit

DAC Digital-to-Analog Converter

DC Direct Current

EEPROM Electrically Erasable Programmable Read Only Memory

e.g. lat.: exempli gratia = for example

EMC Electro Magnetic Compatibility

ESD Electro Statical Discharge

etc. etcetera (Latin: and so forth)

ext. external

EU EuropeanUnion

Fig. Figure

FPGA Programmable hardware component performing tasks, such


as resolver signal evaluation

Gnd Ground

IEC International Electrotechnical Commission

i.e. id est (Latin: that is)

IJK IJK parameter: Parameters used to determine the center of


the circle for circular interpolations;
I: Distance to the center of the circle parallel to the x-axis
J: Distance to the center of the circle parallel to the y-axis
K: Distance to the center of the circle parallel to the z-axis

I/O Input/Output

IP International Protection = internationally applicable


classification of protection classes

LED Light-Emitting Diode

max. maximum

min. minimum

neg. negative

536 Jetter AG
JetWeb Appendix

General and technical abbreviations, continued:

No. Number

PFC Power Factor Controller


relevant to 2-phase power amplifier connection)

pos. positive

PWM Pulse Width Modulation

RAM Random Access Memory electronic memory, can be read and


written

Reg. Register

Rev. Revision: Revision level

RH-2 Relative Humidity: Classification with respect to relative


humidity

SELV Safe Extremly Low Voltage: Voltage up to 60 V, galvanically


separated from the network.

PLC Programmable Logic Controller

SSI Synchronous Serial Interface: a special type of encoder for


actual value acquisition

SUB-D Type name of a plug-in connector

Jetter-specific abbreviations and product names:

AD 8 Submodule: 8 analog inputs

DA 4 Submodule: 4 analog outputs

E-gear Electric gearbox: Operating mode of the follower

Follower Follower

IN Designation of inputs on Jetter front panels

O16 Submodule: 16 digital outputs

OUT Designation of outputs on Jetter front panels

PPR Pulses Per Revolution count

SM Submodule: Stepper Motor

SV Submodule: Servo Controller or fast dual-channel counter

TR Transmission Ratio

Jetter AG 537
Appendix JX6-CON-Move(-BP) Module

Unit of measures:

A Ampere: Unit of measure of current

Degree Degree: Radian measure, unit of measure of angles

inc Increment: Steps, unit of measure of the path

kHz Kilo Hertz: Unit of frequency

kΩ Kilo Ohm: Unit of electrical resistance

m Meter: Unit of length, of distance travelled

mA Milli Ampere: Unit of measure of current

MHz Mega Hertz: Unit of frequency

mm Milli Meter: Unit of length, of distance travelled

ms Milli Second: Unit of time

m/s Meter per Second: Unit of speed

m/s2 Meter per Squaresecond: Unit of acceleration

mV Milli Volt: Unit of electric potential

µs Micro Second: Unit of time

µV Micro Volt: Unit of electric potential

s Second: Unit of time

rpm Revolutions per Minute: Unit of speed

V Volt: Unit of electric potential


(DC 24 V: corresponds to 24 V direct voltage

VA Volt Ampere: Measurement of power in a direct current


electrical circuit

W Watt: Unit of power

°C Degree Celsius: Unit of temperature

538 Jetter AG
List of Illustrations JX6-CON-Move(-BP) Module

Appendix I: Index of Illustrations

Fig. 1: Shielding in Conformity with EMC Standards 18


Fig. 2: Block diagram of the JX6-CON-Move(-BP) Module 20
Fig. 3: Physical Dimensions JX6-CON-Move(-BP) Front Panel 21
Fig. 4: Physical Dimensions JX6-CON-Move(-BP) Board 22
Fig. 5: Slots in a JetControl-JX6 Rack 30
Fig. 6: JX6 Module 30
Fig. 7: JX6-CON-Move(-BP) Controller Module 31
Fig. 8: Arrangement of Submodules 32
Fig. 9: Front View JX6-SB Module 34
Fig. 10: Physical dimensions JX6-SB module 35
Fig. 11: Component Mounting Diagram JX6-SB Module 36
Fig. 12: Component Mounting Diagram JX6-CON-Move 38
Fig. 13: Connection Diagram 39
Fig. 14: Power Supply 41
Fig. 15: Connection Details for Digital Inputs 42
Fig. 16: Connection Details for Digital Outputs 43
Fig. 17: Interface between Servo Controller and JX6-CON-Move(-BP) Module 44
Fig. 18: Interface to the servo amplifier (9-pin SUB-D connector) 46
Fig. 19: LEDs 47
Fig. 20: Closed Control Loop 49
Fig. 21: Principle of a Servo Control Loop 51
Fig. 22: Structure of the Control Loop 53
Fig. 23: Without Full Position Control 59
Fig. 24: Full Position Control 60
Fig. 25: Coils of the resolver 66
Fig. 26: Signals in the Resolver 67
Fig. 27: Signal waveform of a multipole resolver 68
Fig. 28: Signal waveform of the "one-revolution" resolver 68
Fig. 29: Incremental Encoder Signals 71
Fig. 30: Differential signal of an incremental encoder 72
Fig. 31: Evaluating an Incremental Encoder 73
Fig. 32: Location of the Reference Switch 76
Fig. 33: Coding of the axis number 83
Fig. 34: Coding of Register Numbers 84
Fig. 35: Limit Switch Positions 101
Fig. 36: Destination window 107
Fig. 37: Acceleration ramp 114
Fig. 38: Deceleration ramp 115
Fig. 39: Signals of the Digital Speed Controller 135
Fig. 40: Delay times motor brake released/locked 147
Fig. 41: Signals of the Digital Speed Controller 174
Fig. 42: Emergency stop ramp 182
Fig. 43: Process Flow of Absolute Positionings 187
Fig. 44: Process Flow of Relative Positionings 187
Fig. 45: Endless Positioning in Positive Direction 200
Fig. 46: Endless Positioning in Negative Direction 201
Fig. 47: Inputs used for capture mode 206
Fig. 48: Flow Chart Capture Position with Input Signal 208
Fig. 49: Principle of Linear Interpolation 215
Fig. 50: Timing Diagrams relating to Linear Interpolation 216
Fig. 51: Axes of the Linear Interpolation 217
Fig. 52: Linear Interpolation - Axis Configurations 219
Fig. 53: Configuration for Linear Interpolation Variant 1 222

539 Jetter AG
JetWeb List of Illustrations

Fig. 54: Configuration for Linear Interpolation Variant 2 223


Fig. 55: Configuration for Linear Interpolation Variant 3 225
Fig. 56: Configuration for Linear Interpolation Variant 4 227
Fig. 57: Configuration for Linear Interpolation Variant 5 229
Fig. 58: Principle of Circular Interpolation 253
Fig. 59: Circular interpolation with 2 axes - axis configurations 257
Fig. 60: Configuration for Circular Interpolation Variant 1 260
Fig. 61: Configuration for Circular Interpolation Variant 2 262
Fig. 62: Configuration for Circular Interpolation Variant 3 264
Fig. 63: Circular interpolation with 3 axes - axis configurations 288
Fig. 64: Configuration for the 3D Circular Interpolation Variant 1 290
Fig. 65: Combined circular and linear interpolation - axis configurations 316
Fig. 66: Configuration for Combined Interpolation Variant 1 319
Fig. 67: Configuration for Combined Interpolation Variant 2 321
Fig. 68: Configuration for Combined Interpolation Variant 3 324
Fig. 69: Principle of FIFO processing of consecutive interpolations 353
Fig. 70: Configuration for Consecutive Interpolation Variant 1 358
Fig. 71: Configuration for Consecutive Interpolation Variant 2 359
Fig. 72: Configuration for Consecutive Interpolation Variant 3 360
Fig. 73: Principle of the spline interpolation 400
Fig. 74: Spline interpolation - axis configurations 406
Fig. 75: Configuration for Spline Interpolation Variant 1 408
Fig. 76: Operating principle of a follower control 425
Fig. 77: Follower with static transmission ratio 427
Fig. 78: Overview: Follower control as electric gearbox 429
Fig. 79: Follower Control as Electric Gearbox - Axis Configurations 430
Fig. 80: Configuration for follower control variant 1 434
Fig. 81: Configuration for follower control variant 2 435
Fig. 82: Configuration for follower control variant 3 436
Fig. 83: Configuration for follower control variant 4 438
Fig. 84: Follower control (electric gearbox) and endless positioning 445
Fig. 85: Exemplary Configuration for the Follower Control in Endless Mode 446
Fig. 86: Master controls table processing 464
Fig. 87: Time-controlled table processing 465
Fig. 88: Overview: Follower control in table mode 466
Fig. 89: Structure of the table and table registers 467
Fig. 90: Assignment: Tables and slaves 468
Fig. 91: Table difference with overflow correction 471
Fig. 92: Different values for the beginning and the end of the table 472
Fig. 93: Identical values for the beginning and the end of the table 472
Fig. 94: Follower Control in Table Mode - Axis Configurations 473
Fig. 95: Configuration for follower control variant 1 477
Fig. 96: Configuration for follower control variant 2 478
Fig. 97: Configuration for follower control variant 3 479
Fig. 98: Configuration for follower control variant 4 481
Fig. 99: Configuration for follower control variant 5 483
Fig. 100: Follower (table mode) and endless mode 490
Fig. 101: Exemplary Configuration for the Follower Control in Endless Mode 492
Fig. 102: Exemplary configuration for time-controlled follower mode
(table mode) 497

Jetter AG 540
Index JX6-CON-Move(-BP) Module

Appendix J: Index

A General Prerequisites 315


Configurations
Actual Value Acquisition 64ff Configurations Variant 1 319
Absolute Encoders 74 Configurations Variant 2 321
Hiperface 70 Configurations Variant 3 324
Incremental Encoders 71 General provisions 316
Resolver 66 General structure 316
Amplifier register configurations 316ff
Description of Registers programming rules 327ff
JetMove 2xx 119ff Overview of Registers 335
JetMove 6xx 150ff Overview of Commands 351
Description of registers 337ff
Connection Diagram of a Servo Axis 39
B Consecutive Interpolation 352ff
Block diagram 20 Overview 352
Operating principle 352
General Prerequisites 354
C Configurations 356ff
Capturing position with HW signal 205ff Configurations Variant 1 358
Prerequisites 206 Configurations Variant 2 359
Functional Description 207 Configurations Variant 3 360
Overview of Registers 210 General provisions 356
Programming 209 Overview of Registers 375
Register description 211ff Overview of Commands 398
Circular interpolation with 2 axes 253ff Consecutive interpolation
Overview 253 programming rules 361ff
Operating principle 255 description of registers 378ff
General Prerequisites 256 Continuous Path Controls 213ff
Configurations see also interpolations
Configurations Variant 1 260 Control Loop
Configurations Variant 2 262 Configuration 53
Configurations Variant 3 264 Mode of Operation of a Servo Control
General provisions 257 Loop 51
General structure 257 Principle of a Control Loop 49
configurations 257ff Signals 56
Programming rules 266ff
Current controller 63
Overview of Registers 273
Overview of Commands 283
description of registers 275ff D
Circular interpolation with 3 axes 284ff
Description of Registers
Overview 284
Command Registers 89
Configurations
Configuration registers for axes
Configurations Variant 1 290
JetMove 2xx 139ff
General provisions 288
JetMove 6xx 178ff
General structure 288
Configuration registers, general 101ff
configurations 288ff
Control Register 97
General Prerequisites 284
Parameter register of the amplifier
Operating principle 285
JetMove 2xx 141ff
Input by Angles 286
JetMove 6xx 180ff
Input by Teach Values 285
Position registers
Programming rules 291ff
JetMove 2xx 105ff, 132ff
Overview of Registers 296
JetMove 6xx 105ff, 171ff
Overview of Commands 313
Registers for amplifier operating modes
description of registers 298ff
JetMove 2xx 129ff
Combined circular and linear interpolation Registers for position controller
314ff JetMove 2xx 116ff, 134ff
Overview 314 JetMove 6xx 116ff, 173ff
Operating principle 314

Jetter AG 541
JetWeb Index

Speed controller of output stage Configurations Variant 3 479


JetMove 2xx 135ff Configurations Variant 4 481
JetMove 6xx 174ff Configurations Variant 5 483
Status Register 85 General structure 473
Status Register of Amplifier Structure of the Table
JetMove 2xx 99, 119ff Expanding Tables 469
JetMove 6xx 99, 151ff General provisions 467
Velocity registers 111ff Overflow in endless mode 471
See also position controller, speed Variant 1
controller, actual value acquisition and Configurations, structure 477
individual special functions Endless positioning
Description of Symbols 13 Principle 490
Disposing of the Module 12 Exemplary configuration 492
Time-controlled mode
Exemplary configuration 497
E General provisions 496
Overview of Registers 500
EMI Overview of Commands 515
EMI Parameters 27ff endless mode 490ff
increasing immunity to interference 17 programming 498ff
Shielding in Conformity with EMC time-controlled mode 496ff
Standards 18
Follower, in table mode
To avoid malfunctions the following must
Table structure 467ff
be ensured: 18
endless mode
programming 493ff
F register description 502ff

Follower control as electric gearbox 427ff


Overview 427 I
Brief Overview 429
Interface Connection with the Servo Amplifier
Configurations 430
44ff
Configurations Variant 1 434
Configurations Variant 2 435, 436 Interpolations 213ff
Configurations Variant 4 438 see also linear, circular, spline,
General provisions 430 combined, or consecutive interpolation
General structure 430
Variant 1 434ff, 477ff
Programming rules 440ff
L
Variant 1 LEDs 47ff
Configurations, structure 434 Limit and reference switches
Endless positioning Limit Switch Positions 101
Principle 445 Location of the Reference Switch 76
Exemplary configuration 446 see also machine referencing
Overview of Registers 449 Linear Interpolation 215ff
Overview of Commands 463 Overview 215
endless mode 444ff Operating principle 217
endless positioning General Prerequisites 218
programming 447ff Configurations
Register description 451ff Configurations Variant 1 222
Follower control in table mode Configurations Variant 2 223
Programming Rules 485ff Configurations Variant 3 225
Follower control, general information 425ff Configurations Variant 4 227
Overview 425 Configurations Variant 5 229
Prerequisites 426 General provisions 219
Follower control, in table mode 464ff General structure 219
Overview 464 Overview of Registers 239
Brief Overview 466 Overview of Commands 252
General provisions 473 Linear interpolation
Configurations Description of Registers 241ff
Configurations Variant 1 477 configurations 219ff
Configurations Variant 2 478 programming 230ff

542 Jetter AG
Index JX6-CON-Move(-BP) Module

M Overview: Appendices A, B,C, D


Repair 12
Machine Referencing Routines 76ff
Automatic 80
Commands 77 S
Sequence 79
Safety Instructions 15
Maintenance 12
Servo Amplifier 62
Speed controller 62
P description of registers 135ff, 174ff
Physical Dimensions 21 Spline interpolation 399ff
Position control Overview 399
Description of registers 116ff Configurations
Configurations Variant 1 408
Position controller
General provisions 406
Full Position Control 60
General structure 406
Without Full Position Control 59
configurations 406ff
Positioning, absolute and relative 183ff General Prerequisites 405
Comparison 186 Process flow
Overview of Registers 188 Data Input 401
Programming 183, 184 Calculating the spline movement
Description of Registers 189ff 402
Overview of Commands 191 Executing the spline movement
Positioning, endless mode 198ff 403
Commands for stopping the axis 198 Ending the spline movement 403
Overview of Registers 202 Options 404
Programming 199 process flow 400ff
Description of Registers 203 programming rules 409ff
Overview of Commands 204 Overview of Registers 413
Positioning, relative with start input 192ff Overview of Commands 424
Overview of Registers 194 description of registers 415ff
Programming 192
Register Description 195ff
Overview of Commands 197 T
Power Supply 40 Technical Data 23ff

R U
Register Usage as Agreed Upon 11
Numbering 84

Jetter AG 543
Jetter AG
Gräterstraße 2
D-71642 Ludwigsburg

Germany
Phone: +49 7141 2550-0
Phone -
Sales: +49 7141 2550-433
Fax -
Sales: +49 7141 2550-484
Hotline: +49 7141 2550-444
Internet: http://www.jetter.de
E-Mail: [email protected]

Jetter Subsidiaries

Jetter Asia Pte. Ltd. Jetter (Switzerland) AG Jetter USA Inc.

32 Ang Mo Kio Industrial Park 2 Münchwilerstraße 19 165 Ken Mar Industrial Parkway
#05-02 Sing Industrial Complex CH-9554 Tägerschen Broadview Heights
Singapore 569510 OH 44147-2950

Singapore Switzerland U.S.A.

Phone: +65 6483 8200 Phone: +41 719 1879-50 Phone: +1 440 8380860
Fax: +65 6483 3881 Fax: +41 719 1879-69 Fax: +1 440 8380861
E-Mail: [email protected] E-Mail: [email protected] E-Mail: [email protected]
Internet: http://www.jetter.com.sg Internet: http://www.jetterag.ch Internet: http://www.jetterus.com

544 Jetter AG

You might also like