PLC Developments Increase Flexibility and Speed

New architectures are expanding capabilities, blurring the line between programmable automation controllers and PLCs.

By Sammy Natsui August 22, 2012

The programmable logic controller (PLC) was originally designed to replace hardwired systems composed of hundreds or thousands of relays, cam timers, drum sequencers, and dedicated closed-loop controllers. Updating these relay-based systems to accommodate changes and additions in the controlled machines and processes was a lengthy and expensive process, requiring electricians to add components and perform extensive rewiring. Troubleshooting was a nightmare, as problems could occur among thousands of connections, switch contacts, and hundreds or thousands of components.

Since the first PLC was developed in the 1960s, there have been enormous improvements to the technology in terms of speed of execution, programming methods, functionality, memory capacity, communications, and other areas.

This discussion will explore how advances in processing power have enabled PLCs to execute more functions in less time at lower cost, such that PLC functionality now often approaches programmable automation controller (PAC) power.

Leading advances of modern PLCs

1. Additional features incorporated in PLC CPU, eliminating external components

2. High-speed serial or Ethernet communications to remote wired or wireless I/O

3. Wide choice of I/O form factors

4. Custom functionality and faster execution, allowing PLC to take on more tasks

5. Advanced instruction reduce PLC programming time

6. Superior memory mapping improves data handling

7. Data structures simplify programming and maintenance 

Table 1 summarizes, and the text below details, the leading advances of modern PLCs. But it’s important to note that no single PLC or PLC family incorporates all of the features listed. Rather, different products from various suppliers have various combinations of strengths and weaknesses, and no one product is the best fit for all applications. This means that end users must examine their applications carefully, and pick the PLC that offers the best selection of features and price for a particular application.

Increasing I/O capacity

PLCs traditionally have been offered in two configurations: monolithic (“brick”) PLCs with a fixed amount of I/O built into the unit, or modular (“rack”) PLCs that use individual circuit board cards that plug into local or remote racks to provide customized I/O capability.

Both types have advantages and drawbacks. Brick PLCs have a small form factor and are low in cost, but often lack capabilities as well as I/O. However, new designs are increasing the built-in functionality of PLC processors, elevating the capabilities of brick PLCs. 

Rack PLCs are more capable in general and can handle much higher I/O counts, but are more expensive, and traditional designs can rapidly consume available rack space with I/O and special function cards. Newer PLC processors are reducing the rack space formerly required for communication, data storage, and other special function cards—in effect increasing rack space for I/O. Not only do PLCs now feature built-in communication protocols, but their protocols are now more open than in the past, allowing connection to many different types of I/O from a variety of vendors.

For both brick and rack PLCs, newer I/O form factors directly connected to the main PLC processor via high-speed digital communication protocols, primarily Ethernet, are substantially increasing I/O capacity (see photo 1). These remote I/O blocks are available in a wide variety of I/O configurations and housings, and are often suitable for mounting without the need for a cabinet or enclosure.

The latest chip designs integrate functions such as multiple communication interfaces and other advanced functionalities onto a single microprocessor that can be installed in the PLC CPU (see photo 2). This means the functionality that used to require a printed circuit board with scores of chips and one or more separate rack-mounted PLC cards can now be provided within the PLC main processor.

Easier programming

The latest PLCs provide flexible and advanced operating systems that make integrating new devices into the system and instruction sets much easier. For example, FPGAs (field programmable gate arrays) are now often used by suppliers within the PLC processor or within special function cards to perform tasks such as very high-speed control and synchronization. With FPGAs, suppliers can quickly provide custom or specialized functionality at lower costs.

By abstracting the PLC processor through a device driver layer, the user’s code can be completely isolated from the physical layer. PLC form factor (brick or rack) or I/O architecture (local, expansion, or remote) becomes a far less significant part of the design, enabling developers to code first and then select the target hardware later.

Programmers no longer have to determine the exact target while still in the software development stage, and can instead choose the optimal PLC target platform after all code is written and tested. This can cut cost substantially because the developer no longer has to select a more expensive PLC up front to provide a margin of performance and I/O capacity, but can instead right-size the PLC for the specific application. It also decouples the hardware and software engineering tasks to some extent, allowing these activities to happen more independently, and even concurrently in some cases, reducing required development time.

Better instruction sets and address mapping

Because the first PLCs were designed to replace relay-based systems, they were programmed using ladder logic that was very similar in appearance to relay-based schematic diagrams. Proprietary special-purpose terminals were required for programming, and memory was very limited. With the advent of the PC in the early 1980s, programming software migrated to DOS and then Windows, but limitations remained. 

Now, new operating systems and instruction sets make it easier for users to create programs, saving time and reducing errors (see photo 3). Using high-end standard instructions, software programmers now often need only two or three instructions to program functionality that used to require many lines of code. This encapsulation of code into higher level instructions not only simplifies and speeds programming, but also promotes standardization and makes it much easier for others to understand the software programs.

With higher level instructions such as function block, it also becomes easier for users to create their own subroutines, an important feature for many applications. Reusable subroutines make logic development more efficient, and they lend themselves to a more object-oriented program configuration, a technique long used by programmers in other disciplines to improve coding.

Another advantage to newer PLCs is found in address mapping. Specifically, variable memory mapping used to require integers, floating point numbers, and hexadecimal (HEX) numbers to be combined into one data point. New PLCs provide separate data points for integers, floating, and HEX numbers, simplifying address mapping and providing other benefits.

Data structure is a feature often incorporated into newer PLCs, allowing end users to manage several memory addresses as a group. If those memory addresses hold the same type of data, array addressing can be used. But if different types of data are to be included in one group, the data structures feature is required.

For example, a PID loop could be identified as “Tank1,” and each parameter in the loop could use this identifier with an appropriate modifier. So to access to the process value of the PID loop, one could use the term “Tank1.PV” in the PLC and HMI programs. Similarly, ‘Tank1.SP’ could be used to label the PID loop setpoint. The data structure feature makes user program development and maintenance much easier, as terms are identified with real-world names instead of cryptic nomenclature.

High-speed processing and I/O modules

Higher CPU speeds provide faster performance that shortens task time. This is especially significant for motion control applications where higher speed I/O modules are also now available, allowing PLCs to take on functions that used to require a specialized motion controller.

Perhaps one of the biggest advances in PLC performance is found in the area of process control. Older PLCs could only accommodate a relatively small number of PID loops, while new PLCs can handle thousands of such loops. This can often eliminate the need for external single loop controllers, saving considerable expenses and cabinet space, while greatly simplifying the overall control system.

Higher processing speeds also enable the PLC CPU to support Ethernet connectivity and custom communication protocols as built-in functions, as opposed to requiring a separate specialty module and corresponding rack space.


In general terms, both PLCs and PACs provide the same functionality, and the greater performance and functionality of the new higher-end PLCs can make it difficult to determine whether to use a PLC or a PAC. In fact, it can be hard to fathom if a controller is a high-end PLC or a PAC, since there isn’t a clear consensus in the automation industry of the exact distinction between the two.

In general, PACs offer more choices in networking, expandability, and user options. PACs are also more expensive in terms of purchase price and programming software, particularly as programming software is often included in the purchase price of a PLC.

As discussed earlier, PLCs are usually programmed using ladder logic, a graphical programming language somewhat based on relay-based wiring diagrams. Control programs for newer PLCs and for PACs are usually developed using more standard software tools that incorporate IEC 61131-3 languages, providing more programming options and making it easier to standardize code within a plant or an entire company.

The PLC has evolved considerably since its introduction in the late 1960s. Gone are the days of proprietary programming terminals and cryptic, limited instruction sets. Today’s PLCs need much less cabinet space, offer easier programming, and have dramatically faster execution speeds that make them a better fit for a much wider range of applications.

New PLC architectures offer programming flexibility through hardware abstraction. Improved instructions sets and more specific address mapping help developers shorten programming time, increase functionality, and make changes more easily.

All of these enhancements mean that today’s PLCs provide users with economical, easier-to-use, and more flexible devices that offer greater speed and functionality, allowing use in a wider range of applications.

Sammy Natsui is the product manager for PLCs at AutomationDirect.

For more information, visit: