Debating PLC vs SoftPLC vs Embedded PC vs Motion Controller definitions

CapinWinky

Member
Join Date
Aug 2011
Location
Virginia
Posts
566
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 out that both are running VxWorks as the OS, both are controlling servo drives, and both are handling all of the logic for their respective machines. I would call him dead wrong on the "PC based" part, but I'm a little fuzzy on when/why a controller would be called a motion controller (or if that term is antiquated). Are there actually things that only do motion and not machine logic? Is any PLC that is capable of servo control a motion controller?

Then I see the post about first scan something or other on a Beckhoff PLC and I see it described as an embedded PC controller. I know Beckhoff themselves say they are Embedded PC controllers, but I'm having trouble seeing what the difference is. I know they use Windows RT as their OS, but is that fundamentally different from everyone else using VxWorks (besides, in my opinion, VxWorks being the superior option)?

I'm most familiar with B&R, which also uses VxWorks for their runtime and they have everything from DIN mounted traditional looking PLC to HMI/PLC combo, to "Automation PC". All three of these form factors can come with Intel processors running only the VxWorks runtime, doing complex motion control and I'd argue that they are all "real" PLCs. They do have the option of running a realtime virtual machine (still the VxWorks runtime) along side Windows on the Automation PCs and I would definitely call that a SoftPLC situation, even though it is hard real time.

Thoughts? What is the dividing line between a PLC, a soft PLC, and an embedded PC? Clarification on what makes something a Motion Controller? I think ultimately, this forum is the largest concentration of multinational controls guys, so I would think a consensus here would be the official definition.
 
OK, I wasn't very familiar with Beckhoff, but their realtime TwinCAT runtime runs along side non-realtime Windows, which is pretty much the same as when B&R runs their realtime Automation Runtime along side non-realtime Windows on their APCs. I would probably call all of the Beckhoff products SoftPLC as a result, which I've decided is a better term for them than Embedded PC Controller since they're still running the IEC programming languages.

I've also had Delta Tau and Copley crammed down my throat as a classic motion controllers that don't do the PLC logic stuff. So then if they provide products that also do the IO and logic, do they stop being motion controllers and start being PLCs?

PAC (programmable automation controller?) is also being thrown around as a replacement term for PLCs that also do servo motion. I think that's a little silly.
 
No comments on the "motion controller" part.

But for PLC vs. Soft PLC vs. Embedded PC, I think it is becoming semantics, rather than real differences.

The "embedded" simply means that the PC hardware is designed to install in a control panel without special precautions.

Some people seem to believe that "not Windows" = "hard".
There does not exist a "hard" PLC that is fixed in stone (or silicon).
A PLC is rugged software running on rugged hardware, not only hardware.
Despite being rugged, todays PLCs have bugs and needs "firmware" updates every now and then. So they are not really "hard".

"Soft PLCs" that run on Windows PCs are running in a parallel with Windows, rather than in Windows. Venturcom RTX extentions is used for that purpose (used by Siemens for example).
Even Microsoft calls Venturcom RTX for "hard realtime":
https://msdn.microsoft.com/en-us/library/ms838583(v=winembedded.5).aspx

On todays CPUs, you can reserve one core for the soft PLC, and another for regular Windows. That gives an even deeper safety that the PLC core can continue no matter what the other core(s) are doing.

So to me the difference between "soft PLCs" and "hard PLCs" today, is that the "soft PLC" software can co-exist with other software on the same platform.

10-15 years ago I would have been very hesitant going with a soft-PLC solution. Today I am eager to try it out. I believe it is the future.
 
A lot of those terms have historical baggage, so now the borders are very fuzzy. I think the difference between an 'embedded PC' and a regular PC was the absense of moving parts (meaning hard drives) and in many cases a vdeo/kbd/mouse connectors in the former. Which is now, with the prevalence of solid-state drives, is not that much of a difference. However, I would still distinguish between the two types on the basis of the expndability: a PC would have at least one or several expansion slots; an 'embedded PC' would not.

As far as what is a 'PC' and waht is not, I think it is simple: a 'PC' runs Windows in some form. It also used to have in Intel/AMD processor (so-called Wintel) but this is also not the case any more.
 
As far as what is a 'PC' and waht is not, I think it is simple: a 'PC' runs Windows in some form. It also used to have in Intel/AMD processor (so-called Wintel) but this is also not the case any more.

No, PC's can run lot's of OS's, Window's being one. Linux, VMSphere, DOS, Chrome, Android, Mac OS X, Syllable, Sky, React just to name a bare handful of others.

And back to the original question, I don't believe that any 'PC Like Hardware', be it a desktop box, industrial PC, Workstation class, Server class, or even Blade Arrays will ever be as reliable as a dedicated PLC CPU.
 
I don't believe that any 'PC Like Hardware', be it a desktop box, industrial PC, Workstation class, Server class, or even Blade Arrays will ever be as reliable as a dedicated PLC CPU.

And what, exactly, is the difference? Modern PLCs are using the same memory chips you put in a PC, Intel Atom processors that you can get in a PC, and the vast majority run customized VxWorks as their OS, which you can load onto a PC. If you think PLCs are some magical other thing, you are deluding yourself.

A PLC is just a rugged computer you can mount on a DIN rail and add IO to. If you make a PC rugged and put a realtime OS on it and connect up some IO, you have a PLC.
 
Last edited:
SoftPLC is a registered trademark of SoftPLC Corporation. They run on embedded Linux on computers with no drives, monitor, keyboard, etc. There are others who do the same, but are called "soft plcs" - they do NOT have anything to do with Windows.

A better term than "soft plc" to indicate the presence of Windows is PC based control. A computer is not a PC.

We have implemented true SoftPLC's (from SoftPLC Corp) since the 90's in applications ranging from simple to redundant hot-backup CPU's with thousands of I/O points.

It is always best to look into the details before discounting any solution based on what you "think" it is 👨🏻‍🏫
 
I don't want to knock what I call soft PLC (running a realtime component along side a traditional OS), they have their places. It also sounds like SoftPLC Corp makes what I would just call a PLC anyway.

I've done several B&R machines where we ran Windows and ARwin (Automation Runtime Windows = Custom VxWorks RTOS that runs along side Windows) on the same APC (B&R's hardened PCs) to have high speed integration of vision systems or custom Windows software, or to communicate with specialized equipment that requires drivers. It's a slick solution to a problem that would usually involve a PLC and separate PC and lots of latency communicating between them.

However, it was a bear to get the Windows side setup just right and if you had to install flaky 3rd party software, you could risk a BSOD that would take down the PLC side with it. It was always fun explaining that the machine was crashing because the driver provided for their half million dollar piece of lab equipment was flaky and not because the APC was defective or the PLC code was bad.
 
That is interesting information. We have investigated B&R and had them present their products. They didnt inform that a Windows crash could bring down the PLC runtime.

According to Siemens, the 1515SP PC soft controller should run truly independently of Windows.
 
a Windows crash could bring down the PLC runtime.

Only a BSoD, Windows can hang and stop responding and all that, but if you've got drivers screwing up the IRQ stuff, it takes down the whole CPU. It's one of the reasons I much preferred ARemb and a separate windows box if you didn't really need the extra few ms of speed. I also just don't like how much setup was involved to get ARwin and Windows to play nice and the HMI displaying properly.

If Siemens is avoiding crashing the PLC side when Windows has a BSoD, I wonder if they're running Windows in a VM and hosting both on a 3rd OS or if their RTOS is running Windows in a VM.
 
That is interesting information. We have investigated B&R and had them present their products. They didnt inform that a Windows crash could bring down the PLC runtime.

According to Siemens, the 1515SP PC soft controller should run truly independently of Windows.

I find this interesting too, because of what I know, one PC or controller or whatever it's called can only have one OS running. and when the OS hangs.. everything hangs... (whether or not different processes) and that is also true for PLC's. they also malfunction once in a while on "system" level.
Unless one "box" seems like "one controller" but has actually two or more, one running "windows" and one running "PLC".

edit: oh well, I didn't read the last phrase of capinwinkly, I notice. Almost same thought ;)
 
Last edited:
And what, exactly, is the difference? Modern PLCs are using the same memory chips you put in a PC, Intel Atom processors that you can get in a PC, and the vast majority run customized VxWorks as their OS, which you can load onto a PC. If you think PLCs are some magical other thing, you are deluding yourself.

A PLC is just a rugged computer you can mount on a DIN rail and add IO to. If you make a PC rugged and put a realtime OS on it and connect up some IO, you have a PLC.

Open up a PC. The first thing you see, on ANY one are a bunch of cables. Huge point of failure. There is no way to make a PC as hardened as a generic PLC CPU. That, and with a dedicated PLC CPU, nobody is going to be loading their favorite music app.

I use some serious PC hardware here, from large servers, to desktops to industrial fanless "Rugged" boxes. They all fail. I've yet to have a PLC CPU fail.
 
I have also seen IPC's that arent much more than a souped up standard PC. But that is not what I am talking about, and I guess also not what Capinwinky is talking about.
The B&R IPC that CapinWinky mentioned is also not just souped up standard PC with "bunches of cables" inside.

The 1515SP PC uses a "hypervisor" to govern the running of the soft controller and windows on the same hardware.
I believe it is like "type 1" as described in this wikipedia article:
http://en.wikipedia.org/wiki/Hypervisor
Not sure how "bare metal" the Siemens Hypervisor is, but I am sure that Windows can be shutdown or restarted, and it wont affect the soft controller.
 

Similar Topics

Good Day to all of you, this is my first post, i will try to explain as best as possible, english is not my natural language. I am performing an...
Replies
0
Views
26
Hi All, Someone at work has put a PLC system on my desk, that's just been taken off an idle production line. He said "It's an S7 PLC. We don't...
Replies
9
Views
148
I have a project to automate four generator sets. The system will monitor and store the load demand of the factory. Once there's Power outage, the...
Replies
0
Views
49
i have two plc 1. s7-1212dc/dc/dc ip; 192.168.0.1 2. s7-1500 1513-1pn ip; 192.168.3.2 i need to get data from plc1 to plc2. any idea how to do...
Replies
5
Views
94
Back
Top Bottom