Converting from DDE to OPC, was OPC Server robustness

  • Thread starter Anthony de la Rosa
  • Start date

Thread Starter

Anthony de la Rosa

How does one convert from DDE to OPC. Is this a straightforward process? or does it involve considerable amount of rewriting code? How would one do it from Wonderware for example? The PLC's are A-B PLC5/80E's and the I/O server is RSLinx 2.1.

Yes it's straightforward but you do have to rewrite a lot of code (i.e. replace the DDE client code with OPC client code) to do so. If you are using a SCADA package which doesn't support OPC (such as Wonderware) then there are some products in the marketplace which 'convert' a DDE based server into an OPC server (notably from Merz and Matrikon).

Hi Anthony,

I did this conversion using a SLC5/04, RSLinx and Wonderware. The first thing you have to do is download OPCLink from Wonderware's site. There are specifics in setting up OPCLink to communicate with RSLinx, and hopefully you are a Comprehensive Support subscriber to Wonderware because all the gooey details are spelled out for you in Tech Note 159. Probably the most work you will have to do is to go into your tag database in your WW app and edit all the tagnames to include a prefix; i=integer, d=discrete, r=real,
etc. In other words, if your tag address is N7:0, it will need to be changed to iN7:0. The Tech note is really comprehensive so I hope you can get your hands on it.

Hope I've helped.

Jeff Shiepe
Nestle USA, LJ Minor

Michael Johnson

WonderWare does support OPC. If you use Factory Suite 2000, then you would use a drive called WonderWare OPCLink. It is a standard driver that comes with WonderWare.

Mike Johnson

Setting up an OPC Client/Server with WonderWare and RSLinx is easy. You have to use WonderWare OPCLink for the OPC Client and the Topic Name has to match the topic name defined in RSLinx.
There is no copy to clipbroad with the OPC usage. In WonderWare, the format for OPC does not require a lot of rewrite except for the fact that if you are using an integer, like N14:56, in the
Tagname dictionary, you have to place an i infront of the integer. For example, instead of N14:56 it would be iN14:56. For a real value
you would use a r, for example for F8:100 it would be rF8:100. For a Boolean value, it would be dB3:120/3 or dN7:12/5. WonderWare has good documentation for using OPCLink. Again, setting up the OPC Client/Server is easier than setting up a DDE Client/Server because you do not have to copy your tags to the clipboard in RSLinx inorder to read them.