Simotion D410-2 Virtual Axis Configuration and Limits

David Krause11 min read
Motion ControlSiemensTechnical Reference
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. Overview: SIMOTION D410-2 Axis Architecture

The SIMOTION D410-2 is a compact motion controller in the SIMOTION family that integrates a SINAMICS S120 drive line-up and an SIMOTION controller on a single hardware platform. Compared to the legacy D410, the D410-2 expands the usable real-axis count well beyond the original three-axis ceiling and introduces additional drive cliq and PROFINET/ PROFIBUS interface variants. Because the D410-2 firmware interprets several distinct axis objects, understanding how the controller counts each one is essential for capacity planning, cycle-time budgeting, and redundant motion architectures.

The D410-2 is offered in two principal order variants:

  • SIMOTION D410-2 DP – with PROFIBUS DP master/slave interface
  • SIMOTION D410-2 PN – with two PROFINET interfaces (also functional as DP master via PROFINET/PN-to-DP coupling depending on firmware)

Both variants integrate the SINAMICS S120 Control Unit functionality and can drive motor modules either directly through the on-board drive cliq ports or by way of an external CU320-2 / CU310-2 for book-size or block-format power sections. The relevant axes are configured in SIMOTION SCOUT TIA or the classic SCOUT engineering environment.

2. Axis Object Types Recognized by SIMOTION

SIMOTION treats every motion-capable resource as a technology object (TO). Axis, encoder, and output cam objects each consume a slice of the controller's real-time budget, but they consume the axis count differently. The principal TO axis types are:

TO Type Symbolic Name Drives a Motor? Real Axis? Drives a Physical Output?
Servo axis TO_ServoAxisType / TO_ServoAxis Yes Yes Yes (via SINAMICS drive cliq)
Speed-controlled axis TO_SpeedAxis Yes (open-loop) Yes (logical) Yes (analog/PWM output)
Positioning axis TO_PosAxis Yes Yes Yes
External encoder axis TO_ExternalEncoderAxis No No (consumes encoder count) No
Virtual axis TO_VirtualAxis No No No

The virtual axis is a software-only axis object that exists purely as a numerical reference inside the controller. It generates position, velocity, and acceleration setpoints without producing any power-stage output, and therefore does not consume a slot in the real-axis table of the controller.

3. Real-Axis Limit on the D410-2

The legacy D410 imposed a hard cap of three real axes. The D410-2 lifts that limit on supported firmware versions, but the practical ceiling is set by two distinct constraints:

  1. Firmware axis budget – The D410-2 integrated SINAMICS allows more than three real axes as of firmware V4.4 HF11; later V4.4 hotfixes and V5.x firmware releases expand this further. Field-proven projects have documented six real SINAMICS Servo objects driven from a D410-2 DP/PN through an external CU320-2 controlling S120 book-size motor modules.
  2. Drive cliq and power-section budget – The D410-2 has a finite number of on-board drive cliq ports (typically six). When more axes are required, the controller can be cascaded to an external CU320-2 (for S120 book-size) or CU310-2 (for blocksize). In a cascaded topology the booksize firmware lives on the CU320's CF card, which keeps the D410-2 free from any axis-count licensing restrictions tied to motor-module types.
Verification: Before scaling to six or more real axes, run SIMOTION SCOUT / SIZER on the candidate mechanical configuration. SIZER reports the achievable IPO and servo cycle times given the projected axis and TO count, and flags overload conditions before hardware is purchased.

4. Does the Virtual Axis Count Toward the Three-Axis Limit?

No. The virtual axis is excluded from the real-axis budget because it does not produce torque command output and does not require a SINAMICS drive object.

This distinction matters when sizing a SIMOTION project for a controller other than the D410-2 as well. On every SIMOTION platform (D410-2, D425, D435, D445, P320-4, etc.) the axis counter that is enforced at compile time counts only technology objects that produce physical motion. Virtual axes, external encoder axes used as pure followers, and following-axes can be added essentially without contributing to the axis ceiling, although they do still consume CPU time inside the IPO and servo tasks.

Controller Real-Axis Limit (firmware V4.4+) Virtual Axis Allowed? Counts Toward Limit?
SIMOTION D410 (legacy) 3 Yes No
SIMOTION D410-2 6+ (firmware-dependent) Yes No
SIMOTION D425 16 Yes No
SIMOTION D435 32 Yes No
SIMOTION D445 64 Yes No
SIMOTION P320-4 64 Yes No

Always cross-check the published limit against the active firmware release notes because the number is a function of firmware feature set, not hardware alone. The SIMOTION D410-2 Function Manual contains the definitive table for each firmware branch.

5. Cycle-Time Budget: The Real Bottleneck

Although the virtual axis is "free" with respect to the axis counter, it is not free with respect to the IPO (interpolator) cycle time. Every active technology object consumes computation time inside the IPO task; the cumulative load determines whether the project can run at the configured cycle or whether SCOUT must auto-degrade the cycle time at project download.

Recommended starting points when sizing the IPO and servo cycles for a D410-2:

Servo Cycle (Tservo) IPO Cycle (T_IPO) Typical Use Case
125 µs 125 µs High-dynamic servo applications, light axis count (≤ 3 real axes)
250 µs 250 µs General-purpose servo with 4–6 real axes
500 µs 500 µs Slow positioning, many axes, or D410-2 + virtual/following axes
1 ms 2 ms Heavy axis count, multiple virtual and external encoder axes
2 ms 4 ms Edge cases only – verify in SIZER

The empirical rule of thumb is that doubling the axis count or doubling the number of virtual / following axes typically forces a 2× relaxation of the IPO cycle to stay within the controller's load budget. The D410-2, in particular, has been reported to struggle at 125 µs IPO when the axis count exceeds three; users should treat 250 µs as a safe default for multi-axis D410-2 projects.

6. Application Pattern: Master-Follower with Communication Drop Redundancy

A common reason for choosing a virtual axis is to implement a master-follower relationship in which the follower controller can continue executing a defined motion program when the master controller disappears from the network. The pattern is widely used in:

  • Conveyor synchronization where multiple SIMOTION controllers share a virtual line shaft
  • Cross-coupled gantry and rotary knife systems
  • Web handling and printing lines where loss of master signal must not stall the line

Reference architecture with two SIMOTION controllers (Simotion 1 as follower, Simotion 2 as master):

SIMOTION D410-2 (Master) Simotion 2 Real Servo Axis 1..N SIMOTION D410-2 (Follower) Simotion 1 Virtual Axis + Real Axes PROFINET IRT / PROFIBUS DP cyclic setpoint exchange watchdog = link loss timeout Virtual Axis Master Generator on Follower side

The follower's virtual axis is configured as the master for its real axes via _setMasterAxis() or by direct interconnection in SCOUT. The master setpoint is normally fed through PROFINET IRT or PROFIBUS DP from Simotion 2. When Simotion 2 fails or is powered off, the link-loss watchdog expires and the follower switches the virtual axis into an internal profile generator that ramps the line shaft at the last known velocity (or a configurable deceleration profile) until Simotion 2 returns.

Key configuration elements to implement this pattern:

  1. Configure a TO_VirtualAxis on Simotion 1 (the follower).
  2. Configure the real axes as following axes with the virtual axis as the master.
  3. Set the master setpoint source to the cyclic PROFINET/PROFIBUS variable (typically a DINT containing the master position or velocity).
  4. Define a link-loss monitoring time (for example, three times the bus cycle) on the receiving side.
  5. Program a fault reaction in the follower that, on link loss, switches the virtual axis from external setpoint to a local profile generator and either continues at last velocity or decelerates according to a safety profile.
  6. Re-enable external master mode automatically once the cyclic communication is restored and the master position is re-synchronized (typically via setMasterAxisPosition() or homing offset).
Safety note: If human operators can be present in the hazardous area, the link-loss transition must drive the machine into a safe-stop state per ISO 13849-1 / IEC 62061. Do not rely on the virtual axis to maintain safe motion when the master has failed unexpectedly; the safety function must be implemented through SIMATIC F-CPU or SINAMICS Safety Integrated on the drive side.

7. Alternative Topologies Worth Considering

Before committing to the virtual-axis-master pattern, evaluate the alternatives:

Topology Advantage Disadvantage
Single SIMOTION with all axes No inter-controller sync; no link-loss logic required Higher per-controller axis count; possible cycle-time degradation
PROFINET IRT with shared virtual axis on a higher-level SIMOTION Centralized line-shaft control, deterministic Master is a single point of failure
CU320-2 controlled by D410-2 (book-size cascaded) Scales to six or more real axes; separates line-shaft logic from drive control Extra hardware; two engineering toolchains to maintain
External encoder as master Reduces dependency on software-side master signal Hardware cost; mechanical encoder wear
SIMOTION Task Synchronization via _setSynchronousAxis() No inter-controller bus needed Only works inside a single SIMOTION

For installations where link-loss tolerance is required but a master CPU is still preferable, the pattern described in the SIMOTION D410-2 Function Manual and the SIMOTION Communication Manual is the standard approach.

8. Configuration Procedure in SIMOTION SCOUT

  1. Insert a TO_VirtualAxis. Right-click the axes node → Insert New Object → Axis → Virtual Axis. Assign a meaningful name (for example, Axis_Virtual_LineShaft).
  2. Configure the limits. Set TypeOfAxis.NumberOfDataSets, Limits.MaxVelocity, Limits.MaxAcceleration, and Limits.MaxJerk to match the mechanical envelope.
  3. Define the master setpoint source. In the Default Master tab, select either a cyclic interface variable (PROFINET/PROFIBUS) or an internal PROGRAM source.
  4. Set the real axes as following axes. On each real servo or positioning axis, navigate to Default Master → Master Axis and choose the virtual axis you just created.
  5. Implement the link-loss watchdog. In the user program, monitor the cyclic life sign and trigger the fallback profile generator on expiry.
  6. Compile and download. SCOUT will report any axis-count or licensing violation at compile time. A successful build means the firmware-level budget is respected.

The following ST snippet illustrates the link-loss reaction logic:

// Cyclic task on Simotion 1
IF gbo_master_lifesign_ok = FALSE THEN
    // Last known velocity latched at time of link loss
    Axis_Virtual_LineShaft.SetpointGenerator.Mode := SETPOINTGEN_MODE_RAMP;
    Axis_Virtual_LineShaft.SetpointGenerator.Velocity := lreal_last_master_velocity;
    Axis_Virtual_LineShaft.SetpointGenerator.Acceleration := 100.0; // uu/s^2
    Axis_Virtual_LineShaft.SetpointGenerator.Deceleration := 50.0;  // controlled ramp-down
ELSE
    // External master in sync
    Axis_Virtual_LineShaft.SetpointGenerator.Mode := SETPOINTGEN_MODE_MASTER;
END_IF;

9. Sizing and Verification

Before committing to the hardware and firmware combination, run the sizing tool:

  1. Launch SIMOTION SIZER.
  2. Select the D410-2 controller (DP or PN variant).
  3. Add the motor part numbers, gear ratios, and mechanical envelope.
  4. Add the technology objects: real servo axes, virtual axes, following axes, and output cams.
  5. SIZER calculates the resulting IPO and servo cycle times and flags any combination that exceeds the controller's compute budget.

After the project is downloaded, verify the runtime behavior with the trace function in SCOUT:

  • Trace the virtual axis PositioningState.ActualPosition and ActualVelocity.
  • Trace the master setpoint on the cyclic interface to confirm continuity.
  • Simulate a master failure by powering off Simotion 2 and confirm that the follower's virtual axis enters the ramp-down profile within the configured watchdog time.

10. Fault Diagnosis Matrix

Symptom Likely Root Cause Verification / Fix
SCOUT rejects project with "too many real axes" error Firmware version on the D410-2 is older than V4.4 HF11 Update firmware; cross-check with the SIMOTION D410-2 release notes
IPO cycle time warning during project download Cumulative load exceeds controller budget Reduce axis count, raise IPO time, or move to D425/D435
Follower stalls immediately after master power-off Link-loss watchdog not configured Configure cyclic life sign and watchdog in SCOUT / user program
Virtual axis position drifts from master Position synchronization not performed on reconnection Call setMasterAxisPosition() after lifebeat restoration
Drive cliq fault on additional SINAMICS On-board drive cliq port limit exceeded Cascade to CU320-2 or CU310-2 for additional axes
Compiles fine, but commissioning fails with licensing error License key for the active firmware branch missing Generate a new license key via the SIMOTION Web License Manager

11. Engineering Checklist

  • Confirm the D410-2 firmware release (V4.4 HF11 minimum for >3 real axes; V5.x recommended for new projects).
  • Confirm the count of real axes (servo + positioning + speed-controlled) before counting any virtual axis.
  • Run SIZER with the projected TO count, including virtual axes, external encoder axes, and following axes.
  • Configure the IPO cycle so that the resulting utilization stays below approximately 70% to leave headroom for diagnostics and trace.
  • Validate the link-loss transition with a physical master power-off test; do not rely solely on simulation.
  • Maintain a safety function independent of the virtual axis master signal.

FAQ

Does a virtual axis count toward the three-axis limit of a SIMOTION D410-2?

No. Virtual axes are software-only technology objects (TO_VirtualAxis) and are excluded from the real-axis budget of every SIMOTION controller, including the D410-2. They consume IPO task CPU time but do not affect the axis ceiling.

How many real axes can a D410-2 drive?

More than three, provided the firmware is V4.4 HF11 or newer. Field-tested projects have documented six real SINAMICS Servo objects driven from a D410-2 DP/PN via an external CU320-2 controlling S120 book-size motor modules. The exact ceiling is firmware-dependent; verify against the SIMOTION D410-2 Function Manual for the active firmware branch.

What is the recommended IPO cycle time on a D410-2 with virtual and following axes?

Start at 250 µs for a 4–6 real axis configuration with additional virtual and following axes. Use 125 µs only for a small axis count (≤ 3 real axes) and high-dynamic servo applications. Always confirm with SIZER.

Can I cascade a CU320-2 with book-size motor modules to a D410-2?

Yes. The D410-2 acts as the SIMOTION controller; the CU320-2 holds the booksize firmware on its CF card and exposes the SINAMICS Servo objects over drive cliq. This is the documented path to scale beyond the D410-2 on-board drive cliq port count.

How do I keep a follower running when the master SIMOTION controller fails?

Configure a virtual axis on the follower, declare it the master of the real axes, and feed it normally from the cyclic PROFINET IRT or PROFIBUS setpoint of the master. Implement a link-loss watchdog that switches the virtual axis into a local profile generator on master timeout, and re-synchronize position automatically when communication returns.

Back to blog