PLC vs embedded PC

Charbel

Member
Join Date
Jan 2012
Location
Beirut
Posts
307
Dear,

I wanted to ask concerning the main drawback that the embedded PC (from beckhoff for example) have with respect to the PLC.

usually embedded PC are controllers running over an operating system maybe Windows CE, and usually windows operating system are prone to failure which render the embedded PC unreliable in some cases.

I really appreciate your feedback on this issue, and where do you feel there is a need to use embedded PC instead of a PLC.

thank you for your feedback,

charbel
 
Drawbacks:

Reliability. Even completely solid state PC's have reliability issues, possibly because they do to many things, have too many drivers and subsystems that aren't related to just running logic.

Pull up the task manager on whatever OS you are currently using. How many running processes are actually focused on whatever application you are actually using? Every extra process, is a failure point. The chances of failure increase as you have more and more processes by different vendors.

Longevity: How long do Operating systems and software last? What is their life-cycle? How long has the oldest running PLC in your facility been running? I have PLC-5 Systems here from 25 years ago still running. And I can still get parts (expensive, but easily available). The original PC's on that system failed for the final time about 18 years ago. Replacing them became impossible 15 years ago, as the software and associated hardware were not compatible with anything out there.


Even stripped down OS's like CE change from release to release, maybe the application layer vendor upgrades their software to be compatible, or maybe not. We have 50 times more problems with even current HMI software (granted, it is Rockwell's garbage FTView) then we do with the PLC's themselves. I can't even remember ever having a PLC processor fail.


I can't see any reason ever for an embedded PC for any process control.
 
In my opinion, Windows CE should not be associated with the phrase "embedded PC". By most the acronym PC is thought of as a computer running the Windows desktop OS such as Windows 7/8/10. Windows CE is a completely different OS written to be used on devices and works not only on Intel processors but also can run on other processor architectures such as ARM or MIPS. It also has real-time capability, known as RTOS, that full Windows is not capable of.

So now let's compare that to a very popular PLC, the Allen Bradley ControlLogix. This controller uses an OS named VxWorks. VxWorks is a multiprocessing RTOS that is designed to run on devices and different architectures such as Intel, ARM, and MIPS.

If someone considers a Windows CE based controller as "PC based" because it has the option of a mouse and keyboard, then what happens when VxWorks is installed on a PC. Does this suddenly make a ControlLogix an "embedded PC" controller?

From a functional point of view, what is the major differences between WinCE and VxWorks? Not much more than the companies behind them, Microsoft versus WindRiver. They both are a multitasking RTOS that runs a specialized software whether it is TwinCAT or the ControlLogix PLC program interpreter.

I have been involved with probably over 50 installations of CE based Beckhoff controllers and would dare say the reliability is no different than that of a ControlLogix system. The reliability factor didn't come down to the OS or hardware, but the PLC program. RSLogix binds you in a tighter sandbox to keep you from doing too many stupid things, but TwinCAT gives you more freedom which allows the programmer to fault the PLC program easier, such as divide by 0 or going beyond array bounds. Taking that in consideration, if the PLC programs were exactly the same, the reliability would be no different.

What is the advantage of one over the other? Very little. Although there is one advantage that I discovered of a WinCE based system. One time an IP address needed to be changed and no PLC programmer was available. I was able to tell someone in IT how to get CERHost software to remote desktop into the controller, then from there they were familiar enough with Microsoft software to be able to change an IP address. This would have been virtually impossible with a conventional PLC.

I do have to disagree with the argument of the OS version becoming obsolete as a disadvantage. VxWorks goes through version upgrades also, but that does not make it necessary to upgrade the PLCs OS. I have a 10 years old CE based controller with an old version of the OS, but I still continue to program it with the latest version of TwinCAT.

Now if you consider a Windows XP/7/8/10 based PLC, you are now in a completely different ball game. You now throw in all the known problems with Windows based PCs.

I know all this makes me sounds like I am a hard core advocate for Windows CE based controllers and TwinCAT, but it is not the case. They both have their place and I use one just as often as I use the other. I believe in using the right hardware for the right purpose and not trying to force fit something into the wrong place. However I will absolutely avoid using a PLC system based on Windows XP/7/8/10
 
Last edited:
I suggest that you look into one of the PAC systems available today as they attempt to marry the PC and PLC, some do a good job of this. Keeping the integrity and dedication to the 'process' of the PLC with some of the flexibility of the PC. For instance the GE-IP RX3i CPU can take a custom Block of Logic written in 'C'.

Another option for a hybrid is the GE-IP QuickPanel+ which runs on the Windows 7 embedded and does both HMI and Logic. DO2495: QuickPanel Plus Operator Interface Quick Start Guide, GFK-2893



Dear,

I wanted to ask concerning the main drawback that the embedded PC (from beckhoff for example) have with respect to the PLC.

usually embedded PC are controllers running over an operating system maybe Windows CE, and usually windows operating system are prone to failure which render the embedded PC unreliable in some cases.

I really appreciate your feedback on this issue, and where do you feel there is a need to use embedded PC instead of a PLC.

thank you for your feedback,

charbel
 
Last edited:
One big difference is that if your embedded PC runs Windows, it needs an antivirus and regular updates. Even if it isn't connected to the internet, it still needs to be kept up to date. However, updating the OS usually costs uptime, and you never know what it might break. There are potential risks on both sides of that equation.

You might want to doublecheck the product lifecycle of the embedded PC as well. PLCs are typically available for 10-20 years, whereas a PC is typically only available for 2-3.
 
One big difference is that if your embedded PC runs Windows, it needs an antivirus and regular updates. Even if it isn't connected to the internet, it still needs to be kept up to date.
This is another aspect where Windows CE does not apply. Being concerned with anti-virus software on a WinCE device ranks at about the same level as wanting to put anti-virus software on your AB or Siemens PLC. Although getting a virus in either case is not impossible, currently they virtually do not exist.
 
Originally posted by Archie:

Although getting a virus in either case is not impossible, currently they virtually do not exist.

The "why" of this is the answer to why I am not particularly concerned about hackers in the industries I serve, at least not yet.

It comes down to saturation and availability. If you were a pimple-faced kid sitting in your parents' basement in your underwear drinking a case of Mountain Dew a day, would you spend your time hacking into a control computer that packs toilet paper into boxes or hacking into a financial institution that controls billions of dollars daily? Would you spend your time trying to penetrate an operating system that has limited saturation in the market you deal in (the commercial PC market) or would you go after something you already know because it is basically on your personal machine and has billions of copies around the world?

It is human nature. There is no notoriety in making a conveyor full of canned goods stop moving in the middle of a shift. That won't get you on TV. In effect, most of us are safe because the bad guys don't care about us.

Keith
 
Beckhoff says that TwinCAT does not "run in Windows", but rather runs below Windows and gives Windows time slices to operate. They say that Windows can blue-screen and not stop the PLC code running. This may be true for all CodeSys-based PLC's. I don't know if CE is different than XPE. However, if your system requires interaction with an HMI program or operator, a Windows crash might cripple that (I don't know, could take out the ethernet comm), but the toilet paper should still keep packing into boxes. Losing HMI ethernet should not affect EtherCAT, since it uses its own NIC driver.

Re viruses, one easy solution is to set a "write filter" on the whole hard drive (or specific files & folders). This is built into Microsoft embedded Windows and Beckhoff gives you a simple utility for this. Indeed, the utility is too basic and gives no warnings, so I accidentally set it once and found the PLC kept reverting to an old I/O configurations (years later after a reboot), which took a while to figure out. If you do use the write filter, just tell the midnight crew to reboot the PLC and it will come up with whatever configuration it had when you set the filter. When the filter is on, users think they are writing to the hard drive, but it is just to a temporary virtual version.
 
Last edited:
Re:

I think one of the factors that should be considered is the kind of application that is required to be done.

If the application is a fairly simple and repetitive one, where all the parameters and conditions are well defined then a PLC may be better suited.

However if the system is required to be flexible because of changing conditions, involving user interactions etc. then a PC may be a better choice.

In such cases system programming becomes very complex with lots of parameters and conditions to be considered. While it is possible to program a PLC, it may be easier to develop a program for a PC.

What about system updates, are you planning to do this remotely or on site ? While PLCs can be remotely updated, this feature is more common in PCs.

thanks
a
 

Similar Topics

Morning all, we have a CP2715-0010 1.46GHz Atom running Windows 10 Enterprise (Embedded PLC with the HMI). Problem being is the performance is...
Replies
1
Views
626
Hi - I have an application where there is an option to use a PID loop embedded in the Transmitter to directly control (via 4-20mA output from the...
Replies
4
Views
1,069
A coworker of mine keeps telling me that the PacDrive3 (Elau) is a PC based Motion Controller while the ControlLogix is a "real" PLC. I pointed...
Replies
18
Views
12,978
hello friends is it possible to communicate between PLC wit serial port(any make) and any other embeeded control having serial port i want to do...
Replies
2
Views
1,562
Hi all. I am starting to learn how to program the webserver that is on Siemens PN CPUs, using the utility program Web2PLC. Anyone else doing...
Replies
13
Views
7,463
Back
Top Bottom