There are a few different perspectives that have been brought up.
1. Adding additional features and functionality to a machine
2. Troubleshooting a problem
3. The OEM's perspective.
Let's deal with them one at a time...even though some issues will cross over.
There are obviously several issues with modifying a machine, whether new or existing. Any modifications should be discussed with the OEM. Whether you have the code or not, the OEM still knows their equipment better than anyone else. Maybe there is a reason why they didn't incorporate a certain feature.
Troubleshooting of equipment can be done without a program. It is called documentation. Some documentation is better than others. A ladder program will not tell you if an output device is bad. If the OEM has alarm conditions and faults programmed in with an annunciator light or operator interface that will typically provide maintenance with the information they require to fix a problem. (keeping in mind this is a very basic example) Once the system is installed and tested, there should be little reason that someone would have to access a ladder file to determine a fault with the system.
When one has to look at ladder code of a machine, then the code was either not written properly, they want to bypass a certain function or completely change a routine. Changing the original intention without involving the OEM, can cause more problems than it solves.
From the OEM's perspective, Tom brings up some of the points I would have addressed.
Why on earth would someone who spent countless hours to develop their code want to make it available to anyone for free. When you are purchasing a product, you are not buying the right to use the code...the code is part of the equipment you are purchasing. When you purchase a computer, do you get the source code to the operating system? The PLC program is the operating system for the machine...it is what makes it work. When you purchase a PLC and software, do you get the source code for the controller? I don't think so. You get documentation that tells you how it works.
Is it within anyone's right to demand something...in order for the priviledge of doing business...yes. However, it is also the OEM's right to protect their intellectual property. If they choose to provide their code, it should be up to them...not demanded by the customer as a condition of sale. (See the examples above) Customer spec. is bad enough for many integrators who want to do business with certain companies. I can even understand some of the rational behind it...that is the customer's right.
We offer our OEM customer's an alternative to dealing with customer specifications. Many have used our suggestions with success. They don't have to worry about their code being copied, modified or tampered with. No one can get into the controller to make the changes, even if they have our software. We give the OEM control over their equipment design. The customer is no worse off. Reason being, they are buying our customer's equipment. We are merely a component.
We had a recent situation whereby a customer's controller locked up and the program needed to be downloaded. The integrator sent him the program for download. The customer downloaded the program and the scan light continued to flash. We had them send us the program to review. What had happened when the customer opened the program to compile and download, they inadvertantly added a branch down with no contact, thus corrupting the program.
When you give something as important as a program, you are creating the potential for problems.
As a ePLC manufacturer, we even get calls from people servicing equipment with our products installed. They will call us up expecting to obtain a program, source code or schematic for the equipment (or our controller) they are servicing. We have to explain who we are and that they have to go back to the OEM for support. Let's see Allen Bradley or Siemans do that for their customers.
If you are not aware of what I am talking about, we have two articles posted on our web site, explaining what we do for our customers.
www.entertron.com/oem.htm
www.entertron.com/info.htm
I would consider myself to be biased, because my customers are not the end customer but the OEM.
FYI...if the OEM is out of business, we have and will support the end customer to the best of our abilities with what is available to us.
Perspective from a manufacturer.
God Bless,