← All resources

Topic

Platforms

The controllers and environments engineers program: Siemens TIA Portal, Rockwell Studio 5000, CODESYS, TwinCAT, open source PLCs and virtual PLCs, and how they differ in practice.

7 articles

  1. FB vs FC in TIA Portal: which block to use, and why

    An FC (function) has no memory of its own: its Temp data lasts only for the call, so every parameter must be supplied each time. An FB (function block) keeps its inputs, outputs, in-outs and Static data in an instance data block, so values survive from one cycle to the next. Use an FB for anything that remembers, such as timers, edges and sequences, and an FC for calculations.

    11 min read
  2. CODESYS on a Raspberry Pi: install, licence and a first program

    Install the CODESYS Development System and the CODESYS Control for Raspberry Pi SL package on your PC, enable SSH on the Pi, then use Tools > Deploy Control SL to connect and install the runtime. Without a licence it runs for two hours and then needs a manual restart. The product is for private, test and teaching use; commercial use is not permitted.

    9 min read
  3. Siemens and Allen-Bradley do not just differ in syntax

    The syntax difference is trivial; the model difference is not. ControlLogix gives you tags and expresses structure in a type system. Siemens gives you memory areas with symbolic names layered over them, and organises code into specific organisation blocks. Timers differ most: Rockwell timers are structures with .ACC and .DN, Siemens IEC timers are function blocks with instance data.

    8 min read
  4. CODESYS: the PLC platform you are probably already using

    CODESYS is an IEC 61131-3 development environment and runtime licensed by manufacturers rather than sold to end users, which is why it appears under other brand names. Roughly 500 hardware makers ship it, including ABB, WAGO, Festo, Lenze and Eaton, so a program written for one CODESYS device often ports to another with modest effort.

    7 min read
  5. TwinCAT: a PLC that is really a PC

    TwinCAT is Beckhoff's automation platform, running the PLC as a real-time task on a standard industrial PC alongside Windows rather than on dedicated controller hardware. Programs are written in Visual Studio using IEC 61131-3 languages plus object-oriented extensions, and the source files are plain XML, which makes version control genuinely workable.

    7 min read
  6. Open source PLC software: what actually exists

    Yes, and it is more capable than most engineers expect. OpenPLC provides an IEC 61131-3 editor and runtime that targets Arduino, ESP32, Raspberry Pi and Linux. Beremiz is a full open IDE built on the same toolchain, and matiec is the compiler underneath both, translating IEC languages into C.

    7 min read
  7. Virtual PLCs: control logic without the controller

    A virtual PLC runs the control logic as software on an industrial PC or server, usually in a container on a real-time Linux kernel, with the I/O still on the plant floor. Siemens ships the S7-1500V, and Audi has production lines running on it. The gain is decoupling hardware from software; the cost is that the platform becomes an IT asset with an IT lifecycle.

    7 min read