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.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Connections, Reconnections, COM/DCOM
- Enquiry about Demo [unable to connect; questions to doc]
Enquiry about Demo [unable to connect; questions to doc]
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.
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.
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.
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.
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.
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.
<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.
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.
Please Log in or Create an account to join the conversation.
Untitled.png
Please Log in or Create an account to join the conversation.
- Forum
- Discussions
- QuickOPC-Classic in .NET
- Connections, Reconnections, COM/DCOM
- Enquiry about Demo [unable to connect; questions to doc]