Oscillating axes (A8)

1.1 IntroductionPAGEREF _Toc307389966 \h2

1.2 Description 3

1.3 General characteristics 3

1.4 Programming 3

1.4.1 Oscillating and transformations 3

1.5 Oscillating motion dynamics 3

1.5.1 Limiting by acceleration 3

1.5.2 Limiting by speed 3

1.6 Parameters 3

1.6.1 Overview 3

1.6.1.1 Channel parameters 3

1.6.1.2 Axis parameters 3

1.6.2 Description 3

1.6.2.1 Channel parameters 3

1.6.2.2 Axis parameters 3

1.6.2.2.1 Linear slope 3

1.6.2.2.2 Non-linear slope 3

More:

button Introduction

button Description

button General characteristics

button Programming

button Oscillating motion dynamics

button Parameters


Introduction

For specific machining technologies such as grinding, an oscillating axis movement is necessary which is executed largely independently of a contouring motion.

This motion referred to below as an "oscillating motion" is executed by the tool periodically reversing over the workpiece.

In the strict physical sense, the typical oscillating motion is sinusoidal. Therefore, when the term "oscillating motion" is used for the periodic reversing motion considered below, it is necessary to take into account the fact that the timing of the motion is generally not sinusoidal. As the relative speed between the disk and the workpiece, at least during tool engagement, should be constant during typical grinding, this is also intentional.

An oscillating axis during grinding is presented below as an example. The workpiece is machined by superposition of the oscillating X motion with positioning motions in the Y and Z axes.

Figure 1-1: Grinding with an oscillating axis


Description

Besides the profile type, which defines the nature of the speed profile in the dynamic phase, the oscillating motion can be characterised by the following parameters:

vosc: Oscillating feed rate

Tosc: Oscillating period

fosc: Oscillating frequency (1/ Tosc)

p1: Oscillating reversal position 1

p2: Oscillating reversal position 2

td1: Waiting time/delay at oscillating reversal position 1

td2: Waiting time/delay at oscillating reversal position 2

sexc: Oscillatory excursion

The following time and distance diagrams elucidate the parameters.

Figure 1-2: Oscillating motion in the time range with a linear slope profile

Figure 1-3: Oscillating motion in the time range with a non-linear slope profile

Figure 1-4: Positioning during the oscillating motion


General characteristics

q Any definition of the oscillating axis within the scope of the configured axes

q Asynchronous oscillating motion

q Alternative programming of the oscillating axis in the path compound

q The oscillating motion is started and stopped, and its parameters defined, via the NC program

q The essential characteristics of the oscillating motion result from two absolute positions between the oscillating motion and the feed rate

q Slope type corresponding to the set channel parameter

q Programmable waiting times at the reversal points of the oscillating motion

q Use of G01 acceleration in the dynamic phases of the motion

q Interruption of the contouring motion when oscillating motion is commanded

q Implicit deactivation of the oscillating motion..

§ at the transition of the programmed oscillating axis to the contouring motion

§ when a new command is issued without previous cancellation

§ when axes positions for the synchronization of decoding and interpolation are requested

§ at the end of the program

After deactivation of the oscillating motion,
stopping always takes place at oscillating position 2!


Programming

The programming syntax is based on the axis-specific programming of independent axes and M functions [PROG].

After the axis identifier, the parameters of the oscillating motion are defined via keywords and, if applicable, an associated value:

X[<keyword1> <(value1)>, [<keyword2> <(value2) >,..]

The characteristic of the oscillating motion is determined by the locations of the reversing positions and the axis feed rate. The reversing positions can either be specified directly or, as an alternative, are determined automatically via the zero position and the excursion.

As an alternative, the oscillating speed can be determined via the feed rate, the frequency or the period.

If no restriction occurs due to the dynamic characteristic axis quantities, the frequency and the period are kept to exactly when using the linear slope, and approximately when using the non-linear slope.

Characteristics of the keywords that are programmable in the oscillating command:

Key word | Function/meaning | Unit
OSC | Identification for oscillating. Must be the first keyword in command sequence. | -
ON | Oscillation on | -
OFF | Oscillation off | -
1ST_POS | First reversal position | [mm]
1ST_DELT | Waiting time at first reversal position | [s]
2ND_POS | Second reversal position | [mm]
2ND_DELT | Waiting time at second reversal position | [s]
ZERO_POS | Zero point | [mm]
EXCUR | Excursion | [mm]
FEED | Feed rate | [mm/min]
FREQ | Frequency | [Hz]
TIME | Period | [s]
NBR_OSC | Number of oscillations | -

Programming examples

Specifying the oscillation travel distance via reversal positions:

N10 X[OSC ON 1ST_POS=-100 2ND_POS=100 FEED=1000]

Specifying the oscillation travel distance via the zero position and the excursion:

N20 X[OSC ON ZERO_POS=0 EXCUR=100 FEED=1000]

Specifying 1 Hertz oscillation frequency; 10 oscillations:

N30 X[OSC ON ZERO_POS=0 EXCUR=100 FREQ=1 NBR_OSC=10]

Specifying a 4s period:

N40 X[OSC ON ZERO_POS=0 EXCUR=100 TIME=4]

Oscillating motion with feed motion of a contouring axis:

N50 X[OSC ON 1ST_POS=111 2ND_POS=222 FREQ=1]

N60 G01 G90 Y500 F200

Oscillating with waiting times of 0.5 s each at the reversal positions:

N70 X[OSC ON 1ST_POS=-100 1ST_DELT=0.5 2ND_POS=200
2ND_DELT=0.5 FEED=1000]

Cancelling oscillation:

Oscillation is stoped with reaching of reversal position 2:

N80 X[OSC OFF]

Fast stop of oscillation:

If an OFF is programmed in combination with FEED, the oscillation motion is stopped at once (feedhold for oscillation axis) and the reversal position 2 is directly moved with the new feed.

N90 X[OSC OFF FEED=5000]

Specifying the equal sign between the keyword and the value is optional.

More:

button Oscillating and transformations


Oscillating and transformations

Kinematic transformation

During active kinematic transformation (#TRAFO ON) no oscillating motion is permitted.

Cartesian transformation

Oscillating during active cartesian transformation (#(A)CS ON) is permitted, if the oscillating axis has the same direction like the corresponding axis of the machine. This means for example there is only a rotation around the Z axis when the Z axis also is the oscillating axis.

Example:

N10 #CS ON[0,0,0,0,0,90]

N20 Z[OSC ON...]

......

Other variants like

N10 #CS ON[0,0,0,0,0,90]

N20 X[OSC ON...]

......

(here the Y machine axis with the dynamics of the X axis would oscillate) are not allowed because of the changing axis dynamics and the possible superimposed motions caused by the transformation mapping. In such cases an error message is issued.

In the following example the user also could program a linear movement, what would lead to an inadmissible superimposition of the asynchronous oscillating motion and the linear movement.

N10 #CS ON[0,0,0,0,0,45]

N20 X[OSC ON....]

N30 G01 Y50 F20


Oscillating motion dynamics

Depending on the profile type, if the frequency is relatively high or if the period is small limiting effects occur due to the limited axis speeds and acceleration values.

In this case, the real oscillation frequency/period deviates from the required programmed frequency or period.

The examples given below are intended to show the limits of the motion dynamics. These motion profiles must generally be avoided because the travel speed and thus the machining speed are not constant during the oscillating motion or deviate in the downward direction.

More:

button Limiting by acceleration

button Limiting by speed


Limiting by acceleration

Dynamic characteristic quantities applied:

a_max: 1000mm/s2

v_max: 5000000um/s

%L sub_mv

N1000 G01 G90 Y100 F500

N2000 Y-100

M29

%osc_7

N10 X[OSC ON 1ST_POS=-120 2ND_POS=120 FREQ=0.6]

N20 LL sub_mv

N30 X[OSC OFF]

N180 M30

Figure 1-5: Limited oscillation frequency due to axis acceleration

A time of 1.964s is needed for one full oscillation. The required 1.666s (approx. 833 cycles) due to the oscillation frequency of 0.6Hz is therefore not possible with the dynamic characteristic quantities mentioned above.


Limiting by speed

Dynamic characteristic quantities applied:

a_max: 1000mm/s2

v_max: 500000um/s

%L sub_mv

N1000 G01 G90 Y100 F500

N2000 Y-100

M29

%osc_7

N10 X[OSC ON 1ST_POS=-520 2ND_POS=520 FREQ=0.2]

N20 LL sub_mv

N30 X[OSC OFF]

N180 M30

Figure 1-6: Limited oscillation frequency due to axis speed

A time of 5.164s is needed for one full oscillation. Therefore, due to the oscillation frequency of 0.2Hz, the required time of 5s (2,500 cycles) is not possible with the dynamic characteristic quantities mentioned above.

An error message is issued if the dynamic limits are reached.


Parameters

The NC program defines the parameters of the actual oscillating motion completely, with the exception of the profile type.

More:

button Overview

button Description


Overview

More:

button Channel parameters

button Axis parameters


Channel parameters

The profile type for the oscillating motion is defined via the following parameters.

ID | Parameter | Description
P-CHAN-00071 | profile | Standard acceleration profile


Axis parameters

The parameters listed below are the limiting characteristic quantities for the oscillating dynamics.

Parameters of the linear slope

ID | Parameter | Description
P-AXIS-00011 | a_stufe_1 | Acceleration in stage 1
P-AXIS-00012 | a_stufe_2 | Acceleration in stage 2
P-AXIS-00221 | vb_stufe_1_2 | Speed of changeover between the acceleration stages

Parameters of the non-linear slope

ID | Parameter | Description
P-AXIS-00001 | a_beschl | Acceleration in the case of increasing speed
P-AXIS-00002 | a_brems | Acceleration in the case of decreasing speed
P-AXIS-00195 | tr_beschl_ab | Ramp time for acceleration reduction
P-AXIS-00196 | tr_beschl_zu | Ramp time for acceleration build-up
P-AXIS-00197 | tr_brems_ab | Ramp time for deceleration reduction
P-AXIS-00198 | tr_brems_zu | Ramp time for deceleration build-up


Description

More:

button Channel parameters

button Axis parameters


Channel parameters

P-CHAN-00071 | Standard acceleration profile
Parameter | prog_start.slope.profile
Description | Setting the chosen standard acceleration profile
File type | SGN16
Data range | 0: abrupt acceleration profile 1: trapezoidal acceleration profile 2: sine square acceleration profile
Dimension | -
Default | 0
Remarks | The acceleration profile can be programmed in the NC program with the #SET SLOPE PROFIL command [PROG].


Axis parameters

More:

button Linear slope

button Non-linear slope


Linear slope

P-AXIS-00011 | Acceleration in Stage 1
Parameter | getriebe[i].lslope_profil.a_stufe_1
Description | This parameter is active during the acceleration and deceleration phases. It defines the acceleration in stage 1.
File type | UNS32
Data range | 1 < P-AXIS-00011 < P-AXIS-00008(a_max)
Dimension | Translatory: mm/s2 | Rotatory: °/s2
Default | -
Remarks | -

P-AXIS-00012 | Acceleration in Stage 2
Parameter | getriebe[i].lslope_profil.a_stufe_2
Description | This parameter is active during the acceleration and deceleration phases. It defines the acceleration in stage 2.
File type | UNS32
Data range | 1 < P-AXIS-00012 < P-AXIS-00008(a_max)
Dimension | Translatory: mm/s2 | Rotatory: °/s2
Default | -
Remarks | -

P-AXIS-00221 | Changeover speed
Parameter | getriebe[i].lslope_profil.vb_stufe_1_2
Description | This parameter defines the speed of changeover between Stages 1 and 2 during the acceleration and deceleration phases.
File type | UNS32
Data range | 1 < P-AXIS-00221 < P-AXIS-00212 (vb_max)
Dimension | Translatory: μm/s | Rotatory: 0.001°/s
Default | -
Remarks |


Non-linear slope

P-AXIS-00001 | Acceleration in the case of increasing speed
Parameter | getriebe[i].slope_profil.a_beschl
Description | This parameter defines the axis acceleration in the case of a constant speed increase.
File type | UNS32
Data range | 1 < P-AXIS-00001 < P-AXIS-00008(a_max)
Dimension | Translatory: mm/s2 | Rotatory: °/s2
Default |
Remarks | -

P-AXIS-00002 | Acceleration in the case of decreasing speed
Parameter | getriebe[i].slope_profil.a_brems
Description | This parameter defines the axis acceleration in the case of a constant speed decrease.
File type | UNS32
Data range | 1 < P-AXIS-00002 < P-AXIS-00008(a_max)
Dimension | Translatory: mm/s2 | Rotatory: °/s2
Default | -
Remarks | -

P-AXIS-00195 | Ramp time for acceleration decrease
Parameter | getriebe[i].slope_profil.tr_beschl_ab
Description | This parameter defines the acceleration ramp time for decreasing the acceleration in the case of an increasing speed P-AXIS-00001.
File type | UNS32
Data range | P-AXIS-00201 < P-AXIS-00195 < MAX(UNS32)
Dimension | μs
Default | -
Remarks | -

P-AXIS-00196 | Ramp time for acceleration build-up
Parameter | getriebe[i].slope_profil.tr_beschl_zu
Description | This parameter defines the acceleration ramp time for building up the acceleration in the case of an increasing speed P-AXIS-00001.
File type | UNS32
Data range | P-AXIS-00201 < P-AXIS-00196 < MAX(UNS32)
Dimension | μs
Default | -
Remarks | -

P-AXIS-00197 | Ramp time for deceleration decrease
Parameter | getriebe[i].slope_profil.tr_brems_ab
Description | This parameter defines the acceleration ramp time for decreasing the deceleration P-AXIS-00002.
File type | UNS32
Data range | P-AXIS-00201 < P-AXIS-00197 < MAX(UNS32)
Dimension | μs
Default | -
Remarks | -

P-AXIS-00198 | Ramp time for deceleration Ramp time for deceleration build-up
Parameter | getriebe[i].slope_profil.tr_brems_zu
Description | This parameter defines the acceleration ramp time for building up the deceleration P-AXIS-00002.
File type | UNS32
Data range | P-AXIS-00201 < P-AXIS-00198 < MAX(UNS32)
Dimension | μ s
Default | -
Remarks | -