Disabling a SINUMERIK 840D Servo Axis: MD and Drive Procedure

David Krause17 min read
Motion ControlSiemensTutorial / How-to
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

Disabling a SINUMERIK 840D Servo Axis: MD and Drive Procedure

SINUMERIK 840D MMC103 export systems are frequently delivered with more physical axes than an end-user actually requires. The first instinct of many commissioning engineers is to force a single machine data bit (for example, attempting to change only the controller output assignment via CTRL_OUT) and then disconnect the motor cables. The result is almost always the same: the drive bus reports a missing drive, the NC blocks reference-point approach for every axis on the same bus, and no NC alarm surfaces because the axis has not been removed from the configuration. The NC is therefore still expecting the drive to reply, the drive is physically absent, and the entire bus segment is held in reset.

This article provides a field-proven procedure to permanently remove a 1FK/1FT/1PH-series servo axis from a 9-axis 840D MMC103 system. It covers the machine data (MD) sequence, the drive-side deactivation, the PLC interface impact (DB31/DB32, V3700/V3800), the reason why motor-power disconnection on a single axis halts the whole machine, and the tooling required to inspect PLC logic that is otherwise not visible from the HMI.

1. Prerequisites

Before any change is made, the following items must be available on-site:

  • Operator access level for machine data and drive configuration. Service-level password is typically required to write axis-specific MDs (MD30xxx, MD32xxx) and drive MDs (MD13xxx).
  • Simatic Manager Step 7 V5.x with a license for the SINUMERIK 840D PLC project. The MMC103 HMI does not allow you to open STL/FBD/LAD logic, only the diagnostic status of inputs, outputs, flags, and data-block words.
  • PG/PC connection to the PLC: an MPI cable (6ES7901-0BF00-0AA0 or equivalent) or an Ethernet connection to the CP 343-1 / CP 443-1 with the project loaded and online via TCP/IP. Refer to the SINUMERIK 840D sl PLC Interface Description for the exact interface pinning.
  • A current PLC backup (.s7p / S7 backup file) of the 840D project. Never disable an axis before exporting the project to PG and a separate CF card.
  • NCU firmware compatibility: the procedure below is valid for MMC103 / PCU50 based 840D with NCU 561.x, 571.x, 572.x, 573.x, and 573.5. NCK software version 5.x, 6.x, 7.x all share the same MD numbering for the four data items used.
  • Documented drive numbers from the axis-drive assignment table. Record them before every change.
Safety notice: Disabling a safety-relevant axis (e.g., a Z-axis on a vertical spindle) without mechanically locking the gravity-loaded axis is unsafe. Where the axis is part of a safety chain (SPL/SLP/SLS), an additional risk assessment per EN ISO 13849-1 and EN 62061 is mandatory. Refer to the SINUMERIK 840D sl Function Manual, Axes and Spindles for the safety boundary conditions.

2. Understanding the 840D MMC103 Axis Architecture

A 9-axis MMC103 system has three logical layers that must all be told the axis is going away:

  1. NC layer — axis-specific machine data (MD30xxx, MD32xxx) defines how many encoder channels, what setpoint output, and what type of measuring system the axis uses.
  2. Drive layer — the SIMODRIVE 611 / SINAMICS S120 drive slot in the drive configuration list (Menu: Startup → Drive Config) defines whether the physical drive is active on PROFIBUS / PROFINET. The drive is addressed by its logical drive number (MD30130, MD30220, MD13000 series).
  3. PLC layer — axis-specific interface bits in DB31 (axis 1), DB32 (axis 2), ... DB39 (axis 9) are exchanged with the NCK. PLC flags and inputs that were tied to the disabled axis (M-codes, feed-hold logic, clamping) must be rewired or masked. This is the layer that is not visible from the HMI.

Only changing one layer is the classic source of the symptoms described: "axis not moving, no alarm." The NCK is in a state where it is not asking the drive to enable, so the drive is not in a faulted state, but the PLC is still feeding commands and gating everything through a feed-hold signal that never releases.

3. Machine Data Required to Disable an Axis

The following four NC machine data items constitute the minimum set that must be modified. The MD numbers are identical on every 840D software version; only the access protection and reset behaviour differ.

MD Number Name Default for an active axis Value to disable the axis Effect
MD30220 ENC_MODULE_NR[0] drive number 4, 5, 6 etc. Note down before change Identify the drive the axis is assigned to (read-only here)
MD30130 CTRLOUT_TYPE 2 (PROFIBUS / PROFINET drive) 0 (no output) Disconnects the setpoint output to the drive
MD30200 NUM_ENCS 2 0 Removes the encoder channel from the axis configuration
MD30240[0] ENC_TYPE[0] 1 (incremental) 0 Removes encoder 1
MD30240[1] ENC_TYPE[1] 1 (incremental) 0 Removes encoder 2

The full MD list, ranges, and reset behaviour are documented in the SINUMERIK 840D sl Machine Data Lists reference manual. For older MMC103 systems that use the printed Parameter Manual (6FC5 297-5AD20-0AP0), the same MD numbers apply but the access path differs (Startup → Machine Data → Axis-specific).

Common mistake: Do not set MD30130 to 0 without also setting MD30200 to 0. The axis will become a simulation axis (NCK will expect an encoder, no drive is connected) and the reference-point approach will hang at "wait for encoder zero mark".

4. Step-by-Step: Disabling the Axis via Machine Data

The procedure below assumes the axis is the 7th, 8th, or 9th in the channel (typical for a 9-axis machine where the customer keeps 6 production axes). The same sequence works for any axis. Always work from the HMI in Startup → Machine Data with the Axis filter set to the affected axis (AX7 / AX8 / AX9), not the global axis filter.

  1. Record the current values. Read MD30220 ENC_MODULE_NR[0] for the axis. This is the logical drive number used in step 4. Note it on the printout of the drive assignment table.
  2. Set MD30130 CTRLOUT_TYPE = 0. This tells the NCK that the axis no longer has a setpoint output, which removes the drive enable request on the PROFIBUS slot.
  3. Set MD30200 NUM_ENCS = 0. This removes the encoder channel definition from the axis. Without this MD, the NCK still expects an encoder and the reference-point approach will not complete.
  4. Set MD30240[0] = 0 and MD30240[1] = 0. These must be cleared because the encoders are still defined as incremental, and on a 0-encoder axis the type must also be 0.
  5. Confirm the change is accepted. The HMI will display "Machine data was changed; NCK reset required". Do not reset yet — first complete the drive-side deactivation described in section 5.

If the HMI shows a write-protection symbol, the password is not at service level. On a typical 840D MMC103, the service password is the OEM password set by the machine builder (default SUNRISE on older DMG / Index exports, or CUSTOMER on others).

5. Drive Configuration Deactivation

The second half of the procedure is on the drive side. The SIMODRIVE 611 / SINAMICS S120 drive slot that physically powers the disabled motor must be marked inactive in the drive configuration; otherwise the drive bus will report the slot as faulty and the NCK will block referencing on the remaining axes on the same bus segment.

  1. From the HMI, go to Startup → Drive Config (Menu select → Drive Configuration).
  2. Locate the drive number noted in step 1 of section 4 (for example, drive number 8 if you noted 8 from MD30220).
  3. Change the field "Drive active: yes / no" from yes to no. This removes the drive from the cyclic PROFIBUS / PROFINET exchange.
  4. If the machine uses SINAMICS S120 with an active line module and the disabled axis was on its own Motor Module, also verify that the drive number is removed from the topology in the Starter / Startdrive commissioning tool. With a 611 universal converter it is sufficient to set the drive inactive in the HMI list.
  5. Press Save and confirm the prompt "Drive config saved to CF card".
Field note: On 840D MMC103 systems that have the optional HMI advanced, the drive configuration is under Setup → Drive system. On HMI sl (operator panel) the path is Startup → Machine Data → Drive. Always confirm which HMI is installed before starting — the menu tree changes between MMC103 and TCU/PCU50.2-based 840D sl systems.

6. PLC Interface and Feed-Hold Interaction

The PLC interface for an axis occupies DB31 (axis 1), DB32 (axis 2), ... DB39 (axis 9). The relevant signal groups are:

Direction Address (V3700 / V3800) DB / Byte.Bit Signal
NCK → PLC V3800 5xxyyy DB3x.DBB0…DBB7 Axis status word 1 / 2 (NCK state, ready, encoder valid)
NCK → PLC V3800 5xxyyy DB3x.DBB8…DBB15 Axis status word 3 (position reached, axis stationary)
PLC → NCK V3700 5xxyyy DB3x.DBB0…DBB7 Axis control word (feed hold, drive enable, controller enable)
PLC → NCK V3700 5xxyyy DB3x.DBB8…DBB15 Axis control word 2 (block transfer enable, etc.)

The address V3700 510000…510015 referenced in the field case is the first 16 bits of the axis-1 control word. The base offset for axis n is (n - 1) * 256 bits, so axis 7 starts at V3700 516000. The actual feed-hold and feed-disable signals live in these bytes; the exact bit map is published in the SINUMERIK 840D sl NC Variable Lists and the SINUMERIK 840D sl PLC Interface Description.

When an axis is removed from the NCK side, its DB3x status bits will all read zero. If the PLC program gates "all axes referenced" on a per-axis bit and the bit is not reset in the logic, the PLC will hold a global feed-hold. This is one of the most common causes of "I disabled an axis, now no axis will move."

7. Why Motor-Power Disconnection Stops All Axes

The symptom reported in field reports — disconnecting motor power and encoder on a single axis causes all axes to stop and no alarm to be raised — has three layered causes.

Cause 1 — Drive bus dropout. The SIMODRIVE 611U / SINAMICS S120 bus is a shared PROFIBUS / PROFINET segment. When the drive slot disappears (cable unplugged), the bus master (NCU) sees a station failure. Even with the axis configured in MD30130 = 0, if the drive is still marked active in the drive configuration, the bus master enters a degraded state and the NCK stops issuing travel commands to the other axes on the same segment.

Cause 2 — PLC feed-hold gating. The PLC program typically monitors a global bit such as M x.y — "all axes healthy and referenced." This bit is reset by the disappearing axis status, and a global feed-hold is set. The HMI will not show an alarm because the feed-hold is a PLC-driven state, not an NCK alarm.

Cause 3 — Drive enable chain. The drive enable for the remaining axes is often wired through the controller enable of the disabled axis for a safety category reason (PL d, SIL 2). When the controller enable is lost on the disabled drive, the enable relay drops and the bus drops for everyone. The fix is to either rewire the enable chain to bypass the disabled axis or use a hardware jumper on the 611U enable terminal strip; this must be approved by the machine builder's safety assessment.

The corrective action is to drive-disable the axis through the full procedure (MDs + drive config), and then to inspect the PLC program to confirm that the feed-hold and enable chain are not dependent on the disabled axis.

8. Accessing PLC Logic with Simatic Manager

The MMC103 HMI does not allow STL/FBD/LAD editing or even full ladder online monitoring. To view the PLC program, you must use a programming device (PG) or a PC with Simatic Manager installed.

  1. Install Simatic Manager Step 7 V5.x. Version V5.5 SP4 or later is recommended for compatibility with most 840D PLC projects. V5.7 is required for some 840D sl projects (NCK 7.x). Step 7 V18+ (TIA Portal) is not used for legacy 840D MMC103 PLC programs — the PLC is a SIMATIC S7-300 / S7-400 family, but is programmed with the 840D PLC toolset, not TIA.
  2. Connect the PG to the PLC. The default path is MPI on the 840D front X122 port. Use the MPI cable (6ES7901-0BF00-0AA0) or the USB PC Adapter (6ES7972-0CB20-0XA0). Set the PG/PC interface in the Windows Control Panel to "PC Adapter (MPI)" with the bus profile at 187.5 kbps.
  3. Open the project in Simatic Manager: File → Open → User Project → navigate to the .s7p file provided by the machine builder. If only a binary backup exists, use PLC → Upload Station to PG to retrieve the project from the PLC.
  4. Go online: PLC → Go Online with the project matching the CPU type (e.g., CPU 317-2 PN/DP). The online window opens the status of every block, including DB31…DB39.
  5. Monitor DB31…DB39 online: open each DB3x, right-click the data view, select Monitor / Modify. The status words of the affected axis (and the one that disappeared) will show the bit state in real time.
  6. Search for the feed-hold logic: use Options → Cross Reference on the DB3x control-word bit names, and locate the network that sets the global feed-hold flag.

For systems where the PLC was programmed in SCL or with add-on safety blocks, the cross-reference may not resolve cleanly; in that case search for direct bit addresses (e.g., DB31.DBX0.0) with Edit → Find and Replace.

Access rights: Most machine builders protect the PLC program with the password "EVENING" (the legacy Siemens default for the OEM area). If the password has been changed, the project can still be uploaded but the FC/FB source code will be empty. The cross-reference to standard blocks (DB31/DB32) is still available, however, because the data block structure is fixed.

9. Verification Procedure

After completing the machine data and drive configuration changes, perform the following verification sequence before powering off and back on for a full NCK reset.

  1. From the HMI, go to Diagnostics → Service Display and confirm that the disabled axis no longer appears in the axis list, or that its status reads "simulation, no encoder".
  2. Check the alarm log (Diagnostics → Alarm Log). The log should be empty after a reset. If 2000 "Channel %1 Axis %2 not ready" or 26017 "Axis %1 drive %2 not active" appears, the drive configuration deactivation has not been saved.
  3. Power-cycle the NCU (NCK power off, wait 30 seconds, NCK power on). The MMC should boot normally and the HMI should come up in operator area.
  4. Run a reference-point approach on the remaining axes. Each axis should reach the reference cam, drop to the reference-point switch, latch the zero mark, and the NC should display all axes referenced.
  5. Run a JOG move on each remaining axis. Travel should be smooth, no vibration, no drift. A 0.1 mm JOG on a feed axis is sufficient to verify closed-loop integrity.
  6. Run a test part program (e.g., a 10 mm circular interpolation in the X-Y plane at 1000 mm/min). The part program should execute to completion with no alarm.
  7. Open the PLC online monitor in Simatic Manager and verify that the DB3x status bits of the disabled axis read all zero, and that the global feed-hold flag is not latched.

If the verification fails at step 4 (reference point approach), go directly to the troubleshooting matrix in section 10.

10. Troubleshooting Matrix

Symptom Most likely cause Diagnostic step Corrective action
Axis not moving, no alarm MD30200 / MD30240 not zeroed Startup → Machine Data → axis filter → AX7 Set MD30200 = 0, MD30240[0/1] = 0
Alarm 26017 "Axis %1 drive %2 not active" Drive config not deactivated Startup → Drive Config → confirm drive active = no Toggle drive active flag and restart NCK
All axes stop, no alarm PLC global feed-hold on the disabled axis status Simatic Manager → monitor DB3x status words Rewire feed-hold logic to bypass the disabled DB3x
Alarm 2000 "Channel %1 Axis %2 not ready" Drive enable relay drops, common enable chain Check the 611U enable terminal strip / SINAMICS EP terminal Hardware-approve jumper to bypass the disabled axis in the enable chain
Reference approach hangs on the remaining axes Drive bus segment degraded (cable disconnected) Reconnect the drive cables and verify the segment is intact Either complete the full MD + drive config procedure, or leave the drive physically connected and inactive
HMI write-protection on MD30130 Wrong access level Startup → Password → enter service password Obtain the OEM service password from the machine builder
PLC project upload empty blocks Know-how protection enabled Open a project backup from the CF card Restore from a project backup taken before the changes
Alarm 380001 "Axis %1 encoder %2 not ready" Encoder not removed from configuration Check MD30240[0] / MD30240[1] Set both to 0
MMC103 boot hangs at HMI startup Drive config save corrupted the CF card Boot the MMC103 in service mode, restore from CF backup Restore the .arc backup of the CF card
Feed hold V3700 510xxx latched PLC program drives a global feed-hold signal Cross-reference the feed-hold flag in Step 7 Mask the bit in the PLC program and re-load the block

11. Optional: Re-enabling a Previously Disabled Axis

If the disabled axis must be brought back into service (for example, the export machine is later sold with all 9 axes), the reverse procedure is required. Store the original values of MD30130, MD30200, MD30240[0/1] in the project documentation; otherwise the values must be recovered from the CF card backup taken in section 1.

  1. Reconnect the motor power cable and encoder cable. The drive bus segment will recover automatically once the PLC and NCK restart.
  2. Set MD30130 = 2 (PROFIBUS / PROFINET drive), MD30200 = 2, MD30240[0] = 1 (incremental), MD30240[1] = 1.
  3. Set MD30220 ENC_MODULE_NR[0] back to the original drive number.
  4. In Startup → Drive Config, mark the drive as active again and save.
  5. In the PLC, restore the bit wiring for the affected DB3x and the global feed-hold logic.
  6. Perform a full NCK reset and re-run the verification sequence in section 9.

If the original values are not recoverable, the safest path is to call the machine builder for a project restore. Driving the wrong values into MD30xxx can damage the drive or the motor (for example, if MD30200 is set higher than the physical encoders, the drive will report a ZSW2 encoder error and refuse to enable).

Which machine data items must be changed to disable a SINUMERIK 840D servo axis?

Set MD30130 CTRLOUT_TYPE to 0, MD30200 NUM_ENCS to 0, and MD30240[0] / MD30240[1] to 0. In the HMI drive configuration (Startup → Drive Config), mark the corresponding drive number (identified by reading MD30220 ENC_MODULE_NR[0] first) as inactive, save, and restart the NCK. A full reference of these data items is in the SINUMERIK 840D sl Machine Data Lists.

Why does disconnecting the motor power on one axis stop all axes without an alarm?

Three layered causes: (1) the shared PROFIBUS / PROFINET bus drops when the drive slot disappears, (2) the PLC sets a global feed-hold when a per-axis status bit goes away, and (3) the drive-enable chain (e.g., 611U terminal 663 / 9 on SIMODRIVE 611U, or EP on SINAMICS S120) is often wired through the disabled axis. The HMI does not raise an alarm because the feed-hold is a PLC-driven state, not an NCK alarm. Inspect the PLC program in Simatic Manager to confirm the feed-hold logic and the enable chain.

How do I read the PLC logic of a 840D MMC103 from a PC?

Install Simatic Manager Step 7 V5.x (V5.5 SP4 or later), connect a PG to the PLC via MPI cable (6ES7901-0BF00-0AA0) or USB PC Adapter (6ES7972-0CB20-0XA0), and open the project (File → Open → User Project). Use PLC → Upload Station to PG if you do not have a project backup. The standard axis-specific interface is in DB31 (axis 1) through DB39 (axis 9). TIA Portal is not used for legacy 840D MMC103 PLC programs.

What is the meaning of V3700 510000 to 510015 on a 9-axis 840D?

This is the first 16 bits of the axis-1 control word (PLC to NCK). Each axis has a 256-bit (32-byte) block: axis n starts at V3700 510000 + (n - 1) × 32. So axis 7 starts at V3700 516000, axis 8 at V3700 516032, axis 9 at V3700 516064. The signal definitions are in the SINUMERIK 840D sl NC Variable Lists and the SINUMERIK 840D sl PLC Interface Description.

Can the MMC103 HMI be used to edit or even view the PLC program?

No. The MMC103 HMI only displays the diagnostic state of PLC inputs, outputs, flags, and data-block words in the diagnostic area. To open the STL/FBD/LAD source code or perform online ladder monitoring, you must use Simatic Manager Step 7 V5.x on a separate PG. This is the standard procedure on every 840D MMC103 export system.

Back to blog