07-14-2010 03:17 AM
This is more a note to help other OPC Server developers rather than a question to the forum.
We have recently undertaken a project for a client to produce an OPC server for a specific piece of hardware. The chosen routine was to have a server based CVI application that interacted with Network Shared Variables. In short this went extremely well and was tested on the “local system”. The problems arose when testing switched to the “network” and again in short focused on DCOM setup, the technology behind OPC. The time spent investigating this rapidly grew from hours in to days. We eventually solved our problems by performing the following:
The following was performed within an hour and solved all our problems. Had we followed this routine initially we would have saved a significant amount of time and cost on the development. I hope this information proves useful to other developers and many thanks to Kepware.
Kevin Snelling
CVI Certified
07-14-2010 10:05 AM
You might want to post this in the LabWindows/CVI User Group community.
07-14-2010 10:16 AM
Hi Kevin,
I am currently considering KEPServerEX5 from Kepware. At this point I'm still studying how to utilize this OPC server. It is timely to read your post and perhaps you could comment on my current thoughts...
- My end goal for this current project is to interface a "master" PC with ~10 PLC and ~5 other PCs. This will be done via Ethernet on a local network.
- To exchange information with the Siemens PLCs, use KEPServer and the Siemens TCP/IP Ethernet Driver (also from Kepware) on the master PC. The master PC will utilize a LabWindows/CVI application. DDE will be used for CVI to exchange data with KEPServer, CVI will be the DDE client and KEPServer the DDE server.
- To exchange information with the other PCs, use TCP in CVI with the master PC a TCP server and the other PCs as TCP clients (these PCs are also running CVI apps).
Any thoughts on this plan?
How did your client software exchange data with KEPServer? Was it actually via OPC or did you have to use DDE? If I assume correctly, your client software is a CVI application, and I believe DDE must be used to exchange data between CVI and KEPServer.
Thanks for your post and any follow-up info you can provide!
- Aaron
07-18-2010 07:29 AM
Aaron,
What you are doing is not quite the same as what I was doing. I implemented an OPC server in CVI via network shared variables. My OPC client during testing was Kepware's QuickClient. There was no need for DDE. Where as I think you are writing an OPC client?
I have used DDE in other applications within CVI and it worked well.
Kevin
07-19-2010 07:58 AM
Thanks for the reply Kevin. You are correct, I'm writing an OPC client in CVI to integrate with Kepware's OPC server.
Good to know DDE in CVI was successful for you.
Best regards,
Aaron
09-26-2011 11:43 AM
Hello Kevin,
I'm trying to implement a CVI client into a OPC server (KEPServerEX) via Datasocket. My big problem is that I can connect to the server (because I see that the number of clients increment) but I can't read nor write any value. It is very strange, I tested the client using the MatrikonOPC Server for Simulation and it worked just fine.
In the KEPServerEX, I'm choosing the option "simulate device" and choosing localhost (127.0.0.1) as the device ID.
I hope you could help me, I really need to use this OPC server, since I will use about 3 or 4 PLCs, and this is the only OPC server that includes already the drivers of the brands that I will implement.
Best begards,
Fidel
09-27-2011 07:48 AM
Fidel,
As I said in my post to Aaron I was working on the server side not the client. It was over a year ago I worked on this and I don't have any code readily to hand. Aaron might be able to assit.