PLC Programming SAPLC ProgrammingSOUTH AFRICA

compare · South Africa

Codesys vs TwinCAT vs STEP 7: soft-PLC pick

Codesys vs TwinCAT vs Step7 compared for SA machine OEMs and brownfield — soft-PLC runtimes, EtherCAT versus Profinet, vendor lock-in and portability.

A soft-PLC is a PLC runtime executing on a PC or industrial PC instead of on dedicated PLC hardware. The motivation is usually one of: portability across hardware, integration with non-PLC code (vision systems, motion controllers, custom HMI), tighter cycle times than a hardware PLC can deliver, or a global OEM choice that started with a Windows-based control system and never migrated. For SA machine builders shipping product into MENA, Europe or Australia, the soft-PLC question is real — the customer in Germany may insist on Beckhoff TwinCAT for the EtherCAT integration, the irrigation OEM in the Western Cape may want CODESYS for the cross-vendor runtime, and the brownfield petrochem site may want STEP 7 plus PCS 7 because that is what the rest of the plant runs. This page compares the three platforms on the trade-offs that matter when you are picking which runtime to invest the next two years of engineering hours in.

Try the simulator →

TL;DR

  • CODESYS is the open IEC 61131-3 implementation that runs on dozens of vendors' hardware. Best fit for OEMs who want runtime portability and do not want to lock to one hardware brand. Strong in irrigation controllers, water utilities and small machinery.
  • TwinCAT is Beckhoff's high-performance Windows-based real-time runtime. Best fit for OEMs needing tight EtherCAT integration, sub-millisecond cycle times, or close coupling between PLC and motion control or vision systems. Common on European-built food-processing equipment shipped globally.
  • STEP 7 is the Siemens classic ecosystem (now positioned as legacy alongside the newer TIA Portal). Best fit for petrochem and water utility brownfield sites where the rest of the plant runs Siemens, and for engineers who learnt on S7-300 / S7-400 hardware.
  • The choice is rarely free. Customer specs, OEM heritage and integration requirements usually narrow it to one platform before the engineer touches the IDE. The exception is greenfield SA OEMs picking from scratch — and most of those go CODESYS for the portability or TwinCAT for the EtherCAT capability.
  • All three implement IEC 61131-3 with vendor extensions. Skills transfer between them; tooling and ecosystem do not.

Side-by-side

CriterionCODESYSTwinCAT (Beckhoff)STEP 7 (Siemens)
VendorCODESYS GmbH (open ecosystem)Beckhoff AutomationSiemens
Runtime modelSoft-PLC, runs on many vendors' hardwareSoft-PLC on Windows IPC, real-time extensionHardware PLC + soft-PLC variant (S7 PLCSIM Advanced)
IDECODESYS Development System V3TwinCAT XAE (Visual Studio shell)STEP 7 Classic V5.x or TIA Portal
IEC 61131-3 conformanceReference implementation, broadly conformantConformant with vendor extensionsConformant with Siemens-specific extensions
Real-time guaranteesCycle times typically 1-10ms; depends on hardwareSub-millisecond cycle times achievable with EtherCAT1-10ms typical on hardware PLC; PLCSIM Advanced softer
Native fieldbusEtherCAT (CODESYS Master), Profinet, Modbus, EthernetIPEtherCAT first-class, also Profinet, EthernetIPProfinet first-class, also Profibus, Modbus
Hardware portabilityHigh — runs on Wago, Beckhoff, Schneider, B&R, custom IPCNone — Beckhoff hardware onlyLow — Siemens S7 family only
HMI integrationCODESYS Visualization (browser-based, native), or external SCADATwinCAT HMI, or external SCADAWinCC TIA, WinCC Classic, or external
SA OEM presenceIrrigation controllers, water utility specialists, small machinery OEMsFood-processing equipment OEMs, packaging machinery exported globallyPetrochem brownfield, water utilities, mining beneficiation
Licence modelPer-runtime or per-device; OEM bulk pricingPer-IPC, tiered by performance levelPer-PLC plus IDE licence
Referencecodesys.comWikipedia: TwinCATSiemens Industry Online Support

Where each one wins

CODESYS

CODESYS wins where hardware portability matters. The runtime is licensed by CODESYS GmbH to dozens of hardware vendors — Wago (the original CODESYS customer), Beckhoff (which uses CODESYS-based runtimes alongside TwinCAT in some product lines), Schneider Electric (the M251, M262, M580 ecosystem are CODESYS-based or CODESYS-derived), B&R, ABB, Festo, and a long tail of smaller vendors. An OEM authoring control logic in CODESYS can target multiple hardware targets from the same project, switching the device tree without rewriting the application logic.

For SA OEMs that ship globally, that portability is valuable. An irrigation controller OEM in the Western Cape building Wago-based hardware for the SA market and Schneider-based hardware for an Australian customer can keep one codebase if both targets are CODESYS. The engineering economics of one team supporting two hardware variants is much better than two teams each tied to one vendor's IDE.

CODESYS Visualization — the browser-based HMI runtime that ships with the IDE — is another quiet win. You author the HMI screens in the same project tree as the control logic, deploy them to the controller's web server, and any modern browser on the plant network connects to the HMI. No separate panel hardware required for many use cases. For small water utility installs where the operator interface is a tablet on a workbench rather than a panel-mount, this is a clean architecture.

What CODESYS does badly: the high-end performance ceiling. CODESYS runtimes can do sub-millisecond cycles on the right hardware, but they are not the first choice for hard real-time motion control with hundreds of synchronised axes. The vendor ecosystem is fragmented enough that getting consistent support across the long tail of hardware vendors is uneven — Wago and Schneider have strong local SA support, the smaller vendors have variable support depending on the importer.

The right person to learn CODESYS first is an OEM engineer building machinery that ships across hardware targets, or a controls engineer supporting Wago / Schneider / B&R installs in SA water utilities, irrigation, or small machinery.

TwinCAT

TwinCAT wins on performance and on EtherCAT integration. The Beckhoff runtime extends Windows with a real-time kernel that schedules PLC and NC tasks at deterministic intervals down to fractions of a millisecond. EtherCAT — a fieldbus that Beckhoff originated and continues to dominate — runs natively from the same controller. The combination is what makes Beckhoff the default for high-axis-count motion machinery: pick-and-place, packaging machines, printing presses, machine tools.

The IDE is Visual Studio with the TwinCAT extension installed (TwinCAT XAE). For a software engineer who has spent time in Visual Studio, the IDE feel is familiar. The debug experience is strong — you set breakpoints in IEC 61131-3 code, you watch variables across multiple tasks, and the integration with Beckhoff's Scope tool gives you measurement and trend capture inside the same environment. For a controls engineer used to traditional PLC IDEs, the Visual Studio shell takes some getting used to but rewards the time investment.

TwinCAT's portability story is the opposite of CODESYS — the runtime is Beckhoff-only. If your customer requires Beckhoff hardware, TwinCAT is the default; if they require anything else, you are picking a different platform. Beckhoff's hardware lineup is broad (CX series IPCs, EL EtherCAT terminals, EP IP67 modules, AX servo drives, AS stepper drives), so the lock-in is comfortable inside the brand.

What TwinCAT does badly: brownfield interoperability with non-Beckhoff plants. A Beckhoff controller can talk to non-Beckhoff devices through Profinet, EthernetIP, Modbus or OPC UA, but the natural shape of the system is Beckhoff-everywhere. Mixing TwinCAT into a Siemens-heavy petrochem plant is technically possible and operationally painful. The licence model is also tier-stepped — TwinCAT 3 PLC, NC PTP, NC I, CNC and TC3 functions are separately licensed, and the per-IPC bill adds up on a complex machine.

The right person to learn TwinCAT first is a machine OEM engineer building EtherCAT-based machinery, or a controls engineer at an SA OEM exporting food-processing or packaging equipment to European customers who specified Beckhoff at the contract stage.

STEP 7

STEP 7 is Siemens' classic ladder IDE — the pre-TIA-Portal toolset for the S7-300 and S7-400 hardware family. The Classic V5.x release is the legacy version still running on petrochem brownfield sites; TIA Portal is the modern flagship that replaces it for new projects but maintains backward compatibility through the migration tool.

STEP 7 wins on petrochem brownfield sites where the rest of the plant runs Siemens. The major SA refineries, synfuels operations, gas-to-liquids plants and large municipal water utilities have hundreds of S7-300 and S7-400 CPUs in service, programmed in STEP 7 Classic, with WinCC Classic as the SCADA layer. Replacing those installations is a multi-year capital project that gets done one shutdown at a time. Until the replacement is done, the engineering team needs STEP 7 Classic competence.

The other winning case for STEP 7 (now via TIA Portal) is the simulator path. PLCSIM Advanced is Siemens' soft-PLC product — a virtual S7-1500 or S7-1500 F running on Windows, supporting Profinet co-simulation and integration with TIA Portal projects. Engineers can develop, test and commission control logic against the virtual CPU before touching real hardware. PLCSIM Advanced is paid software with a per-instance licence, but for a serious project the cost is small compared to the time savings on commissioning.

What STEP 7 does badly: anything outside the Siemens ecosystem. The IDE is heavy, the runtime is hardware-specific (or PLCSIM-Advanced-specific), and the licence model is dongle-plus-floating-server with the same friction as TIA Portal. STEP 7 Classic V5.x is in long-term support but is no longer the focus of Siemens' development — the future is TIA Portal, not Classic.

The right person to learn STEP 7 first is a brownfield engineer at an SA petrochem site where the install base is S7-300 / S7-400 — and the right next step is to learn TIA Portal in parallel, because the migration is happening.

What this means in SA

Soft-PLC is a niche in SA today. The dominant control architecture is dedicated hardware PLC — S7-1500, CompactLogix, ControlLogix — with HMI panels for machine-level interfaces and SCADA servers for plant-level. Soft-PLC enters the picture in three specific places.

The first is the machine OEM segment, especially OEMs exporting globally. SA food-processing-equipment OEMs that ship to MENA, Europe and Australia frequently pick Beckhoff TwinCAT for new product lines because the European customers specify it. The EtherCAT integration is the technical reason; the customer specification is the commercial reason. SA packaging machinery OEMs in the same export segment have a similar profile, with TwinCAT or CODESYS depending on customer preference.

The second is irrigation and water-utility controllers. CODESYS-based hardware from Wago, Schneider M251 / M262 and a long tail of smaller vendors is dominant in SA agricultural irrigation systems and small municipal water installations. The cost-performance trade-off favours soft-PLC platforms with browser-based HMI over dedicated PLC plus panel HMI for the small-site case.

The third is brownfield petrochem and large utility sites running STEP 7 Classic on S7-300 / S7-400 hardware. The migration to TIA Portal plus S7-1500 is in progress, but the install base means STEP 7 Classic competence is still hireable in 2026.

The SA-specific point on TwinCAT: Beckhoff's local presence is smaller than Siemens' or Rockwell's, and field engineering support is mostly Johannesburg-based. For OEMs in the Western Cape or Durban building Beckhoff-based machines, the support relationship is typically through one of the local distributor partners rather than a direct Beckhoff field engineer. Plan the spares and training arrangements accordingly.

The SA-specific point on CODESYS: the Wago and Schneider channels in SA are well-established, and the integrator ecosystem around irrigation and small water utilities is mature. Finding an integrator who can configure a Wago-based pump-station controller in CODESYS is straightforward in any major SA metro.

The SA-specific point on STEP 7: TIA Portal is now the default first IDE to learn for any new Siemens work. STEP 7 Classic V5.x is a brownfield-maintenance skill, not a forward-investment skill. If you are choosing between learning STEP 7 Classic and learning TIA Portal as a first investment, pick TIA Portal — the brownfield knowledge will come on the job.

Common mistakes when picking

  • Picking by IDE preference rather than ecosystem fit. TwinCAT's Visual Studio shell looks attractive to software-leaning engineers; CODESYS's open licensing looks attractive to cost-conscious OEMs; STEP 7 looks familiar to long-time Siemens engineers. None of those is the right reason on its own. The right reason is which ecosystem the customer or plant requires, plus which fieldbus the application needs (EtherCAT for high-performance motion, Profinet for Siemens-everywhere, the rest where the customer specifies).
  • Underestimating the licence cost on TwinCAT. TC3 PLC plus NC PTP plus NC I plus CNC plus the function libraries adds up. A serious motion machine can carry R50k-R150k of TwinCAT licence per IPC before you have written a line of code. Get a current quote from Beckhoff at the spec stage, not at commissioning.
  • Treating CODESYS as one product. CODESYS-on-Wago is operationally different from CODESYS-on-Schneider-M262 from CODESYS-on-Beckhoff-CX. The runtimes are similar; the hardware-specific quirks are not. Test on the actual target hardware before committing.
  • Using STEP 7 Classic as a first investment for new engineers. It is the wrong answer in 2026. TIA Portal is the modern Siemens IDE and the migration is going one direction only. STEP 7 Classic competence is valuable for brownfield work but should not be the first IDE a new technician learns from scratch.
  • Forgetting the simulator path. All three platforms have soft-PLC simulator paths — CODESYS has its own runtime that runs on Windows, TwinCAT runs on Windows by definition, and Siemens has PLCSIM Advanced. Practising on the simulator before touching real hardware is the cheapest way to get the IDE shortcuts into reflexes.

How to test the trade-off in the simulator

Build the same control problem on each platform. Wire up an industrial PC running a soft-PLC runtime (the simulator emulates the runtime layer for all three platforms — CODESYS, TwinCAT-style, STEP-7-style). Set up the rack shown in the image at the top: DI16, DO16, AI8, no AO. Author a small process — a two-zone temperature loop with PID control — on each platform. Time how long the authoring takes, what the IDE shortcuts feel like, what the watch-tools surface, and what the cycle-time behaviour looks like under simulated load.

Twenty minutes per platform gives you a concrete sense of which IDE fits your hand and which does not. The simulator does not replace touching real Beckhoff or Wago or Siemens hardware — but it lets you eliminate the platforms that obviously do not fit before you commit to a hardware purchase. For a first-time soft-PLC user, the time-to-first-running-program is the most important metric, and the simulator surfaces it cheaply.

Start the free tier →

Vendor reference

The CODESYS reference is codesys.com — the documentation and community forums for the IDE and the runtime, plus the device-vendor list showing which hardware platforms ship CODESYS runtimes. The TwinCAT reference is the Beckhoff information system and product documentation; an independent overview of the architecture is at Wikipedia: TwinCAT. The STEP 7 and TIA Portal reference is Siemens Industry Online Support — both the legacy STEP 7 V5.x documentation and the modern TIA Portal materials are hosted there. The cross-vendor IDE-language standard all three implement is IEC 61131-3. For a general overview of soft-PLC architecture, Wikipedia: Programmable logic controller covers the platform history accurately.

What we don't claim

This site is not SAQA-registered, not MerSETA-accredited, and not an NQF-registered qualification provider. We do not commission soft-PLC systems on production sites. The simulator is a learning tool — practise the IDE shortcuts, the IEC 61131-3 syntax, the fieldbus configuration, the simulator-driven test loop, in a sandbox where the cost of getting it wrong is zero. We do not sell CODESYS, TwinCAT or Siemens licences, and we are not a partner programme for any of the three vendors. Pricing implications and licence tiers change frequently — get a current quote from the relevant vendor or distributor before you commit to a platform.

By PLC Programming SA · Last updated 2026-06-12