Elimar.com Industrial Automation

Introduction

Elimar.com introduces a structured methodology for PLC software development that improves maintainability, scalability, and system integration while reducing engineering effort throughout the project lifecycle.

The methodology is based on object-oriented programming principles and a hierarchical software architecture that provides a consistent and intuitive framework for organizing automation systems. As a result, every functional element can be identified, located, and maintained more efficiently.

Key Advantages

Hardware Independence

I/O and field devices are fully parameterized, allowing software objects to remain independent of hardware implementation details. This approach simplifies migrations, upgrades, and equipment replacement.

Scalability

System components can be expanded, reduced, or redistributed across multiple controllers with minimal impact on the overall software architecture, providing flexibility for projects of any size.

Reusable Program Blocks

Functional blocks are designed to be reusable across different applications and industries, reducing development time while improving software consistency and reliability.

Seamless SCADA Integration

Process parameters such as timer values, setpoints, limits, operating modes, and configuration data can be managed directly from SCADA and supervisory systems, increasing operational flexibility and reducing commissioning effort.

Structured Software Architecture

The hierarchical organization of software components establishes clear relationships between equipment, functions, and process areas, making applications easier to understand, troubleshoot, and maintain.

The Result

By adopting this methodology, PLC applications become more structured, portable, scalable, and adaptable to changing operational requirements. Engineering teams benefit from improved software reuse, simplified maintenance, faster commissioning, and greater long-term sustainability of their automation systems.

Download a Tia Portal V18 programing sample at ElimarSoft/TIA-PORTAL-WITH-EXCEL

Questions & Answers about the Elimar.com Proposal

Are PLC programs monolithic?

Not necessarily.

A PLC application may consist of a few large functional blocks or many smaller modular blocks. Likewise, control logic may be implemented within a single PLC or distributed across multiple controllers.

Scalability should be considered an intrinsic design characteristic of both the software architecture and the hardware platform.

Are User Defined Types (UDTs) allowed?

Yes. However, their use should be carefully considered.

While User Defined Types (UDTs) can improve consistency and reduce development time, excessive reliance on them may create challenges in large or long-term projects:

  • UDT definitions are typically global within a PLC project. When integrating programs developed independently, conflicting definitions may require significant rework.
  • Software modules can become dependent on specific UDT definitions, reducing portability and increasing coupling between components.
  • Complex hierarchical UDT structures may be difficult to maintain. Changes to a base structure can propagate throughout the application and may complicate online modifications.

For these reasons, UDTs should be used where they provide clear value, while maintaining a balance between standardization and modularity.

Do most programming environments support classes and objects?

Many modern industrial programming environments provide object-oriented concepts to varying degrees.

For example:

  • Siemens TIA Portal supports object-oriented features through Function Blocks (FBs), inheritance, interfaces, and related mechanisms.
  • Rockwell Logix platforms provide encapsulation through Add-On Instructions (AOIs) and data structures through UDTs, although their implementation differs from classical object-oriented programming languages.

Object-oriented principles can improve scalability, maintainability, and code reuse when applied appropriately.

Does program definition rely on Excel documentation?

Yes.

Although other tools can be used, Excel remains one of the most widely adopted methods for organizing I/O definitions, equipment lists, tag databases, and program specifications.

A well-structured spreadsheet can reduce engineering effort, improve consistency, and minimize implementation errors.

What is a block?

A block is a self-contained software component that performs a defined function and can be reused in different applications with minimal or no modification.

Key characteristics include:

  • Interaction with the external environment occurs exclusively through defined interfaces, inputs, outputs, parameters, and timing mechanisms.
  • Internal implementation details remain isolated from other blocks.
  • A block should not rely on undocumented external resources or hidden dependencies.
  • A block may contain or coordinate other blocks while preserving a clear and well-defined interface.

In this sense, a block behaves similarly to a physical device: users interact through documented interfaces without needing to understand its internal implementation.