Sinumerik 840D Spindle CHANNEL INTERRUPT Troubleshooting Guide

David Krause11 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

1. Problem Overview

After a Siemens service engineer restored axis motion on a Sinumerik 840D system, the spindle fails to start and the HMI displays "CHANNEL INTERRUPT". The fault is unrelated to the previously resolved Error 2000 PLC sign of life monitoring; instead, it points to PLC-side spindle interlock logic, missing NC variable tables, or a loss of the analog spindle setpoint on PQW200.

This article documents the field-proven diagnostic path for this class of fault: it ties the HMI text, alarm number, NC machine data, PLC function blocks, and the analog spindle interface into one procedure. The intended audience is a commissioning or service engineer who has online access to the PLC (Step 7 / TIA Portal with SINUMERIK add-on) and to the HMI.

Critical: Alarm 700241 on 840D is not a Siemens system alarm. It is a user-defined PLC alarm generated by the machine tool builder. Investigate the PLC program, not the standard Siemens alarm database.

2. CHANNEL INTERRUPT vs PLC Sign-of-Life Error 2000

Symptom Source Typical Cause First Check
Error 2000 "PLC sign of life monitoring" NCK ↔ PLC cyclic handshake PLC OB1 cycle time exceeded; PLC stop PLC run state, OB1 scan time, CP/MPI link
"CHANNEL INTERRUPT" + Alarm 700241 PLC user program interlock Safety door, limit switch, drive enable missing DB2.DBX201.1, door limit switches
Spindle will not turn, no alarm NC setpoint path NC VAR selector not loaded, FC106 unscaling wrong MW470, PQW200, NC VAR table
Spindle turns but no analog voltage at drive HLA / ADI4 analog output Wiring short, module defective Disconnect load, measure PQW terminals

Because the first issue was resolved by the Siemens service engineer (axes now run), the remaining fault sits squarely in the spindle branch of the user PLC program, not in NCK-PLC communication.

3. Root Cause Analysis of Alarm 700241

Alarm 700241 is raised when bit DB2.DBX201.1 is set to 1 by the machine tool builder's PLC logic. That bit is the canonical "spindle inhibit / channel interrupt request" flag in most 840D user programs.

Common upstream conditions that drive this bit:

  1. Safety door limit switch open (door not closed, switch defective, wiring broken).
  2. Spindle enable chain interrupted (no drive enable, no controller enable, no pulse enable).
  3. Gear-step mismatch (selected gear step outside mechanical range).
  4. Axis-specific spindle inhibit from another channel (e.g., tool changer in motion).
  5. Feed/spindle hold from HMI or from part program.
Field tip: Force DB2.DBX201.1 = 0 temporarily in VAT or watch table only as a diagnostic step. If the alarm clears, the interlock source is mechanical or upstream safety; if it does not clear, the alarm text is being generated by another DB bit.

4. Analog Spindle Setpoint Path

The spindle speed setpoint originates in the NCK, is exposed to the PLC through NC variables, is scaled in the PLC, and is written to a peripheral output word. The path for the affected machine is:

NCK  ->  MD450 (spindle cmd speed)        [read via NC Var Selector]
NCK  ->  MD454 (spindle override %)       [read via NC Var Selector]
PLC  ->  cmd_speed = MD450 * MD454 / 100  [user math, stored in MD462]
PLC  ->  FC106 unscaling, 0..3150 -> 0..27648
PLC  ->  MW470 (scaled integer, REAL range)
PLC  ->  PQW200 (analog output to drive)

4.1 NC Variable Selector Tags

Address Source Meaning Units
MD450 NC Var Selector Programmed spindle speed (S word) RPM
MD454 NC Var Selector Spindle override from HMI / MCP %
MD462 PLC computed Final commanded speed = MD450 × MD454 / 100 RPM
MW470 FC106 output Scaled integer (0..27648 ↔ 0..3150 RPM) INT
PQW200 Peripheral output word Analog output to spindle drive ±10 V

4.2 FC106 Scaling Math

Siemens FC106 (UNSCALE) maps a real input range to an integer output range. With the configuration observed in the field:

FC106(
  IN  := cmd_speed_real,    // 0.0 .. 3150.0 RPM
  HI_LIM := 3150.0,
  LO_LIM := 0.0,
  BIPOLAR := FALSE,
  RET_VAL := ret_fc106,
  OUT := MW470);            // 0 .. 27648 (unipolar)

With bipolar = FALSE, the drive receives 0 V at 0 RPM and +10 V at 3150 RPM. Voltage at the drive terminal is computed by:

V_out = 10 V * (cmd_speed / 3150 RPM) * (override / 100%)

If MW470 is non-zero while the spindle is commanded, but no voltage appears at the drive, the analog module (HLA or ADI4) or its wiring is the suspect.

5. NC VAR Selector and Source File Requirements

The PLC reads MD450 and MD454 through the NC variable selector. The selector only works if the project contains a correctly populated NC VAR source file. If the project backup lacks this file, the read calls return zero, MD462 stays at zero, and the spindle never receives a setpoint.

  1. Open the S7 project that matches the machine MLFB on the NCU nameplate.
  2. Confirm Source files contains a file of type NC VAR (extension .nck or .var depending on tool version).
  3. Cross-check the variable names against MD450/MD454/MD462.
  4. If missing, recreate the NC VAR table from a known-good project backup or from the machine builder's documentation, then re-download to the PLC.
Common pitfall: The PLC project can compile and download without the NC VAR file, but every NWxx read returns 0. The symptom is silent — no alarm, just no motion. Always verify the source file exists before suspecting the drive.

6. PLC Interface Blocks (FC106 / FC210 / FB2 / DB120 / DB122)

Block Role Key I/O Diagnostic Action
FC106 (UNSCALE) Scale real RPM to integer for analog out IN: cmd_speed_real, OUT: MW470 Online monitor MW470 while S-word is active
FC210 / NW21 NC VAR selector read call Reads MD450/MD454 Verify NW21 returns non-zero on override change
FB2 Spindle drive enable sequencer Called with DB122 Trace enable chain to drive
DB120.DBX0.0 Drive ready / no fault (typical) Bit from drive Confirm bit = 1
DB120.DBX20.0 Speed regulator enabled (typical) Bit from drive Confirm bit = 1
DB122 Instance DB for FB2 spindle sequencer Per-spindle data Watch enable flags in VAT
DB2.DBX201.1 Channel interrupt / spindle inhibit request User logic → alarm 700241 Force 0 to confirm path, then trace origin

6.1 FB2 Spindle Sequencer (DB122)

FB2 typically sequences the spindle in the order:

  1. Drive enable (controller + pulse enable to drive).
  2. Wait for drive ready feedback (DB120.DBX0.0).
  3. Speed regulator enable (DB120.DBX20.0).
  4. Release setpoint gating — only then does MW470 reach PQW200.

If any feedback is missing, the sequencer stalls and no analog voltage is applied. Always trace the enable chain before assuming the drive or the analog module is at fault.

7. Gear Step Configuration

The machine uses five discrete gear ranges. The PLC must select the correct gear based on the programmed speed, and the NC must know which gear is engaged (parameter set selection, e.g., through SSC / SSCP or PLC-controlled M-functions).

Gear Step Speed Range (RPM) Typical Selection
1 0 – 125 Low torque, large diameter tooling
2 0 – 315 Medium-low
3 0 – 800 Medium
4 0 – 1600 Medium-high
5 0 – 3150 High speed, finishing
The full-scale of FC106 is hard-coded to 3150 RPM. If a future machine variant exceeds 3150 RPM, FC106 saturates and the spindle never reaches programmed speed above 3150. Always confirm the FC106 HI_LIM matches the highest gear step.

8. HLA / ADI4 Analog Output Diagnostics

The analog voltage on PQW200 is generated by either an HLA module (e.g., 6SN1115-0BA11-0AA1) or an ADI4 module. The PLC does not source the analog directly; it writes the integer to PQW200 and the module converts it.

8.1 Isolation Test

  1. Issue M3 S500 from MDI with the override at 100%.
  2. Monitor MW470 and PQW200 online. Expect non-zero integer.
  3. Disconnect the analog output wires at the drive end.
  4. Measure voltage at the module terminals with a true-RMS multimeter.
  5. If voltage is present with load disconnected but absent with load connected, a short or excessive load exists in the wiring or at the drive input.

8.2 Common Failures

Symptom Likely Cause Action
0 V always, MW470 non-zero HLA/ADI4 defective, or enable missing Check module SF/BF LEDs, replace if faulty
Voltage present at module, missing at drive Wiring short, shield grounded at both ends Inspect cable, isolate shield at one end
Voltage drifts under load Drive input impedance too low / wiring undersized Verify drive spec ≥ 10 kΩ, check gauge
Voltage overshoots or undershoots target FC106 scaling wrong, BIPOLAR flag set Verify BIPOLAR=FALSE, check HI_LIM

9. Step-by-Step Diagnostic Procedure

  1. Capture the alarm text and number from the HMI alarm line. Note whether alarm 700241 is active or only the "CHANNEL INTERRUPT" channel message.
  2. Open the S7 project that matches the machine MLFB (visible on the NCU nameplate). Confirm the project matches the on-line PLC program (compare blocks and version counters).
  3. Check DB2.DBX201.1 in a VAT. If 1, trace its set-condition in the user program. Verify door limit switches, gear-step ready, drive enable, and channel enable.
  4. Verify NC VAR source file exists in the project. Without it, MD450/MD454 reads return 0 and the spindle setpoint never builds.
  5. Monitor MD450, MD454, MD462, MW470, PQW200 in sequence while issuing M3 S500 from MDI.
  6. Call FC210/NW21 and confirm the NW status word is non-zero. Status 0 = OK; non-zero error codes map to NC access faults (see Section 10).
  7. Trace FB2 / DB122 enable chain: drive enable → drive ready → speed regulator enable → setpoint release.
  8. Disconnect the load from the analog output and measure voltage. Verify scaling with the formula V_out = 10 V × (cmd_speed / 3150) × (override / 100).
  9. Inspect HLA/ADI4 module LEDs for SF (system fault), BF (bus fault), or DO (digital output) indicators. Replace module if internal diagnostics point to a hardware fault.
  10. Re-test with override 50%, then 100%, at speeds in each gear step. Confirm the drive follows.

10. NW (NC Variable Selector) Status Codes

The PLC call FC210 NW21 (or equivalent) returns a status word. Non-zero values indicate the read failed:

Status (hex) Meaning Action
0000 OK, read successful None
0001 Read access warning Retry; check scaling
0010 Variable not found in NCK Verify NC VAR table name and row
0020 Access denied (NCK in wrong state) Wait for NCK ready or reset
0040 Invalid value (length/type mismatch) Check data type and length in NC VAR row
0080 Internal NCK fault NCK reset, escalate to Siemens

11. Verification

  1. From MDI, issue M3 S500. Spindle must accelerate to 500 RPM.
  2. Verify HMI alarm line is clear. Channel message should return to "READY" or "RUN".
  3. Confirm PQW200 with override at 100% and S=3150: PQW200 should read approximately 27648 (±50 LSB).
  4. Check DB2.DBX201.1 = 0 in steady state.
  5. Run a part program with a spindle speed change across gear steps; confirm each gear engages and the analog voltage scales proportionally.
  6. Capture a screenshot of the NCU/PLC online state showing MW470 and PQW200 values for the maintenance log.

12. Field-Proven Caveats

  • If the PLC project was reloaded from backup after the Error 2000 fix, the NC VAR source file is the most likely omission — re-add it before chasing drive faults.
  • Alarm 700241 text varies by machine builder; always trust the DB2.DBX201.1 mapping over the displayed text.
  • Do not assume the analog module is faulty until the wiring has been isolated. Drive-side input failures frequently present as missing voltage at the drive terminal.
  • FC106 BIPOLAR flag must be FALSE for unipolar 0–10 V spindle drives. A TRUE flag will produce ±10 V and reverse the spindle at negative values.
  • Cross-check the machine MLFB on the NCU nameplate against the loaded PLC project — a wrong project backup will produce a cascade of false alarms.
Safety: Before forcing any drive enable or analog output, ensure the spindle is mechanically clear, the area is guarded, and the E-stop chain is verified. Document every force / online change for traceability.

What does "CHANNEL INTERRUPT" mean on a Sinumerik 840D?

It is a channel-state message indicating the NC channel has been interrupted, typically by the PLC user program. On machines where it pairs with alarm 700241, the trigger is bit DB2.DBX201.1 being set to 1 by the machine builder's interlock logic, usually a door limit switch or drive enable issue.

Is alarm 700241 a standard Siemens alarm?

No. Alarm 700241 is a user-defined PLC alarm created by the machine tool builder. The PLC sets DB2.DBX201.1 to raise it, and the alarm text is project-specific. Investigate the PLC program, not the Siemens standard alarm database.

Why does MW470 stay at zero even with a programmed spindle speed?

The most common cause is a missing NC VAR source file in the PLC project. Without it, the NC variable selector reads of MD450 and MD454 return 0, the override and command multiply to zero, and FC106 outputs 0 to MW470 and PQW200. Restore the NC VAR table and reload the PLC.

How do I verify the analog spindle output is healthy?

Disconnect the analog output wires at the drive end, issue M3 S500 from MDI with 100% override, and measure the voltage at the module terminals. Expected voltage is V_out = 10 V × (500 / 3150) ≈ 1.59 V. If voltage is correct with no load but absent with load, the wiring or drive input is faulty.

Can the HLA or ADI4 module fail and cause this symptom?

Yes. Modules like the 6SN1115-0BA11-0AA1 HLA can fail such that PQW200 is written by the PLC but no voltage appears at the output. Always isolate the load and measure at the module terminals before replacing the module. Check SF and BF LEDs for internal diagnostics.

Back to blog