1. Overview: Alarm 7013 (Drehzahlüberwachung) on SINUMERIK 810/820 GA3
The alarm 7013 – Speed Monitoring (German: Drehzahlüberwachung) is a spindle-monitoring alarm that the SINUMERIK 810 GA3 and SINUMERIK 820 GA3 controls raise when the actual spindle speed deviates from the programmed speed beyond a configured tolerance window. Unlike Siemens-native spindle alarms (e.g., 7xxx alarms generated by the NC kernel), 7013 is typically defined inside the machine builder's PLC user program and triggered from a monitoring FB. The alarm is therefore machine-dependent: its trigger logic, tolerance band, and reset behavior all live in the PLC project uploaded to the controller.
This reference covers the field-reported failure mode where 7013 appears only on a direction reversal (M3 → M4) within the same tool, only at low programmed speeds (typically below 600 rpm), and disappears at higher speeds (above ~900 rpm) or when a 105 % spindle feed override is applied. The condition is strongly correlated with an incorrect spindle-encoder pulse count stored in machine data and with the PLC's speed-window comparator used after a direction change.
The official installation instructions covering NC machine data (NCMD) and PLC interface for the affected controllers are available in the Siemens documentation set:
- SINUMERIK 810 GA3 / 820 GA3 Installation Instructions (Software Version 3) — Chapter 8 details the NCMD (NC Machine Data) layout including spindle encoder definitions.
2. Error Classification and PLC Origin
SINUMERIK 810/820 GA3 alarms are partitioned into two clearly separable groups:
| Alarm Range | Origin | Source | Remediable in NC MD? |
|---|---|---|---|
| 1xxx – 6xxx | NC kernel | Siemens firmware | Yes (NC machine data) |
| 7xxx | PLC user program (machine builder) | OEM-compiled S5/S7 PLC project | No — PLC source required |
| 8xxx and above | PLC / operator panel | OEM / Siemens HMI | No / Partial |
Alarm 7013 sits squarely in the OEM/PLC band. The PLC monitor typically reads the actual spindle speed (resolved from encoder pulses and a time base), compares it against the programmed speed command, and sets the alarm flag if the deviation exceeds a configured percentage for a configured number of PLC cycles. Common implementations in SINUMERIK 810 GA3 projects:
- Direct NC variable read (e.g., spindle actual speed from NCK) versus last programmed S-word.
- Position-encoder pulse count over a fixed PLC OB1 cycle window.
- Drive telegram status word (analog spindle via setpoint interface) compared to a tolerance band.
Because the source of truth is the PLC project, the first diagnostic move is to obtain the latest backed-up PLC source and inspect the block that drives DB/flag 7013. If the original machine builder is no longer available, the alarm can be temporarily neutralized or worked around while the underlying machine data is corrected (see Section 8).
3. Symptom Map: What Triggers 7013 in This Failure Mode
The field signature is highly specific. Documenting it before changing parameters protects against chasing red herrings:
| Condition | Behavior |
|---|---|
| M3 alone, any speed | No alarm |
| M4 alone, any speed | No alarm |
| M3 → M4 with same tool, S < 600 rpm | 7013 raised |
| M3 → M4 with same tool, S ≥ 900 rpm | No alarm |
| M3 → M4 with different tool (T call between) | No alarm |
| M3 → M4 with 105 % spindle feed override | No alarm even at 500 rpm |
| M3 → M4 with M5 (spindle stop) and dwell in between | No alarm |
Three observations follow from the table:
- Direction reversal is necessary but not sufficient — the alarm does not raise at high speed, so the cause is not a polarity/quadrature decoding error.
- The T (tool) call masks the alarm — a T call forces an internal NC cycle that re-initializes the spindle ramp monitor, which is consistent with a PLC monitor that uses the last S-programming event as a fresh start.
- Speed-override scaling neutralizes the alarm — pushing the commanded speed up by 5 % shifts the actual speed into the PLC tolerance band, which means the actual ↔ commanded deviation is a small percentage, not a gross fault.
These three facts together localize the fault to the PLC speed window used after a direction reversal, fed by an actual speed that is slightly off because of the encoder pulse-count scaling.
4. Root Cause: Spindle Encoder Pulse Mismatch (NCMD 4590)
The actual spindle speed inside the PLC is derived from the encoder pulse frequency over a fixed sampling window:
n_actual [rpm] = (f_pulse [Hz] × 60) / PPR
where PPR is the encoder's pulses-per-revolution value stored in NC machine data. If the controller's PPR is set to 1000 but the physically mounted encoder delivers 1024 pulses per revolution, the calculated actual speed is:
n_actual_calculated = n_real × (1024 / 1000) = n_real × 1.024
This is a +2.4 % over-read. A commanded 500 rpm therefore yields a calculated 512 rpm. The PLC's tolerance window — typically ±10 % of commanded in legacy projects, ±5 % in tighter ones — still contains this value. The trigger for the alarm is therefore not the steady-state error but the transient at direction reversal: when M4 fires, the spindle must first decelerate through zero, then accelerate. During that ramp the actual pulses per PLC cycle are non-uniform, and the rolling-average used by the PLC monitor can momentarily report a speed that is well outside the window. The T-call and the 105 % override both move the operating point further from the trip boundary, which is why they suppress the alarm.
The correction is to set the encoder's true pulse count. For incremental encoders commonly used on SINUMERIK 810/820 GA3 spindles, the canonical values are:
| Encoder Family | Typical PPR | Notes |
|---|---|---|
| Heidenhain ROD 426 / ERN 480 | 1024 or 2048 | Most common on late-1980s/early-1990s retrofits |
| Siemens 1XP8001 / 1XP8023 | 1024 (standard) or 2500 | Direct-mount spindle encoder |
| Stegmann / Hengstler | 1000, 1024, 2048 | 1000 is less common on machine tools — suspect misconfiguration |
Reading the encoder nameplate and adjusting NCMD 4590 is the recommended field correction.
5. NCMD 4590 — Spindle Encoder Pulse Setting
NCMD 4590 is the NC machine data word that holds the configured pulses-per-revolution of the spindle encoder used for actual-speed feedback. Its location and the access procedure are described in Chapter 8 (NCMD) of the GA3 installation instructions:
Entry parameters:
| Field | Value / Notes |
|---|---|
| NCMD number | 4590 |
| Display label | Number of spindle encoder pulses / Spindel-Geber-Striche |
| Default | 1000 (Sinemens default — not a recommended match for most retrofitters) |
| Valid range | 1 – 65535 pulses per revolution |
| Effect | Scales the calculated actual spindle speed used by the PLC monitor and the NCK ramp logic |
| Active immediately | Yes (NCK reads on warm start; some revisions accept hot reload) |
Changing NCMD 4590 is a commissioning change: the corrected PPR should match the encoder nameplate exactly. Off-by-one errors (e.g., 1023 vs 1024) are common after data-line glitches during restore from a backup made with a damaged EPROM programmer.
6. Diagnostic Procedure
Follow this sequence before editing any NC machine data:
- Confirm PLC origin of 7013. Open the PLC project (S5 or Step 5 source, depending on the controller's option board) and search for "7013" in the alarm-bit assignment. Document the block (FB/OB/PB) that sets the bit and the inputs that drive the comparison.
- Read the encoder nameplate. Note PPR, supply voltage, and output type (TTL, HTL, sin/cos).
-
Log current NCMD 4590 value. Navigate to the NCMD area, page to 4590, and record the current PPR. Use the operator panel sequence:
MENU → DIAGNOSIS → NCMD → page to 4590(the exact path varies with HMI software version 2/3; refer to Chapter 8 of the installation manual). - Measure actual speed at a known commanded speed. Run M3 S500, then compare the spindle tachometer against the controller's actual-speed display. A > 2 % discrepancy at multiple speeds confirms a PPR scaling error.
- Inspect PLC speed-monitor tolerance. In the PLC source, locate the comparator that drives the 7013 flag and record the threshold percentage and debounce time (number of OB1 cycles).
-
Check the SINUMERIK password. The default service password is
1111. If this has been changed by the previous owner, contact the OEM or a Siemens service partner for a reset — the password is a four-digit numeric in SW 3.
1111 opens the control to full NCK initialization if entered at the wrong prompt (the control may display a "reloading" or "initializing" screen). If the screen shows a PLC stop (e.g., PLS-Stop 3), a partial NCK reset was triggered. Power-cycle the machine and re-verify the alarm behavior. Never enter the password when the cursor is on a soft key with an "eye" symbol — this opens the data-block viewer, not the NCMD editor.7. Corrective Action — Setting the Correct PPR
Once the encoder nameplate PPR is known and the NCMD 4590 current value is logged, perform the correction:
- Enter service mode at the operator panel using password
1111(or the OEM-issued password). - Navigate to NCMD 4590 (Spindle encoder pulses).
- Enter the nameplate PPR. For a Heidenhain ROD 426 with 1024 ppr, the value is
1024. - Save the value and exit the NCMD area.
- Power-cycle the control to ensure the new PPR is read by the NCK and propagated to the PLC monitor.
- Upload the new NCMD values to a backup EPROM or PG archive for traceability.
After the correction, run a direction-reversal test at the previously failing speed (e.g., M3 S500, dwell 1 s, M4) and verify 7013 does not raise. Repeat at 200 rpm, 300 rpm, 500 rpm, 1000 rpm, and 2000 rpm to cover the full operating range.
8. Workarounds When PPR Cannot Be Changed
Several field-proven workarounds neutralize 7013 without correcting the underlying machine data. Use them only as a stop-gap while the proper NCMD correction is scheduled:
8.1 Insert M5 + Dwell Between Reversals
Modify the part program to insert a spindle stop and a brief dwell before each M4 (or M3) that follows an opposite-direction command:
M3 S500
G4 F0.5 ; 0.5 s dwell — lets PLC monitor re-baseline
M5 ; spindle stop
G4 F0.5 ; 0.5 s dwell
M4 S500 ; now safe to reverse
The dwell is long enough to clear the ramp from the PLC's rolling average and short enough to be invisible to the operator.
8.2 Re-program the S-Word After the Direction Change
Some PLC monitors treat a new S-word as a fresh spindle command and reset the speed-window comparison. Inserting S<same value> immediately after the M4 call often suppresses 7013:
M4
S500 ; or S<new value>
8.3 Use a Tool Change (T Call) as a Mask
If a tool change is acceptable in the cycle (e.g., at the start of a new operation), the T call re-initializes the spindle ramp logic and the 7013 flag clears. This is a useful diagnostic indicator but rarely acceptable in production.
8.4 Apply 105 % Spindle Feed Override
Increasing the spindle feed override from 100 % to 105 % raises the commanded speed by 5 % and pushes the calculated actual speed past the upper trip boundary, masking the low-speed transient. The override is operator-accessible and does not require a code change.
9. PLC Access and Password Recovery
Confirming that 7013 is PLC-defined requires access to the PLC project. For the 810 GA3 / 820 GA3, the PLC is a S5-130WB or S5-150U, programmed in Step 5. The PLC project is stored on an EPROM module inserted in the controller's option slot. To access it:
- Locate the PLC EPROM module (label on the module indicates program name and version).
- Use a PG (programming device) with the Step 5 software and an AG (interface) cable to read the EPROM contents.
- Search the source for the alarm-number table — typically in a DB (e.g., DB100 – DB110 range) where the PLC sets alarm bits for the HMI.
- Identify the block (e.g., FB65, OB1 segment) that drives bit 7013 and inspect the comparator logic.
Default SINUMERIK service password: 1111. If this fails, the password has been changed by the OEM. Recovery options:
- Contact the OEM with the controller's serial number and machine ID for a password reset token.
- For older controllers where the password is stored in a non-volatile RAM, power-off + battery removal for 10 minutes clears it. This also clears all NCMD, tool data, and PLC retentive flags — use only with a complete backup available.
10. Verification Matrix
Use the following matrix to confirm the fix and to differentiate this failure from other spindle alarms:
| Test | Expected After Fix | Still Failing → Look At |
|---|---|---|
| M3 S500 / M4 S500 direct reversal | No 7013 | PLC tolerance band, encoder wiring |
| M3 S1500 / M4 S1500 direct reversal | No 7013 | Drive ramp time, spindle brake |
| M3 S500 with spindle feed override 110 % | No 7013 | If alarm still raises, override not wired to PLC monitor |
| T1 M3 S500 / T1 M4 S500 | No 7013 (T call re-init) | PLC ramp block initialization |
| Spindle actual speed display vs tachometer at S1000 | Within ± 0.5 % | NCMD 4590 scaling still off, encoder slipped on shaft |
| Direction change with simulated load (e.g., drill engaged) | No 7013 | Drive torque limit, ramp-down too slow |
11. Related NC Machine Data on SINUMERIK 810/820 GA3
For completeness, the following NCMD entries are commonly reviewed alongside NCMD 4590 when commissioning the spindle feedback path:
| NCMD | Function | Typical Default |
|---|---|---|
| 4580 | Spindle encoder type / signal level | TTL, 1024 ppr assumed |
| 4590 | Spindle encoder pulses per revolution | 1000 (Sinemens default) |
| 4610 | Spindle speed tolerance window [%] | 10 % |
| 4620 | Spindle ramp-up time constant | 1.0 s |
| 4630 | Spindle ramp-down time constant | 1.0 s |
| 4640 | Spindle speed monitor debounce cycles | 5 |
These values interact: a wrong NCMD 4590 inflates the apparent speed swing during ramp, which then trips the tolerance window at NCMD 4610. Fixing 4590 alone is usually sufficient; tightening 4610 below 5 % is not recommended without verifying the drive's actual ramp performance.
12. Frequently Asked Questions
What does SINUMERIK 810 GA3 alarm 7013 mean?
Alarm 7013 is "Drehzahlüberwachung" (speed monitoring). On the SINUMERIK 810/820 GA3, it is a user-PLC alarm raised by the machine builder's program when the actual spindle speed deviates from the commanded S-word beyond a configured tolerance for a configured debounce period. It is not a Siemens-native NCK alarm.
Why does 7013 appear only on M3 to M4 at low speed?
The PLC monitor's rolling-average speed comparator trips on the transient during a direction reversal. A wrong PPR in NCMD 4590 (e.g., 1000 instead of 1024) inflates the apparent speed swing by ~2.4 %, and the resulting ramp transient is enough to cross the tolerance boundary only at low commanded speeds. Higher commanded speeds and a 105 % override push the operating point away from the trip boundary.
Where is the spindle encoder pulse count set on SINUMERIK 810 GA3?
It is stored in NCMD 4590 (number of spindle encoder pulses). The path is described in Chapter 8 of the SINUMERIK 810/820 GA3 Installation Instructions (SW 3). Enter the value that matches the encoder nameplate (commonly 1024).
What is the default service password for SINUMERIK 810 GA3?
The default service password is 1111. If it has been changed, contact the OEM with the controller serial number for a reset, or clear the NVRAM (which also clears all NCMD, tool data, and PLC retentive flags — only do this with a complete backup).
Can I suppress 7013 with a part-program change?
Temporarily, yes. Insert M5 plus a G4 dwell (e.g., G4 F0.5) between the opposing M3 and M4 calls, or re-program the S-word after the direction change. These are workarounds only; the correct fix is to set NCMD 4590 to the encoder's actual PPR.