1. Problem Statement
In TIA Portal V13, the Start simulation command (the toolbar icon and the Online > Simulation menu item) is rendered unavailable — typically grayed out — when the active project contains an S7-1200 CPU (firmware V1.x through V4.x). Selecting the S7-1200 device and inspecting the right-click context menu shows the Simulation entry disabled. The same option is fully available for an S7-1500 CPU in an otherwise identical TIA Portal V13 installation.
Engineers upgrading from STEP 7 V5.x with S7-PLCSIM or from earlier TIA Portal projects frequently assume the issue is a license defect, a missing HSP (Hardware Support Package), or a project corruption. In almost every case, the field-proven root cause is not local to the project file — it is a structural limitation of the S7-PLCSIM V13 build that shipped with TIA Portal V13.
2. Root Cause Analysis
S7-PLCSIM V13 is delivered as part of the TIA Portal V13 installation media (DVD/SSF). The V13 build of the simulator contains a device-class filter: it only registers itself as a valid online target for CPU types whose firmware description files expose a PLCSimInterface entry. At V13, that entry is present for:
- S7-1500 / ET 200SP CPU firmware V1.5 and V1.6
- S7-1500 Software Controller (WinAC RTX F)
- SINUMERIK 840D sl and MC BooT (limited scope)
The S7-1200 firmware package in TIA Portal V13 (HSP for V4.0/V4.1) does not register a PLCSim interface. The simulator's DLL therefore declines the start-simulation handshake, and the TIA Portal UI marks the entry inactive.
2.1 Why S7-1200 simulation was added later
Siemens introduced native S7-1200 simulation in S7-PLCSIM V13 SP1 Update 4 (limited set of 1200 CPUs) and broadened it in S7-PLCSIM V14, where the V14 PLCSIM binary simulates S7-1200 CPU firmware V4.1/V4.2 in addition to S7-1500. The V13 base release predates that work, which is why the option is unavailable out of the box.
2.2 License vs. binary scope
Two distinct things are sometimes confused when the menu is grayed out:
| Symptom | Cause | Fix |
|---|---|---|
| Simulation menu present but click returns "license not found" | S7-PLCSIM license missing or expired | Transfer a valid PLCSIM license (Trial, Single, or Floating) via Automation License Manager |
| Simulation menu grayed out regardless of CPU selection | S7-PLCSIM not installed or HSP not loaded | Run TIA Portal setup, add S7-PLCSIM component, then load matching HSP |
| Simulation menu grayed out only for S7-1200, available for S7-1500 | V13 binary scope — see Section 2 | Apply V13 SP1 Update 4 (if available) or migrate to TIA Portal V14+, or use the S7-1500 simulation porting workaround described in Section 4 |
The third row is the case this article solves.
3. Quick Diagnosis Procedure
Run the following checks before committing to a workaround path:
- Verify TIA Portal version. Open TIA Portal > Help > About. Confirm the version is V13.0, V13.0 SP1, or V13.0 SP1 Update ?. Anything below V13 SP1 Update 4 cannot simulate S7-1200 in the released binary.
- Verify S7-PLCSIM installation. Control Panel > Programs > Siemens Automation > S7-PLCSIM V13.x. Confirm the version (e.g. V13.0 + Update 4).
- Verify the license. Start Automation License Manager. Confirm a valid PLCSIM license is present (Trial, Single, or Floating) and not expired.
- Verify the project CPU. In the project tree, expand PLC_1 > Device configuration. Read the Order number (6ES7 2xx-1xxxx-xxxx) and Firmware field. Confirm the CPU is a true S7-1200, not an ET 200SP CPU with an S7-1500 backplane.
- Right-click the CPU > Simulation. If still grayed out after all of the above, you are in the V13 binary scope case. Proceed to Section 4.
4. Workaround: Simulate S7-1200 Logic on a Virtual S7-1500
The most reliable field-tested workaround in TIA Portal V13 is to port the S7-1200 program to an S7-1500 CPU inside a second project, simulate there, and validate behavior. The S7-1500 simulator binary supports the bulk of the S7-1200 instruction set, including the IEC 61131-3 base language (LAD, FBD), most standard timers, counters, edge detection, and arithmetic. A small set of items does not transfer cleanly; Section 5 lists them.
4.1 Prerequisites
- TIA Portal V13 Professional (required for S7-1500 targets). TIA Portal V13 Basic/Comfort does not include S7-1500 device support and therefore cannot host the simulator target.
- A valid S7-PLCSIM V13 license already installed (Section 3 step 3).
- A copy of the S7-1200 source project (.ap13) and at least one S7-1500 device added to the new simulation project.
4.2 Step-by-step porting procedure
- Create the simulation project. In TIA Portal V13 Professional, choose Create new project > Programmable controller > S7-1500. Select an S7-1500 CPU model with comparable I/O count and work-memory headroom; common picks for a 1214C port are 6ES7 511-1AK02-0AB0 (CPU 1511-1 PN) or 6ES7 515-2AM02-0AB0 (CPU 1515-2 PN).
- Copy program blocks. In the project tree, select the S7-1200 Program blocks folder (OB1, FB, FC, DB, UDT). Use Copy (Ctrl+C). Switch to the new S7-1500 project, select Program blocks, Paste. TIA Portal performs an automatic block-family conversion during paste; FB/FC/OB/DB are converted in place.
- Copy tag tables. Copy the PLC tags and the HMI tag table from the S7-1200 project. Standard IEC tags transfer 1:1.
- Re-create the hardware configuration. The S7-1500 and S7-1200 racks are not pin-compatible. Manually map the S7-1200 signal board and SM modules to functionally equivalent S7-1500 cards, or — for a logic-only test — disconnect the hardware and leave I/O symbolic. Section 5.1 details symbolic-only simulation.
- Compile. Project tree > PLC_1 > Compile > Software (rebuild all). Inspect the Info > Compile window. Most LAD/FBD blocks compile clean. STL blocks do not — see Section 5.
-
Resolve compile warnings. Any entry flagged with a yellow warning typically indicates an instruction mismatch (e.g.
SET,SAVE,L STWSTL-only operations) or a missing library. Address each before continuing. - Start simulation. With the S7-1500 selected, click the Start simulation icon or press Alt+Q. The S7-PLCSIM V13 panel appears; the S7-1500 instance shows RUN.
- Download to the virtual CPU. Online > Download to device. Select the PLCSIM interface. TIA Portal downloads the converted program.
- Validate behavior. Toggle inputs via the PLCSIM panel; observe DB values in Monitor & modify; trigger HMI tags if a WinCC RT instance is also running (Section 6).
5. Compatibility Matrix: S7-1200 → S7-1500 Simulation Port
The matrix below summarizes what transfers cleanly from an S7-1200 program to a virtual S7-1500 in TIA Portal V13, what requires manual rework, and what cannot be simulated at all.
| Element | Status on S7-1500 simulator | Notes / Action |
|---|---|---|
| LAD (Ladder) | Compiles and runs | Direct transfer |
| FBD (Function Block Diagram) | Compiles and runs | Direct transfer |
| STL (Statement List) | Rejected | S7-1500 firmware V1.5/1.6 drops STL; S7-1200 firmware V4.x accepts STL only as import for migration. Convert STL networks to LAD or FBD before porting |
| SCL (Structured Control Language) | Compiles and runs | Watch for EN/ENO differences in user FBs; the S7-1500 ENO semantics for some math FBs differ from S7-1200 |
| GRAPH | Compiles and runs (if licensed) | Requires S7-GRAPH V13 license on the engineering station |
| Timers (TP, TON, TOF, TONR) | Compiles and runs | Identical IEC behavior |
| Counters (CTU, CTD, CTUD) | Compiles and runs | Identical IEC behavior |
| Edge detection (R_TRIG, F_TRIG) | Compiles and runs | Identical |
| Data blocks (DB) | Compiles; optimized vs standard attribute preserved | If DB was non-optimized in 1200, leave non-optimized in 1500 to keep HMI compatibility |
| Multi-instance FBs | Compiles and runs | S7-1500 supports multi-instances natively |
| User-defined types (UDT) | Compiles and runs | Direct transfer |
| System clocks / OB1 cyclic interrupt (OB30…OB38) | Compiles; cycle times configurable | S7-1500 minimum cyclic interrupt is 500 µs; S7-1200 minimum is 1 ms. Lower your S7-1200 cycle before porting or accept the 1500 floor |
| PROFINET device configuration (real I/O) | Not simulated in PLCSIM V13 | Use symbolic I/O (Section 5.1) or simulate with the PLCSIM I/O mapping tool |
| Motion Control FBs (MC_*) | Compiles but does not execute on PLCSIM | Stub the motion FBs with manual input simulation; or run the S7-1500 program against a real SINAMICS drive |
| Web server pages (S7-1200 Web2) | Not available on S7-1500 PLCSIM | Skip during simulation |
| Recipes / data logs to SD card | Compiles; PLCSIM has no real card | Use DataLogSave/Read against the engineering workstation file system path configured in PLCSIM |
| PROFINET I-device / I-slave | Not simulated | Validate in hardware |
| Fail-safe F-runtime blocks (F-FB, F-DB) | Restricted | S7-PLCSIM V13 can simulate F-runtime group scheduling but cannot validate safety signature; verify on hardware |
5.1 Symbolic-only simulation pattern
For early-stage logic validation (before wiring hardware), strip the S7-1200 I/O and replace it with symbolic tags driven from a forced-value table:
- Open the S7-1200 project. In PLC tags, define a new tag table SIM_IO with BOOL tags
SIM_I0…SIM_I7andSIM_Q0…SIM_Q7. - Replace the addresses
%I0.0–%I0.7with the SIM_I* tags and%Q0.0–%Q0.7with SIM_Q* tags throughout the program. - Compile, then port to the S7-1500 simulator project as in Section 4.2.
- In the S7-1500 simulator project, open Monitor & modify on the SIM_IO table. Tick Modify to drive outputs and force inputs.
5.2 STL conversion recipe
STL must be converted because S7-1500 firmware V1.5/V1.6 removes the STL editor and runtime. Two pragmatic approaches:
-
Automatic: In the S7-1200 project, select the STL block, right-click Compile > LAD/FBD source. TIA Portal generates an equivalent LAD or FBD source for blocks that have no STL-only construct (e.g.
UC,CCconditional calls, accumulator-based bit manipulation). -
Manual: Re-author in LAD/FBD or SCL. Convert accumulator patterns such as
L MW10 / T MW12to explicit move blocks; convertSET/CLRpatterns to coil assignments.
6. Verifying Simulation Behavior
Once the converted program is running inside PLCSIM V13, validate the following in order:
- CPU state: PLCSIM panel shows RUN; the diagnostic buffer contains the startup completed event. Online > Online & diagnostics > Diagnostics buffer in TIA Portal should show no red entries.
-
Cyclic tick: Monitor & modify on a clock-bit tag (e.g.
Clock_1Hz) shows the bit toggling every 1000 ms ±5%. - Block consistency: Project tree > PLC_1 > Program blocks. All blocks display green status. Any yellow/red icon indicates a missing reference, an unsupported instruction, or an FB signature mismatch.
- Force table: Apply a known input, observe expected output within one scan.
- Watchdog / OB1 timing: Trigger the longest cyclic path. Confirm OB1 cycle stays under the configured maximum cycle time (default 150 ms for S7-1500).
- HMI coupling (optional): If the project includes WinCC RT or a Comfort panel simulation, start WinCC RT in parallel and confirm tag polling on the symbolic points from Section 5.1.
7. Alternative Paths If Workaround Is Not Acceptable
If porting to S7-1500 simulation is not feasible (for example, the S7-1200 program relies on Web2 pages, recipes, or S7-1200-only FBs), consider one of the following.
7.1 Upgrade TIA Portal
Migrate to TIA Portal V14 (or V15/V15.1/V16/V17 as applicable). Each release added deeper S7-1200 simulation coverage. V14 PLCSIM simulates S7-1200 CPU firmware V4.1/V4.2; V15.1 added V4.3 coverage; V16 added V4.4. There is no in-place upgrade from V13 — the project is opened in the new TIA Portal and prompted to upgrade; backup the .ap13 first. License requirements are unchanged.
7.2 S7-PLCSIM V13 SP1 Update 4
Siemens released incremental service packs for V13. SP1 Update 4 (and a few later UBs in V13's extended support window) extend the simulator's binary scope to include a subset of S7-1200 CPUs. Confirm availability via the Siemens Industry Online Support entry for TIA Portal V13 SP1; do not assume an Update X is installed unless the About dialog and the Automation License Manager both reflect it.
7.3 Real hardware loopback
If the goal is to validate HMI/SCADA behavior rather than logic, run the program on a physical S7-1200 (e.g. 6ES7 212-1BE40-0XB0 CPU 1212C AC/DC/RLY) on the bench, with input switches wired to a 24 V source and outputs to LEDs. PROFINET, Web2, and recipe behavior are all authentic.
7.4 Third-party simulators
PLCSimulator from IBHsoftec, NetToPLCSim, S7 Simulation from MHJ-Software, and CODESYS-based soft-PLCs (when paired with an S7-1200-compatible runtime) offer partial S7-1200 simulation on TIA Portal V13 hosts. They are not from Siemens; verify protocol conformance and license terms before deploying for validated work.
8. Troubleshooting Matrix
| Symptom | Likely cause | Remedy |
|---|---|---|
| Simulation grayed out for S7-1200; S7-1500 OK | V13 binary scope | Section 4 workaround or upgrade |
| Simulation grayed out for both 1200 and 1500 | S7-PLCSIM not installed / HSP missing | Run TIA setup, add PLCSIM, load matching HSP, restart |
| Simulation starts but "License not found" pops up | PLCSIM license missing | Activate license in ALM; confirm not borrowed from another host |
| Compile errors after pasting blocks into 1500 project | STL-only constructs, unsupported FBs | Section 5.2 / Section 5 matrix |
| PLCSIM disconnects after a few minutes | Antivirus scanning virtual adapter | Add Defender/AV exclusion for PLCSIM directory and adapter |
| WinCC RT cannot see PLCSIM tags | HMI connection points to wrong interface | Configure HMI connection to PLCSIM, subnet "PLCSIM", IP of virtual CPU |
| DB values appear correct in monitor but HMI shows "!" | DB non-optimized ↔ optimized mismatch | Match DB attribute to HMI expectation; rebuild DB |
| Motion FB executes in 1200 project but not in 1500 simulator | MC_* FBs not simulated | Stub with manual inputs in Section 5.1 fashion; verify motion on real drive |
| F-runtime group faults | Safety signature cannot be generated against simulator | Run F-blocks on real safety CPU for final validation |
9. Best Practices for S7-1200 Simulation Strategy
- Design for the target, simulate for coverage. Maintain the S7-1200 source project as the production artifact. Generate the S7-1500 simulation project from it only when needed.
- Keep STL out of new code. STL prevents simulation on V13 PLCSIM and complicates migration to V14+. Use LAD, FBD, or SCL for any new function.
- Avoid S7-1500-only features in shared logic. Features such as symbolic-optimized-only access patterns, motion FBs, and PROFINET I-device pull the simulation port away from the production target.
-
Version the simulation project separately. Tag the simulation project with the same naming convention plus a
_SIMsuffix so production engineers cannot accidentally download the S7-1500 simulation image to a real S7-1200. - Pin TIA Portal V13 Update level. Document the exact V13 build (e.g. V13.0 SP1 Update 9) in the project header; rebuild reproducibility depends on it.
- Validate I/O with a forced-value table first. Force inputs symbolically, confirm logic, then validate against real hardware in a small bench loop.
- Maintain a hardware bench for final validation. Simulator covers logic; it does not cover field wiring, sensor debounce, electrical noise, EMC, or thermal drift.
10. Field Commissioning Notes
Once the program has been validated in PLCSIM V13 against an S7-1500 simulation project, the next step is to bring the original S7-1200 program online in the field. Three checkpoints prevent a costly mismatch:
- Block signature parity. Compare FB/FC signatures between the S7-1200 master project and the S7-1500 simulation port. If signatures drifted because of an automatic conversion, real S7-1200 firmware will refuse to download or will warn of interface differences.
- Watchdog budget. Confirm OB1 cycle time in the S7-1200 firmware (max 150 ms default) is consistent with the cycle observed in PLCSIM. PROFINET or fast I/O on the 1200 may push the cycle above what the simulator showed.
-
I/O addressing parity. If Section 5.1 (symbolic-only simulation) was used, restore the absolute
%I/%Qaddresses before going to site. Compile the S7-1200 project; download to hardware; verify against wiring prints.
11. Quick Reference: Commands and Settings
| Action | Path / Shortcut | Notes |
|---|---|---|
| Open About dialog | Help > About | Confirm V13 build |
| Open ALM | Start > Siemens Automation > Automation License Manager | Check PLCSIM license |
| Start simulation | Alt+Q or Online > Simulation | Available only on eligible CPUs |
| Download to PLCSIM | Online > Download to device > PLCSIM interface | Select "PLCSIM" PG/PC interface |
| Open force table | Project tree > PLC_1 > Watch and force tables | Drive SIM_IO tags |
| Reset PLCSIM | PLCSIM panel > MRES | Cold restart clears DBs |
| Snapshot capture | PLCSIM panel > File > Save snapshot | Save and restore DB state for regression tests |
| Trigger OB82 (diagnostic interrupt) | PLCSIM panel > Events > Trigger diagnostic interrupt | Validate OB82 logic |
12. FAQ
Why is the simulation button grayed out for S7-1200 in TIA Portal V13?
S7-PLCSIM V13 only registers S7-1500 CPUs as valid simulation targets. The S7-1200 firmware description in V13 does not expose a PLCSim interface, so the UI disables the Simulation entry. Upgrading to TIA Portal V14 or later (which simulates S7-1200 firmware V4.1/V4.2/V4.3/V4.4 depending on version) or applying V13 SP1 Update 4 (where available) is required to enable native S7-1200 simulation. As an immediate workaround in V13, port the program to a virtual S7-1500.
Can I simulate an S7-1200 in TIA Portal V13 without changing TIA versions?
Yes — create a second project with an S7-1500 CPU (e.g. 6ES7 511-1AK02-0AB0 CPU 1511-1 PN), copy the program blocks and tag tables from the S7-1200 source into the S7-1500 project, replace STL with LAD/FBD/SCL if present, recompile, and start PLCSIM against the S7-1500 device. STL-only networks must be converted first because S7-1500 firmware V1.5/1.6 drops STL.
Do I need TIA Portal V13 Professional to use the S7-1500 workaround?
Yes. TIA Portal V13 Basic and Comfort do not support S7-1500 device configuration, so the S7-1500 simulator target cannot be created. TIA Portal V13 Professional is required.
Does the S7-1500 simulator faithfully reproduce S7-1200 motion-control behavior?
No. Motion-control FBs (MC_Power, MC_MoveAbsolute, MC_Home, etc.) compile inside the S7-1500 simulator but do not execute axis motion. Use the simulator to validate sequencing and interlocks around the MC_* calls; validate actual motion on a real S7-1500 driving a SINAMICS drive or on a real S7-1200 with its PTO/PWM outputs.
Will my S7-1200 program download and run on the S7-1500 in PLCSIM unchanged?
LAD, FBD, SCL, timers, counters, edge blocks, UDTs, and DBs transfer cleanly. STL does not — S7-1500 firmware V1.5/V1.6 removes STL. Some S7-1200-specific function blocks (recipe/data log file-system calls, Web2 pages, certain Siemens library FBs) need rework or are unsupported. Compile the ported project and resolve any warning before relying on simulation results.