MatrikonOPC OPC Exchange

Archive for March, 2008

OPC, Web Service Standards and Keeping Your Eye On the Ball

Wednesday, March 26th, 2008

Before I get into today’s thoughts, this video is a good lesson in ‘keeping your eye on the ball’.   Watch the white team and see if you can count every pass.

You may have seen that before (especially readers from the UK), but personally I went ‘What the????’ and backed the clip up to make sure it wasn’t a trick.  Besides being a good message about cyclists, it’s a great illustration of what happens you’re so focused on a particular task or set of functionality that you miss what else is going on around you.   Well and good, but how does this tie in to OPC and other standards?   I think it’s something to consider when choosing between a broad, adaptable standard like OPC/OPC UA or an industry specific standard such as oBIX or BACnet/WS.  (or maybe I was just really amused by the video and had to work it into a post)

With the world moving towards service based architectures, everyone and their dog is developing web service based systems.  (So much so that a new term JBoWS or ‘Just a Bunch of Web Services’ has emerged.)  You can easily see what is happening:  Companies, industry sectors and vendors all desperately need integration and interoperability.  That is what drove OPC adoption to where it is today.  Now that the focus is on the enterprise, they need the interoperability to reach there too, and web services is the most promising technology to get it there.  The result is many emerging industry specific service based or XML standards: oBIX and BACnet/WS in building automation, PRODML and WITSML in the oil and gas sector, WAMDAS in pharmaceutical, and many others.  Of course there is the other obvious option, OPC UA.

As an end user do you go with an industry specific implementation that may or may not evolve beyond JBoWS?  Or do you go with a broader standard like OPC UA that can meet the same needs, but may not be tailored exactly to your situation?  Let’s look at it in a slightly different way.   Do you focus on the white team and passing the ball between them?  Will you ever need to get the ball to the black team?  (network expansion, integration of other systems, business system integration…) If so, can you?  What happens when the moon walking bear shows up?  (Requiring new services, mandated security and/or redundancy requirements, schema changes…).  The player on the court has to keep an eye on the ball.  The coach on the side line has to follow the ball, both teams, the referees and the playing field.  Is your enterprise connectivity a player or the coach?

I can’t possibly go into a full match up of OPC UA and all the other industry specific web service initiatives.  What I will do is put OPC UA to the some key questions that determine whether or not an implementation is truly SOA or JBoWS.   (I’d love to say I came up with these questions, but I didn’t.  They come from various SOA blog sites I follow)

1.     Are the services a true representation of the core behaviors found in your key enterprise systems, as well as new services required to provide other critical behaviors?
The important word here is ‘enterprise’.  OPC UA covers real-time, historical and event based data regardless of its source.  OPC UA also provides for security, redundancy, communication robustness and a comprehensive and extensible information model.
2.     Have those services been abstracted for most foreseeable uses?
The base services sets are highly abstracted, with Functional specifications that provide implementations commonly used by OPC today.
3.     Are the services combinable into composites, and are those composites well defined?
The services sets are broken down into well defined, combinable composites that cover server management, address space, data management and subscriptions.
4.     Is there a plan for governance and security, managing the use the services?
The Profiles specification and the OPC Certification process is a clearly defined and measurable process
5.     Are both the information and services abstract-able to an orchestration/process layer for configuration-oriented agility of most of the IT assets?
The services sets and information model are abstracted for agility and flexibility.
6.     Is your information/data managed in such a way that you’re loosely coupled from the underlying physical schemas?
Being loosely coupled from the underlying physical schema has always been the key feature of OPC.  OPC UA follows the same principle.

To me, it’s clear that OPC UA is well on it’s way up the SOA maturity chain.   Take the industry specific set of web services of your choice and ask yourself the same questions.  I’m not saying that all other web service models are wrong.   The line between a general interface specification that is open, interoperable and flexible without sacrificing usability, to one that is specialized, rigidly defined and highly integrated is a tricky thing to define.   It may be the case that some specialization is needed.   However once there is duplication of effort, conflicting message structures or composites that don’t integrate, the ‘standards’ quickly degrade to a bunch of web services.   The OPC Foundation is fully aware of this possibility and so  OPC UA has the Access Type specifications and industry specific Companion specifications.   Collaborations with groups such as EDDL, MIMOSA, ISA and others are a good initial start.   The more standards bodies or user groups that contribute UA information models, the wider and more complete the specification adoption will be.

If the industry standard you are looking at doesn’t meet the criteria of the above questions, and is not actively collaborating with OPC UA, then the next question you should be asking is ‘Why not?’

The OPC Soapbox Just Got Bigger

Sunday, March 23rd, 2008

For those of you who celebrate it, Happy Easter, and a big Welcome to Spring for everyone.   It’s a time of new beginnings, growth and blossoming. 

Speaking of new things popping up, if you’ve been browsing around the OPC Foundation blog site, you may have noticed the new OPC TAC blog.  For those who might not know, last summer the OPC Foundation formed the Technical Advisory Council (TAC) to advise the management and help guide the technical direction of the Foundation.  The goal of the OPC TAC blog is to be a source of information on what is happening with the OPC Foundation and the progress of the various OPC UA initiatives.  As members of the Technical Advisory Council, myself and the others will be posting there.

So why another OPC blog?   The idea kind of started when Tom and I were chatting at a recent Roadshow, and I was giving him a hard time over his blog.  (Of course with Tom’s frantic travel schedule, OPC Foundation duties, Roadshow presentations and cross-industry collaboration initiatives, I’m personally amazed the man finds time to brush his teeth, let alone regularly update a blog).   Jokingly he suggested I could help him out with a post or two.  That led to a few more discussions (and more than a few Sam Adams).    Since blogs are both a means of communicating a message and receiving reader feedback, and since the TAC members act as representatives for all OPC members, the eventual outcome was the creation of the OPC TAC blog.

The goal of the OPC Exchange blog always was, and still is, to talk about how and where OPC is being used in industry today.   To be a trusted source to answer questions like: Who is using OPC and Why? Where is OPC going, and how do users get there from where they are today?   On the other hand, the OPC TAC blog is like a window into what is happening with the OPC Foundation and the great stuff going on with OPC UA.   I’m more than happy to get up on the now even bigger OPC soapbox and give my two cents on those topics too. 

After all, you can never say enough about OPC.  Stay tuned.

OPC and SQL

Thursday, March 20th, 2008

When discussing OPC, particularly OPC HDA, the question of OPC vs SQL/ODBC often comes up.  Although both standards deal with accessing data you usually see that OPC and SQL are used together in systems, rather than an either/or setup.   The primary design of OPC DA is for collecting real-time data in a standardized way from countless data sources and vendor products, spanning all industries.  Relational databases, which use SQL/ODBC are designed for storing data and provide standardized ways of accessing and retrieving the information (queries, views, table structure, etc).   Sounds like the perfect match to me!   Apparently I’m not the only one, since you will find many products that leverage the power of OPC and SQL.   Just recently Inductive Automation announced they will be bundling the OPC Tunneller with their FactorySQL product.   ‘OPC in, SQL out’ is a clear choice.

Where things can sometimes get interesting is the question of ‘OPC HDA out or SQL out?’   In order to answer that question, you really need to consider:  What data is being stored.  Who needs to access the data and why?  How is the data being used or presented?   In most cases, the answers really reflect the bigger question of ‘Relational-database or Process Historian?’  That’s a whole ball of wax I’d rather not get into.  Enter ‘historian vs database’ into the search engine of your choice and you can find papers fervently defending both positions.   Most arguments focus on speed, capacity, flexibility and suitability for a manufacturing environment.   As hardware and programming evolves these distinctions become increasingly more blurry.

The primary design of OPC HDA is accessing, updating and managing tag-based time-series data.   SQL is a standard interactive and programming language for querying and modifying data and managing databases, regardless of how the data is related.  Again the choice of which is better is a fuzzy choice to many.  Which is why there are products that give users the flexibility to decide: where to store their data and how to access it.   OPC HDA out of SQL/ODBC or SQL/ODBC out of OPC HDA, as well as ‘industrial relational databases’ that make use of OPC and SQL.

At the end of the day the choice is up to you.  As this article points out, you will probably end up with both.  

Those that want to know more details on how OPC and ODBC fit together might be interested in “OPC Gets Relational with Databases: Accessing SQL Server, Oracle and other Relational Databases Using OPC

Sláinte! Go Green Today

Monday, March 17th, 2008

Happy Saint Patrick’s Day to one and all.  May the Guinness from the taps and the data from the OPC servers flow free and untroubled today and everyday.  Although today is the day to wear green, over at AutomatedBuildings.com, ‘Go Green’ is the theme for the month.  There’s even an article on Going Green with OPC.  (I’ll blame the shameless self promotion on the Guinness or three I’ve had.  People keep dropping by, and you have to share a wee nip with them on Saint Patrick’s Day.  I’m sure it’s one of Murphy’s laws.)

Going Green seems to be a hot topic these days.  Maybe it has something to do with all the crazy weather we’ve been having this year.  Just last week there was a conference on the topic.  If you look at the sponsor list, it’s a who’s-who of OPC users. RioTintoAlcan, Siemens, Suncor, Nexen, Syncrude, Dow, Dell… the list goes on.  It would be interesting to see if any of those Green sponsors are using OPC servers like BACnet, Johnson Controls or other building automation protocols as part of their systems.

However you choose to be Green today, I’ll sign off with the obligatory Irish blessing:
“MAY YOU LIVE AS LONG AS YOU WANT, AND NEVER WANT AS LONG AS YOU LIVE”

Some Additional Comments on MS08-008

Thursday, March 13th, 2008

Digital Bond has recently posted an informative podcast that discusses control system security with a couple of industry experts.  One of the topics is the MS08-008 vulnerability, vendor reactions and discussions on how these things should be handled.   As it turned out the MS08-008 vulnerability wasn’t that big a concern since it required user intervention to exploit, was easily fixed and didn’t directly affect that many products.  However there are some good questions raised on if and when a serious control specific vulnerability appears, how vendors should deal with it in terms of disclosure, testing and patching.  Of course the biggest challenge control system vendors face is patch management, either validating fixes from Microsoft or implementing and testing fixes of their own.  It’s a good listen.

On the topic of reactions and vendor response, let me put on my MatrikonOPC hat for a minute:  “Our developers reviewed the security bulletin and determined that none of the MatrikonOPC products made use of the affected components.   The Microsoft patches were applied to systems running several MatrikonOPC products to ensure patching did not adversely affect their operation.  These tests where run on against the various Microsoft operating systems MatrikonOPC supports.   The patch did not adversely affect our products.  A notice to that effect was posted on our Support Knowledge Base.”   I’ve seen a comment or two out in the websphere that didn’t think that point was made clearly enough.

OK, back into the OPC Exchange blogger hat.  My aim with this blog is to provide information on a wide range of OPC topics to all OPC users.   I hoped most OPC vendors would have validated the patches against their particular products and posted their findings or comments.   In case there were those that didn’t, my post was aimed at providing users with some guidance on how to deal with this particular vulnerability.  Was it “OMG-the-sky-is-falling”, “Don’t-Worry-Be-Happy” or somewhere in between?  In this case it was somewhere in between: it shouldn’t have affected many systems, but the possibility was still there.  My advice was “We tested our stuff and things were OK, but be prudent and patch.”  

At the end of the day, if you are using a product from a vendor, that vendor needs to tell you what is right for you.   After all, patching systems is sometimes easier said than done, and only they know what their products do under the hood.

OPC, Wireless and Off-shore Platforms

Tuesday, March 11th, 2008

Read an interesting post on the Emerson Process Experts blog on the story behind a wireless application on a North Sea oil and gas platform.  Of course what caught my attention was the fact that they were using OPC in their architecture.   The original press release focuses on the benefits of the wireless applications: cost savings, less wiring, ease of setup etc.  All things that are important when implementing something floating out in the middle of the North Sea!   Thanks to Jim Cahill for digging a bit more into the background of the project and highlighting the OPC applications.   Not only was OPC used in the initial setup and quality monitoring, it also provides real-time updates on the pressure readings.  Using the combination of wireless and OPC technologies StatoilHydro reaps big benefits:

“The real benefit is that the annular pressured is monitored continuously by the operations staff rather than twice a day through manual readings. Pressure drop in the annulus might indicate a problem with the well. These continuous measurements provide operators an opportunity to take corrective action much earlier to help avoid well rework and lost production.”

They don’t go into details on the data transfer between the platform and the shore, but I know there are off-shore setups that are making use of OPC here as well.  I’ve worked on an architecture that used OPC Tunneller to handle timeouts during periods of spotty network connection.   The system also used an OPC HDA data buffer at the platform and History Link to guarantee the delivery of any missed real-time data to the historian on the mainland.

Wireless is the new kid on the industrial automation block, so it gets a lot of attention.  Maybe OPC is such a given in so many systems, it just doesn’t get the limelight as much.  Oh well, that’s what this blog is for.

OPC Technical Seminar in Boston

Thursday, March 6th, 2008

Don’t miss the upcoming OPC Technical Seminar in Boston, on March 13th.   This will be number two of eight free training seminars this year.  I attended the kick-off session in Long Beach, and can tell you it’s a great opportunity. 

As always these Seminars are designed to cover the fundamentals of OPC including Servers, Clients, OPC Data Access, OPC Unified Architecture, Best Practices and Compliance.  This is a excellent opportunity for end users, system integrators and anyone involved in currently using products or considering using products that involves multivendor interoperability for automation and beyond.   Training and demonstrations of the technology facilitating maximizing the use of products and services is one of the key messages of these events. 

In addition to learning about OPC, how to use the technology and best practices for implementing, attendees also get to talk with industry experts from the numerous vendor sponsors.   Through out the day there are numerous raffles of products and gifts from the sponsoring companies.  (At Long Beach there were beach chairs, toques and iPods!  I wonder what Boston has to offer?)   

The details are as follows:   The OPC Boston Seminar will be held at the Boston Marriott Quincy located at 1000 Marriott Drive, Quincy, MA 02169, ph.617-472-1000.  Registration Badge Pickup, continental breakfast will start at 8:00 a.m. and the presentations will start at 8:30 a.m.  Lunch will be served at 12:00 p.m. and the seminar will conclude about 4:30 p.m. At the completion of the seminar, refreshments will be served until 6:00 p.m.  Register for the free event here, and details on the Boston Marriott Quincy hotel are here.

Amazing Chemistry Videos and OPC

Tuesday, March 4th, 2008

The Wired Science blog has a posting of 10 amazing Chemistry videos.  As the post said “Fiery explosions, beautiful reactions, and hilarious music videos are great reasons to be excited about chemistry”. Coincidently, those are great reasons to be excited about OPC as well.   Since OPC is usually used in process plants, generally you don’t want to see fiery explosions and out of control reactions.   So instead I’ve found an OPC example that is related to each chemistry video.   I had to tie OPC into this somehow, didn’t I?   I’ve embeded the videos directly into the blog to better tie in the OPC commentary.  

10. Thermite vs. Liquid Nitrogen

Can liquid nitrogen freeze molten iron?  Apparently not.  But liquid nitrogen is a component in the pre-cooling system of helium cryogenic system at the National Synchrotron Radiation Research Center (NSRRC) in Taiwan.  It is a fully automatic system using the Siemens SIMATIC 300 PLC, and has an OPC based supervisory system.

9. Gummy Bear Dies a Fiery Death in Potassium Chlorate

Potassium Chlorate can be nasty stuff and is used in making explosives.  Strangely manufacturers of high explosives don’t provide a lot of public detail on their control systems.   I did find this excerpt from an article CONTROL ran in July 2006:
“… BAE Systems Royal Ordnance North America, Kingsport, Tenn., also uses a mix of PLC/HMI and DCS solutions in the process of manufacturing high explosives. The facility’s most recent installation uses PCS7 controllers (PLCs) from Siemens, which perform both discrete and process functions in the batch chemical manufacture of various grades of explosives. There is also a Foxboro I/A DCS system that controls distillation columns and related systems in the organic acids plant, and some older Siemens and Allen-Bradley PLCs that control switches, valves, and pumps in water, steam, and utility areas.”

OPC products are available for all these systems, so it’s conceivable they COULD be using OPC in here somewhere.

8. German Scientist Spits Flaming Spores

When flammable powders are dispersed in the air, they can explode. Throughout history, that phenomenon has lead to explosions in grain storage facilities (or sugar factories).   Of course in our industry the focus is on preventing dust explosions.   Part of the process would be monitoring equipment and building environments.  With OPC of course.

7. The PCR Song

Filmed in the style of a celebrity benefit, this music video is a commercial for a BioRad thermocycler, which is essentially a DNA copying machine. Currently OPC is probably not used a lot with PCR (polymerase chain reaction) machines or DNA amplification.  However OPC is being used in the biomedical field.  Nova Biomedical, who provide blood gas/electrolyte analyzers in hospitals, and chemistry analyzers for cell culture and fermentation in biotechnology, have an OPC Server for their BioProfile analyzers.

6. Mysterious Reaction Creates an Undulating Brew

In 1973, this spectacular demonstration was perfected by Thomas Briggs and Warren Rauscher, two amazing high school science teachers. When several clear liquids are combined, the mixture quickly changes colors — back and forth — over and over again.   They never say what the two liquids are, so tying this with OPC was a bit of a challenge.   The only process I could think of that turns a very dark liquid into a pale yellowish liquid, over and over again, would be what eventually happens when I drink Guinness.   Granted the process doesn’t go back the other way, but after a while the floor starts to undulate.   OPC and beer are definitely connected.

5. How to Make Stalagmites Instantly

Sodium acetate, the chemical found in many hand warmers, will suddenly crystallize if you prepare a saturated solution and pour it onto a seed crystal.   If you were wondering how much sodium acetate was in a particular sample of hand warmer gel, you’d simply stick it in a Gas Chromatograph and historize the results using OPC.   As this GC brochure says “Software is available for pre-analysis valve switching, post-analysis special treatment of data, special reports, transfer of data to a spreadsheet, and transfer of data to an OPC server

4. Elephant Toothpaste

This video shows what fun you can have with concentrated hydrogen peroxide, soap, and a pinch of sodium iodide.  A less fun, but much more common use of hydrogen peroxide is for pulp- and paper-bleaching.   OPC is being used in many pulp and paper facilities.

3. How to Make Your Own Glow Sticks

OK this one is tough, since there is not a whole lot OPC and chemiluminescent compounds have in common.  All I found on glow stick manufacturers is that they all seem to be in China or Taiwan.  OPC China is a regional branch of the OPC Foundation.  That’s all I got.  (The demo is still cool though.)

2. The Inner Life of A Cell

Animator John Liebler gave the world a look at the beautiful ballet of molecules which gives rise to life.   Biotechnology is an amazing field, and it too uses OPC.   This case study talks about using OPC to connect several systems together including Moore APACS, Wonderware IndustrialSQL and Allen-Bradley.

1. Magnesium Burning Between Bricks of Dry Ice

If you thought that nothing could burn while sandwiched between two bricks of dry ice — think again. Magnesium can combust in an atmosphere of pure carbon dioxide.  Magnesium compounds, primarily magnesium oxide, are used mainly as refractory material in furnace linings for producing iron, steel, nonferrous metals, glass and cement. Magnesium oxide and other compounds also are used in agricultural, chemical and construction industries.   The steel industry is yet another place OPC is being used, even with old VMS equipment.

Well there you have it.  OPC and some very cool chemistry.  What more could a chemical engineer ask for?
If you want to see some of the follow up comments or other suggested links, you can visit the original Wired Science blog post here.