- Low-code and modular programming environments are transforming PLC programming, with vendors providing pre-packaged libraries and objects that eliminate traditional IEC-61131-3 style coding, allowing programmers to focus on higher-level system concerns rather than rudimentary control details.
- AI integration is revolutionizing industrial controller programming through features like intelligent code assistance, auto-completion and block recommendations that help bridge the growing skills gap as experienced programmers retire, while also reducing time-consuming repetitive tasks.
- The convergence of IT and OT practices is driving standardization and connectivity, with adoption of protocols like OPC-UA and MQTT ensuring better interoperability across systems, while modular programming approaches using function blocks and reusable templates are streamlining engineering and maintenance processes.
PLC programming isn’t generally associated with the cutting-edge technologies that define the rest of the software world, but things are rapidly changing.
To better understand how industrial controller programming is borrowing constructs from the IT software world, we spoke with Emerson’s Keith McNab (KM), director, control and automation software, discrete automation and Dan Smith (DS), senior product manager, discrete automation, as well as Siemens’ Matthias Pohl (MP), global marketing manager, Efficient Engineering in Automation and TIA Portal, and Claudia Dürr (CD), global marketing manager, Efficient Engineering in Automation.
AW: How do you see the future of industrial controller programming evolving amid industry’s ongoing workforce issues and digital transformation?
KM: PLC programming will evolve to use a low-code graphical programming environment. This will require vendors to provide pre-packaged libraries of objects that can be instantiated and parameterized by users, eliminating the need for IEC-61131-3 style programming. The objects will provide modular control with a service-oriented structure. This will abstract away rudimentary control details that are encapsulated within pre-packaged objects allowing the programmer of the future to focus on higher level concerns.
MP: The automation industry is facing a shortage of skilled workers, scarce resources and volatile demand and supply chains. We see a trend of introducing IT best practices and mindset to the OT world and employing IT-like automation. As a result, automation engineering solutions need to be tailored to a new target group (software automation engineers) that expects a more flexible and adaptable toolchain, thus bringing IT and OT closer together.
Integration of genAI (generative AI) is another development. Industrial Copilot for Engineering is revolutionizing how we approach industrial controller programming. By providing intelligent code assistance and knowledge preservation, it helps bridge the growing skills gap as experienced programmers retire.
DS: Adoption of standardized data models (like OPC-UA or MQTT) ensures compatibility and interoperability across different systems, allowing data to be easily processed and analyzed once it reaches IIoT platforms. Implementing more widely-used programming languages will also simplify the control structure. These languages come with extensive libraries, frameworks and development tools that can streamline application development and enhance the functionality of IIoT systems.
AW: What are the current challenges in maintaining and updating legacy controller programs and how can they be addressed?
MP: Hardware and software may be obsolete, by that I mean older controllers may be discontinued and legacy development environments and operating systems might not be compatible with current IT infrastructure. Plan a phased migration to newer controllers, allowing integration of modern engineering tools, improved performance and on-going support.
Plus, original authors or experts may have left the organization, resulting in a loss of system knowledge that can make maintenance risky. Interview experienced staff and document their insights before they leave. Organize knowledge transfer sessions and maintain updated training materials for new engineers.
KM: Security vulnerabilities of legacy controllers will increase challenges to users. These can sometimes be addressed by updating and patching systems. Many users would like to integrate legacy systems with more modern and secure communication technologies such as OPC UA. This is possible by incorporating gateways, but this approach also adds complexity.
AW: What factors should be considered when choosing an industrial controller based on programming needs?
CD: When choosing an industrial controller to match your programming needs, it is critical to consider both the technical requirements of your application and how your engineering team works. Technical requirements can refer to supported programming languages, development environment and integration capabilities. Companies also need to consider the skillset of their employees: Are they automation engineers? Are they familiar with software mechanisms? How do they prefer to work? This will decide whether you pick a more OT-oriented engineering tool such as TIA Portal or an IT-oriented engineering tool such as Simatic AX.
KM: Designers at systems integrators, OEMs and end users should consider what programming languages are supported and whether the controller has an integrated development environment with a simulator. Also, the programming environment should inherently support an object model that can be used to represent devices, control strategies and procedural control so that reusability, encapsulation and integration into high level systems can be achieved.
AW: How are programming techniques like modular programming or reusable code applied in industrial controller programming?
CD: When it comes to modularization, the mindset is important: You need to consider which standards you want to use, how to create reusable standardized modules and effectively manage company sources. Finally, you need to manage dependent modules. Industrial controller programming applies modular programming and reusable code by structuring projects into function blocks, libraries and templates. When you set up a strategy for modularization in your company, you streamline engineering, simplify maintenance, boost quality and build more flexible and sustainable automation solutions.
DS: Modular programming is useful for creating clear and reliable code, and even more so when combined with communication protocols that support those modules across platforms. A key example is the streamlined connectivity between an industrial controller and a SCADA system when using compatible modules.
AW: Has the increasing use of AI in industry and IIoT connectivity impacted industrial controller programming? If so, how?
CD: AI and IIoT have pushed industrial controller programming toward more open, connected, modular and data-driven approaches — with emphasis on integration, flexibility and security. For AI-assisted engineering, AI-powered features are being added to engineering tools themselves. For example, code auto-completion, block recommendations and code validation to speed up development and reduce errors. Another very important aspect is the ability to avoid time-consuming and repetitive tasks, allowing a focus on the to-do tasks which require intelligence and creativity. This way, skilled engineers can be used where needed and create impact.
DS: AI tools can be helpful to get engineers started on tasks, but it is still essential for an expert to ask the right questions and carefully review the results because so many aspects of industrial control systems are mission-critical. However, many types of AI models can provide information to experts with the ability to interpret responses.
More controller and programming-realted coverage from Automation World:
Leaders relevant to this article: