Problem Statement
A Sinumerik 810T GA1 turning control exhibits a dangerous feed-rate override anomaly: when the operator rotates the handwheel-style feed override switch from 0% (minimum) through 120% (maximum), every detent produces the expected percentage — except at the position that should correspond to 6%, where the control instantly commands 150% feed rate. The fault has been present since the machine was acquired. Mechanical remediation (disassembly, cleaning, wiper realignment, and re-soldering of every terminal) has been performed twice without effect, which rules out switch contact noise as a primary cause and shifts attention to the control's interpretation of the switch position.
Sinumerik 810T Feed Override Architecture
The Sinumerik 810T is a turning (T) variant of the 810 family, with hardware/software generations GA1, GA2, and GA3. Feed-rate override is implemented as a closed loop between the operator panel, the integrated PLC (STEP 5 compatible), and the NC kernel.
The signal path is:
- Operator rotates the 16-position (typical) rotary switch on the machine panel.
- The switch presents a 4-bit Gray-coded parallel value on one PLC input byte.
- The PLC user program decodes the Gray code, applies clamping/limit logic, and writes a percentage into the NC's feed-override interface.
- The NC kernel multiplies the programmed feed (F-word) by the percentage and outputs the result to the axis interpolators.
- Machine Data (MD) tables define the upper/lower clamp, the maximum rapid override, and the scaling curve applied to each switch position.
Because the mechanical switch has been confirmed healthy, the fault must be in one of: (a) a corrupted MD that scales the suspect position, (b) the PLC decoding/scaling table, or (c) a stuck/dual-contact input bit that produces an invalid Gray-code word that maps to 150%.
Root Cause Candidates
| Layer | Symptom Signature | Diagnostic Signal |
|---|---|---|
| Switch contacts | Intermittent, temperature-dependent, vibration-dependent jumps | PLC status flicker at the suspect detent |
| Gray-code wiring | Same wrong percentage across multiple detents | PLC byte value does not follow the expected Gray-code sequence |
| PLC decode/table | Wrong percentage at one specific detent only | Gray code correct, but PLC output word reads 150% |
| NC Machine Data | Wrong percentage regardless of PLC value, or scaled curve mismatch | PLC output word normal, but axis feed jumps |
| NC kernel multiplier | All override positions off by the same ratio | Switch OK, PLC OK, MD clamp inverted |
For a single-detent fault (the 6% detent), the most likely root cause is either a defective bit in the switch wiper or a corrupted entry in the PLC decode table / NC MD that maps that specific Gray-code word to a percentage. The source technician's diagnostic suggestion is to check NC MD 103 — if its value reads 150 at the suspect position, MD 103 is the table entry for that detent and must be corrected to the expected percentage.
Safety Considerations Before Diagnostics
- Place the main disconnect in OFF position and lock/tag it.
- Bring up the control in JOG mode only, with the spindle drive enable disabled at the drive (open the drive enable contactor or remove the 24 V enable).
- Confirm the axis enable relays drop by attempting a rapid traverse — the axis must NOT move.
- Display the PLC status page (DIAGNOSTIC / PLC STATUS on 810T) with the override switch in the suspect detent.
Diagnostic Step 1 — PLC Status Display
The feed override rotary switch is hard-wired to one PLC input byte. On 810T systems, this byte is most commonly located in the operator-panel input range (typically IB 96 through IB 111 in a default configuration). The exact address is machine-specific and must be located from the wiring diagram and the PLC I/O assignment list.
Procedure:
- From the main menu, navigate to DIAGNOSIS > PLC STATUS.
- Select INPUT BYTE view and enter the suspected override byte address.
- For every switch detent, record the displayed byte value in a log table. Include the suspect 6% detent.
- Compare the sequence against the expected Gray-code progression. A single-bit error (one bit stuck LOW or HIGH) will produce an invalid code that, when decoded, jumps to an extreme percentage such as 150%.
Expected Gray Code Table (4-bit, 16-position)
| Position | Gray Code (I7..I0) | Expected % |
|---|---|---|
| 0 | 0000 | 0 |
| 1 | 0001 | 5 |
| 2 | 0011 | 10 |
| 3 | 0010 | 15 |
| 4 | 0110 | 20 |
| 5 | 0111 | 25 |
| 6 | 0101 | 30 |
| 7 | 0100 | 35 |
| 8 | 1100 | 40 |
| 9 | 1101 | 45 |
| 10 | 1111 | 50 |
| 11 | 1110 | 55 |
| 12 | 1010 | 60 |
| 13 | 1011 | 65 |
| 14 | 1001 | 70 |
| 15 | 1000 | 75 |
Percentages above assume a 0–120% range mapped across the switch; some 810T implementations use a 23-position switch with finer resolution. Always cross-check against the actual ladder decode table.
Inline Gray-Code Decoding Flow
Diagnostic Step 2 — Confirm Switch vs. Control Layer
With the PLC status byte recorded at every detent, compare the suspect detent against the expected Gray-code progression. Three outcomes are possible:
| PLC Byte at 6% Detent | Interpretation | Next Action |
|---|---|---|
| Matches expected Gray code | Switch and wiring are healthy; fault is downstream | Go to Step 3 (NC MD 103) |
| Differs by one bit only | Single contact/wire fault on that bit | Inspect that bit's terminal; reflow solder; re-test |
| Differs by more than one bit or shows 0xFF / 0xF0 | Short between bit lines, or stuck wiper segment | Disconnect switch from PLC, measure resistance per position with DMM |
Diagnostic Step 3 — Check NC Machine Data MD 103
On Sinumerik 810T, machine data is organized into ranges:
- MD 1–99: general machine data (display, mode group, channel settings)
- MD 100–199: channel-specific data (feed, spindle, auxiliary functions)
- MD 200+: axis-specific data
NC MD 103 falls within the channel-specific range and, in the affected machine, behaves as the scaling entry for the feed-override switch position table. When the operator selects the 6% detent, the PLC hands the NC a percentage value. If MD 103 contains the value 150 instead of the intended low percentage (commonly 6 or 5 depending on the detent count), the NC will command 150% feed regardless of the PLC's intent.
Procedure to inspect:
- Navigate to SETUP > MD (or press the MD softkey on the operator panel).
- Enter MD number
103. - Read the displayed value. If it reads
150, MD 103 is corrupt and is the root cause. - Record the value on the data sheet, including the field's axis assignment and the active channel.
1510 "Password missing" or 1720 "Invalid MD access level".
Diagnostic Step 4 — PLC Program Decode Inspection
If MD 103 is correct but the fault persists, the decode table inside the PLC user program is the next suspect. The 810T PLC is programmed in STEP 5; the feed-override handler typically lives in a function block (FB) called by the cyclic OB 1.
Common block layout on 810T:
| Block | Purpose |
|---|---|
| OB 1 | Cyclic main; calls FB for feed override |
| FB 10 / FB 11 | Feed-override decode and clamp |
| DB 20 / DB 21 | Instance data: lookup table, status word |
| PB 3 / PB 4 | Operator panel I/O segment handling |
Use the online STEP 5 monitor (or the 810T built-in PLC STATUS function block view) to step through the decode segment. The expected logic pattern is:
FUNCTION_BLOCK FB 10
VAR
IB_Raw : BYTE; // Gray code from switch
FB_Pct : WORD; // Output % to NC
MD103_Lim : WORD; // Loaded from MD 103
END_VAR
BEGIN
// 1. Gray -> binary conversion
IB_Bin := GRAY_TO_BIN(IB_Raw);
// 2. Lookup in decode table (DB 20, 16 WORDs)
FB_Pct := DB20.DW[IB_Bin];
// 3. Apply upper clamp (MD 103 sets the maximum)
IF FB_Pct > MD103_Lim THEN
FB_Pct := MD103_Lim;
END_IF;
// 4. Lower clamp at 0
IF FB_Pct < 0 THEN FB_Pct := 0; END_IF;
// 5. Hand to NC interface flag byte
FY[FC_DBB]; := FB_Pct;
END_FUNCTION_BLOCK
If MD 103 acts as the upper clamp rather than a per-position table entry, a value of 150 would clamp every detent, not just one. The single-detent signature therefore indicates that MD 103 in this machine is a per-position entry, not a clamp — or that the PLC reads MD 103 only for the suspect detent. Either way, MD 103 = 150 is wrong.
Repair Procedure
Repair A — Correct NC MD 103
- Turn the customer key-switch to the position that enables MD writes (typically position 1 or higher on 810T).
- From the MD display page, enter MD
103. - Replace the value
150with the expected percentage for the detent (typically6, or the value matching the printed legend on the switch cap). - Press INPUT or the equivalent confirm softkey.
- Cycle the control power to commit the new MD to non-volatile RAM. On 810T, MR (Machine data Random) is normally backed up by battery-backed RAM (BR), but a power cycle ensures the bootstrap reloads the new value.
Repair B — Recover PLC Decode Table
If MD 103 is correct but the PLC decode table is corrupt:
- Connect the STEP 5 programmer to the 810T serial port (RS-232, 9600 8N1 typical for PG 685/PG 720).
- Upload DB 20 and FB 10/11 to the programmer.
- Compare against a backup or the commissioning archive. If no archive exists, rebuild DB 20 with the documented scaling:
[0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75]for a 0–75% range, or the appropriate curve for a 0–120% range. - Download the corrected blocks. Observe the PLC STOP / RUN handshake: 810T must be in STOP before download and cycled to RUN.
Repair C — Switch Wiring (only if Step 2 indicated a bit error)
- Disconnect the switch harness from the PLC input card to isolate the panel.
- Use a DMM in continuity mode and rotate the switch through all positions. Record the resistance between the common terminal and each bit line at each detent.
- For Gray code, exactly one bit should transition between adjacent positions. Two or more simultaneous transitions indicate a short between bit lines.
- Repair any cold solder joints, chafed wires, or pinched insulation. Re-insulate with heat-shrink and re-test.
Verification Testing
After the repair, perform a controlled verification:
- Power up the control in JOG mode with drives disabled.
- Rotate the override switch through every detent, 0% → 120% and back.
- Watch the PLC status byte and the NC override display. Each detent must show the expected Gray code and percentage.
- At the previously suspect 6% detent, confirm the override display reads the expected low value and not 150%.
- Re-enable the drives. Run a dry-cycle program at low programmed feed (G0 + G1 with F = 50 mm/min). With override at 6%, the commanded feed should be 3 mm/min — verify on the actual axis with a tachometer or by timing a known distance.
- Increment override to 100%, then to 120%, and confirm axis velocity scales linearly.
Related Parameters and Alarms
| Parameter / Alarm | Meaning on Sinumerik 810T | Action |
|---|---|---|
| MD 103 | Feed-override position table entry (suspect per source) | Verify against legend; correct to expected % |
| MD 104 / 105 | Upper / lower clamp for feed override | Verify clamps not exceeded by table |
| MD 122 | Rapid traverse override percent | Confirm not interacting with feed override |
| Alarm 1510 | Password missing for MD write | Set customer key-switch to write-enable |
| Alarm 1720 | Invalid MD access level | Use correct access level for protected MD |
| Alarm 2032 | Feed override out of range | Check decode table for out-of-range values like 150 |
| Alarm 1120 | Stop after axis command value limit | Indicates a downstream scaling problem |
The alarm numbering above is consistent with legacy Sinumerik alarm conventions; specific alarm numbers vary by software version and must be cross-checked against the operator panel displayed message.
Sinumerik 810T Generations and Software Differences
The 810T GA1, GA2, and GA3 generations differ in:
- CPU board (different backplane variants)
- PLC instruction set (some blocks were renumbered between GA1 and GA3)
- MD numbering and resolution
- Memory layout (BR battery-backed RAM size)
If the diagnosis above fails on a GA2 or GA3 machine, the MD numbering for the feed-override table may be different. Always start from the as-built MD list (printed commissioning sheet) shipped with the machine, not from generic documentation.
Documentation Pointers
For commissioning and service work on legacy Sinumerik controls, refer to Siemens Industry Online Support:
- Siemens Industry Online Support — legacy SINUMERIK documentation entry point
- SINUMERIK 810T GA1/GA2/GA3 Operator Panel Manual (functional description)
- SINUMERIK 810T GA1/GA2/GA3 PLC Programming Manual (STEP 5 interface)
- SINUMERIK 810T GA1/GA2/GA3 Machine Data List
Exact support contract availability and live links for these legacy manuals depend on the active Siemens service agreement. The titles and approximate entry points are correct at the time of writing; if a link returns an "item not found" error, search the Siemens support portal with the document title.
Troubleshooting Matrix
| Observed Fault | Likely Cause | First Check | Fix |
|---|---|---|---|
| Single detent reads 150% | MD table corruption | MD 103 | Correct MD to expected % |
| Two adjacent detents off | Bit transition error in switch | PLC status byte sequence | Reflow solder, replace switch |
| All detents read 150% | Clamp MD set to 150 | MD 104 | Set clamp to 120 |
| Random detents wrong | Loose connector or noise | Wiggle test harness | Replace connector, add shielding |
| All detents at 0% | Open common or no PLC power to panel | 24 V at switch common | Restore 24 V supply |
| Override display frozen | PLC STOP or FB not called | PLC status page | Restart PLC; verify OB1 scan |
FAQ
What is NC MD 103 on a Sinumerik 810T and why does it cause a 150% jump?
NC MD 103 is a channel-specific machine data entry that, on the affected 810T GA1, is used as the scaling entry for the feed-override position table. When MD 103 contains the value 150 instead of the expected low percentage, the NC kernel commands 150% feed whenever the operator selects the corresponding detent. Confirm the value by displaying MD 103 in the MD page and comparing against the printed switch legend.
How do I read the feed-override switch value from the PLC on a 810T?
Use DIAGNOSIS > PLC STATUS, select INPUT BYTE view, and enter the operator-panel input byte that the rotary switch is wired to (commonly in the IB 96–111 range for the panel area, but machine-specific). Rotate the switch through every detent and log the displayed byte; it must follow the Gray-code sequence for a healthy switch.
Why does the suspect detent jump to 150% even after the switch is cleaned?
If the PLC status byte shows the correct Gray code at the suspect detent, the switch is electrically healthy and the fault is in the NC MD table or in the PLC decode function block. Cleaning the switch only addresses contact resistance, not how the control interprets the position. Check MD 103 first, then inspect DB 20 / FB 10 in the PLC user program.
Can I edit MD 103 without a Siemens service password?
Most Sinumerik 810T MDs are protected by a key-switch position on the operator panel rather than a software password. Turning the customer key to the correct write-enable position is normally sufficient. If the control still rejects the write, alarm 1510 "Password missing" or alarm 1720 "Invalid MD access level" indicates an additional access-level check; consult the machine builder's commissioning sheet for the proper access level.
What Gray code does a Sinumerik 810T feed override switch produce?
The 810T feed override switch is typically a 16-position rotary with 4-bit Gray-coded outputs (one bit transitions per detent). The sequence is 0000, 0001, 0011, 0010, 0110, 0111, 0101, 0100, 1100, 1101, 1111, 1110, 1010, 1011, 1001, 1000. Any deviation from this sequence at a single detent indicates a stuck bit, a wiring error, or a short between bit lines.