This is what I've been talking about, kinda.

Why in the world would anyone want to build their own PLC? A simple PLC can be purchased for as little as US$125 from this source:

The software available for programming it is spectacular.

Dick Caro
Richard H. Caro, CEO
CMC Associates
2 Beth Circle, Acton, MA 01720
Tel: +1.978.635.9449 Mobile: +.978.764.4728
Fax: +1.978.246.1270
E-mail: [email protected] <mailto:[email protected]>
Buy my books: Automation Network Selection
Wireless Networks for Industrial Automation
The Consumer's Guide to Fieldbus Network
Equipment for Process Control

"Open" does have a value to most users, but it's not the source directly that's important. It's the fact that you have it, even if you never read it.

The concept is similar to multi-sourcing other components: it's the fact that there are alternatives that matters, not whether you actually buy each screw from a different vendor (which would be a silly way to do things).

Open source is firstly a sort of guarantee; because you have it, and because all the other customers have it, the vendor has to play fair. The mechanism is rarely invoked, but - like a "vote of no confidence" in parliament - it's
important to have it available. It reduces risk.

Mature open-source products tend to have lower error rates (bugs/KSLOC), though for embedded products the difference is much smaller to nil.

Open source considers you a valued colleague rather than a thief. This is difficult to quantify, of course, but would you accept any other goods where you're assumed to have stolen them unless you keep the receipt? (This also leads to real costs such as compliance tracking and duplicate purchases.)

Open source offers a better path to becoming expert. Relatively few will take this path, of course, but when you do need an expert, you're more likely to be able to find/hire one (or become one, if necessary).

Jiri Baum <[email protected]>
MAT LinuxPLC project --- --- Machine Automation Tools
Hi Dick

Funny you should mention them. In my research on the subject. I looked fairly hard at the DL 205 equipment. They offer a proprietary analog to the idea. They even have a plug in processor "WinPLC" from Host engineering that runs a once widely available OS, "WINCE" or something
like that.

I concluded that I could even run Linux on the thing. From their site, it uses a Hitachi SH3 Series 7708. There is a Linux port to that processor that someone with the hardware could whip into shape. It's interesting that the development seems to have run into snags as the forced switch from WINCE to .NET something leaves them a little short. This points out one of the major problems with proprietary software, being orphaned by the software vendor. No such problem with Linux.

But, let's suppose I went this route and got the software I want by running the Linux port on the "WinPLC" and popping that into a DL 205 base. And imagine further that I was rash enough to sign NDAs to write the drivers. I would then theoretically have the capability to run MAT
or my tiny LPLC on what is arguably a PLC. And I agree, their pricing is far more reasonable than the big guys.

Some would think that this is a solution, and indeed I could use it except for the NDAs and any other legal problems with what would otherwise be Free and Open software. But, we haven't solved any of the hardware problems. It's still secret, single sourced, and not
interoperable with anything. Host or Automation Direct could still spoil the party and cost me vast sums in conversion if they decided to discontinue or rev the hardware. And to use it, I would, no doubt, have to agree to whatever silly, one sided, crap they choose to put in a
License agreement.

None of these are problems with your PC, for instance. You can go to WalMart and get another box that will, most likely, run your stuff.

You see, the object is not to have build your own PLC. It is to have a choice that solves all the problems with closed proprietary hardware.

An ideal solution would be to have several vendors producing hardware standardized to at least the degree that PCs are. They could then compete. And we could run software from any of the vendors who choose to port to that platform. Or our own, if they are as tedious and
avericious as the current favorites. And with standard busses and such we would see a much better variety of IO and special function plugins. That would solve the "Y doesn't do X" problems that frequent these pages.

X86 would certainly be one of the better choices for processors as they are powerful and well understood, but strongarm and a few others could also serve to cut costs. But documented, accessable hardware would be a absolute must. At least at the plugin level and to the extent needed to write drivers.

My doing a reference implementation is pretty much to instantiate some of these ideals although there are certainly better ways to accomplish that and I'm sure folks would have input on what a good PLC backplane bus should do, etc. I would be happy if, when I get it done, it was the second, or fifth Open offering that solves these problems as solving the problems is the actual goal.



P.S. I am _not_ criticizing AD or Host as they are both a great deal more Open than any I've seen and should be encouraged. They are trying to do the right thing for their customers. They have simply fallen into the traps laid by MS and popular demand.