How are PCs better than PLCs in industrial control applications?

A

Thread Starter

Anonymous

Much has been said about how PLCs have many more advantages over PCs, however, what are some of the advantages of a PC in an industrial control application? Is there something it can do that PLCs cannot?
 
R

Robert Scott

While PLCs are great at things involving a high degree of parallelism, they don't naturally provide functionality that requires a high degree of sequential processing, such as traditional proceedure-oriented languages like C and Basic. I know there are Basic modules that can be added on to a PLC, but they are a poor substitute for the wide range of processing that is normally done on a PC.

For example, suppose that you need to move an actuator based while monitoring an encoder and a torque transducer, and stop the motion when the torque exceeds a limit that depends on the current position of the encoder. That will be difficult to do in a PLC, but quite straight-forward in a C/C++ program on a PC.

Or, suppose that an RS-232 data stream is coming from a position sensor, and you need to interpret the serial data in real-time to provide position feedback.

In conclusion:

PLCs = parallel ops
PCs = sequential ops

Robert Scott
Real-Time Specialties
Embedded Systems Consulting
 
C

Curt Wuollet

Yes, at least in a practical sense. Doing a fourier transform on a PLC is I suppose, possible, but I'd rather not. Putting 16 serial ports on a PLC is also possible, but you could buy quite a few PCs for what it cost. Machine vision, graphics, etc. etc. This is not necessarily a shortcoming of the PLCs. It's a design decision. A recent PLC is very much like a PC with very limited hardware and software that was designed to do what can be done with relays and timers with some additional
funtionality for demonstrated industrial needs, The idea is to package everything to make using it as simple as possible at the programming level. And they do that quite well for a large class of applications. But expectations have evolved and many applications need display capability and communications that are difficult to provide under the PLC paradigm. So they add PCs or spendy custom modules.

The PC can without question, do anything a PLC can do and a great deal more at very low cost. And the applications it can handle are a superset as well. In fact, it could be argued that a PC is vast overkill for many if most most PLC applications. But the cost and extreme flexibility that a mass market has produced weigh very heavily in it's favor. Unfortunately, most efforts in the mainstream
automation world have used horribly unsuitable software because it was popular. This has lead to a contingent of automation folks that believe PC stands for "Piece of Crap" when really all that was wrong was the unfortunate choice of software. If they stop and consider how much of the nonstop communications world including the Internet is run on PCs with proper software, this argument becomes silly quickly. There are some environments that a particular PC might not be able to handle, but using a PC built for the purpose fixes that. The main problem is software that makes the PCs easy to use for automation
without crippling their flexibility. We at MAT/LPLC are addressing this issue as are many others. The general class needs are provided by the Linux and OSS communities. There are problems that remain to be solved in the general case like the fact that PC hardware is a fast moving target. But the _real_ standardization that can be achieved with OSS and public ownership should make it much easier to run an old program on any new machine. Or at least to fix the issues that arise. And don't forget the monopoly is directly responsible for the churn. The last
three computers you replaced will run Linux just fine.

The big picture is that since many PLC applications need a PC in the mix, and since PCs can easily handle the functions of a PLC in addition to the functions they are used for, Doesn't it make sense to do so? All that is needed is to do it right, with the right software. Years
from now, it will seem silly to add an expensive shoebox to do logic to an extremely powerful system that does logic faster and with a much better value proposition and which integrates with the rest of the world. But PLCs will still excel where they are cost effective, that will be at the low end.

Regards

cww
 
There are many advantages to using a PLC over a PC... Allow me to list them from out best as I can:
1. Ease of implementation... PLC were designed for industrial applications, PCs are adapted. You may have to jump throgh hoops to get your PC to do what your PLC can do "out of the box."

2. Ruggedness... How many failed PCs have you seen in relation to failed PLCs? How many of these PCs were in a hot, dirty, vibration filled environment?

3. Security... When was the last time someone hacked into your PLC? Or when was the last time that the 3rd shift operator loaded his favorite video game onto your PLC and caused it to crash?

4. Upgradeability... The boss comes and says that he wants you to now make the system interface with the robot cell, but they only speak Profibus. In your PC you may have a hard time getting another network card in there, and configuring your applcation to now recognize and interface with the new card. In your PLC, however, you drop the network module in and set the address ranges. Its really rather simple.

5. No moving parts... No HDDs to fail on a PLC.

6. Motion... Although only crude motion can be accomplished with a PLC, it can be done relatively easily with standard cards that are "off the shelf." With a PC, it become much more of a challenge.

7. Commonality... With a PLC you can select one manufacturer's control items, and everything has been designed to work together, tested together, and looks like it belongs together. With a PC you get the "advantage" of so-called open systems, but in reality making them all work together is more difficult. By the way, I have yet to see an "open-system" that performed any better than a proprietary based system. I have seen a lot of "open-systems" that cost more and were harder to integrate than a proprietary system!

8. Maintenance... It is a lot easier to get a "good back-up" of a PLC based system than it is a PC based system. Try restoring a PC based system after a HDD crashes at 2:30AM. There's a bit more software and configuration required for a PC based system.

9. Packaging... Most PCs take a lot more space than your typical rack mount of DIN rail mounted PLC.

10. Risk... I am certainly in favor of advancing the newest technologies, however I need to be confident that they are worthy technologies. Nobody else gets "called to the carpet" when the system doesn't perform... I'll be the one. In my eyes PCs are good, but they haven't proven the ruggedness and reliability and performance needed to really shine in harsh applications. Its not worth the added hassel to finish with an inferior system, and it certainly isn't worth the risk.

Of course, all of this is predicated on no knowledge of your specific application. There may be very legitimate reasons for using a PC over a PLC. I have read about applications where the author claims a PC was the way to go (less of these articles, lately, however), but I have yet to actually see an application like this for myself.

Good luck!
 
PCs have many advantages over PLCs. My company has been using direct PC control for industrial applications for over 17 years. Although there are undoubtedly some applications where PLCs are better suited, I would never want to go back to PLC based systems. Here are some of the advantages that we appreciate about PC control:

1. Lower cost.

2. Reduced complexity due to familiar PC environment, integrated programming (no need to interface ladder logic program with HMI program and data management program), open standards and protocols, etc.

3. State of the art technology made available by research and development of countless software/hardware manufacturers.

4. Connectivity of system components via LAN, internet, and modem is natural and easy.

5. Ladder logic is cumbersome and ackward compared to various graphical programming languages and even computer code. Ladder logic works well for discrete logic, but analog and math functions just don't fit the language without strange adaptations.

6. Operator display panels are much easier to configure, and have greater functionality.

7. Troubleshooting and maintenance is much easier due to the simplier architecture, and can even be performed via modem/network at remote sites.

8. Program updates/changes are much easier to make, both on-site and remotely.

We find that a quality PC will run 24/7 for about 5 years on the average, and the replacement cost is minimal. We recommend that our customers keep a spare PC in case of failure, so they can be running again in minutes. If PCs weren't reliable for control, we would be overwhelmed with service calls from our many installations. I assure you that this is not the case.

As I stated previously, we would never want to go back to PLC based systems after working with PCs for years.

Dan Black
Techni-Systems, LLC
[email protected]
 
Here are some off the top of my head (it's past my bedtime).

And I know almost all of these has a counter argument as
to why these are NOT desirable. That's left as an exercise to the reader (or the chronic gainsayers)

1) Commodity hardware pricing
2) Raw Processing Speed
3) Versatile Communications and Data Storage options.
4) Programming language independence
5) No vendor lock-in
6) Larger talent pool for hardware & software design

Rufus
 
D

david mertens

- Show nice pictures e.g. SCADA
- Perform very complicated calculations e.g. APC
- Handle large databases e.g. BATCH/MES

Always try to use the tool best suited for the task at hand.
 
PCs can save data to a hard drive. PCs can do local database calculations, for recipes and data collection.

Generally speaking if you want reliable control where you don't have to touch a machine for 20 years then use a PLC. If you want to do heavy data calculations, interface to a database or a business system then use a PC. If you want both, then look into using both with communication between, using OPC, etc. There are lots of options, pick the one that's best for the application.
 
J

James Ingraham

1) Lower cost.

2) Integration of discrete, analog, and motion control with HMI, logging, reporting, printing, etc.

3) Extremely wide range of hardware available. Siemens sticks you with Profibus; Mitsubishi with CC-Link; Allen-Bradley with DeviceNet. A PC can do all of those at the same time.

4) General purpose programming languages that are known by millions of developers.

5) Specialized applications available from thousands of companies.

6) Easily available parts. (Try buying a new PLC processor at Best Buy.)

7) Speed. 3GHz+ processors, floating-point coprocessors, add-in DSPs, Gigabit Ethernet, etc. PCs can run circles around PLCs, especially in math-intensive operations.

8) Storage. 200GB harddrives vs. 64K sram.

9) Development platform and runtime platform are the same. That means that your maitenance people don't have to carry around laptops, make sure they have the right version of the software, the latest backup of the code, the correct cable, etc.

-James Ingraham
Sage Automation, Inc.
 
To add a very brief, and unbiased opinion. Use a PLC for critical applications. PLCs are MUCH more reliable. Use a PC for noncritical applications that require lots of computing power.

Any control scheme that is more complicated than a simple PID controller is best left to a PC. One thing that comes to mind is the implementation of Model Predictive Control (MPC). I'm not sure how familiar you are with MPC, but basically for every control action you need to compute a least squares regression problem, something that I've yet to see a PLC do.
 
E

Emery Premeaux

There truly is no right or wrong answer here. IT depends on a number of variables. Environment is the big one.

For instance, an air conditioned clean room would be an ideal place for a pc controlled application. An open structure factory in Arizona that is only cooled by swampcoolers is NOT.

Down here, everything we use is ran from PLCs inside cabinets with only a cab fan to cool it.. I have yet to have a heat failure. Im more worred about the lightning storms to be honest. We have recently added a production schedule system based on PCs for operators. These systems worry me, as this is the first summer they will be in use. Thankfully we are slowly phasing in this system, and nothing is actually controlled with it. It simply tells the operators what to do next.

The only true PC based system we use is a rather complex machine that takes glass sheets and cuts them into many small panes.. This data is fetched from the main network and then optimized at the machine for best use of our glass. the whole system is housed inside a freestanding cabinet with its own air conditioner. The OS here is Win2000 which has proven to be very stable. In the three years we had this machine, we only had one major down.

Unfortunately, this problem caused 2 days of no production on this half million dollar machine. We had to locate a suitable replacement computer, locate a dual monitor support video card that the application would run on, install 2K, and then fight with the machine software to get it to work. The designers came up with a rather tricky license key system.

If this were a plc, and I had a spare unit. It would be running in less than 30 minutes..

Bigger and faster and smarter... will not always equal better. It may be silly to buy an expensive plc system when a pc based system would be cheaper, faster, and more integrateable to management. But it is also silly to say that reliability, maintaninability and functionality are not just as important.

It is not cost effective to replace a computer system every 2 years because of overheat problems or dead hard drives. It IS cost effective to NOT have to change a PLC in potentially 10 years of production.
 
PCs are much more suited to SCADA-type functions; logging production data to a database, retrieving recipes from database, serving data to the company intranet (or the global internet), that sort of thing. They also come with a display, and native general programming. Overall, they are much more flexible - which is of course a cost as well as an advantage.

When you need both types functionality, you have the usual three choices: you can buy a device that's primarily one or the other and make it do the other job as well as it can (sometimes not very well), or you can buy one of each
and connect them up.

The main limitation of the PC is the lack of local I/O - you'll need either an optional card and a separate box of isolation circuitry, or bus slave I/O.

The main limitation of the PLC is that it's a special-purpose box; excellent if that's the purpose you want it for, but poor otherwise.

Jiri
--
Jiri Baum <[email protected]> http://www.csse.monash.edu.au/~jirib
MAT LinuxPLC project --- http://mat.sf.net --- Machine Automation Tools
 
Hello,

the below is not intended as an all-out support of PCs. They have their place, and so do PLCs. It is merely intended to provide another viewpoint on these points, and (where appropriate) the trade-offs that lead to them.

On April 6, 2004, Jason C wrote:
> 1. Ease of implementation... PLC were designed for industrial
> applications, PCs are adapted. You may have to jump throgh hoops to get
> your PC to do what your PLC can do "out of the box." <

The flip side of this is flexibility. PLCs are special-purpose boxes, which is excellent if that's the purpose you want them for, but poor otherwise.

This is a trade-off: sometimes you want/need flexibility, because you're doing something unusual, and other times you don't.

> 2. Ruggedness... How many failed PCs have you seen in relation to failed
> PLCs? How many of these PCs were in a hot, dirty, vibration filled
> environment? <

Industrial PCs can be bought if this is an issue. They cost more, so this has to be weighed against the option of giving the PC better conditions.

> 3. Security... When was the last time someone hacked into your PLC? Or
> when was the last time that the 3rd shift operator loaded his favorite
> video game onto your PLC and caused it to crash? <

The first is a matter of not connecting the PLC to the Internet rather than any inherent security features. Like the PLC, an automation PC ought to be firewalled from the Internet - ideally in two stages, so that the plant floor
network is firewalled from the main company intranet, which in turn is firewalled from the Internet.

If you put an Ethernet-capable PLC on the Internet, it's just as hackable as anything.

The second is again a function of the PCs flexibility, and personnel.

> 4. Upgradeability... The boss comes and says that he wants you to now
> make the system interface with the robot cell, but they only speak
> Profibus. In your PC you may have a hard time getting another network card
> in there, and configuring your applcation to now recognize and interface
> with the new card. In your PLC, however, you drop the network module in
> and set the address ranges. Its really rather simple. <

This cuts both ways: when the boss wants you to now make the system interface with the company database, the PC has the advantage. The trick is predicting the direction the system is more likely to have to be interfaced.

Of course, if the robot cell is also running a PC, there's no question.

> 5. No moving parts... No HDDs to fail on a PLC. <

Yes. One can get PCs with flash drives, but they're limited. In addition, HDDs don't like vibration, so they're more likely to fail if that's an issue.

> 6. Motion... Although only crude motion can be accomplished with a PLC,
> it can be done relatively easily with standard cards that are "off the
> shelf." With a PC, it become much more of a challenge. <

With a PC, it can be done relatively easily with standard software packages that are off the shelf. These packages support G-code, so they offer full functionality rather than "only crude motion".

This is the up-side of the flexibility: if you need PLC functionality *and* motion *and* other things, the PC can do them all in the one (larger) box.

> 7. Commonality... With a PLC you can select one manufacturer's control
> items, and everything has been designed to work together, tested together,
> and looks like it belongs together. With a PC you get the "advantage" of
> so-called open systems, but in reality making them all work together is
> more difficult. By the way, I have yet to see an "open-system" that
> performed any better than a proprietary based system. I have seen a lot of
> "open-systems" that cost more and were harder to integrate than a
> proprietary system! <

On the other hand, you are then in a one-supplier situation.

One can interface a PLC to another manufacturer's PLC, but then one gives up this advantage - hasn't been designed together, doesn't look like it belongs together, and the testing together has been limited.

> 8. Maintenance... It is a lot easier to get a "good back-up" of a PLC
> based system than it is a PC based system. Try restoring a PC based system
> after a HDD crashes at 2:30AM. There's a bit more software and
> configuration required for a PC based system. <

Again, a function of the PCs flexibility - the more it can do, the more you have to back up and then restore. As others have noted, this is a problem with known solutions.

> 9. Packaging... Most PCs take a lot more space than your typical rack
> mount of DIN rail mounted PLC. <

Yes.

> 10. Risk... I am certainly in favor of advancing the newest technologies,
> however I need to be confident that they are worthy technologies. Nobody
> else gets "called to the carpet" when the system doesn't perform... I'll be
> the one. In my eyes PCs are good, but they haven't proven the ruggedness
> and reliability and performance needed to really shine in harsh
> applications. Its not worth the added hassel to finish with an inferior
> system, and it certainly isn't worth the risk. <

This is really a function of all the above points (and others). You want to get the system that's most likely to be superior. Depending on your situation, that may be a PLC or a PC.

Jiri
--
Jiri Baum <[email protected]> http://www.csse.monash.edu.au/~jirib
MAT LinuxPLC project --- http://mat.sf.net --- Machine Automation Tools
 
A

Andrey Romanenko

Hello,

I totally agree that it is easier to implement MPC on a PC, but for the sake of fairness, PLC based MPC was reported in the Feb/Mar issue of Control Engineering Europe back in 2001. However, it was a Quantum PLC with
some add-on software running on a PC.

Andrey
 
C

Curt Wuollet

Hi Emery

Here again, PC is synonymous with Windows. But some of the hardware points are well taken. Many fancy video cards run at the limits of power dissipation for performance reasons, some even having their own fans. They should be avoided. In a "normal" case I use a System Pabst long life ball bearing fan to pressurize the case. This keeps things cool enough even if the cheezy power supply fan
quits. I avoid processors that need fans. If you must have a hdd, the bay above and the bay below should be open. Most industrial cases have an extra fan and it can often be replaced with a serious cooling fan. In AZ, I would do that. These little things aren't costly or difficult but are simply common sense which many PC builders seem short on. There's no reason you should ever have an overheat problem, there just isn't that much power consumed in the case, especially these days. Inside a cabinet you can leave the covers off and they'll cool by convection especially if you arrange for the slotcards and MB to be
vertical. Looks kinda strange but it works. And you can do these even if the PC is supplied by someone else. In fact, look at the cooling recommendations for your PLC and pretty much do the same things.

Regards

cww
 
M

Michael Griffin

<clip>
> It's a design decision. A recent PLC is very much like a PC
> with very limited hardware and software that was designed to
> do what can be done with relays and timers with some additional
> funtionality for demonstrated industrial needs,
<clip>

There are two aspects to a "PLC"; the custom hardware and the run-time software. Several major vendors offer the same run-time environment that they have in their PLCs as a soft logic system. Computers ("PCs") are available which can meet any required durability requirements. However, allowing the user to load the soft logic software onto a PC doesn't make it a PLC. What makes a PLC a PLC, is that the software and hardware are packaged together out of the box. With loadable or upgradeable PLC firmware though, even this is becoming a matter of perception.

> The big picture is that since many PLC applications need a PC in the
> mix, and since PCs can easily handle the functions of a PLC in addition
> to the functions they are used for, Doesn't it make sense to do so?
> All that is needed is to do it right, with the right software. Years
> from now, it will seem silly to add an expensive shoebox to do logic
> to an extremely powerful system that does logic faster and with a much
> better value proposition and which integrates with the rest of the
> world. But PLCs will still excel where they are cost effective, that
> will be at the low end.
<clip>

The major vendors offer a complete system "stack", with CPU, software, I/O, communications buses, drives, etc. The PC hardware only replaces the CPU part of this. If they started hosting their run-time software on third party CPU
hardware, it wouldn't be that big of a change in how much of their product line they are building themselves. "Out-sourcing" the CPU hardware to a third party however, would be in line with a lot of other current business trends.

The complaint about PCs has been that the hardware is not very rugged, they connect to I/O poorly, and the software is flaky. However, there are changes occurring in the computer and automation markets that may change this perception.

There is the beginnings of a market for small, reliable, fanless PCs for use in consumer applications (control of entertainment systems, firewalls, etc.). Conventional designs haven't satisfied this market primarily because of size and noise (mainly from fans) problems. Some of the new mini and nano ITX systems (e.g. from VIA) are intended to address this. They are low powered to allow the use of fanless power supplies, and with a low power CPU also
eliminate the CPU fan. The primary reasons for this in the current market are for quiet operation, but this also eliminates one of the major hardware reliability problems. If this class of hardware is used with solid state drives, this may address the hardware reliability issue. The difference between this type of hardware and traditional embedded hardware like a PC/104 system, is that the nano ITX market will have much higher volumes, and therefore much lower prices.

The I/O connection issue may be dealt with by Ethernet connected I/O. Since the automation market seems to be moving to use more field bus type I/O already, this is simply an extension of existing market trends.

The issue of flaky software can be solved by using reliable software. This simply *isn't* a problem unless someone insists on using the wrong software. Using the right software also means using an O/S which can be trimmed down to something which will fit on a practical solid state disk.

What this means is that companies such as Siemens, AB, or Schneider could package a nano ITX motherboard in a DIN rail mount box, pre-load it with their software, and sell this as a "next generation PLC".

What could this look like? Well, a nano ITX board is 12cm x 12cm. This means that even mounted vertically on edge with the connectors facing out, this should still fit in a 6" (15cm) deep panel. A mini ITX board is 17cm x 17cm,
which still isn't unreasonable. Both form factors are fully equipped, including video.

The power supply would be a fanless DC-DC converter. The ones I have seen presently are available for 12VDC supply, but an OEM who ordered in quantity should have no problem getting 24VDC versions made for them.

The disk could be a DOC (disk-on-chip) flash memory (VIA lists these as optional) - so there would be no failure prone hard drive.

For system software, we would need a compact O/S to make the DOC practical. For example, White Dwarf Linux (not specifically for VIA boards, but still a good full featured embedded example) has a minimal installation of 12MB. With a DOC size of 32 meg, this still leaves 20 meg for application software. Similar size/cost trade offs can be made with other operating systems (although you're obviously not going to put Windows XP on there).

I/O connections could all be made through Ethernet. If we had a board with dual Ethernet ports, then one Ethernet port could be used for I/O, and the other for general networking. This would keep the machine I/O isolated from
the wider world without having to add a switch, and would also make I/O addressing easier (we don't have to worry about duplicate IP addresses elsewhere in the plant, and identical machines could use identical addressing). I haven't seen dual ports on a nano ITX board yet, but some mini ITX boards have them, and people have been using them for firewalls - so there is a demand for it.

You would also have a couple of com ports, USB, etc. available on board. Since there is also video on board, a local MMI could use a low cost monitor with touch screen. Or - an MMI vendor could package the nano ITX motherboard into the MMI panel, and get into the PLC business. Or - you could connect a traditional MMI panel via Ethernet.

A traditional PLC vendor would just have to take the above off the shelf items, add their own software, and put them in a nice stylish plastic DIN rail mount box, and they would have a "PC" that they could sell as a "PLC". If the vendor didn't tell you what was in there, you wouldn't know the difference. As far as pricing is concerned, this may not compete with very low end shoebox PLCs, but it could certainly undercut traditional mid to high range PLC CPUs.

There are incentives to use this type of system aside from possible cost savings. The main one would be the increased ability to integrate with the general company IT infrastructure. I think that removing the information
bottlenecks between the production systems and the rest of the company (logistics, process engineering, design, finance, etc.) will become one of the most important factors determining the direction of the automation
industry in future.

If automation vendors want to re-implement this IT functionality directly on traditional proprietary platforms, they face the difficult and expensive task
of constantly re-inventing the wheel in what is becoming a more and more complex field. If they base their systems on the sort of platform I have outlined above, they only have to integrate their own software with existing IT software (e.g web servers) which can run directly on the same platform.

There would be nothing stopping anyone else from building their own system along the above lines, provided they had a supply of DIN rail mount boxes and suitable application software. I believe the hardware issues which have limited PC use in the past are about to disappear. Suitable application software however, is still an open issue.

--

************************
Michael Griffin
London, Ont. Canada
************************
 
N
Over the last 15 years or so this question has arisen many times, as a mere grunt in the field of automation i have seen the result of people running complex machines on ying-tong pc's with the veiw to saving money... I have also had the misfortune of having to use PLCs to create a graphic representation of plant...

In my humble veiw, i tend to have much more faith in a bomb proof operating system with a slow under-stressed processor doing the graft, the PC can port the info as required and do all the fancy graphic lovelies! In a control world the PLC will always do a better job and with intelligent i/o, can acheive the speed of most pc based controls. The pc however with always paint brighter pictures.

Cheers Gentlemen
Nick
 
I am writing a paper for a project at school and am looking for studies related to this subject. Can anyone help me locate some good information, particular web sites etc.

Thank you.
 
Top