MatrikonOPC OPC Exchange


Does Open Mean Free?

Posted on August 9th, 2007 by Eric Murphy

When I was writing my posting on “Open Standards and Vendor Neutrality”, I figured someone would bring up the old argument on how can OPC be considered an Open specification, if you have to be a member to access the documentation?  Sharon Rosner had this to say:

“The article discusses ODF and Open Office XML as two competing standards, the specifications for both of which BTW are readily available for download.  When will the OPC foundation offer the OPC specifications for download by anybody?  “Can OPC UA really be considered an ‘open standard’ when it’s really open only for secret club members?   I find the behavior of the OPC foundation to be really baffling. You say one thing and you do another. But by your policies you shut out a large number of independent developers who are thirsty for more information on OPC. There are many OPC products out there which were developed by reverse-engineering rather than by implementing the standard. If O’Reilly were indeed to do a book on OPC, would you let them publish the specs? ”

It seems the argument boils down to the question “Does Open = Free?”.  Since I’m an engineer, my first logical thought is to find the accepted definition of ‘open standard’.   The ever useful Wikipedia has this to say on open standards.

An Open standard is a standard that is publicly available and has various rights to use associated with it.  The terms “open” and “standard” have a wide range of meanings associated with their usage. The term “open” is sometimes restricted to royalty-free technologies while the term “standard” is sometimes restricted to technologies approved by formalized committees that are open to participation by all interested parties and operate on a consensus basis.  Some definitions of the term “open standard” permit patent holders to impose “reasonable and non-discriminatory” royalty fees and other licensing terms on implementers and/or users of the standard.

If you read the entry in detail it turns out that according to ITU-T and EU definitions Open is not necessarily free, but if you are Danish or Bruce Peren it is.  Which amounts to a sticky wicket that doesn’t really answer things at all.  Of course finding a definition to stand behind is just semantics anyway. 

The real question is “Should the OPC specifications be available for free download by everyone?”.  The OPC Foundation DID offer the OPC specifications for download by anybody for almost ten years.  The OPC Board of Directors did not make the decision to limit access to members only until May 1, 2006.  It was not a decision they came to lightly, and knew that it would have an impact on OPC implementation.  The main influence was the message coming from the end users.  “We don’t what more OPC products, we want better OPC products.”   As Tom pointed out in one of his early blog postings, there were many client applications built on the OPC technology by non-members that did not measure up to the expected quality and had many interoperability problems.  

If the Foundation has to sacrifice some quantity in order to increase quality then so be it.  In the long run, a solid, reliable, truly interoperable standard will become the preferred and demanded choice.  However, allowing things to continue as they were would lead to increased frustration among the existing OPC user community and eventually result in decreasing trust and adoption of the OPC specifications.   Ultimately everyone would lose.   

In order to improve quality of implementation means the OPC Foundation needs to know who is doing the implementation, be in communication with them, and ensure they have access to and are using the appropriate development, validation and testing tools.  They have followed the lead of many other organizations in requiring membership to track who is developing the technology.  I think that is a key distinction.  You don’t have to be a member to make use of the technology, but you should be a member if you are developing OPC products that will be connected to OPC products from other vendors. (Even this is not necessarily true if you are developing using a third-party toolkit.).   The club is not secret.  Anyone can join and many have.

If the cost of membership is a barrier to entry for some developers, then what about the costs associated with testing, validation and compliance?  Will they be deemed too expensive to undertake as well?  What assurances do end users have that an OPC product developed completely outside of the OPC Foundation support and testing structures will be interoperable?  I’d concede there may be some cases where someone may wish to see in detail what OPC offers, before deciding whether or not to embark on a development cycle, such as open source projects, or initial R&D phase of a product.   Tom mentions plans to address these cases in another of his posts.  To my knowledge that plan is still true.    In any case, I’d argue that there are tutorials, free tools, training classes or other ways to get enough understanding of what is involved without seeing the specifications.

Will the current ‘pay to play’ model improve overall quality of OPC installations?  Time will tell.  Personally I believe it will, but of course I don’t know for sure.  What I do know is how it was before wasn’t working well enough.  (If I had all the answers, I be independently wealthy, living in a remote seaside cabin enjoying the sunshine and a tall Guinness.)

4 Responses to “Does Open Mean Free?”

  1. Fred Loveless Says:

    I hear and empathize with the people that are complaining about the double standard of “Open Standard”. However, i would like to argue the point from my side. I run the support department at Kepware. I have seen a dramatic increase in support calls for customers using poorly designed OPC clinet applicaitons with our products. Typically the designers of the OPC product opted for the easiest programming method which unfortunately in the OPC world is the least optimized method. That is not to say that ours or any other OPC Server out there is perfect.

    My argument is that these poorly designed products tend to leave a bad taste for OPC in the mouths of the users. Hence, since many of the effect companies are large manufacturers, the reputation of OPC and good OPC products suffers.

    I am all for open standards but I feel that there should be an onus on all parties who are manufacturing these other products to full understand all of the aspects of the standards that they are intending to impliment.

    The first rule I learned, many years ago, in my fist programming class was that they easiest way is not always the best way.

  2. Eric Murphy Says:

    Thanks for the comments Fred. Anyone who has spent any time on a Help Desk knows what it is like to try and explain “It’s not a problem with OPC, and it’s not a problem with our stuff. It’s the other guy’s fault”. I agree with your comments on all parties needing to be involved. At the end of the day if two products following the same standard have interoperability problems, it’s everyone’s problem. Someone has to stand up and make changes. The download policy is the OPC Foundation making a change, and responsible OPC developers will make whatever changes they have to ensure interoperability with other products.

  3. Yesid Hernandez Says:

    Hi,

    I’m mainly in the academic field, working as a instructor in a technical institution and right now doing a Master in Industrial Automation, so for this background I think the “open standard” OPC specification should be “free as free beer”, so the ones who can’t afford the paid can have it and do some research on it.

    The way to protect the user from OPC products not well design can be focus on a validation process and a educational process with the corresponding user.

  4. Kent Mansfield Says:

    I think that the standards should be available. I would like to look at them to know more about the guts of OPC from a users perspective. I have looked at a lot of documentation on the OPC foundation website and anything with details is sadly lacking. Vendor training tends to be “push the latest product” which I find annoying.

Leave a Reply

For spam filtering purposes, please copy the number 5487 to the field below: