SINUMERIK 840D Power Line: Helical Hobbing Axis Sync Fix

David Krause21 min read
Motion ControlSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview

Helical gear hobbing on a SINUMERIK 840D Power Line (PL) control requires that the workpiece rotary axis (typically the C axis on the table) be electrically coupled to the axial feed axis (Z on the head) so that the helix lead of the gear is produced automatically as the table rotates. When the Z axis is not synchronized to the C axis rotation, plunge cutting produces a straight spur tooth that is correct in profile, but the diagonal pass produces a tooth that is either no longer a continuous helix, or that appears to re-cut the same region, leaving an under-cut or a striped finish. The B axis on a swiveling-head machine positions the hob arbor at the helix angle β before cutting begins and is held during the cut; it is not part of the C-Z coupling, but a wrong B angle or a wrong CYCLE800 mode will present exactly the same symptom from the operator's perspective. This reference describes the kinematics, the C-Z electrical coupling, the machine data, the language commands, the diagnostic procedure, and the verification steps required to recover full helical synchronization on a 840D Power Line hobbing cell using Z, B, and C axes.

Helical Hobbing Kinematics

A helical gear tooth lies on the pitch cylinder at a helix angle β to the gear axis. The helix is produced when the workpiece rotates while the tool is fed along the gear axis at a rate that satisfies:

Lead L (mm per workpiece revolution) = π × D × tan(β)

where D is the reference diameter of the gear in mm and β is the helix angle in degrees. The hob must also be mechanically set at the helix angle, which on a swiveling-head hobbing machine is performed by the B axis. The C axis indexes and rotates the blank, and the Z axis carries the hob through the face width of the workpiece. The product is a helix whose axial pitch is fixed by the lead L and whose circumferential tooth count is fixed by the hob thread count and the rotation ratio between the work spindle and the hob spindle.

β C axis rotation (workpiece) Helix B axis (helix angle) Helical gear tooth geometry

Per the SINUMERIK 840D sl Transformations Function Manual, the angle convention for B and C follows the right-hand rule, with the transformation matrix defined for the active kinematic type (head, table, or mixed). A 5-axis machine that runs both milling and hobbing must use the same convention in the post-processor and in CYCLE800 — a mismatch will land the B and C axes in the wrong orientation after a swivel, which is indistinguishable from a coupling failure at the start of the helical pass. Reference: SINUMERIK 840D sl Transformations Function Manual (06/2019).

Coupling Requirement Between C and Z

For the helix lead to be produced without operator intervention, Z must be a slave of C. In the canonical case of one blank revolution per hob revolution (the normal 1:1 hob starting configuration), the slave-to-master ratio is the lead expressed in mm per workpiece revolution. For a 1:1 hob a single hob pass traverses the face width as C rotates exactly once, so the Z axis must advance L mm per C revolution.

Coupling parameters for typical hobbing configurations (D = 100 mm reference diameter)
Configuration Spur (plunge) Helical β = 15° Helical β = 30°
Helix angle β 0° 15° 30°
Lead L (mm/rev) 0 (no axial feed) 84.0 181.3
B axis command 0° +15° +30°
Z feedrate at 10 rpm C (mm/min) 0 840 1813
COUPDEF ratio (Z : C) n/a 84.0 : 1 181.3 : 1
Sync window required (mm) n/a 0.5 0.5

For 840D Power Line the coupling is set up in machine data and block elements rather than with the COUPON/COUPDEF language commands introduced in 840D sl. The two generations are not fully source-compatible at the NC program level: 840D PL defaults to the older coupling framework based on CTAB, and the COUP/COUPOF syntax can be enabled by setting MD20150 (GCODE default profile) and the related language configuration MD22510. Verify the software release on the operator panel under Commissioning > Versions before choosing a syntax. The active SW version and the matching list manual are available from the Siemens Industry Online Support documentation tree.

Machine Data for the C-Z Coupling

The following machine data must be set in the 840D Power Line control for the C-Z coupling to behave correctly. These are the data most frequently missed in the field, and they are the first items to check when a hobbing cell loses synchronization after a backup restore or a software upgrade.

Critical machine data for C-Z electrical coupling on 840D PL (SW 5.x / 6.x)
MD Name Typical value Purpose
MD20150 $MC_GCODE_DEFAULT G-code default profile 3 Profile 3 enables the COUP/COUPDEF language
MD21300 $MC_COUPLE_CLK_MODE Coupling clock 1 1 = IPO clock; required for hobbing
MD21310 $MC_COUPLING_SLOTS Number of coupling slots ≥ 2 One slot per active coupling
MD21320 $MC_COUPLE_BLOCK_UPDATE Block update behavior 1 Update coupling in synchronized action
MD21330 $MC_COUPLE_VELO_TOL Velocity tolerance 1.0 mm/min Tighten to detect ratio inversion
MD21340 $MC_COUP_SYNC_DIFF_MAX Max sync difference 10 mm Alarm 16771 above this value
MD21342 $MC_SYNC_AX_OFFSET Synchronism offset 0 Used to pre-rotate the blank
MD30300 $MA_IS_ROT_AX[C] C declared rotary 1 Mandatory for modulo C axis
MD30310 $MA_ROT_IS_MODULO[C] Modulo rotation 1 360° modulo
MD30320 $MA_DISPLAY_IS_MODULO[C] Display modulo 1 Matches MD30310
MD32010 $MA_JOG_VELO_RAPID[Z] Rapid jog Z 5000 mm/min Rapid is decoupled from the coupling
MD32200 $MA_POSCTRL_GAIN[C] Kp of C axis 1.0 1/s Must be high enough for sync
MD32200 $MA_POSCTRL_GAIN[Z] Kp of Z axis 1.0 1/s Match to C; Z must track
MD32300 $MA_MAX_AX_ACCEL[C] Max accel C per machine Sync requires adequate acceleration
MD37500 $MA_ESR_DELAY_TIME[Z] ESR delay 0.0 s (disabled) Disable to isolate coupling faults
MD37500 $MA_ESR_DELAY_TIME[C] ESR delay 0.0 s (disabled) Disable to isolate coupling faults
Important: The MD numbers above are valid for 840D Power Line with SW 5.x and 6.x. For SW 7.x and later, several MD numbers have been renumbered and the value range has changed. Cross-check with the live list manual on the HMI before writing values, and back up the active NCK and drive data first.

For 840D sl, the same machine data exist under the same names, with the addition of language commands COUPDEF, COUPON, COUPOF, and COUPRES. The full coupling reference for both generations is in the SINUMERIK 840D sl / 840D / 810D Axes and Spindles Function Manual, identified as M3 in the Siemens manual classification, available from Siemens Industry Online Support.

Programming the Coupling

The 840D Power Line can be programmed using the older block-based coupling syntax (CTAB / CTABDEF / CTABDEL) or, with software release ≥ 5.3 and a profile switch, the modern COUPDEF/COUPON syntax. The two are not interchangeable inside a single NC program; switching mid-program will produce a block search error at run time. The example below is the modern COUPDEF/COUPON form for clarity; if you are on 840D PL with a software release below 5.3, use the CTAB block syntax referenced in the M3 manual.

; Helical hobbing, beta = 15 deg, D = 100 mm, 42 teeth
; Lead L = pi * 100 * tan(15) = 84.04 mm/rev
; Hob: single start, 1:1 ratio to workpiece

N10 G0 G90 G54 X0 Y0 B15.0      ; B axis at helix angle
N20 C0                           ; Pre-index blank
N30 S200 M3                      ; Hob spindle on
N40 COUPDEF(Z, C, 84.04, 1, 80, 80) ; Z slave of C, 84.04 mm per rev
N50 COUPON(Z, C)                 ; Engage coupling
N60 G94 G01 F10.0                ; C axis feed (deg/min equivalent)
N70 M0                           ; Operator check
N80 G0 Z50                       ; Rapid retract at end (decouples)
N90 COUPOF(Z, C)                 ; Release coupling
N100 M30

For the older 840D PL block syntax, the equivalent coupling is defined in the part-program header and engaged with M-function calls:

; 840D PL block-style coupling, CTAB defined in $NC_USER_DATA_R

N10 G0 G90 G54 X0 Y0 B15.0
N20 C0
N30 S200 M3
N40 M60                          ; Engage C-Z coupling per CTAB 1
N50 G94 G01 F10.0
N80 M62                          ; Disengage C-Z coupling
N100 M30

where the slave/master assignment and the lead ratio are defined statically in a CTAB block in the NCK. Siemens provides the CTABDEF / CTAB / CTABDEL language for table-style coupling definitions on 840D PL, described in the M3 Axes and Spindles Function Manual. Always verify the active coupling state with $AA_COUP_ACT after M60 / COUPON before any cut is started.

B Axis: Helix Angle Without Coupling

The B axis is a single-shot swivel and is not part of the C-Z coupling. It positions the hob arbor to the helix angle β before cutting begins and is held at that angle during the cut. The relevant motion constraints are:

  • MD30300 $MA_IS_ROT_AX[B] = 1, MD30310 $MA_ROT_IS_MODULO[B] = 0 — the B axis is rotary but not modulo; it must be commanded to a defined angular position before any coupling is engaged.
  • MD20180 $MC_GCODE_RESET_MODE[B] = 1 — preserve the B axis position across RESET so that the helix angle is not lost on a feed-hold / start.
  • MD20150 $MC_GCODE_DEFAULT[B] — CYCLE800 (swivel) is normally used to drive B for 5-axis transformation. If the machine is configured with TRAORI, the swivel cycle is generated automatically; if the machine is configured with a non-transformed kinematic, the operator must command the angle explicitly with G0 B<β> before the helical pass.

Per the SINUMERIK 840D sl Transformations Function Manual, the swivel sequence for a C-B head is generated by CYCLE800 with mode B axis by axis or B and C axis simultaneously, depending on the post-processor and the active kinematic. A mismatch between the programmed CYCLE800 mode and the active kinematic can cause the B and C axes to land in the wrong orientation after a swivel, which appears as a synchronization error at the start of the next helical cut.

Spindle-Hob Coupling (M3S2)

The hob spindle (typically S1) and the work spindle (S2) are normally independent. The hob rotates at the cutting speed, the work spindle at the feed rate in rpm. To enforce the conventional 1:1 ratio (one hob revolution per blank revolution for a single-start hob) the work spindle is commanded directly and the hob spindle is given an independent speed. The hob speed override is decoupled from the work speed override by default; if the operator has wired both to a common override at the operator panel, the helix lead will not be preserved under override changes. Verify in the PLC program (DB3x) that the work spindle override is the only one active during the helical pass, and that the hob override returns to 100% before COUPON is issued.

Why Plunge Works but Helical Fails

Plunge cutting advances the Z axis by a fixed amount per part with no C axis motion, so the C-Z coupling is not exercised. Spur cutting advances the C axis while Z is held, again with no axial motion. Helical cutting is the only mode in which Z must follow C continuously, so it is the only mode that exposes a missing or mis-configured coupling. This is the most useful diagnostic: if plunge and spur are clean but helical is striped, under-cut, or off-pitch, the C-Z coupling is the prime suspect, not the B axis, the spindle, or the part program.

Step-by-Step Diagnostic Procedure

  1. Save the active commissioning archive to a network share before making changes. Use the HMI menu Commissioning > Backup > NCK + Drives to export the active data set, then copy the file to a USB stick or network share for traceability.
  2. Open the alarm history at Diagnostics > Alarm Log. Note any 16771 (synchronism 2 monitoring), 16712 (velocity tolerance coupling), 25050 (axis contour monitoring), 25080 (position limit reached), 26072 (master/slave not configured), or 27002 (axis replacement not allowed) entries. Each alarm points to a different root cause class.
  3. Read the active coupling table at Commissioning > Axis Diagnostics > Couplings. Verify the slave, the master, and the ratio (numerator / denominator) for the C-Z coupling. The numerator must be the lead L in mm and the denominator must be 1 (one full revolution of the work spindle).
  4. Confirm the gear ratio between the hob and the work spindle. For a single-start hob and a normal gear, the ratio is 1:1 and the number of teeth cut equals the work-spindle revolutions. For a multi-start hob with N starts the blank makes 1/N revolutions per hob revolution, and the work-spindle-to-hob-spindle gear ratio must be 1:N. Re-derive the ratio for non-1:1 cases — this is a frequent field error.
  5. Run the program in single-block mode with a G4 dwell inserted immediately after COUPON. At the dwell, command C to advance 0.5° by hand wheel (or by handwheel override in the active mode) and read the Z position. It must advance by L × 0.5/360. If it does not, the coupling is not engaged or the ratio is wrong. If it advances in the wrong direction, the sign of the ratio is inverted.
  6. Verify the B axis position by reading $AA_IM[B] before and after the swivel. It must equal β (with the correct sign) before COUPON is issued. Read the part program for an explicit G0 B<β> block; if CYCLE800 is used, read the active swivel mode and confirm it against the kinematic type on the machine data page for swivel cycles (MD20186 / MD20187 / MD20188).
  7. Disable ESR temporarily by setting MD37500 = 0 on all axes involved and re-run the program. If the helix is now correct, the root cause was an ESR trip; the fix is to raise MD37500 above the cycle time of the part program, or to wire the feed-hold signal to a different axis.
  8. Compare the position control gain of C and Z (MD32200). If the Z axis has a lower Kp than the C axis, the Z axis cannot track the rate command and a steady-state following error accumulates, visible as a wandering helix. Re-balance the two gains to the manufacturer-commissioned values.
  9. Restore the saved MD values for any data that was not the root cause, and reset the spindle overrides to 100% before the final verification run.

Verification Checklist

Verification of helical hobbing on 840D PL — values to read during the test cut
Check Expected Where to read
COUPON active TRUE $AA_COUP_ACT[C]
Ratio Z/C L / 1 $AA_COUP_RATIO[Z,0]
B axis angle +β (with sign) $AA_IM[B]
Position lag Z < 0.5 mm $AA_FOLLOW_ERR[Z]
Position lag C < 0.05° $AA_FOLLOW_ERR[C]
Sync diff C-Z < MD21340 $AA_SYNC_DIFF[Z, C]
Velocity tolerance < MD21330 $AA_VELO_DIFF[Z, C]
ESR trigger 0 $AC_ESR_TRIGGER
Work-spindle override 100% $AC_OVR[spindle 2]
Hob-spindle override 100% $AC_OVR[spindle 1]

Common Alarms and Resolutions

Alarm cross-reference for hobbing synchronization faults on 840D PL and 840D sl
Alarm Text Typical cause First action
16712 Velocity tolerance exceeded Ratio sign wrong or feed too high Verify COUPDEF ratio and sign
16771 Synchronism 2 monitoring C-Z sync diff > MD21340 Raise MD21340, lower feed, or raise Kp
25050 Axis contour monitoring B not fully indexed Re-traverse B to β with G0
25080 Position limit Z commanded beyond SW limit Check part zero and SW limits
26072 Master-Slave not configured MD21310 too small Raise MD21310 and NCK reset
27002 Axis replacement not allowed Coupled axis replaced via PLC Check PLC axis replacement (FC 21)

For 840D sl the same alarms apply with the same numbers, but the diagnostic screen layout and the $AC_ variable names differ slightly by operator panel software version. Refer to the alarm help on the HMI for the SW-version-specific variable name; the underlying machine data and language commands are unchanged from the 840D Power Line.

5-Axis and CYCLE800 Interplay

If the machine is a 5-axis cell that also performs milling, CYCLE800 will be called for any tool change that touches the B axis. The SINUMERIK 840D sl Transformations Function Manual defines the two CYCLE800 modes:

  • Mode B axis by axis — B is swiveled first, then C. The post-processor emits two SWIVEL blocks. This is correct for a head kinematic (HA) where the B and C axes do not interfere.
  • Mode B and C axis simultaneously — both axes are commanded in a single block. This is required for a CA (mixed) kinematic where a single swivel would push one axis past its software limit.

A post that always emits the axis by axis mode on a simultaneously machine will land B and C in the wrong orientation. From the operator's perspective this is indistinguishable from a coupling failure because the B axis reading is wrong at the start of the helix. The remedy is on the post-processor side, not on the control: regenerate the post with the correct CYCLE800 mode and re-emit the part program. The angle ϕ for CYCLE800 is defined relative to the X axis (with B parallel to Y and C parallel to Z), with ϕ measured from the +X direction; verify the post-processor's convention against the Transformations Function Manual before assuming a synchronization error exists.

PLC and Operator Panel Checks

The 840D PLC interfaces the NCK to the drives and the operator panel. Several PLC conditions can disable the C-Z coupling without an NC alarm:

  • Axis replacement (FC 21) — the C axis has been replaced to a different channel, breaking the C-Z coupling silently. Read DB21.DBX12.0 (axis replacement) and the channel axis assignment in $NC_GETCHANAX.
  • Feed hold at the operator panel — the coupling remains active but the channel feed is zero; the operator reads this as "synchronization lost." Clear the feed hold and re-check.
  • Override at zero — same as feed hold, but the operator sets the rotary override to 0 to inspect the cut. Reset the override to 100% before measuring the helix.
  • M0 / M1 in mid-cut — the program has stopped at a programmed stop but the coupling is still active; the drive may drift past the sync window. Insert a COUPOF (or M62 on 840D PL) before any M0 if the machine is left idle.
  • Single-block (SBL) on the operator panel — the program is in single-block mode, the C axis is waiting at the next block, and the Z axis is at its last commanded value. Disabling SBL is required for continuous helical motion.

SINAMICS Drive-Level Checks

The C and Z axes are typically on SINAMICS S120 drives. The following drive parameters must be aligned with the NCK for the coupling to track:

SINAMICS S120 drive parameters for coupled axes on 840D PL
Parameter Name Recommended value
p0115 Power unit sampling time 125 µs
p0108 Drive object type SERVO for both C and Z
p0421 Encoder linear / rotary Linear for Z, rotary for C
p1400 Speed control config Manufacturer default
p1460 P-gain speed controller Match to load inertia
p1520 / p1521 Torque limit upper / lower Match to mechanics
p2153 Velocity actual value filter 0 ms (no filter)

Mixing SERVO and VECTOR drive objects on the two ends of a coupling is allowed, but the position controller must run in the NCK (which it does on 840D), and the position actual value must come from the encoder, not from the motor. If the Z axis is on a hydraulic drive the velocity window is wider and the helix will track with more lag; this is a mechanical limit, not a control fault, and must be accepted as a process limitation rather than "fixed" by tightening the machine data.

840D PL vs 840D sl Coupling Differences

The 840D Power Line (PL) was the production control from the late 1990s through the mid-2000s; the 840D sl replaced it from 2006 onward. The coupling framework is functionally identical, but the surface is different. 840D PL uses:

  • CTAB / CTABDEF / CTABDEL language for coupling tables.
  • M60 / M61 / M62 M-functions to engage / disengage the coupling block.
  • $NC_USER_DATA_R for static coupling configuration.

840D sl introduces:

  • COUPDEF / COUPON / COUPOF / COUPRES language commands.
  • Generic coupling with multiple blocks per slot.
  • $AA_COUP_ACT, $AA_COUP_RATIO, $AA_SYNC_DIFF system variables readable directly from the part program.

If a part program written for 840D sl is loaded on a 840D PL, the COUPDEF / COUPON / COUPOF / COUPRES commands will produce an NC alarm at run time (typically 14860 "Function not available"). The reverse — a CTAB-based program on 840D sl — will work if the CTAB language is enabled in MD20150, but the alarm screen and the variable names will differ. Always verify the active software release under Commissioning > Versions before porting a part program between generations.

Commissioning a Hobbing Cell from Scratch

When a new hobbing cell is commissioned on a 840D PL, the following sequence is recommended. It covers both the C-Z coupling and the B axis alignment, in the order that minimizes the number of NCK resets.

  1. Configure the C axis as rotary and modulo (MD30300, MD30310, MD30320). Verify the C axis reads 0° at the index position and rotates in the correct direction under JOG +.
  2. Configure the B axis as rotary but not modulo (MD30300 = 1, MD30310 = 0). Verify the B axis reads 0° at the home position and rotates to ±β correctly under JOG.
  3. Set the CYCLE800 kinematic type (MD20186 / MD20187 / MD20188) to match the mechanical head type. Test the swivel with an empty program; B and C must land at the commanded angle and direction.
  4. Configure the coupling slots (MD21310 ≥ 2). Set the velocity tolerance (MD21330) and the sync window (MD21340) to the values in the table above.
  5. Test the C-Z coupling with a low-speed dry run (C at 5 rpm, Z advancing 1 mm per revolution). Verify the relationship with a dial indicator on the Z slide and a rotation counter on the C axis.
  6. Run a test cut on a scrap blank at 25% of the production feed, measure the helix lead with a pitch gauge, and confirm the lead matches L within ±0.01 mm per revolution.
  7. Back up the active NCK and drive data, and document the commissioned values in the part program header for traceability.

Safety Considerations

Helical hobbing at production feed is a high-energy process. A lost C-Z coupling at full feed is a machine damage event, not a quality event. The following safety items must be in place before the first production cut on a newly commissioned cell:

  • Axis-specific software limits (MD36100 / MD36110) on Z that stop the axis at the part fixture, not at the mechanical hard stop.
  • Standstill monitoring (MD36040 / MD36050) on the C and Z axes, set tighter than the mechanical backlash.
  • Coupling-specific monitoring: MD21330 (velocity tolerance) and MD21340 (max sync difference) set to values that trigger an NC stop within 100 ms of the loss of sync, before the Z axis can advance into the fixture.
  • Drive-side torque limits (SINAMICS p1520 / p1521) sized to the fixture and the workpiece, not to the motor rating.
  • Operator-panel emergency stop that triggers an NC stop and a controlled retraction of the Z axis, not a hard drive disable.
Warning: Never disable the velocity tolerance monitoring (MD21330) or the sync window monitoring (MD21340) to clear a synchronization alarm. Tighten the machine data, balance the position control gains, or reduce the feed — but never remove the monitoring itself. A lost C-Z coupling at production feed is a machine damage event.

Frequently Asked Questions

Why does plunge cutting work but helical cutting does not on my 840D PL?

Plunge cutting advances the Z axis by a fixed amount per part with no C axis motion, so the C-Z coupling is not exercised. Spur cutting advances the C axis while Z is held, again with no axial motion. Helical cutting is the only mode in which Z must track C continuously, so it is the only mode that exposes a missing or mis-configured C-Z coupling. The C axis must be declared rotary and modulo (MD30300 = 1, MD30310 = 1), the coupling ratio must equal the helix lead L = π·D·tan(β), and the coupling must be engaged with COUPON (840D sl) or M60 (840D PL) before the cut.

What is the relationship between gear teeth and hob rotations?

For a single-start hob the blank makes one full revolution per hob revolution (1:1), and the number of teeth cut equals the number of blank revolutions. For a multi-start hob with N starts the blank makes 1/N revolutions per hob revolution, so the work-spindle-to-hob-spindle gear ratio must be 1:N. The number of teeth on the gear therefore equals the hob revolutions times the hob starts, divided by the gear ratio between work and hob spindles.

Which Siemens manual covers axis coupling for 840D PL?

The Axes and Spindles Function Manual (M3 in the Siemens manual classification) for the 840D PL software release installed on the machine. On 840D sl the same content is split between the Axes and Spindles and the Synchronized Actions function manuals, all accessible from the Siemens Industry Online Support documentation tree. The Transformations Function Manual is the companion for CYCLE800 and the B / C axis angle convention.

How do I read the active coupling in the operator panel?

On 840D sl go to Commissioning > Axis Diagnostics > Couplings. The screen shows the slave, the master, the active ratio, the active offset, and the synchronism state. On 840D PL the same information is available under the 6FC5 menu tree. As an alternative, read the system variables $AA_COUP_ACT, $AA_COUP_RATIO, and $AA_SYNC_DIFF directly from the part program or from the variables view in the operator panel.

My B axis reads the correct helix angle but the helix is still wrong. What else can it be?

The most likely cause is the sign of the B angle, which reverses the helix handedness, or a CYCLE800 mode mismatch that puts C on the wrong side of the workpiece. Verify the CYCLE800 mode against the kinematic type on the machine data page for swivel cycles (MD20186, MD20187, MD20188) and against the post-processor's output. The angle convention in the post must match the convention in the Transformations Function Manual — both must agree on the orientation of ϕ, on which axis is parallel to Y (B), and on which is parallel to Z (C).

Back to blog