Professional OPC
Development Tools

logos

Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.

Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.

Do not use the Contact page for technical issues.

Enquiry about Demo [unable to connect; questions to doc]

More
22 Dec 2011 07:47 #730 by support
Hello. Obviously I am sorry to hear this news.
As long as Matrikon OPC Rendundancy Broker exposes regular OPC server interface, it is possible to use OPC clients such as QuickOPC to connect to it and work normally. The principle is somewhat similar to OPC Analyzer: It is both client and server piece that sits "in between" - bu t we do not really care on the client side about these things.

Please Log in or Create an account to join the conversation.

More
22 Dec 2011 07:28 #728 by clgo
Dear Sir,
I have downloaded the latest build, but sadly to say we have to temporarily stop testing. Yesterday was disasterous, not sure what had happen after connecting to the live server. The server have suddenly stop working and affected all the operation. I am not sure what have caused the issue. Anyway, i think its quite risky to test on the live server. We are likely to be implementing the OPC Redundancy Server using Matrikon OPC Redundancy Broker and communicating to two OPC server, one as active and the other as passive. Therefore we eventually be connecting to the Matrikon OPC Redundancy Broker. I wonder whats going to be affectted if the old opc server is changed to matrikon's opc redundancy. I have found a copy of Matrikon's OPC Redundacy broker which is downloadable at this location (www.matrikonopc.com/products/opc-data-management/opc-redundancy-broker.aspx), and hopefully the opc broker can be commission early next year then we can resume testing. In the meanwhile, i can only install the trial version of Matrikon OPC Redundancy Broker and see what can be done from here. I will continue to post on updates and issues on this thread.


regards

Please Log in or Create an account to join the conversation.

More
21 Dec 2011 13:05 #727 by support
Hello, and thanks again for detailed information.
It looks like that the new "Access Denied" problem was introduced in an attempt to remove the need for configuring the DCOM security. I apologize for that. A fix has been made; can you please download the newest build 5.12.523.1 (from the same location as before) and try again.
Unfortunately, as you were not able to use the OPC Analyzer, I cannot tell more to the issue with "InvalidOperationException" during browsing righ now. Maybe if you get the new build working with the Analyzer, and capture the trace, that will tell us more. At the same time, can you please observe closely and determine whether the exception appears

a) When expanding a branch in left tree view (e.g. clicking on "+" mini-icon)
b) When selecting a branch in left tree view (e.g. clicking on a branch name there)
c) When selecting a leaf in the right list view
d) When pressing OK on the dialog.

With regard to OPC UA: OPC UA client cannot natively communicated with OPC "Classic" server such as OPC Data Access. It can be achieved by using a "proxy" which is OPC Data Access client, and at the same time it is a UA server.

Please Log in or Create an account to join the conversation.

More
20 Dec 2011 08:34 #726 by clgo
Dear Sir,
Thank you very much for the patience for helping to resolve the issue. I really appreciate it.
I have downloaded the new version and have tested using the demo Application (this time i have not set EasyDAClient.ClientParameters.ServerStatusCheckPeriod to -1 and it seems to work out of the box). There are some new issue occurs during the testing.
First, when i try to browse the server too many times, the demo application tends to crash, i have included the screen shot you may check EasyOPC-DA-Crash.bmp.
Second, Now i am not able to connect the Demo Application to the OPC Analyzer, it pop up a Access is denied popup box.
Third, When i try to click Read Item or Subscribe item, it shows "Access is denied" on the Exception box. The following step is how i stimulate the error. for Access is denied.
1. Enter the OPC Server IP Address in Machine Name textbox
2. click Browse server button (this part takes especially long, around 45 sec, before the server appears), then i have selected the opc server and click ok to exit the browse server dialog box.
3. Click on browse item button, expand the root, and tank->tankid->tag name (GSV) ->leave node (CV) and click ok.
4. At this point i wonder if i need to click the Browse properties or Read Item button so i try both.
5. Clicking Read Item button, will display Access is denied expection on the Exception textbox.
6. Clicking on Browse properties button, display a sets of available properties, with property id, name, data type, item id and description column.
I wonder if the Access Denied message is normal. And when i subscribe to the item, i did not notice any chanage in the subscribed data, but it does when i perform similar step in prosys demo client. If there is any error in the way i subscribe to an item please let me know.
As for the long wait, its actually occurs when i perform step 2 as above. I am not sure what happens after the changes as i am not able to connect the demo application to the opc analyzer.
Yes for the question on OPC-UA, yes none of my opc server implements that interface, i thought the OPC-UA is able to read from OPA-DA items and make it accessible via webservices to other opc client.

Please Log in or Create an account to join the conversation.

More
18 Dec 2011 18:48 #725 by support
Hello,
you can now download a new version of QuickOPC-Classic from our Web page. It is a actually newly released version (5.12), and it contains many improvements (see the What's New document installed with the product), including both changes we have discussed in this thread. Note that if you have already started some coding, you will need to change the assembly references, as the assembly names have changed in this release.
QuickOPC works with Visual C# Express Edition, to the extent and limitations allowed by that edition. For example, the project file format is somewhat different, so the example projects load with some error messages; but they work well. And, this does not happen to your new projects, if you create them from scratch in the Express Edition.
I am surprised by the long time to "get the tag". Can you provide some more details?
QuickOPC-UA is for OPC Unified Architecture. This is a new set of OPC specifications, different from "Classic" OPC, and is based on Web services. I think that neither of your servers supports OPC-UA.

Please Log in or Create an account to join the conversation.

More
16 Dec 2011 09:13 #722 by clgo
Dear Sir,
Thank you for the explaination on stateless and stateful explanation. As for the moment, our main focus will be the initial Tank Master opc server. As for the DCS opc server its known as Exaopc Server you may find more information here www.yokogawa.com/sbs/exaopc/sbs-exaopc-outline.htm. I doubt there is any demo opc version able for testing. I am interested to get something simple working at the beginning, able to read tag/ subscribe and write to tags on our tank master server. Hopefully will be able to get something working next week. And btw, do your OPC Client able to work with Visual C# Express? I am abit concern on the speed in getting all the items in the server. It seems that EasyOPC takes nearly to a minute to get the tag. And just curious on the QuickOPC ua, whats the primary purpose?

regards

Please Log in or Create an account to join the conversation.

More
15 Dec 2011 12:39 #716 by support
Thanks for the server info. The plan is to use it for a workaround for the "failed server state" issue only. That is, EasyOPC will automatically ignore the failed server state for this particular server. If you keep the setting of ServerStatusCheckPeriod<span style="font-family: "Times New Roman","serif"; font-size: 12pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"> to -1, your code will always work, even if the server's identification change in the future. The idea is that if some other customer happens to use the component with this server, it'll work out of the box. Not everybody is willing to go through pains of technical support as you are. If the server identification changes in the future, it won't work out of the box any longer, but still there will be no harm as compared to today's situation. We can only make some help in this way, because on the technical level, the server appears to be compliant - it just reports that it has failed, but does so in the correct way, so we cannot tell whether it's genuine or not.
<span style="font-family: "Times New Roman","serif"; font-size: 12pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">For the browsing issue, the situation is different, because the server is reporting an error in a call that should not fail. We can therefore detect that there is a compliance problem with the server, and apply the envisioned workaround, without using other knowledge about the server itself. At least that's the plan.
<span style="font-family: "Times New Roman","serif"; font-size: 12pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">As to the "No such interface supported" with your DCS System OPC Server, we can have a look at it as well, if you capture the OPC Analyzer trace again (or if there is a trial version of it available).
<span style="font-family: "Times New Roman","serif"; font-size: 12pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">We think that our stateless API design makes for much simpler code that you - as application developer - have to write. With the stateful design, let's say you would instruct the API to connect to the server. The problem is that not only this creates a state, but that this state is not only controlled by your application, but also by other actors: For example, the server may "die" and you find yourself disconnected. So you have to write a code that detects this and connects again. And you have to write the code that re-establishes subscriptions in such case. And so on. All this complicates the logic, and has to be written in careful and correct way. With the stateless design we have incorporated all that logic into the component itself. For example, if the server "dies", all methods calls related to the server will be returning an error (and subscribed items will receive a special notification), but after a configurable period, the component will reconnect (if possible) and things will start working again (the reason why there is some delay is that otherwise an unwanted load can be created on the system if the reconnecion attempt is immediate). So in case of any failure, you just need to think about what should effects of that failure be onto your system, but you do not have to think (and write code for) at all about how to handle it in relation to the OPC side.
<span style="font-family: "Times New Roman","serif"; font-size: 12pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA">As to the "how many tags" question: This depends on the performance of the system, and there are no hard-coded limits, but as a starting point, it is generally possible to subscribe to around 4,000 OPC items, and receive changes from every one of them once per second (measured in a local setup, i.e. OPC server and OPC client on the same computer).

Please Log in or Create an account to join the conversation.

More
15 Dec 2011 08:15 #714 by clgo
Dear Sir,
The ProgID for our tank gauging opc server is SaabTankRadar.TankServer.1
and the CLSID is 11F0E1D4-FE09-11D1-9151-00805FC11E1C
i wonder if you are going to hardcode these information into easyopc? I wonder if these value will change with different revision. As for the earlier reply on the error, i have noticed that too in prosys opc client and matrikon client as well. Locally or remotely is the same. We have a DCS System OPC Server which talks to our Tank gauging OPC Server, and i try to connect the dcs opc server using easyopc client it shows "No such interface supported" where by the initial solution on changing the DCOM settings doesn't solve the issue. I have tried other opc client and only prosys opc client is able to connect and browse the DCS System OPC Server, and i not sure why. In the future we may want the OPC Client to work with the DCS System as well. At the moment, we should concentrate to slove the tank gauging opcs communication issue. I shall wait for your update on the software to proceed with other testing.
As you have mentioned your api is designed to be stateless protocol, i wonder whats the advantage over the generic design or stateful design? And may i know how many tags can the api be registered to communicate with at one time?

regards

Please Log in or Create an account to join the conversation.

More
14 Dec 2011 11:39 #708 by support
Also, can you please send me the ProgID or the CLSID of the server? Unfortunately this cannot be taken from the analyzer logs. Thank you.

Please Log in or Create an account to join the conversation.

More
14 Dec 2011 11:31 #707 by support
Just quickly going back to an earlier issue: Looking at one of the pictures you have sent, I noticed that even the Prosys OPC client displays the server status as "Failed" - see attached picture with the highlighting. So this is just to nail down the facts (and that I am not making it up...). Fortunately the workaround for this one wasn't so difficult, and I even plan to detect the particular server and handle it automatically.
Untitled.png

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.060 seconds