S7-1200 Axis Simulation Failure in TIA Portal V16 Motion Control

David Krause10 min read
S7-1200SiemensTroubleshooting
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

S7-1200 Axis Simulation Failure in TIA Portal V16 Motion Control V7

The TIA Portal V16 axis technology object on the SIMATIC S7-1200 exposes a parameter called Simulate drive and encoder under Basic parameters → General → Simulation. Engineers who enable this flag expect PLCSIM-style offline simulation identical to what an S7-1500 controller provides. The technology object accepts the flag (the data block reports .Simulation.Mode = 1) but the axis never starts. The Commissioning control panel stays grey, the Diagnostics tab shows no active items, and the axis DB reports .StatusBits.AxisSimulation = 0 together with .StatusDrive.CommunicationOK = 0. The root cause is an architectural limitation of the S7-1200 Motion Control runtime, not a configuration defect.

1. Problem Statement

Symptom pattern observed on a CPU 1214C DC/DC/DC with a SINAMICS V90 PN servo drive configured as a PROFIdrive axis on Technology Object TO_Axis_1:

  • TO_Axis_1.Simulation.Mode = 1 (constant, set by configuration)
  • TO_Axis_1.StatusBits.AxisSimulation = 0 (runtime never enters simulated state)
  • TO_Axis_1.StatusDrive.CommunicationOK = 0 (no PROFIdrive telegram exchange)
  • TIA Portal Commissioning → Monitor all: Master Control → Activate button is greyed out
  • Axis control panel does not respond to MC_MoveJog, MC_MoveVelocity, or MC_MoveAbsolute commands

The configuration is committed to the CPU without errors. No diagnostic buffer entry is generated. The user-visible failure is a silent one — the simulation flag is persisted but the runtime state never propagates.

2. Root Cause: S7-1200 Does Not Support PLCSIM for Motion

Per the official Siemens SIMATIC S7-1200 manual entry SIMATIC S7 S7-1200 Programmable controller (ID: 109741593), the S7-1200 Motion Control runtime does not support simulation in PLCSIM or any offline simulation environment. The Simulate drive and encoder flag in the technology object has a different meaning on S7-1200 than on S7-1500:

Platform Meaning of "Simulate drive and encoder" PLCSIM Support
S7-1500 (Motion Control V6.0+) Simulate the entire axis behavior offline in PLCSIM without a real CPU Yes — full offline simulation
S7-1200 (Motion Control V7.0) Suppress physical drive and encoder signals; the CPU is required, but no real drive/encoder hardware is needed No — physical or virtual CPU must be online

The Siemens documentation specifies: "The simulation flag on the S7-1200 Motion means that you can simulate with a PLC (which has to be there) the drive and encoder. You need a PLC and then you can simulate your drive and encoder. No real drive or encoder needed here." This statement appears in the S7-1200 Motion Control V6.0 to V7.0 in TIA Portal V16 manual under section 5.4.3.1 Configuration → General → Simulation.

Critical limitation: Simulation mode is only valid for the Servo Axis object. PROFIdrive and analog axes accept the flag; PTO axes ignore it (Simulation.Mode = 0 by definition). Pulse-train output axes cannot be simulated — they require a physical PTO signal generator.

3. Why the Status Bits Stay at Zero

The simulation state machine on S7-1200 Motion Control V7.0 requires the runtime to enter a simulated PROFIdrive or analog communication channel. On a real CPU in RUN mode, the simulation mode is only effective when:

  1. The technology object is a Servo Axis with PROFIdrive telegram (e.g., Siemens telegram 1, 2, 3, 5, 102, 105, or 106) or an analog ±10 V interface.
  2. The PLC is physically online with the project (no PLCSIM instance).
  3. The drive telegram is enabled via StatusDrive.CommunicationOK = 1; in simulation this bit is set by the runtime itself, not by a real telegram.

When the CPU is running on a PLCSIM instance, the runtime never advances the simulation state machine because PLCSIM cannot virtualize the cyclic PROFIdrive/analog channel the motion firmware expects. The .StatusBits.AxisSimulation remains 0 because the state transition Simulation.Mode = 1 → AxisSimulation = 1 is gated by a runtime check that fails in PLCSIM.

4. Functional Difference: S7-1200 vs. S7-1500 Simulation

Feature S7-1200 S7-1500
PLCSIM offline simulation of axis Not supported Supported (Motion Control V6.0+)
Real PLC + simulate drive/encoder Supported Supported
Simulate drive/encoder without PLC Not possible Possible via PLCSIM
PTO axis simulation Not possible Limited; depends on firmware
Required for commissioning test Real CPU + real/virtual drive PLCSIM or real CPU

If you need full offline simulation (no real CPU, no real drive), you must migrate the axis project to an S7-1500 CPU (e.g., CPU 1511-1 PN, CPU 1515-2 PN) and use TIA Portal V16 with PLCSIM V16 or later. The PLC and HMI programs are largely portable; only the technology object configuration and the motion FB parameter mapping need revalidation.

5. Prerequisites for S7-1200 "Simulate Drive and Encoder" Mode

To use the S7-1200 simulation flag correctly (which still requires a real PLC), verify each item before commissioning:

  1. CPU firmware: S7-1200 firmware V4.4 or V4.5 (Motion Control V7.0 is bundled with TIA Portal V16 and supports CPU firmware ≥ 4.4). The CPU 1214C DC/DC/DC with order number 6ES7214-1AG40-0XB0 is a typical target.
  2. TIA Portal: V16 Update 7 or later (V16.0 base may exhibit UI inconsistencies on the axis commissioning panel).
  3. Technology object type: Servo Axis only — POS or TO_ServoAxis. PTO axis (TO_PTO) ignores the flag.
  4. Drive interface: PROFIdrive over PROFINET (e.g., SINAMICS V90 PN, S210, S120) OR analog ±10 V interface (e.g., S210 with ANA module, or third-party analog servo).
  5. Online connection: PG/PC connected to CPU via PROFINET or Ethernet; the project must be downloaded and the CPU in RUN mode.
  6. Drive hardware: The drive does not need to be physically present when simulation is active — the runtime substitutes the position feedback and drive status internally.

6. Step-by-Step: Configuring Simulation Mode Correctly on S7-1200

  1. In TIA Portal V16, open the project and navigate to the Technology objects folder.
  2. Open the Servo axis technology object (e.g., TO_Axis_1).
  3. In the configuration tree, expand Basic parameters → General.
  4. Under Simulation, select "Simulate drive and encoder".
  5. Compile the project (Ctrl+B or right-click → Compile → Hardware and Software).
  6. Download the configuration to the real S7-1200 CPU (online → Download to device).
  7. Set the CPU to RUN mode. Verify the RUN LED is solid green and the ERROR LED is off.
  8. Open the technology object's Commissioning panel in TIA Portal.
  9. Click Monitor all to activate online monitoring of the axis DB.
  10. In the Master Control section, click Activate. The button must be enabled — if it is still greyed out, the PLC is not online with the project.
  11. Use the jog controls to test MC_MoveJog (positive and negative), then test MC_MoveVelocity and MC_MoveAbsolute from a watch table or motion FB.
  12. Verify in the axis DB:
    • .Simulation.Mode = 1
    • .StatusBits.AxisSimulation = 1 (must transition to 1 within 1–2 seconds of CPU RUN)
    • .StatusDrive.CommunicationOK = 1 (runtime-internal OK; real telegram exchange is suppressed)
    • .StatusBits.StandStill = 1 (when no motion command active)
If the CPU is running on PLCSIM V16 instead of a real S7-1200, step 10 will fail — the Activate button stays greyed out regardless of online state, and steps 11–12 produce no motion. This is the expected behavior; PLCSIM cannot virtualize the motion runtime on S7-1200.

7. Verification Checklist

Use this checklist to confirm simulation mode is active on S7-1200:

Check Expected Value Pass Criteria
TO_Axis_1.Simulation.Mode 1 Set by configuration; must equal 1
TO_Axis_1.StatusBits.AxisSimulation 1 Must be 1 within 2 s of CPU RUN
TO_Axis_1.StatusDrive.CommunicationOK 1 Runtime sets this internally in simulation
TO_Axis_1.StatusBits.Enable 1 Axis enabled via MC_Power
Commissioning → Master Control Active Button must enable Jog controls
MC_MoveJog response Position increments Actual position changes in axis DB
No diagnostic buffer errors No motion alarms Check CPU diagnostic buffer

8. Migration Path: Moving the Project to S7-1500 for Full PLCSIM Support

When offline simulation is a hard requirement (training, factory acceptance testing, virtual commissioning), the only sustainable path on a Siemens platform is migration to S7-1500:

  1. Add an S7-1500 CPU to the TIA Portal project (e.g., 6ES7511-1AK02-0AB0 CPU 1511-1 PN).
  2. Copy the technology object configuration. Most parameters transfer directly; verify encoder scaling, modulo settings, and dynamic limits.
  3. Update the hardware catalog reference for the new CPU.
  4. Reassign the device PROFINET name and IP address.
  5. Open PLCSIM V16, instantiate the S7-1500, and download the project.
  6. Enable Simulate drive and encoder on the S7-1500 axis TO. The runtime will set .StatusBits.AxisSimulation = 1 in PLCSIM and the Commissioning panel becomes fully interactive.

Refer to the TIA Portal V21 S7-1200 Motion Control commissioning documentation for axis control panel behavior on the latest firmware.

9. Troubleshooting Matrix

Symptom Likely Cause Resolution
Simulation.Mode = 0 despite flag set Axis is PTO type, not Servo Convert axis to Servo (PROFIdrive or analog)
AxisSimulation = 0 with Mode = 1 CPU running on PLCSIM instance Use real S7-1200 CPU or migrate to S7-1500
Commissioning Activate button greyed out PG/PC not online with CPU, or PLCSIM Establish online connection; verify PLC identifier
Diagnostic event 0xE801 / motion alarm Drive telegram not configured Assign correct Siemens telegram (1, 2, 3, 5, 102, 105, 106) in drive and TO
CommunicationOK = 0 with simulation on Drive name or IP mismatch in PROFINET topology Verify device name assignment; use PRONETA or TIA Topology view
Jog command executes but no motion Axis not enabled (MC_Power not active) Call MC_Power with Enable = TRUE persistently

10. Common Field Mistakes

  • Misreading the simulation flag: Engineers migrating from S7-1500 expect PLCSIM offline simulation. On S7-1200 the flag only suppresses drive hardware requirements — the CPU itself must be online.
  • Configuring a PTO axis: The flag is silently ignored. Check the TO type under Basic parameters → General → Drive type. PTO axes cannot be simulated.
  • Running TIA Portal in a VM: Even a real S7-1200 CPU connected over the network behaves identically when the project is downloaded directly. The VMware layer only affects PLCSIM licensing and routing, not the on-line behavior with a real CPU. This is not the cause of the greyed-out buttons when PLCSIM is the target.
  • Trial license limitations: TIA Portal V16 Trial license does not block axis simulation on a real CPU. It may limit the project runtime to 21 days; download a new project before expiration.

11. Firmware and Software Compatibility

Component Required Version Notes
TIA Portal V16 Update 7+ (V16.0 base may have UI bugs) V17, V18, V19 also supported for S7-1200 with matching Motion Control versions
S7-1200 CPU firmware V4.4 or V4.5 Motion Control V7.0 requires CPU firmware ≥ 4.4
Motion Control version V7.0 (with TIA Portal V16) V6.0 supported on TIA Portal V15.1 with CPU firmware V4.2–V4.4
PLCSIM V16+ for S7-1500 simulation PLCSIM cannot simulate S7-1200 motion
Drive firmware (V90 PN) V1.04 or later recommended Older V90 firmware may not support all Siemens telegrams

12. Documenting the Finding for Your Project

When the team needs to communicate the limitation to stakeholders, anchor the explanation on these two facts from Siemens official documentation:

  1. S7-1200 Motion Control V7.0 manual section 5.4.3.1 explicitly states that simulation is performed with the PLC present (no real drive/encoder required), not offline.
  2. PLCSIM does not virtualize the S7-1200 motion runtime. S7-1500 PLCSIM does, and this is the canonical Siemens-supported path for offline virtual commissioning.

Why does my S7-1200 axis simulation show .StatusBits.AxisSimulation = 0 even though Simulation.Mode = 1?

The S7-1200 Motion Control runtime cannot enter the simulated state on a PLCSIM instance. The Simulation.Mode flag is a configuration flag persisted in the axis DB, but the state transition to AxisSimulation = 1 is gated by a runtime check that fails when the CPU is running on PLCSIM. Use a real S7-1200 CPU in RUN mode, or migrate to an S7-1500 CPU for full PLCSIM offline simulation.

Does TIA Portal V16 PLCSIM support S7-1200 motion axis simulation?

No. Per Siemens ID 109741593 and the S7-1200 Motion Control V7.0 manual section 5.4.3.1, PLCSIM does not virtualize the S7-1200 motion runtime. Only the S7-1500 motion runtime supports PLCSIM offline simulation. The S7-1200 "Simulate drive and encoder" flag suppresses the need for a real drive and encoder but still requires a real, online PLC.

\h3>Can I simulate a PTO axis on S7-1200?

No. The Simulation.Mode parameter is reserved for Servo Axis objects using PROFIdrive or analog drive interfaces. A PTO axis (TO_PTO) ignores the simulation flag and reports Simulation.Mode = 0. To test a PTO axis, you must connect a real drive capable of interpreting the pulse-train signal (step/direction or CW/CCW), or use the S7-1200 high-speed counters in the CPU's onboard I/O to validate the pulse output.

\h3>What is the minimum firmware version for the Simulate drive and encoder flag to work on S7-1200?

S7-1200 CPU firmware V4.4 or V4.5 paired with Motion Control V7.0 (bundled with TIA Portal V16) is the canonical configuration. Motion Control V6.0 (TIA Portal V15.1) supports the flag with CPU firmware V4.2 through V4.4. The runtime check that activates AxisSimulation = 1 is present in both versions.

\h3>How do I find the official Siemens documentation about S7-1200 axis simulation?

Open the S7-1200 Motion Control V7.0 manual in the TIA Portal V16 help system (F1 on the technology object), then search for "Simulation" and navigate to section 5.4.3.1 Configuration → General → Simulation. The companion Siemens support entry is ID 109741593 on the Siemens Industry Online Support portal, which contains the cross-reference between S7-1200 and S7-1500 simulation behavior.

Back to blog